11792 wasn't complete
[p5sagit/p5-mst-13.2.git] / embedvar.h
index 0cf1136..9198d2e 100644 (file)
@@ -6,13 +6,13 @@
 /* (Doing namespace management portably in C is really gross.) */
 
 /*
-   The following combinations of MULTIPLICITY, USE_THREADS, PERL_OBJECT
+   The following combinations of MULTIPLICITY, USE_5005THREADS, PERL_OBJECT
    and PERL_IMPLICIT_CONTEXT are supported:
      1) none
      2) MULTIPLICITY   # supported for compatibility
      3) MULTIPLICITY && PERL_IMPLICIT_CONTEXT
-     4) USE_THREADS && PERL_IMPLICIT_CONTEXT
-     5) MULTIPLICITY && USE_THREADS && PERL_IMPLICIT_CONTEXT
+     4) USE_5005THREADS && PERL_IMPLICIT_CONTEXT
+     5) MULTIPLICITY && USE_5005THREADS && PERL_IMPLICIT_CONTEXT
      6) PERL_OBJECT && PERL_IMPLICIT_CONTEXT
 
    All other combinations of these flags are errors.
@@ -73,6 +73,7 @@
 #define PL_ofs_sv              (vTHX->Tofs_sv)
 #define PL_op                  (vTHX->Top)
 #define PL_opsave              (vTHX->Topsave)
+#define PL_peepp               (vTHX->Tpeepp)
 #define PL_protect             (vTHX->Tprotect)
 #define PL_reg_call_cc         (vTHX->Treg_call_cc)
 #define PL_reg_curpm           (vTHX->Treg_curpm)
 #define PL_reg_start_tmpl      (vTHX->Treg_start_tmpl)
 #define PL_reg_starttry                (vTHX->Treg_starttry)
 #define PL_reg_sv              (vTHX->Treg_sv)
+#define PL_reg_sv_utf8         (vTHX->Treg_sv_utf8)
 #define PL_reg_whilem_seen     (vTHX->Treg_whilem_seen)
 #define PL_regbol              (vTHX->Tregbol)
 #define PL_regcc               (vTHX->Tregcc)
 #define PL_regcode             (vTHX->Tregcode)
 #define PL_regcomp_parse       (vTHX->Tregcomp_parse)
 #define PL_regcomp_rx          (vTHX->Tregcomp_rx)
+#define PL_regcompat1          (vTHX->Tregcompat1)
 #define PL_regcompp            (vTHX->Tregcompp)
 #define PL_regdata             (vTHX->Tregdata)
 #define PL_regdummy            (vTHX->Tregdummy)
 #define PL_regint_start                (vTHX->Tregint_start)
 #define PL_regint_string       (vTHX->Tregint_string)
 #define PL_reginterp_cnt       (vTHX->Treginterp_cnt)
+#define PL_reglastcloseparen   (vTHX->Treglastcloseparen)
 #define PL_reglastparen                (vTHX->Treglastparen)
 #define PL_regnarrate          (vTHX->Tregnarrate)
 #define PL_regnaughty          (vTHX->Tregnaughty)
 #define PL_regnpar             (vTHX->Tregnpar)
 #define PL_regprecomp          (vTHX->Tregprecomp)
-#define PL_regprev             (vTHX->Tregprev)
 #define PL_regprogram          (vTHX->Tregprogram)
 #define PL_regsawback          (vTHX->Tregsawback)
 #define PL_regseen             (vTHX->Tregseen)
 #    include "error: PERL_OBJECT + MULTIPLICITY don't go together"
 #  endif
 
-#  if defined(USE_THREADS)
+#  if defined(USE_5005THREADS)
 /* case 5 above */
 
 #define PL_Argv                        (PERL_GET_INTERP->IArgv)
 #define PL_curcopdb            (PERL_GET_INTERP->Icurcopdb)
 #define PL_curstname           (PERL_GET_INTERP->Icurstname)
 #define PL_curthr              (PERL_GET_INTERP->Icurthr)
+#define PL_custom_op_descs     (PERL_GET_INTERP->Icustom_op_descs)
+#define PL_custom_op_names     (PERL_GET_INTERP->Icustom_op_names)
 #define PL_dbargs              (PERL_GET_INTERP->Idbargs)
 #define PL_debstash            (PERL_GET_INTERP->Idebstash)
 #define PL_debug               (PERL_GET_INTERP->Idebug)
 #define PL_psig_pend           (PERL_GET_INTERP->Ipsig_pend)
 #define PL_psig_ptr            (PERL_GET_INTERP->Ipsig_ptr)
 #define PL_ptr_table           (PERL_GET_INTERP->Iptr_table)
