Assert that we don't access strings saved for $1 etc. out of bounds
[p5sagit/p5-mst-13.2.git] / embedvar.h
index c40bbfa..96ff9ee 100644 (file)
@@ -44,7 +44,6 @@
 #define PL_Xpv                 (vTHX->TXpv)
 #define PL_av_fetch_sv         (vTHX->Tav_fetch_sv)
 #define PL_bodytarget          (vTHX->Tbodytarget)
-#define PL_bostr               (vTHX->Tbostr)
 #define PL_chopset             (vTHX->Tchopset)
 #define PL_colors              (vTHX->Tcolors)
 #define PL_colorset            (vTHX->Tcolorset)
 #define PL_maxscream           (vTHX->Tmaxscream)
 #define PL_modcount            (vTHX->Tmodcount)
 #define PL_na                  (vTHX->Tna)
-#define PL_nrs                 (vTHX->Tnrs)
 #define PL_ofs_sv              (vTHX->Tofs_sv)
 #define PL_op                  (vTHX->Top)
 #define PL_opsave              (vTHX->Topsave)
 #define PL_peepp               (vTHX->Tpeepp)
-#define PL_reg_call_cc         (vTHX->Treg_call_cc)
-#define PL_reg_curpm           (vTHX->Treg_curpm)
-#define PL_reg_eval_set                (vTHX->Treg_eval_set)
-#define PL_reg_flags           (vTHX->Treg_flags)
-#define PL_reg_ganch           (vTHX->Treg_ganch)
-#define PL_reg_leftiter                (vTHX->Treg_leftiter)
-#define PL_reg_magic           (vTHX->Treg_magic)
-#define PL_reg_match_utf8      (vTHX->Treg_match_utf8)
-#define PL_reg_maxiter         (vTHX->Treg_maxiter)
-#define PL_reg_oldcurpm                (vTHX->Treg_oldcurpm)
-#define PL_reg_oldpos          (vTHX->Treg_oldpos)
-#define PL_reg_oldsaved                (vTHX->Treg_oldsaved)
-#define PL_reg_oldsavedlen     (vTHX->Treg_oldsavedlen)
-#define PL_reg_poscache                (vTHX->Treg_poscache)
-#define PL_reg_poscache_size   (vTHX->Treg_poscache_size)
-#define PL_reg_re              (vTHX->Treg_re)
-#define PL_reg_start_tmp       (vTHX->Treg_start_tmp)
-#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_regbol              (vTHX->Tregbol)
-#define PL_regcompp            (vTHX->Tregcompp)
-#define PL_regdata             (vTHX->Tregdata)
+#define PL_reg_state           (vTHX->Treg_state)
 #define PL_regdummy            (vTHX->Tregdummy)
-#define PL_regendp             (vTHX->Tregendp)
-#define PL_regeol              (vTHX->Tregeol)
-#define PL_regexecp            (vTHX->Tregexecp)
-#define PL_regfree             (vTHX->Tregfree)
-#define PL_regindent           (vTHX->Tregindent)
-#define PL_reginput            (vTHX->Treginput)
-#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_regmatch_slab       (vTHX->Tregmatch_slab)
 #define PL_regmatch_state      (vTHX->Tregmatch_state)
-#define PL_regnarrate          (vTHX->Tregnarrate)
-#define PL_regnpar             (vTHX->Tregnpar)
-#define PL_regprecomp          (vTHX->Tregprecomp)
-#define PL_regprogram          (vTHX->Tregprogram)
-#define PL_regsize             (vTHX->Tregsize)
-#define PL_regstartp           (vTHX->Tregstartp)
-#define PL_regtill             (vTHX->Tregtill)
 #define PL_restartop           (vTHX->Trestartop)
 #define PL_rs                  (vTHX->Trs)
 #define PL_savestack           (vTHX->Tsavestack)
 #define PL_tokenbuf            (vTHX->Itokenbuf)
 #define PL_uid                 (vTHX->Iuid)
 #define PL_unicode             (vTHX->Iunicode)
+#define PL_unitcheckav         (vTHX->Iunitcheckav)
+#define PL_unitcheckav_save    (vTHX->Iunitcheckav_save)
 #define PL_unlockhook          (vTHX->Iunlockhook)
 #define PL_unsafe              (vTHX->Iunsafe)
 #define PL_utf8_alnum          (vTHX->Iutf8_alnum)
 #define PL_Itokenbuf           PL_tokenbuf
 #define PL_Iuid                        PL_uid
 #define PL_Iunicode            PL_unicode
+#define PL_Iunitcheckav                PL_unitcheckav
+#define PL_Iunitcheckav_save   PL_unitcheckav_save
 #define PL_Iunlockhook         PL_unlockhook
 #define PL_Iunsafe             PL_unsafe
 #define PL_Iutf8_alnum         PL_utf8_alnum
 #define PL_TXpv                        PL_Xpv
 #define PL_Tav_fetch_sv                PL_av_fetch_sv
 #define PL_Tbodytarget         PL_bodytarget
