This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Add the Perl 5 to Perl 5 convertor scripts.
[perl5.git] / intrpvar.h
index aa0f0c3..6cdf894 100644 (file)
@@ -203,7 +203,7 @@ PERLVAR(Imodglobal, HV *)           /* per-interp module data */
 
 /* these used to be in global before 5.004_68 */
 PERLVARI(Iprofiledata, U32 *,  NULL)   /* table of ops, counts */
-PERLVARI(Irsfp,        PerlIO * VOL,   Nullfp) /* current source file pointer */
+PERLVARI(Irsfp,        PerlIO * VOL,   NULL)   /* current source file pointer */
 PERLVARI(Irsfp_filters,        AV *,   NULL)   /* keeps active source filters */
 
 PERLVAR(Icompiling,    COP)            /* compiling/done executing marker */
@@ -248,7 +248,7 @@ PERLVAR(Iosname,    char *)         /* operating system */
 
 PERLVAR(Isighandlerp,  Sighandler_t)
 
-PERLVARA(Ibody_roots,  SVt_LAST, void*) /* array of body roots */
+PERLVARA(Ibody_roots,  PERL_ARENA_ROOTS_SIZE, void*) /* array of body roots */
 
 PERLVAR(Inice_chunk,   char *)         /* a nice chunk of memory to reuse */
 PERLVAR(Inice_chunk_size,      U32)    /* how nice the chunk of memory is */
@@ -298,9 +298,14 @@ PERLVAR(Ilex_brackstack,char *)            /* what kind of brackets to pop */
 PERLVAR(Ilex_casestack,        char *)         /* what kind of case mods in effect */
 
 /* What we know when we're in LEX_KNOWNEXT state. */
+#ifdef PERL_MAD
+PERLVARA(Inexttoke,5,  NEXTTOKE)       /* value of next token, if any */
+PERLVAR(Ilasttoke,     I32)
+#else
 PERLVARA(Inextval,5,   YYSTYPE)        /* value of next token, if any */
 PERLVARA(Inexttype,5,  I32)            /* type of next token */
 PERLVAR(Inexttoke,     I32)
+#endif
 
 PERLVAR(Ilinestr,      SV *)
 PERLVAR(Ibufptr,       char *)
@@ -414,7 +419,7 @@ PERLVAR(Iptr_table, PTR_TBL_t*)
 #endif
 PERLVARI(Ibeginav_save, AV*, NULL)     /* save BEGIN{}s when compiling */
 
-PERLVARA(Ibody_arenaroots, SVt_LAST, void*) /* consolidated body-arena pointers */
+PERLVAR(Ibody_arenas, void*) /* pointer to list of body-arenas */
 
      /* 5.6.0 stopped here */
 
@@ -439,6 +444,12 @@ PERLVAR(Ireentrant_buffer, REENTR*)        /* here we store the _r buffers */
 
 PERLVARI(Isavebegin,     bool, FALSE)  /* save BEGINs for compiler     */
 
+#ifdef PERL_MAD
+PERLVARI(Imadskills,   bool, FALSE)    /* preserve all syntactic info */
+                                       /* (MAD = Misc Attribute Decoration) */
+PERLVARI(Ixmlfp, PerlIO *,NULL)
+#endif
+
 PERLVAR(Icustom_op_names, HV*)  /* Names of user defined ops */
 PERLVAR(Icustom_op_descs, HV*)  /* Descriptions of user defined ops */
 
@@ -448,7 +459,7 @@ PERLVARI(Iknown_layers, PerlIO_list_t *,NULL)
 PERLVARI(Idef_layerlist, PerlIO_list_t *,NULL)
 #endif
 
-PERLVARI(Iencoding,    SV*, Nullsv)            /* character encoding */
+PERLVARI(Iencoding,    SV*, NULL)              /* character encoding */
 
 PERLVAR(Idebug_pad,    struct perl_debug_pad)  /* always needed because of the re extension */
 
@@ -484,7 +495,14 @@ PERLVAR(Ireentrant_retint, int)    /* Integer return value from reentrant functions
 /* Hooks to shared SVs and locks. */
 PERLVARI(Isharehook,   share_proc_t,   MEMBER_TO_FPTR(Perl_sv_nosharing))
 PERLVARI(Ilockhook,    share_proc_t,   MEMBER_TO_FPTR(Perl_sv_nosharing))
-PERLVARI(Iunlockhook,  share_proc_t,   MEMBER_TO_FPTR(Perl_sv_nosharing))
+#ifdef NO_MATHOMS
+#  define PERL_UNLOCK_HOOK Perl_sv_nosharing
+#else
+/* This reference ensures that the mathoms are linked with perl */
+#  define PERL_UNLOCK_HOOK Perl_sv_nounlocking
+#endif
+PERLVARI(Iunlockhook,  share_proc_t,   MEMBER_TO_FPTR(PERL_UNLOCK_HOOK))
+
 PERLVARI(Ithreadhook,  thrhook_proc_t, MEMBER_TO_FPTR(Perl_nothreadhook))
 
 /* Force inclusion of both runops options */
@@ -508,11 +526,6 @@ PERLVARI(Irehash_seed, UV, 0)              /* 582 hash initializer */
 
 PERLVARI(Irehash_seed_set, bool, FALSE)        /* 582 hash initialized? */
 
-/* These two variables are needed to preserve 5.8.x bincompat because we can't
-   change function prototypes of two exported functions.  Probably should be
-   taken out of blead soon, and relevant prototypes changed.  */
-PERLVARI(Ifdscript, int, -1)   /* fd for script */
-PERLVARI(Isuidscript, int, -1) /* fd for suid script */
 #ifdef DEBUG_LEAKING_SCALARS_FORK_DUMP
 /* File descriptor to talk to the child which dumps scalars.  */
 PERLVARI(Idumper_fd, int, -1)
@@ -523,6 +536,11 @@ PERLVARI(Imy_cxt_size, int, 0)             /* size of PL_my_cxt_list */
 PERLVARI(Imy_cxt_list, void **, NULL) /* per-module array of MY_CXT pointers */
 #endif
 
+#ifdef PERL_TRACK_MEMPOOL
+/* For use with the memory debugging code in util.c  */
+PERLVAR(Imemory_debug_header, struct perl_memory_debug_header)
+#endif
+
 /* New variables must be added to the very end, before this comment,
  * for binary compatibility (the offsets of the old members must not change).
  * (Don't forget to add your variable also to perl_clone()!)