+#define PL_reentrant_buffer    (PERL_GET_INTERP->Ireentrant_buffer)
+#define PL_regex_pad           (PERL_GET_INTERP->Iregex_pad)
+#define PL_regex_padav         (PERL_GET_INTERP->Iregex_padav)
 #define PL_replgv              (PERL_GET_INTERP->Ireplgv)
 #define PL_rsfp                        (PERL_GET_INTERP->Irsfp)
 #define PL_rsfp_filters                (PERL_GET_INTERP->Irsfp_filters)
 #define PL_runops              (PERL_GET_INTERP->Irunops)
+#define PL_savebegin           (PERL_GET_INTERP->Isavebegin)
 #define PL_sawampersand                (PERL_GET_INTERP->Isawampersand)
 #define PL_sh_path             (PERL_GET_INTERP->Ish_path)
 #define PL_sig_pending         (PERL_GET_INTERP->Isig_pending)
 #define PL_yynerrs             (PERL_GET_INTERP->Iyynerrs)
 #define PL_yyval               (PERL_GET_INTERP->Iyyval)
 
-#  else                /* !USE_THREADS */
+#  else                /* !USE_5005THREADS */
 /* cases 2 and 3 above */
 
 #define PL_Argv                        (vTHX->IArgv)
 #define PL_curcopdb            (vTHX->Icurcopdb)
 #define PL_curstname           (vTHX->Icurstname)
 #define PL_curthr              (vTHX->Icurthr)
+#define PL_custom_op_descs     (vTHX->Icustom_op_descs)
+#define PL_custom_op_names     (vTHX->Icustom_op_names)
 #define PL_dbargs              (vTHX->Idbargs)
 #define PL_debstash            (vTHX->Idebstash)
 #define PL_debug               (vTHX->Idebug)
 #define PL_psig_pend           (vTHX->Ipsig_pend)
 #define PL_psig_ptr            (vTHX->Ipsig_ptr)
 #define PL_ptr_table           (vTHX->Iptr_table)
+#define PL_reentrant_buffer    (vTHX->Ireentrant_buffer)
+#define PL_regex_pad           (vTHX->Iregex_pad)
+#define PL_regex_padav         (vTHX->Iregex_padav)
 #define PL_replgv              (vTHX->Ireplgv)
 #define PL_rsfp                        (vTHX->Irsfp)
 #define PL_rsfp_filters                (vTHX->Irsfp_filters)
 #define PL_runops              (vTHX->Irunops)
+#define PL_savebegin           (vTHX->Isavebegin)
 #define PL_sawampersand                (vTHX->Isawampersand)
 #define PL_sh_path             (vTHX->Ish_path)
 #define PL_sig_pending         (vTHX->Isig_pending)
 #define PL_yynerrs             (vTHX->Iyynerrs)
 #define PL_yyval               (vTHX->Iyyval)
 
-#  endif       /* USE_THREADS */
+#  endif       /* USE_5005THREADS */
 
 #else  /* !MULTIPLICITY */
 
 #define PL_ofs_sv              (aTHXo->interp.Tofs_sv)
 #define PL_op                  (aTHXo->interp.Top)
 #define PL_opsave              (aTHXo->interp.Topsave)
+#define PL_peepp               (aTHXo->interp.Tpeepp)
 #define PL_protect             (aTHXo->interp.Tprotect)
 #define PL_reg_call_cc         (aTHXo->interp.Treg_call_cc)
 #define PL_reg_curpm           (aTHXo->interp.Treg_curpm)
 #define PL_reg_start_tmpl      (aTHXo->interp.Treg_start_tmpl)
 #define PL_reg_starttry                (aTHXo->interp.Treg_starttry)
 #define PL_reg_sv              (aTHXo->interp.Treg_sv)
+#define PL_reg_sv_utf8         (aTHXo->interp.Treg_sv_utf8)
 #define PL_reg_whilem_seen     (aTHXo->interp.Treg_whilem_seen)
 #define PL_regbol              (aTHXo->interp.Tregbol)
 #define PL_regcc               (aTHXo->interp.Tregcc)
 #define PL_regcode             (aTHXo->interp.Tregcode)
 #define PL_regcomp_parse       (aTHXo->interp.Tregcomp_parse)
 #define PL_regcomp_rx          (aTHXo->interp.Tregcomp_rx)