-#define PL_Tbostr              PL_bostr
 #define PL_Tchopset            PL_chopset
 #define PL_Tcolors             PL_colors
 #define PL_Tcolorset           PL_colorset
 #define PL_Tmaxscream          PL_maxscream
 #define PL_Tmodcount           PL_modcount
 #define PL_Tna                 PL_na
-#define PL_Tnrs                        PL_nrs
 #define PL_Tofs_sv             PL_ofs_sv
 #define PL_Top                 PL_op
 #define PL_Topsave             PL_opsave
 #define PL_Tpeepp              PL_peepp
-#define PL_Treg_call_cc                PL_reg_call_cc
-#define PL_Treg_curpm          PL_reg_curpm
-#define PL_Treg_eval_set       PL_reg_eval_set
-#define PL_Treg_flags          PL_reg_flags
-#define PL_Treg_ganch          PL_reg_ganch
-#define PL_Treg_leftiter       PL_reg_leftiter
-#define PL_Treg_magic          PL_reg_magic
-#define PL_Treg_match_utf8     PL_reg_match_utf8
-#define PL_Treg_maxiter                PL_reg_maxiter
-#define PL_Treg_oldcurpm       PL_reg_oldcurpm
-#define PL_Treg_oldpos         PL_reg_oldpos
-#define PL_Treg_oldsaved       PL_reg_oldsaved
-#define PL_Treg_oldsavedlen    PL_reg_oldsavedlen
-#define PL_Treg_poscache       PL_reg_poscache
-#define PL_Treg_poscache_size  PL_reg_poscache_size
-#define PL_Treg_re             PL_reg_re
-#define PL_Treg_start_tmp      PL_reg_start_tmp
-#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_Tregbol             PL_regbol
-#define PL_Tregcompp           PL_regcompp
-#define PL_Tregdata            PL_regdata
+#define PL_Treg_state          PL_reg_state
 #define PL_Tregdummy           PL_regdummy
-#define PL_Tregendp            PL_regendp
-#define PL_Tregeol             PL_regeol
-#define PL_Tregexecp           PL_regexecp
-#define PL_Tregfree            PL_regfree
-#define PL_Tregindent          PL_regindent
-#define PL_Treginput           PL_reginput
-#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_Tregmatch_slab      PL_regmatch_slab
 #define PL_Tregmatch_state     PL_regmatch_state
-#define PL_Tregnarrate         PL_regnarrate
-#define PL_Tregnpar            PL_regnpar
-#define PL_Tregprecomp         PL_regprecomp
-#define PL_Tregprogram         PL_regprogram
-#define PL_Tregsize            PL_regsize
-#define PL_Tregstartp          PL_regstartp
-#define PL_Tregtill            PL_regtill
 #define PL_Trestartop          PL_restartop
 #define PL_Trs                 PL_rs
 #define PL_Tsavestack          PL_savestack
 #define PL_Gfold_locale                (my_vars->Gfold_locale)
 #define PL_hexdigit            (my_vars->Ghexdigit)
 #define PL_Ghexdigit           (my_vars->Ghexdigit)
+#define PL_hints_mutex         (my_vars->Ghints_mutex)
+#define PL_Ghints_mutex                (my_vars->Ghints_mutex)
 #define PL_malloc_mutex                (my_vars->Gmalloc_mutex)
 #define PL_Gmalloc_mutex       (my_vars->Gmalloc_mutex)
 #define PL_mmap_page_size      (my_vars->Gmmap_page_size)
 #define PL_Gperlio_fd_refcnt   (my_vars->Gperlio_fd_refcnt)
 #define PL_perlio_fd_refcnt_size       (my_vars->Gperlio_fd_refcnt_size)
 #define PL_Gperlio_fd_refcnt_size      (my_vars->Gperlio_fd_refcnt_size)
+#define PL_perlio_mutex                (my_vars->Gperlio_mutex)
+#define PL_Gperlio_mutex       (my_vars->Gperlio_mutex)
 #define PL_ppaddr              (my_vars->Gppaddr)
 #define PL_Gppaddr             (my_vars->Gppaddr)
 #define PL_sh_path             (my_vars->Gsh_path)
 #define PL_Gdollarzero_mutex   PL_dollarzero_mutex
 #define PL_Gfold_locale                PL_fold_locale
 #define PL_Ghexdigit           PL_hexdigit
+#define PL_Ghints_mutex                PL_hints_mutex
 #define PL_Gmalloc_mutex       PL_malloc_mutex
 #define PL_Gmmap_page_size     PL_mmap_page_size
 #define PL_Gmy_ctx_mutex       PL_my_ctx_mutex
 #define PL_Gperlio_debug_fd    PL_perlio_debug_fd
 #define PL_Gperlio_fd_refcnt   PL_perlio_fd_refcnt
 #define PL_Gperlio_fd_refcnt_size      PL_perlio_fd_refcnt_size
+#define PL_Gperlio_mutex       PL_perlio_mutex
 #define PL_Gppaddr             PL_ppaddr
 #define PL_Gsh_path            PL_sh_path
 #define PL_Gsig_defaulting     PL_sig_defaulting