+#define PL_regcompat1          (aTHXo->interp.Tregcompat1)
 #define PL_regcompp            (aTHXo->interp.Tregcompp)
 #define PL_regdata             (aTHXo->interp.Tregdata)
 #define PL_regdummy            (aTHXo->interp.Tregdummy)
 #define PL_regint_start                (aTHXo->interp.Tregint_start)
 #define PL_regint_string       (aTHXo->interp.Tregint_string)
 #define PL_reginterp_cnt       (aTHXo->interp.Treginterp_cnt)
+#define PL_reglastcloseparen   (aTHXo->interp.Treglastcloseparen)
 #define PL_reglastparen                (aTHXo->interp.Treglastparen)
 #define PL_regnarrate          (aTHXo->interp.Tregnarrate)
 #define PL_regnaughty          (aTHXo->interp.Tregnaughty)
 #define PL_regnpar             (aTHXo->interp.Tregnpar)
 #define PL_regprecomp          (aTHXo->interp.Tregprecomp)
-#define PL_regprev             (aTHXo->interp.Tregprev)
 #define PL_regprogram          (aTHXo->interp.Tregprogram)
 #define PL_regsawback          (aTHXo->interp.Tregsawback)
 #define PL_regseen             (aTHXo->interp.Tregseen)
 #define PL_curcopdb            (aTHXo->interp.Icurcopdb)
 #define PL_curstname           (aTHXo->interp.Icurstname)
 #define PL_curthr              (aTHXo->interp.Icurthr)
+#define PL_custom_op_descs     (aTHXo->interp.Icustom_op_descs)
+#define PL_custom_op_names     (aTHXo->interp.Icustom_op_names)
 #define PL_dbargs              (aTHXo->interp.Idbargs)
 #define PL_debstash            (aTHXo->interp.Idebstash)
 #define PL_debug               (aTHXo->interp.Idebug)
 #define PL_psig_pend           (aTHXo->interp.Ipsig_pend)
 #define PL_psig_ptr            (aTHXo->interp.Ipsig_ptr)
 #define PL_ptr_table           (aTHXo->interp.Iptr_table)
+#define PL_reentrant_buffer    (aTHXo->interp.Ireentrant_buffer)
+#define PL_regex_pad           (aTHXo->interp.Iregex_pad)
+#define PL_regex_padav         (aTHXo->interp.Iregex_padav)
 #define PL_replgv              (aTHXo->interp.Ireplgv)
 #define PL_rsfp                        (aTHXo->interp.Irsfp)
 #define PL_rsfp_filters                (aTHXo->interp.Irsfp_filters)
 #define PL_runops              (aTHXo->interp.Irunops)
+#define PL_savebegin           (aTHXo->interp.Isavebegin)
 #define PL_sawampersand                (aTHXo->interp.Isawampersand)
 #define PL_sh_path             (aTHXo->interp.Ish_path)
 #define PL_sig_pending         (aTHXo->interp.Isig_pending)
 #define PL_Icurcopdb           PL_curcopdb
 #define PL_Icurstname          PL_curstname
 #define PL_Icurthr             PL_curthr
+#define PL_Icustom_op_descs    PL_custom_op_descs
+#define PL_Icustom_op_names    PL_custom_op_names
 #define PL_Idbargs             PL_dbargs
 #define PL_Idebstash           PL_debstash
 #define PL_Idebug              PL_debug
 #define PL_Ipsig_pend          PL_psig_pend
 #define PL_Ipsig_ptr           PL_psig_ptr
 #define PL_Iptr_table          PL_ptr_table
+#define PL_Ireentrant_buffer   PL_reentrant_buffer
+#define PL_Iregex_pad          PL_regex_pad
+#define PL_Iregex_padav                PL_regex_padav
 #define PL_Ireplgv             PL_replgv
 #define PL_Irsfp               PL_rsfp
 #define PL_Irsfp_filters       PL_rsfp_filters
 #define PL_Irunops             PL_runops
+#define PL_Isavebegin          PL_savebegin
 #define PL_Isawampersand       PL_sawampersand
 #define PL_Ish_path            PL_sh_path
 #define PL_Isig_pending                PL_sig_pending
 #define PL_Iyynerrs            PL_yynerrs
 #define PL_Iyyval              PL_yyval
 
-#    if defined(USE_THREADS)
+#    if defined(USE_5005THREADS)
 /* case 4 above */
 
 #define PL_Sv                  (aTHX->TSv)
 #define PL_ofs_sv              (aTHX->Tofs_sv)
 #define PL_op                  (aTHX->Top)
 #define PL_opsave              (aTHX->Topsave)
+#define PL_peepp               (aTHX->Tpeepp)
 #define PL_protect             (aTHX->Tprotect)
 #define PL_reg_call_cc         (aTHX->Treg_call_cc)
 #define PL_reg_curpm           (aTHX->Treg_curpm)
 #define PL_reg_start_tmpl      (aTHX->Treg_start_tmpl)
 #define PL_reg_starttry                (aTHX->Treg_starttry)
 #define PL_reg_sv              (aTHX->Treg_sv)
+#define PL_reg_sv_utf8         (aTHX->Treg_sv_utf8)
 #define PL_reg_whilem_seen     (aTHX->Treg_whilem_seen)
 #define PL_regbol              (aTHX->Tregbol)
 #define PL_regcc               (aTHX->Tregcc)
 #define PL_regcode             (aTHX->Tregcode)
 #define PL_regcomp_parse       (aTHX->Tregcomp_parse)
 #define PL_regcomp_rx          (aTHX->Tregcomp_rx)
+#define PL_regcompat1          (aTHX->Tregcompat1)
 #define PL_regcompp            (aTHX->Tregcompp)
 #define PL_regdata             (aTHX->Tregdata)
 #define PL_regdummy            (aTHX->Tregdummy)
 #define PL_regint_start                (aTHX->Tregint_start)
 #define PL_regint_string       (aTHX->Tregint_string)
 #define PL_reginterp_cnt       (aTHX->Treginterp_cnt)
+#define PL_reglastcloseparen   (aTHX->Treglastcloseparen)
 #define PL_reglastparen                (aTHX->Treglastparen)
 #define PL_regnarrate          (aTHX->Tregnarrate)
 #define PL_regnaughty          (aTHX->Tregnaughty)
 #define PL_regnpar             (aTHX->Tregnpar)
 #define PL_regprecomp          (aTHX->Tregprecomp)
-#define PL_regprev             (aTHX->Tregprev)
 #define PL_regprogram          (aTHX->Tregprogram)
 #define PL_regsawback          (aTHX->Tregsawback)
 #define PL_regseen             (aTHX->Tregseen)
 #define PL_watchaddr           (aTHX->Twatchaddr)
 #define PL_watchok             (aTHX->Twatchok)
 
-#    else      /* !USE_THREADS */
+#    else      /* !USE_5005THREADS */
 /* case 1 above */
 
 #define PL_TSv                 PL_Sv
 #define PL_Tofs_sv             PL_ofs_sv
 #define PL_Top                 PL_op
 #define PL_Topsave             PL_opsave
+#define PL_Tpeepp              PL_peepp
 #define PL_Tprotect            PL_protect
 #define PL_Treg_call_cc                PL_reg_call_cc
 #define PL_Treg_curpm          PL_reg_curpm
 #define PL_Treg_start_tmpl     PL_reg_start_tmpl
 #define PL_Treg_starttry       PL_reg_starttry
 #define PL_Treg_sv             PL_reg_sv
+#define PL_Treg_sv_utf8                PL_reg_sv_utf8
 #define PL_Treg_whilem_seen    PL_reg_whilem_seen
 #define PL_Tregbol             PL_regbol
 #define PL_Tregcc              PL_regcc
 #define PL_Tregcode            PL_regcode
 #define PL_Tregcomp_parse      PL_regcomp_parse
 #define PL_Tregcomp_rx         PL_regcomp_rx
+#define PL_Tregcompat1         PL_regcompat1
 #define PL_Tregcompp           PL_regcompp
 #define PL_Tregdata            PL_regdata
 #define PL_Tregdummy           PL_regdummy
 #define PL_Tregint_start       PL_regint_start
 #define PL_Tregint_string      PL_regint_string
 #define PL_Treginterp_cnt      PL_reginterp_cnt
+#define PL_Treglastcloseparen  PL_reglastcloseparen
 #define PL_Treglastparen       PL_reglastparen
 #define PL_Tregnarrate         PL_regnarrate
 #define PL_Tregnaughty         PL_regnaughty
 #define PL_Tregnpar            PL_regnpar
 #define PL_Tregprecomp         PL_regprecomp
-#define PL_Tregprev            PL_regprev
 #define PL_Tregprogram         PL_regprogram
 #define PL_Tregsawback         PL_regsawback
 #define PL_Tregseen            PL_regseen
 #define PL_Twatchaddr          PL_watchaddr
 #define PL_Twatchok            PL_watchok
 
-#    endif     /* USE_THREADS */
+#    endif     /* USE_5005THREADS */
 #  endif       /* PERL_OBJECT */
 #endif /* MULTIPLICITY */