This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Developer deprecations and an incompatibility.
[perl5.git] / embedvar.h
CommitLineData
1c846c1f 1/* !!!!!!! DO NOT EDIT THIS FILE !!!!!!!
cea2e8a9 2 This file is built by embed.pl from data in embed.pl, pp.sym, intrpvar.h,
c6af7a1a 3 perlvars.h and thrdvar.h. Any changes made here will be lost!
d4cce5f1
NIS
4*/
5
6/* (Doing namespace management portably in C is really gross.) */
7
54aff467 8/*
acfe0abc 9 The following combinations of MULTIPLICITY, USE_5005THREADS
54aff467
GS
10 and PERL_IMPLICIT_CONTEXT are supported:
11 1) none
12 2) MULTIPLICITY # supported for compatibility
13 3) MULTIPLICITY && PERL_IMPLICIT_CONTEXT
4d1ff10f
AB
14 4) USE_5005THREADS && PERL_IMPLICIT_CONTEXT
15 5) MULTIPLICITY && USE_5005THREADS && PERL_IMPLICIT_CONTEXT
d4cce5f1 16
54aff467 17 All other combinations of these flags are errors.
d4cce5f1 18
54aff467
GS
19 #3, #4, #5, and #6 are supported directly, while #2 is a special
20 case of #3 (supported by redefining vTHX appropriately).
21*/
cea2e8a9 22
54aff467
GS
23#if defined(MULTIPLICITY)
24/* cases 2, 3 and 5 above */
cea2e8a9 25
54aff467
GS
26# if defined(PERL_IMPLICIT_CONTEXT)
27# define vTHX aTHX
28# else
29# define vTHX PERL_GET_INTERP
30# endif
cea2e8a9 31
54aff467
GS
32#define PL_Sv (vTHX->TSv)
33#define PL_Xpv (vTHX->TXpv)
34#define PL_av_fetch_sv (vTHX->Tav_fetch_sv)
35#define PL_bodytarget (vTHX->Tbodytarget)
36#define PL_bostr (vTHX->Tbostr)
37#define PL_chopset (vTHX->Tchopset)
38#define PL_colors (vTHX->Tcolors)
39#define PL_colorset (vTHX->Tcolorset)
40#define PL_curcop (vTHX->Tcurcop)
41#define PL_curpad (vTHX->Tcurpad)
42#define PL_curpm (vTHX->Tcurpm)
43#define PL_curstack (vTHX->Tcurstack)
44#define PL_curstackinfo (vTHX->Tcurstackinfo)
45#define PL_curstash (vTHX->Tcurstash)
46#define PL_defoutgv (vTHX->Tdefoutgv)
47#define PL_defstash (vTHX->Tdefstash)
48#define PL_delaymagic (vTHX->Tdelaymagic)
49#define PL_dirty (vTHX->Tdirty)
50#define PL_dumpindent (vTHX->Tdumpindent)
7d5ea4e7
GS
51#define PL_efloatbuf (vTHX->Tefloatbuf)
52#define PL_efloatsize (vTHX->Tefloatsize)
5a844595 53#define PL_errors (vTHX->Terrors)
54aff467
GS
54#define PL_extralen (vTHX->Textralen)
55#define PL_firstgv (vTHX->Tfirstgv)
56#define PL_formtarget (vTHX->Tformtarget)
57#define PL_hv_fetch_ent_mh (vTHX->Thv_fetch_ent_mh)
58#define PL_hv_fetch_sv (vTHX->Thv_fetch_sv)
59#define PL_in_eval (vTHX->Tin_eval)
60#define PL_last_in_gv (vTHX->Tlast_in_gv)
61#define PL_lastgotoprobe (vTHX->Tlastgotoprobe)
62#define PL_lastscream (vTHX->Tlastscream)
63#define PL_localizing (vTHX->Tlocalizing)
64#define PL_mainstack (vTHX->Tmainstack)
65#define PL_markstack (vTHX->Tmarkstack)
66#define PL_markstack_max (vTHX->Tmarkstack_max)
67#define PL_markstack_ptr (vTHX->Tmarkstack_ptr)
68#define PL_maxscream (vTHX->Tmaxscream)
69#define PL_modcount (vTHX->Tmodcount)
70#define PL_na (vTHX->Tna)
7889fe52 71#define PL_ofs_sv (vTHX->Tofs_sv)
54aff467
GS
72#define PL_op (vTHX->Top)
73#define PL_opsave (vTHX->Topsave)
a2efc822 74#define PL_peepp (vTHX->Tpeepp)
54aff467
GS
75#define PL_protect (vTHX->Tprotect)
76#define PL_reg_call_cc (vTHX->Treg_call_cc)
77#define PL_reg_curpm (vTHX->Treg_curpm)
78#define PL_reg_eval_set (vTHX->Treg_eval_set)
79#define PL_reg_flags (vTHX->Treg_flags)
80#define PL_reg_ganch (vTHX->Treg_ganch)
81#define PL_reg_leftiter (vTHX->Treg_leftiter)
82#define PL_reg_magic (vTHX->Treg_magic)
53c4c00c 83#define PL_reg_match_utf8 (vTHX->Treg_match_utf8)
54aff467
GS
84#define PL_reg_maxiter (vTHX->Treg_maxiter)
85#define PL_reg_oldcurpm (vTHX->Treg_oldcurpm)
86#define PL_reg_oldpos (vTHX->Treg_oldpos)
87#define PL_reg_oldsaved (vTHX->Treg_oldsaved)
88#define PL_reg_oldsavedlen (vTHX->Treg_oldsavedlen)
89#define PL_reg_poscache (vTHX->Treg_poscache)
90#define PL_reg_poscache_size (vTHX->Treg_poscache_size)
91#define PL_reg_re (vTHX->Treg_re)
92#define PL_reg_start_tmp (vTHX->Treg_start_tmp)
93#define PL_reg_start_tmpl (vTHX->Treg_start_tmpl)
94#define PL_reg_starttry (vTHX->Treg_starttry)
95#define PL_reg_sv (vTHX->Treg_sv)
96#define PL_reg_whilem_seen (vTHX->Treg_whilem_seen)
97#define PL_regbol (vTHX->Tregbol)
98#define PL_regcc (vTHX->Tregcc)
99#define PL_regcode (vTHX->Tregcode)
100#define PL_regcomp_parse (vTHX->Tregcomp_parse)
101#define PL_regcomp_rx (vTHX->Tregcomp_rx)
31376155 102#define PL_regcompat1 (vTHX->Tregcompat1)
54aff467
GS
103#define PL_regcompp (vTHX->Tregcompp)
104#define PL_regdata (vTHX->Tregdata)
105#define PL_regdummy (vTHX->Tregdummy)
106#define PL_regendp (vTHX->Tregendp)
107#define PL_regeol (vTHX->Tregeol)
108#define PL_regexecp (vTHX->Tregexecp)
109#define PL_regflags (vTHX->Tregflags)
110#define PL_regfree (vTHX->Tregfree)
111#define PL_regindent (vTHX->Tregindent)
112#define PL_reginput (vTHX->Treginput)
113#define PL_regint_start (vTHX->Tregint_start)
114#define PL_regint_string (vTHX->Tregint_string)
115#define PL_reginterp_cnt (vTHX->Treginterp_cnt)
a01268b5 116#define PL_reglastcloseparen (vTHX->Treglastcloseparen)
54aff467
GS
117#define PL_reglastparen (vTHX->Treglastparen)
118#define PL_regnarrate (vTHX->Tregnarrate)
119#define PL_regnaughty (vTHX->Tregnaughty)
120#define PL_regnpar (vTHX->Tregnpar)
121#define PL_regprecomp (vTHX->Tregprecomp)
54aff467
GS
122#define PL_regprogram (vTHX->Tregprogram)
123#define PL_regsawback (vTHX->Tregsawback)
124#define PL_regseen (vTHX->Tregseen)
125#define PL_regsize (vTHX->Tregsize)
126#define PL_regstartp (vTHX->Tregstartp)
127#define PL_regtill (vTHX->Tregtill)
128#define PL_regxend (vTHX->Tregxend)
129#define PL_restartop (vTHX->Trestartop)
130#define PL_retstack (vTHX->Tretstack)
131#define PL_retstack_ix (vTHX->Tretstack_ix)
132#define PL_retstack_max (vTHX->Tretstack_max)
133#define PL_rs (vTHX->Trs)
134#define PL_savestack (vTHX->Tsavestack)
135#define PL_savestack_ix (vTHX->Tsavestack_ix)
136#define PL_savestack_max (vTHX->Tsavestack_max)
137#define PL_scopestack (vTHX->Tscopestack)
138#define PL_scopestack_ix (vTHX->Tscopestack_ix)
139#define PL_scopestack_max (vTHX->Tscopestack_max)
140#define PL_screamfirst (vTHX->Tscreamfirst)
141#define PL_screamnext (vTHX->Tscreamnext)
142#define PL_secondgv (vTHX->Tsecondgv)
143#define PL_seen_evals (vTHX->Tseen_evals)
144#define PL_seen_zerolen (vTHX->Tseen_zerolen)
145#define PL_sortcop (vTHX->Tsortcop)
146#define PL_sortcxix (vTHX->Tsortcxix)
147#define PL_sortstash (vTHX->Tsortstash)
148#define PL_stack_base (vTHX->Tstack_base)
149#define PL_stack_max (vTHX->Tstack_max)
150#define PL_stack_sp (vTHX->Tstack_sp)
151#define PL_start_env (vTHX->Tstart_env)
152#define PL_statbuf (vTHX->Tstatbuf)
153#define PL_statcache (vTHX->Tstatcache)
154#define PL_statgv (vTHX->Tstatgv)
155#define PL_statname (vTHX->Tstatname)
156#define PL_tainted (vTHX->Ttainted)
157#define PL_timesbuf (vTHX->Ttimesbuf)
158#define PL_tmps_floor (vTHX->Ttmps_floor)
159#define PL_tmps_ix (vTHX->Ttmps_ix)
160#define PL_tmps_max (vTHX->Ttmps_max)
161#define PL_tmps_stack (vTHX->Ttmps_stack)
162#define PL_top_env (vTHX->Ttop_env)
163#define PL_toptarget (vTHX->Ttoptarget)
db28379b 164#define PL_unused_1 (vTHX->Tunused_1)
54aff467
GS
165#define PL_watchaddr (vTHX->Twatchaddr)
166#define PL_watchok (vTHX->Twatchok)
d4cce5f1 167
4d1ff10f 168# if defined(USE_5005THREADS)
54aff467 169/* case 5 above */
d4cce5f1 170
c5be433b
GS
171#define PL_Argv (PERL_GET_INTERP->IArgv)
172#define PL_Cmd (PERL_GET_INTERP->ICmd)
173#define PL_DBcv (PERL_GET_INTERP->IDBcv)
174#define PL_DBgv (PERL_GET_INTERP->IDBgv)
175#define PL_DBline (PERL_GET_INTERP->IDBline)
176#define PL_DBsignal (PERL_GET_INTERP->IDBsignal)
177#define PL_DBsingle (PERL_GET_INTERP->IDBsingle)
178#define PL_DBsub (PERL_GET_INTERP->IDBsub)
179#define PL_DBtrace (PERL_GET_INTERP->IDBtrace)
180#define PL_Dir (PERL_GET_INTERP->IDir)
181#define PL_Env (PERL_GET_INTERP->IEnv)
182#define PL_LIO (PERL_GET_INTERP->ILIO)
183#define PL_Mem (PERL_GET_INTERP->IMem)
1d7c1841
GS
184#define PL_MemParse (PERL_GET_INTERP->IMemParse)
185#define PL_MemShared (PERL_GET_INTERP->IMemShared)
c5be433b
GS
186#define PL_Proc (PERL_GET_INTERP->IProc)
187#define PL_Sock (PERL_GET_INTERP->ISock)
188#define PL_StdIO (PERL_GET_INTERP->IStdIO)
189#define PL_amagic_generation (PERL_GET_INTERP->Iamagic_generation)
c5be433b 190#define PL_an (PERL_GET_INTERP->Ian)
c5be433b 191#define PL_argvgv (PERL_GET_INTERP->Iargvgv)
1d7c1841 192#define PL_argvout_stack (PERL_GET_INTERP->Iargvout_stack)
c5be433b
GS
193#define PL_argvoutgv (PERL_GET_INTERP->Iargvoutgv)
194#define PL_basetime (PERL_GET_INTERP->Ibasetime)
195#define PL_beginav (PERL_GET_INTERP->Ibeginav)
059a8bb7 196#define PL_beginav_save (PERL_GET_INTERP->Ibeginav_save)
c5be433b
GS
197#define PL_bitcount (PERL_GET_INTERP->Ibitcount)
198#define PL_bufend (PERL_GET_INTERP->Ibufend)
199#define PL_bufptr (PERL_GET_INTERP->Ibufptr)
7d30b5c4 200#define PL_checkav (PERL_GET_INTERP->Icheckav)
c5be433b
GS
201#define PL_collation_ix (PERL_GET_INTERP->Icollation_ix)
202#define PL_collation_name (PERL_GET_INTERP->Icollation_name)
203#define PL_collation_standard (PERL_GET_INTERP->Icollation_standard)
204#define PL_collxfrm_base (PERL_GET_INTERP->Icollxfrm_base)
205#define PL_collxfrm_mult (PERL_GET_INTERP->Icollxfrm_mult)
206#define PL_compcv (PERL_GET_INTERP->Icompcv)
207#define PL_compiling (PERL_GET_INTERP->Icompiling)
208#define PL_comppad (PERL_GET_INTERP->Icomppad)
209#define PL_comppad_name (PERL_GET_INTERP->Icomppad_name)
210#define PL_comppad_name_fill (PERL_GET_INTERP->Icomppad_name_fill)
211#define PL_comppad_name_floor (PERL_GET_INTERP->Icomppad_name_floor)
212#define PL_cop_seqmax (PERL_GET_INTERP->Icop_seqmax)
213#define PL_copline (PERL_GET_INTERP->Icopline)
214#define PL_cred_mutex (PERL_GET_INTERP->Icred_mutex)
215#define PL_cryptseen (PERL_GET_INTERP->Icryptseen)
216#define PL_cshlen (PERL_GET_INTERP->Icshlen)
217#define PL_cshname (PERL_GET_INTERP->Icshname)
218#define PL_curcopdb (PERL_GET_INTERP->Icurcopdb)
219#define PL_curstname (PERL_GET_INTERP->Icurstname)
220#define PL_curthr (PERL_GET_INTERP->Icurthr)
438c221d
AB
221#define PL_custom_op_descs (PERL_GET_INTERP->Icustom_op_descs)
222#define PL_custom_op_names (PERL_GET_INTERP->Icustom_op_names)
c5be433b 223#define PL_dbargs (PERL_GET_INTERP->Idbargs)
c5be433b
GS
224#define PL_debstash (PERL_GET_INTERP->Idebstash)
225#define PL_debug (PERL_GET_INTERP->Idebug)
ce333219 226#define PL_debug_pad (PERL_GET_INTERP->Idebug_pad)
3a1ee7e8 227#define PL_def_layerlist (PERL_GET_INTERP->Idef_layerlist)
c5be433b
GS
228#define PL_defgv (PERL_GET_INTERP->Idefgv)
229#define PL_diehook (PERL_GET_INTERP->Idiehook)
c5be433b
GS
230#define PL_doextract (PERL_GET_INTERP->Idoextract)
231#define PL_doswitches (PERL_GET_INTERP->Idoswitches)
232#define PL_dowarn (PERL_GET_INTERP->Idowarn)
233#define PL_e_script (PERL_GET_INTERP->Ie_script)
c5be433b 234#define PL_egid (PERL_GET_INTERP->Iegid)
0a378802 235#define PL_encoding (PERL_GET_INTERP->Iencoding)
c5be433b
GS
236#define PL_endav (PERL_GET_INTERP->Iendav)
237#define PL_envgv (PERL_GET_INTERP->Ienvgv)
238#define PL_errgv (PERL_GET_INTERP->Ierrgv)
239#define PL_error_count (PERL_GET_INTERP->Ierror_count)
240#define PL_euid (PERL_GET_INTERP->Ieuid)
241#define PL_eval_cond (PERL_GET_INTERP->Ieval_cond)
242#define PL_eval_mutex (PERL_GET_INTERP->Ieval_mutex)
243#define PL_eval_owner (PERL_GET_INTERP->Ieval_owner)
244#define PL_eval_root (PERL_GET_INTERP->Ieval_root)
245#define PL_eval_start (PERL_GET_INTERP->Ieval_start)
246#define PL_evalseq (PERL_GET_INTERP->Ievalseq)
1d7c1841 247#define PL_exit_flags (PERL_GET_INTERP->Iexit_flags)
c5be433b
GS
248#define PL_exitlist (PERL_GET_INTERP->Iexitlist)
249#define PL_exitlistlen (PERL_GET_INTERP->Iexitlistlen)
250#define PL_expect (PERL_GET_INTERP->Iexpect)
251#define PL_fdpid (PERL_GET_INTERP->Ifdpid)
48b1b78b 252#define PL_fdpid_mutex (PERL_GET_INTERP->Ifdpid_mutex)
c5be433b 253#define PL_filemode (PERL_GET_INTERP->Ifilemode)
c5be433b
GS
254#define PL_forkprocess (PERL_GET_INTERP->Iforkprocess)
255#define PL_formfeed (PERL_GET_INTERP->Iformfeed)
256#define PL_generation (PERL_GET_INTERP->Igeneration)
257#define PL_gensym (PERL_GET_INTERP->Igensym)
258#define PL_gid (PERL_GET_INTERP->Igid)
259#define PL_glob_index (PERL_GET_INTERP->Iglob_index)
260#define PL_globalstash (PERL_GET_INTERP->Iglobalstash)
612f20c3 261#define PL_he_arenaroot (PERL_GET_INTERP->Ihe_arenaroot)
c5be433b
GS
262#define PL_he_root (PERL_GET_INTERP->Ihe_root)
263#define PL_hintgv (PERL_GET_INTERP->Ihintgv)
264#define PL_hints (PERL_GET_INTERP->Ihints)
265#define PL_in_clean_all (PERL_GET_INTERP->Iin_clean_all)
266#define PL_in_clean_objs (PERL_GET_INTERP->Iin_clean_objs)
267#define PL_in_my (PERL_GET_INTERP->Iin_my)
268#define PL_in_my_stash (PERL_GET_INTERP->Iin_my_stash)
269#define PL_incgv (PERL_GET_INTERP->Iincgv)
270#define PL_initav (PERL_GET_INTERP->Iinitav)
271#define PL_inplace (PERL_GET_INTERP->Iinplace)
3a1ee7e8 272#define PL_known_layers (PERL_GET_INTERP->Iknown_layers)
c5be433b
GS
273#define PL_last_lop (PERL_GET_INTERP->Ilast_lop)
274#define PL_last_lop_op (PERL_GET_INTERP->Ilast_lop_op)
275#define PL_last_swash_hv (PERL_GET_INTERP->Ilast_swash_hv)
276#define PL_last_swash_key (PERL_GET_INTERP->Ilast_swash_key)
277#define PL_last_swash_klen (PERL_GET_INTERP->Ilast_swash_klen)
278#define PL_last_swash_slen (PERL_GET_INTERP->Ilast_swash_slen)
279#define PL_last_swash_tmps (PERL_GET_INTERP->Ilast_swash_tmps)
280#define PL_last_uni (PERL_GET_INTERP->Ilast_uni)
281#define PL_lastfd (PERL_GET_INTERP->Ilastfd)
c5be433b
GS
282#define PL_laststatval (PERL_GET_INTERP->Ilaststatval)
283#define PL_laststype (PERL_GET_INTERP->Ilaststype)
c5be433b
GS
284#define PL_lex_brackets (PERL_GET_INTERP->Ilex_brackets)
285#define PL_lex_brackstack (PERL_GET_INTERP->Ilex_brackstack)
286#define PL_lex_casemods (PERL_GET_INTERP->Ilex_casemods)
287#define PL_lex_casestack (PERL_GET_INTERP->Ilex_casestack)
288#define PL_lex_defer (PERL_GET_INTERP->Ilex_defer)
289#define PL_lex_dojoin (PERL_GET_INTERP->Ilex_dojoin)
290#define PL_lex_expect (PERL_GET_INTERP->Ilex_expect)
c5be433b
GS
291#define PL_lex_formbrack (PERL_GET_INTERP->Ilex_formbrack)
292#define PL_lex_inpat (PERL_GET_INTERP->Ilex_inpat)
293#define PL_lex_inwhat (PERL_GET_INTERP->Ilex_inwhat)
294#define PL_lex_op (PERL_GET_INTERP->Ilex_op)
295#define PL_lex_repl (PERL_GET_INTERP->Ilex_repl)
296#define PL_lex_starts (PERL_GET_INTERP->Ilex_starts)
297#define PL_lex_state (PERL_GET_INTERP->Ilex_state)
298#define PL_lex_stuff (PERL_GET_INTERP->Ilex_stuff)
299#define PL_lineary (PERL_GET_INTERP->Ilineary)
300#define PL_linestart (PERL_GET_INTERP->Ilinestart)
301#define PL_linestr (PERL_GET_INTERP->Ilinestr)
302#define PL_localpatches (PERL_GET_INTERP->Ilocalpatches)
303#define PL_main_cv (PERL_GET_INTERP->Imain_cv)
304#define PL_main_root (PERL_GET_INTERP->Imain_root)
305#define PL_main_start (PERL_GET_INTERP->Imain_start)
c5be433b
GS
306#define PL_max_intro_pending (PERL_GET_INTERP->Imax_intro_pending)
307#define PL_maxo (PERL_GET_INTERP->Imaxo)
308#define PL_maxsysfd (PERL_GET_INTERP->Imaxsysfd)
309#define PL_mess_sv (PERL_GET_INTERP->Imess_sv)
310#define PL_min_intro_pending (PERL_GET_INTERP->Imin_intro_pending)
311#define PL_minus_F (PERL_GET_INTERP->Iminus_F)
312#define PL_minus_a (PERL_GET_INTERP->Iminus_a)
313#define PL_minus_c (PERL_GET_INTERP->Iminus_c)
314#define PL_minus_l (PERL_GET_INTERP->Iminus_l)
315#define PL_minus_n (PERL_GET_INTERP->Iminus_n)
316#define PL_minus_p (PERL_GET_INTERP->Iminus_p)
317#define PL_modglobal (PERL_GET_INTERP->Imodglobal)
318#define PL_multi_close (PERL_GET_INTERP->Imulti_close)
319#define PL_multi_end (PERL_GET_INTERP->Imulti_end)
320#define PL_multi_open (PERL_GET_INTERP->Imulti_open)
321#define PL_multi_start (PERL_GET_INTERP->Imulti_start)
322#define PL_multiline (PERL_GET_INTERP->Imultiline)
c5be433b
GS
323#define PL_nexttoke (PERL_GET_INTERP->Inexttoke)
324#define PL_nexttype (PERL_GET_INTERP->Inexttype)
325#define PL_nextval (PERL_GET_INTERP->Inextval)
326#define PL_nice_chunk (PERL_GET_INTERP->Inice_chunk)
327#define PL_nice_chunk_size (PERL_GET_INTERP->Inice_chunk_size)
328#define PL_nomemok (PERL_GET_INTERP->Inomemok)
329#define PL_nthreads (PERL_GET_INTERP->Inthreads)
330#define PL_nthreads_cond (PERL_GET_INTERP->Inthreads_cond)
f180df80 331#define PL_nullstash (PERL_GET_INTERP->Inullstash)
a453c169 332#define PL_numeric_compat1 (PERL_GET_INTERP->Inumeric_compat1)
c5be433b
GS
333#define PL_numeric_local (PERL_GET_INTERP->Inumeric_local)
334#define PL_numeric_name (PERL_GET_INTERP->Inumeric_name)
a453c169 335#define PL_numeric_radix_sv (PERL_GET_INTERP->Inumeric_radix_sv)
c5be433b
GS
336#define PL_numeric_standard (PERL_GET_INTERP->Inumeric_standard)
337#define PL_ofmt (PERL_GET_INTERP->Iofmt)
338#define PL_oldbufptr (PERL_GET_INTERP->Ioldbufptr)
c5be433b
GS
339#define PL_oldname (PERL_GET_INTERP->Ioldname)
340#define PL_oldoldbufptr (PERL_GET_INTERP->Ioldoldbufptr)
341#define PL_op_mask (PERL_GET_INTERP->Iop_mask)
342#define PL_op_seqmax (PERL_GET_INTERP->Iop_seqmax)
343#define PL_origalen (PERL_GET_INTERP->Iorigalen)
344#define PL_origargc (PERL_GET_INTERP->Iorigargc)
345#define PL_origargv (PERL_GET_INTERP->Iorigargv)
346#define PL_origenviron (PERL_GET_INTERP->Iorigenviron)
347#define PL_origfilename (PERL_GET_INTERP->Iorigfilename)
7889fe52 348#define PL_ors_sv (PERL_GET_INTERP->Iors_sv)
c5be433b
GS
349#define PL_osname (PERL_GET_INTERP->Iosname)
350#define PL_pad_reset_pending (PERL_GET_INTERP->Ipad_reset_pending)
351#define PL_padix (PERL_GET_INTERP->Ipadix)
352#define PL_padix_floor (PERL_GET_INTERP->Ipadix_floor)
c5be433b
GS
353#define PL_patchlevel (PERL_GET_INTERP->Ipatchlevel)
354#define PL_pending_ident (PERL_GET_INTERP->Ipending_ident)
355#define PL_perl_destruct_level (PERL_GET_INTERP->Iperl_destruct_level)
356#define PL_perldb (PERL_GET_INTERP->Iperldb)
a1ea730d 357#define PL_perlio (PERL_GET_INTERP->Iperlio)
c5be433b
GS
358#define PL_pidstatus (PERL_GET_INTERP->Ipidstatus)
359#define PL_preambleav (PERL_GET_INTERP->Ipreambleav)
360#define PL_preambled (PERL_GET_INTERP->Ipreambled)
361#define PL_preprocess (PERL_GET_INTERP->Ipreprocess)
362#define PL_profiledata (PERL_GET_INTERP->Iprofiledata)
1d7c1841 363#define PL_psig_name (PERL_GET_INTERP->Ipsig_name)
ce08f86c 364#define PL_psig_pend (PERL_GET_INTERP->Ipsig_pend)
1d7c1841
GS
365#define PL_psig_ptr (PERL_GET_INTERP->Ipsig_ptr)
366#define PL_ptr_table (PERL_GET_INTERP->Iptr_table)
e5dd39fc 367#define PL_reentrant_buffer (PERL_GET_INTERP->Ireentrant_buffer)
1fcf4c12
AB
368#define PL_regex_pad (PERL_GET_INTERP->Iregex_pad)
369#define PL_regex_padav (PERL_GET_INTERP->Iregex_padav)
c5be433b 370#define PL_replgv (PERL_GET_INTERP->Ireplgv)
c5be433b
GS
371#define PL_rsfp (PERL_GET_INTERP->Irsfp)
372#define PL_rsfp_filters (PERL_GET_INTERP->Irsfp_filters)
373#define PL_runops (PERL_GET_INTERP->Irunops)
aefff11f 374#define PL_savebegin (PERL_GET_INTERP->Isavebegin)
c5be433b 375#define PL_sawampersand (PERL_GET_INTERP->Isawampersand)
c5be433b 376#define PL_sh_path (PERL_GET_INTERP->Ish_path)
ce08f86c 377#define PL_sig_pending (PERL_GET_INTERP->Isig_pending)
c5be433b
GS
378#define PL_sighandlerp (PERL_GET_INTERP->Isighandlerp)
379#define PL_splitstr (PERL_GET_INTERP->Isplitstr)
380#define PL_srand_called (PERL_GET_INTERP->Isrand_called)
381#define PL_statusvalue (PERL_GET_INTERP->Istatusvalue)
382#define PL_statusvalue_vms (PERL_GET_INTERP->Istatusvalue_vms)
bf49b057 383#define PL_stderrgv (PERL_GET_INTERP->Istderrgv)
c5be433b 384#define PL_stdingv (PERL_GET_INTERP->Istdingv)
c5be433b
GS
385#define PL_strtab (PERL_GET_INTERP->Istrtab)
386#define PL_strtab_mutex (PERL_GET_INTERP->Istrtab_mutex)
387#define PL_sub_generation (PERL_GET_INTERP->Isub_generation)
388#define PL_sublex_info (PERL_GET_INTERP->Isublex_info)
389#define PL_subline (PERL_GET_INTERP->Isubline)
390#define PL_subname (PERL_GET_INTERP->Isubname)
391#define PL_sv_arenaroot (PERL_GET_INTERP->Isv_arenaroot)
392#define PL_sv_count (PERL_GET_INTERP->Isv_count)
48b1b78b 393#define PL_sv_lock_mutex (PERL_GET_INTERP->Isv_lock_mutex)
c5be433b
GS
394#define PL_sv_mutex (PERL_GET_INTERP->Isv_mutex)
395#define PL_sv_no (PERL_GET_INTERP->Isv_no)
396#define PL_sv_objcount (PERL_GET_INTERP->Isv_objcount)
397#define PL_sv_root (PERL_GET_INTERP->Isv_root)
398#define PL_sv_undef (PERL_GET_INTERP->Isv_undef)
399#define PL_sv_yes (PERL_GET_INTERP->Isv_yes)
400#define PL_svref_mutex (PERL_GET_INTERP->Isvref_mutex)
401#define PL_sys_intern (PERL_GET_INTERP->Isys_intern)
402#define PL_tainting (PERL_GET_INTERP->Itainting)
c5be433b
GS
403#define PL_threadnum (PERL_GET_INTERP->Ithreadnum)
404#define PL_threads_mutex (PERL_GET_INTERP->Ithreads_mutex)
405#define PL_threadsv_names (PERL_GET_INTERP->Ithreadsv_names)
406#define PL_thrsv (PERL_GET_INTERP->Ithrsv)
407#define PL_tokenbuf (PERL_GET_INTERP->Itokenbuf)
408#define PL_uid (PERL_GET_INTERP->Iuid)
409#define PL_unsafe (PERL_GET_INTERP->Iunsafe)
410#define PL_utf8_alnum (PERL_GET_INTERP->Iutf8_alnum)
411#define PL_utf8_alnumc (PERL_GET_INTERP->Iutf8_alnumc)
412#define PL_utf8_alpha (PERL_GET_INTERP->Iutf8_alpha)
413#define PL_utf8_ascii (PERL_GET_INTERP->Iutf8_ascii)
414#define PL_utf8_cntrl (PERL_GET_INTERP->Iutf8_cntrl)
415#define PL_utf8_digit (PERL_GET_INTERP->Iutf8_digit)
416#define PL_utf8_graph (PERL_GET_INTERP->Iutf8_graph)
417#define PL_utf8_lower (PERL_GET_INTERP->Iutf8_lower)
418#define PL_utf8_mark (PERL_GET_INTERP->Iutf8_mark)
419#define PL_utf8_print (PERL_GET_INTERP->Iutf8_print)
420#define PL_utf8_punct (PERL_GET_INTERP->Iutf8_punct)
421#define PL_utf8_space (PERL_GET_INTERP->Iutf8_space)
b4e400f9 422#define PL_utf8_tofold (PERL_GET_INTERP->Iutf8_tofold)
c5be433b
GS
423#define PL_utf8_tolower (PERL_GET_INTERP->Iutf8_tolower)
424#define PL_utf8_totitle (PERL_GET_INTERP->Iutf8_totitle)
425#define PL_utf8_toupper (PERL_GET_INTERP->Iutf8_toupper)
426#define PL_utf8_upper (PERL_GET_INTERP->Iutf8_upper)
427#define PL_utf8_xdigit (PERL_GET_INTERP->Iutf8_xdigit)
428#define PL_uudmap (PERL_GET_INTERP->Iuudmap)
429#define PL_warnhook (PERL_GET_INTERP->Iwarnhook)
46487f74 430#define PL_widesyscalls (PERL_GET_INTERP->Iwidesyscalls)
c5be433b
GS
431#define PL_xiv_arenaroot (PERL_GET_INTERP->Ixiv_arenaroot)
432#define PL_xiv_root (PERL_GET_INTERP->Ixiv_root)
612f20c3 433#define PL_xnv_arenaroot (PERL_GET_INTERP->Ixnv_arenaroot)
c5be433b 434#define PL_xnv_root (PERL_GET_INTERP->Ixnv_root)
612f20c3 435#define PL_xpv_arenaroot (PERL_GET_INTERP->Ixpv_arenaroot)
c5be433b 436#define PL_xpv_root (PERL_GET_INTERP->Ixpv_root)
612f20c3 437#define PL_xpvav_arenaroot (PERL_GET_INTERP->Ixpvav_arenaroot)
932e9ff9 438#define PL_xpvav_root (PERL_GET_INTERP->Ixpvav_root)
612f20c3 439#define PL_xpvbm_arenaroot (PERL_GET_INTERP->Ixpvbm_arenaroot)
932e9ff9 440#define PL_xpvbm_root (PERL_GET_INTERP->Ixpvbm_root)
612f20c3 441#define PL_xpvcv_arenaroot (PERL_GET_INTERP->Ixpvcv_arenaroot)
932e9ff9 442#define PL_xpvcv_root (PERL_GET_INTERP->Ixpvcv_root)
612f20c3 443#define PL_xpvhv_arenaroot (PERL_GET_INTERP->Ixpvhv_arenaroot)
932e9ff9 444#define PL_xpvhv_root (PERL_GET_INTERP->Ixpvhv_root)
612f20c3 445#define PL_xpviv_arenaroot (PERL_GET_INTERP->Ixpviv_arenaroot)
932e9ff9 446#define PL_xpviv_root (PERL_GET_INTERP->Ixpviv_root)
612f20c3 447#define PL_xpvlv_arenaroot (PERL_GET_INTERP->Ixpvlv_arenaroot)
932e9ff9 448#define PL_xpvlv_root (PERL_GET_INTERP->Ixpvlv_root)
612f20c3 449#define PL_xpvmg_arenaroot (PERL_GET_INTERP->Ixpvmg_arenaroot)
932e9ff9 450#define PL_xpvmg_root (PERL_GET_INTERP->Ixpvmg_root)
612f20c3 451#define PL_xpvnv_arenaroot (PERL_GET_INTERP->Ixpvnv_arenaroot)
932e9ff9 452#define PL_xpvnv_root (PERL_GET_INTERP->Ixpvnv_root)
612f20c3 453#define PL_xrv_arenaroot (PERL_GET_INTERP->Ixrv_arenaroot)
c5be433b
GS
454#define PL_xrv_root (PERL_GET_INTERP->Ixrv_root)
455#define PL_yychar (PERL_GET_INTERP->Iyychar)
456#define PL_yydebug (PERL_GET_INTERP->Iyydebug)
457#define PL_yyerrflag (PERL_GET_INTERP->Iyyerrflag)
458#define PL_yylval (PERL_GET_INTERP->Iyylval)
459#define PL_yynerrs (PERL_GET_INTERP->Iyynerrs)
460#define PL_yyval (PERL_GET_INTERP->Iyyval)
d4cce5f1 461
4d1ff10f 462# else /* !USE_5005THREADS */
54aff467
GS
463/* cases 2 and 3 above */
464
465#define PL_Argv (vTHX->IArgv)
466#define PL_Cmd (vTHX->ICmd)
467#define PL_DBcv (vTHX->IDBcv)
468#define PL_DBgv (vTHX->IDBgv)
469#define PL_DBline (vTHX->IDBline)
470#define PL_DBsignal (vTHX->IDBsignal)
471#define PL_DBsingle (vTHX->IDBsingle)
472#define PL_DBsub (vTHX->IDBsub)
473#define PL_DBtrace (vTHX->IDBtrace)
474#define PL_Dir (vTHX->IDir)
475#define PL_Env (vTHX->IEnv)
476#define PL_LIO (vTHX->ILIO)
477#define PL_Mem (vTHX->IMem)
1d7c1841
GS
478#define PL_MemParse (vTHX->IMemParse)
479#define PL_MemShared (vTHX->IMemShared)
54aff467
GS
480#define PL_Proc (vTHX->IProc)
481#define PL_Sock (vTHX->ISock)
482#define PL_StdIO (vTHX->IStdIO)
483#define PL_amagic_generation (vTHX->Iamagic_generation)
54aff467 484#define PL_an (vTHX->Ian)
54aff467 485#define PL_argvgv (vTHX->Iargvgv)
1d7c1841 486#define PL_argvout_stack (vTHX->Iargvout_stack)
54aff467
GS
487#define PL_argvoutgv (vTHX->Iargvoutgv)
488#define PL_basetime (vTHX->Ibasetime)
489#define PL_beginav (vTHX->Ibeginav)
059a8bb7 490#define PL_beginav_save (vTHX->Ibeginav_save)
54aff467
GS
491#define PL_bitcount (vTHX->Ibitcount)
492#define PL_bufend (vTHX->Ibufend)
493#define PL_bufptr (vTHX->Ibufptr)
7d30b5c4 494#define PL_checkav (vTHX->Icheckav)
54aff467
GS
495#define PL_collation_ix (vTHX->Icollation_ix)
496#define PL_collation_name (vTHX->Icollation_name)
497#define PL_collation_standard (vTHX->Icollation_standard)
498#define PL_collxfrm_base (vTHX->Icollxfrm_base)
499#define PL_collxfrm_mult (vTHX->Icollxfrm_mult)
500#define PL_compcv (vTHX->Icompcv)
501#define PL_compiling (vTHX->Icompiling)
502#define PL_comppad (vTHX->Icomppad)
503#define PL_comppad_name (vTHX->Icomppad_name)
504#define PL_comppad_name_fill (vTHX->Icomppad_name_fill)
505#define PL_comppad_name_floor (vTHX->Icomppad_name_floor)
506#define PL_cop_seqmax (vTHX->Icop_seqmax)
507#define PL_copline (vTHX->Icopline)
508#define PL_cred_mutex (vTHX->Icred_mutex)
509#define PL_cryptseen (vTHX->Icryptseen)
510#define PL_cshlen (vTHX->Icshlen)
511#define PL_cshname (vTHX->Icshname)
512#define PL_curcopdb (vTHX->Icurcopdb)
513#define PL_curstname (vTHX->Icurstname)
514#define PL_curthr (vTHX->Icurthr)
438c221d
AB
515#define PL_custom_op_descs (vTHX->Icustom_op_descs)
516#define PL_custom_op_names (vTHX->Icustom_op_names)
54aff467 517#define PL_dbargs (vTHX->Idbargs)
54aff467
GS
518#define PL_debstash (vTHX->Idebstash)
519#define PL_debug (vTHX->Idebug)
ce333219 520#define PL_debug_pad (vTHX->Idebug_pad)
3a1ee7e8 521#define PL_def_layerlist (vTHX->Idef_layerlist)
54aff467
GS
522#define PL_defgv (vTHX->Idefgv)
523#define PL_diehook (vTHX->Idiehook)
54aff467
GS
524#define PL_doextract (vTHX->Idoextract)
525#define PL_doswitches (vTHX->Idoswitches)
526#define PL_dowarn (vTHX->Idowarn)
527#define PL_e_script (vTHX->Ie_script)
54aff467 528#define PL_egid (vTHX->Iegid)
0a378802 529#define PL_encoding (vTHX->Iencoding)
54aff467
GS
530#define PL_endav (vTHX->Iendav)
531#define PL_envgv (vTHX->Ienvgv)
532#define PL_errgv (vTHX->Ierrgv)
533#define PL_error_count (vTHX->Ierror_count)
534#define PL_euid (vTHX->Ieuid)
535#define PL_eval_cond (vTHX->Ieval_cond)
536#define PL_eval_mutex (vTHX->Ieval_mutex)
537#define PL_eval_owner (vTHX->Ieval_owner)
538#define PL_eval_root (vTHX->Ieval_root)
539#define PL_eval_start (vTHX->Ieval_start)
540#define PL_evalseq (vTHX->Ievalseq)
1d7c1841 541#define PL_exit_flags (vTHX->Iexit_flags)
54aff467
GS
542#define PL_exitlist (vTHX->Iexitlist)
543#define PL_exitlistlen (vTHX->Iexitlistlen)
544#define PL_expect (vTHX->Iexpect)
545#define PL_fdpid (vTHX->Ifdpid)
48b1b78b 546#define PL_fdpid_mutex (vTHX->Ifdpid_mutex)
54aff467 547#define PL_filemode (vTHX->Ifilemode)
54aff467
GS
548#define PL_forkprocess (vTHX->Iforkprocess)
549#define PL_formfeed (vTHX->Iformfeed)
550#define PL_generation (vTHX->Igeneration)
551#define PL_gensym (vTHX->Igensym)
552#define PL_gid (vTHX->Igid)
553#define PL_glob_index (vTHX->Iglob_index)
554#define PL_globalstash (vTHX->Iglobalstash)
612f20c3 555#define PL_he_arenaroot (vTHX->Ihe_arenaroot)
54aff467
GS
556#define PL_he_root (vTHX->Ihe_root)
557#define PL_hintgv (vTHX->Ihintgv)
558#define PL_hints (vTHX->Ihints)
559#define PL_in_clean_all (vTHX->Iin_clean_all)
560#define PL_in_clean_objs (vTHX->Iin_clean_objs)
561#define PL_in_my (vTHX->Iin_my)
562#define PL_in_my_stash (vTHX->Iin_my_stash)
563#define PL_incgv (vTHX->Iincgv)
564#define PL_initav (vTHX->Iinitav)
565#define PL_inplace (vTHX->Iinplace)
3a1ee7e8 566#define PL_known_layers (vTHX->Iknown_layers)
54aff467
GS
567#define PL_last_lop (vTHX->Ilast_lop)
568#define PL_last_lop_op (vTHX->Ilast_lop_op)
569#define PL_last_swash_hv (vTHX->Ilast_swash_hv)
570#define PL_last_swash_key (vTHX->Ilast_swash_key)
571#define PL_last_swash_klen (vTHX->Ilast_swash_klen)
572#define PL_last_swash_slen (vTHX->Ilast_swash_slen)
573#define PL_last_swash_tmps (vTHX->Ilast_swash_tmps)
574#define PL_last_uni (vTHX->Ilast_uni)
575#define PL_lastfd (vTHX->Ilastfd)
54aff467
GS
576#define PL_laststatval (vTHX->Ilaststatval)
577#define PL_laststype (vTHX->Ilaststype)
54aff467
GS
578#define PL_lex_brackets (vTHX->Ilex_brackets)
579#define PL_lex_brackstack (vTHX->Ilex_brackstack)
580#define PL_lex_casemods (vTHX->Ilex_casemods)
581#define PL_lex_casestack (vTHX->Ilex_casestack)
582#define PL_lex_defer (vTHX->Ilex_defer)
583#define PL_lex_dojoin (vTHX->Ilex_dojoin)
584#define PL_lex_expect (vTHX->Ilex_expect)
54aff467
GS
585#define PL_lex_formbrack (vTHX->Ilex_formbrack)
586#define PL_lex_inpat (vTHX->Ilex_inpat)
587#define PL_lex_inwhat (vTHX->Ilex_inwhat)
588#define PL_lex_op (vTHX->Ilex_op)
589#define PL_lex_repl (vTHX->Ilex_repl)
590#define PL_lex_starts (vTHX->Ilex_starts)
591#define PL_lex_state (vTHX->Ilex_state)
592#define PL_lex_stuff (vTHX->Ilex_stuff)
593#define PL_lineary (vTHX->Ilineary)
594#define PL_linestart (vTHX->Ilinestart)
595#define PL_linestr (vTHX->Ilinestr)
596#define PL_localpatches (vTHX->Ilocalpatches)
597#define PL_main_cv (vTHX->Imain_cv)
598#define PL_main_root (vTHX->Imain_root)
599#define PL_main_start (vTHX->Imain_start)
54aff467
GS
600#define PL_max_intro_pending (vTHX->Imax_intro_pending)
601#define PL_maxo (vTHX->Imaxo)
602#define PL_maxsysfd (vTHX->Imaxsysfd)
603#define PL_mess_sv (vTHX->Imess_sv)
604#define PL_min_intro_pending (vTHX->Imin_intro_pending)
605#define PL_minus_F (vTHX->Iminus_F)
606#define PL_minus_a (vTHX->Iminus_a)
607#define PL_minus_c (vTHX->Iminus_c)
608#define PL_minus_l (vTHX->Iminus_l)
609#define PL_minus_n (vTHX->Iminus_n)
610#define PL_minus_p (vTHX->Iminus_p)
611#define PL_modglobal (vTHX->Imodglobal)
612#define PL_multi_close (vTHX->Imulti_close)
613#define PL_multi_end (vTHX->Imulti_end)
614#define PL_multi_open (vTHX->Imulti_open)
615#define PL_multi_start (vTHX->Imulti_start)
616#define PL_multiline (vTHX->Imultiline)
54aff467
GS
617#define PL_nexttoke (vTHX->Inexttoke)
618#define PL_nexttype (vTHX->Inexttype)
619#define PL_nextval (vTHX->Inextval)
620#define PL_nice_chunk (vTHX->Inice_chunk)
621#define PL_nice_chunk_size (vTHX->Inice_chunk_size)
622#define PL_nomemok (vTHX->Inomemok)
623#define PL_nthreads (vTHX->Inthreads)
624#define PL_nthreads_cond (vTHX->Inthreads_cond)
f180df80 625#define PL_nullstash (vTHX->Inullstash)
a453c169 626#define PL_numeric_compat1 (vTHX->Inumeric_compat1)
54aff467
GS
627#define PL_numeric_local (vTHX->Inumeric_local)
628#define PL_numeric_name (vTHX->Inumeric_name)
a453c169 629#define PL_numeric_radix_sv (vTHX->Inumeric_radix_sv)
54aff467
GS
630#define PL_numeric_standard (vTHX->Inumeric_standard)
631#define PL_ofmt (vTHX->Iofmt)
632#define PL_oldbufptr (vTHX->Ioldbufptr)
54aff467
GS
633#define PL_oldname (vTHX->Ioldname)
634#define PL_oldoldbufptr (vTHX->Ioldoldbufptr)
635#define PL_op_mask (vTHX->Iop_mask)
636#define PL_op_seqmax (vTHX->Iop_seqmax)
637#define PL_origalen (vTHX->Iorigalen)
638#define PL_origargc (vTHX->Iorigargc)
639#define PL_origargv (vTHX->Iorigargv)
640#define PL_origenviron (vTHX->Iorigenviron)
641#define PL_origfilename (vTHX->Iorigfilename)
7889fe52 642#define PL_ors_sv (vTHX->Iors_sv)
54aff467
GS
643#define PL_osname (vTHX->Iosname)
644#define PL_pad_reset_pending (vTHX->Ipad_reset_pending)
645#define PL_padix (vTHX->Ipadix)
646#define PL_padix_floor (vTHX->Ipadix_floor)
54aff467
GS
647#define PL_patchlevel (vTHX->Ipatchlevel)
648#define PL_pending_ident (vTHX->Ipending_ident)
649#define PL_perl_destruct_level (vTHX->Iperl_destruct_level)
650#define PL_perldb (vTHX->Iperldb)
a1ea730d 651#define PL_perlio (vTHX->Iperlio)
54aff467
GS
652#define PL_pidstatus (vTHX->Ipidstatus)
653#define PL_preambleav (vTHX->Ipreambleav)
654#define PL_preambled (vTHX->Ipreambled)
655#define PL_preprocess (vTHX->Ipreprocess)
656#define PL_profiledata (vTHX->Iprofiledata)
1d7c1841 657#define PL_psig_name (vTHX->Ipsig_name)
ce08f86c 658#define PL_psig_pend (vTHX->Ipsig_pend)
1d7c1841
GS
659#define PL_psig_ptr (vTHX->Ipsig_ptr)
660#define PL_ptr_table (vTHX->Iptr_table)
e5dd39fc 661#define PL_reentrant_buffer (vTHX->Ireentrant_buffer)
1fcf4c12
AB
662#define PL_regex_pad (vTHX->Iregex_pad)
663#define PL_regex_padav (vTHX->Iregex_padav)
54aff467 664#define PL_replgv (vTHX->Ireplgv)
54aff467
GS
665#define PL_rsfp (vTHX->Irsfp)
666#define PL_rsfp_filters (vTHX->Irsfp_filters)
667#define PL_runops (vTHX->Irunops)
aefff11f 668#define PL_savebegin (vTHX->Isavebegin)
54aff467 669#define PL_sawampersand (vTHX->Isawampersand)
54aff467 670#define PL_sh_path (vTHX->Ish_path)
ce08f86c 671#define PL_sig_pending (vTHX->Isig_pending)
54aff467
GS
672#define PL_sighandlerp (vTHX->Isighandlerp)
673#define PL_splitstr (vTHX->Isplitstr)
674#define PL_srand_called (vTHX->Isrand_called)
675#define PL_statusvalue (vTHX->Istatusvalue)
676#define PL_statusvalue_vms (vTHX->Istatusvalue_vms)
bf49b057 677#define PL_stderrgv (vTHX->Istderrgv)
54aff467 678#define PL_stdingv (vTHX->Istdingv)
54aff467
GS
679#define PL_strtab (vTHX->Istrtab)
680#define PL_strtab_mutex (vTHX->Istrtab_mutex)
681#define PL_sub_generation (vTHX->Isub_generation)
682#define PL_sublex_info (vTHX->Isublex_info)
683#define PL_subline (vTHX->Isubline)
684#define PL_subname (vTHX->Isubname)
685#define PL_sv_arenaroot (vTHX->Isv_arenaroot)
686#define PL_sv_count (vTHX->Isv_count)
48b1b78b 687#define PL_sv_lock_mutex (vTHX->Isv_lock_mutex)
54aff467
GS
688#define PL_sv_mutex (vTHX->Isv_mutex)
689#define PL_sv_no (vTHX->Isv_no)
690#define PL_sv_objcount (vTHX->Isv_objcount)
691#define PL_sv_root (vTHX->Isv_root)
692#define PL_sv_undef (vTHX->Isv_undef)
693#define PL_sv_yes (vTHX->Isv_yes)
694#define PL_svref_mutex (vTHX->Isvref_mutex)
695#define PL_sys_intern (vTHX->Isys_intern)
696#define PL_tainting (vTHX->Itainting)
54aff467
GS
697#define PL_threadnum (vTHX->Ithreadnum)
698#define PL_threads_mutex (vTHX->Ithreads_mutex)
699#define PL_threadsv_names (vTHX->Ithreadsv_names)
700#define PL_thrsv (vTHX->Ithrsv)
701#define PL_tokenbuf (vTHX->Itokenbuf)
702#define PL_uid (vTHX->Iuid)
703#define PL_unsafe (vTHX->Iunsafe)
704#define PL_utf8_alnum (vTHX->Iutf8_alnum)
705#define PL_utf8_alnumc (vTHX->Iutf8_alnumc)
706#define PL_utf8_alpha (vTHX->Iutf8_alpha)
707#define PL_utf8_ascii (vTHX->Iutf8_ascii)
708#define PL_utf8_cntrl (vTHX->Iutf8_cntrl)
709#define PL_utf8_digit (vTHX->Iutf8_digit)
710#define PL_utf8_graph (vTHX->Iutf8_graph)
711#define PL_utf8_lower (vTHX->Iutf8_lower)
712#define PL_utf8_mark (vTHX->Iutf8_mark)
713#define PL_utf8_print (vTHX->Iutf8_print)
714#define PL_utf8_punct (vTHX->Iutf8_punct)
715#define PL_utf8_space (vTHX->Iutf8_space)
b4e400f9 716#define PL_utf8_tofold (vTHX->Iutf8_tofold)
54aff467
GS
717#define PL_utf8_tolower (vTHX->Iutf8_tolower)
718#define PL_utf8_totitle (vTHX->Iutf8_totitle)
719#define PL_utf8_toupper (vTHX->Iutf8_toupper)
720#define PL_utf8_upper (vTHX->Iutf8_upper)
721#define PL_utf8_xdigit (vTHX->Iutf8_xdigit)
722#define PL_uudmap (vTHX->Iuudmap)
723#define PL_warnhook (vTHX->Iwarnhook)
46487f74 724#define PL_widesyscalls (vTHX->Iwidesyscalls)
54aff467
GS
725#define PL_xiv_arenaroot (vTHX->Ixiv_arenaroot)
726#define PL_xiv_root (vTHX->Ixiv_root)
612f20c3 727#define PL_xnv_arenaroot (vTHX->Ixnv_arenaroot)
54aff467 728#define PL_xnv_root (vTHX->Ixnv_root)
612f20c3 729#define PL_xpv_arenaroot (vTHX->Ixpv_arenaroot)
54aff467 730#define PL_xpv_root (vTHX->Ixpv_root)
612f20c3 731#define PL_xpvav_arenaroot (vTHX->Ixpvav_arenaroot)
932e9ff9 732#define PL_xpvav_root (vTHX->Ixpvav_root)
612f20c3 733#define PL_xpvbm_arenaroot (vTHX->Ixpvbm_arenaroot)
932e9ff9 734#define PL_xpvbm_root (vTHX->Ixpvbm_root)
612f20c3 735#define PL_xpvcv_arenaroot (vTHX->Ixpvcv_arenaroot)
932e9ff9 736#define PL_xpvcv_root (vTHX->Ixpvcv_root)
612f20c3 737#define PL_xpvhv_arenaroot (vTHX->Ixpvhv_arenaroot)
932e9ff9 738#define PL_xpvhv_root (vTHX->Ixpvhv_root)
612f20c3 739#define PL_xpviv_arenaroot (vTHX->Ixpviv_arenaroot)
932e9ff9 740#define PL_xpviv_root (vTHX->Ixpviv_root)
612f20c3 741#define PL_xpvlv_arenaroot (vTHX->Ixpvlv_arenaroot)
932e9ff9 742#define PL_xpvlv_root (vTHX->Ixpvlv_root)
612f20c3 743#define PL_xpvmg_arenaroot (vTHX->Ixpvmg_arenaroot)
932e9ff9 744#define PL_xpvmg_root (vTHX->Ixpvmg_root)
612f20c3 745#define PL_xpvnv_arenaroot (vTHX->Ixpvnv_arenaroot)
932e9ff9 746#define PL_xpvnv_root (vTHX->Ixpvnv_root)
612f20c3 747#define PL_xrv_arenaroot (vTHX->Ixrv_arenaroot)
54aff467
GS
748#define PL_xrv_root (vTHX->Ixrv_root)
749#define PL_yychar (vTHX->Iyychar)
750#define PL_yydebug (vTHX->Iyydebug)
751#define PL_yyerrflag (vTHX->Iyyerrflag)
752#define PL_yylval (vTHX->Iyylval)
753#define PL_yynerrs (vTHX->Iyynerrs)
754#define PL_yyval (vTHX->Iyyval)
755
4d1ff10f 756# endif /* USE_5005THREADS */
54aff467 757
d4cce5f1 758#else /* !MULTIPLICITY */
1d7c1841 759
1d7c1841 760/* cases 1 and 4 above */
d4cce5f1 761
533c011a
NIS
762#define PL_IArgv PL_Argv
763#define PL_ICmd PL_Cmd
764#define PL_IDBcv PL_DBcv
765#define PL_IDBgv PL_DBgv
766#define PL_IDBline PL_DBline
767#define PL_IDBsignal PL_DBsignal
768#define PL_IDBsingle PL_DBsingle
769#define PL_IDBsub PL_DBsub
770#define PL_IDBtrace PL_DBtrace
51371543
GS
771#define PL_IDir PL_Dir
772#define PL_IEnv PL_Env
773#define PL_ILIO PL_LIO
774#define PL_IMem PL_Mem
1d7c1841
GS
775#define PL_IMemParse PL_MemParse
776#define PL_IMemShared PL_MemShared
51371543
GS
777#define PL_IProc PL_Proc
778#define PL_ISock PL_Sock
779#define PL_IStdIO PL_StdIO
0672f40e 780#define PL_Iamagic_generation PL_amagic_generation
0672f40e 781#define PL_Ian PL_an
533c011a 782#define PL_Iargvgv PL_argvgv
1d7c1841 783#define PL_Iargvout_stack PL_argvout_stack
533c011a
NIS
784#define PL_Iargvoutgv PL_argvoutgv
785#define PL_Ibasetime PL_basetime
786#define PL_Ibeginav PL_beginav
059a8bb7 787#define PL_Ibeginav_save PL_beginav_save
0672f40e
GS
788#define PL_Ibitcount PL_bitcount
789#define PL_Ibufend PL_bufend
790#define PL_Ibufptr PL_bufptr
7d30b5c4 791#define PL_Icheckav PL_checkav
0672f40e
GS
792#define PL_Icollation_ix PL_collation_ix
793#define PL_Icollation_name PL_collation_name
794#define PL_Icollation_standard PL_collation_standard
795#define PL_Icollxfrm_base PL_collxfrm_base
796#define PL_Icollxfrm_mult PL_collxfrm_mult
533c011a
NIS
797#define PL_Icompcv PL_compcv
798#define PL_Icompiling PL_compiling
799#define PL_Icomppad PL_comppad
800#define PL_Icomppad_name PL_comppad_name
801#define PL_Icomppad_name_fill PL_comppad_name_fill
802#define PL_Icomppad_name_floor PL_comppad_name_floor
0672f40e 803#define PL_Icop_seqmax PL_cop_seqmax
533c011a 804#define PL_Icopline PL_copline
73c4f7a1 805#define PL_Icred_mutex PL_cred_mutex
0672f40e
GS
806#define PL_Icryptseen PL_cryptseen
807#define PL_Icshlen PL_cshlen
808#define PL_Icshname PL_cshname
533c011a
NIS
809#define PL_Icurcopdb PL_curcopdb
810#define PL_Icurstname PL_curstname
73c4f7a1 811#define PL_Icurthr PL_curthr
438c221d
AB
812#define PL_Icustom_op_descs PL_custom_op_descs
813#define PL_Icustom_op_names PL_custom_op_names
533c011a 814#define PL_Idbargs PL_dbargs
533c011a 815#define PL_Idebstash PL_debstash
0672f40e 816#define PL_Idebug PL_debug
ce333219 817#define PL_Idebug_pad PL_debug_pad
3a1ee7e8 818#define PL_Idef_layerlist PL_def_layerlist
533c011a
NIS
819#define PL_Idefgv PL_defgv
820#define PL_Idiehook PL_diehook
533c011a
NIS
821#define PL_Idoextract PL_doextract
822#define PL_Idoswitches PL_doswitches
823#define PL_Idowarn PL_dowarn
533c011a 824#define PL_Ie_script PL_e_script
0672f40e 825#define PL_Iegid PL_egid
0a378802 826#define PL_Iencoding PL_encoding
533c011a
NIS
827#define PL_Iendav PL_endav
828#define PL_Ienvgv PL_envgv
829#define PL_Ierrgv PL_errgv
0672f40e
GS
830#define PL_Ierror_count PL_error_count
831#define PL_Ieuid PL_euid
73c4f7a1
GS
832#define PL_Ieval_cond PL_eval_cond
833#define PL_Ieval_mutex PL_eval_mutex
834#define PL_Ieval_owner PL_eval_owner
533c011a
NIS
835#define PL_Ieval_root PL_eval_root
836#define PL_Ieval_start PL_eval_start
0672f40e 837#define PL_Ievalseq PL_evalseq
1d7c1841 838#define PL_Iexit_flags PL_exit_flags
533c011a
NIS
839#define PL_Iexitlist PL_exitlist
840#define PL_Iexitlistlen PL_exitlistlen
0672f40e 841#define PL_Iexpect PL_expect
533c011a 842#define PL_Ifdpid PL_fdpid
48b1b78b 843#define PL_Ifdpid_mutex PL_fdpid_mutex
533c011a
NIS
844#define PL_Ifilemode PL_filemode
845#define PL_Iforkprocess PL_forkprocess
846#define PL_Iformfeed PL_formfeed
847#define PL_Igeneration PL_generation
848#define PL_Igensym PL_gensym
0672f40e
GS
849#define PL_Igid PL_gid
850#define PL_Iglob_index PL_glob_index
533c011a 851#define PL_Iglobalstash PL_globalstash
612f20c3 852#define PL_Ihe_arenaroot PL_he_arenaroot
0672f40e 853#define PL_Ihe_root PL_he_root
533c011a 854#define PL_Ihintgv PL_hintgv
0672f40e 855#define PL_Ihints PL_hints
533c011a
NIS
856#define PL_Iin_clean_all PL_in_clean_all
857#define PL_Iin_clean_objs PL_in_clean_objs
0672f40e
GS
858#define PL_Iin_my PL_in_my
859#define PL_Iin_my_stash PL_in_my_stash
533c011a
NIS
860#define PL_Iincgv PL_incgv
861#define PL_Iinitav PL_initav
862#define PL_Iinplace PL_inplace
3a1ee7e8 863#define PL_Iknown_layers PL_known_layers
0672f40e
GS
864#define PL_Ilast_lop PL_last_lop
865#define PL_Ilast_lop_op PL_last_lop_op
866#define PL_Ilast_swash_hv PL_last_swash_hv
867#define PL_Ilast_swash_key PL_last_swash_key
868#define PL_Ilast_swash_klen PL_last_swash_klen
869#define PL_Ilast_swash_slen PL_last_swash_slen
870#define PL_Ilast_swash_tmps PL_last_swash_tmps
871#define PL_Ilast_uni PL_last_uni
533c011a 872#define PL_Ilastfd PL_lastfd
533c011a
NIS
873#define PL_Ilaststatval PL_laststatval
874#define PL_Ilaststype PL_laststype
0672f40e
GS
875#define PL_Ilex_brackets PL_lex_brackets
876#define PL_Ilex_brackstack PL_lex_brackstack
877#define PL_Ilex_casemods PL_lex_casemods
878#define PL_Ilex_casestack PL_lex_casestack
879#define PL_Ilex_defer PL_lex_defer
880#define PL_Ilex_dojoin PL_lex_dojoin
881#define PL_Ilex_expect PL_lex_expect
0672f40e
GS
882#define PL_Ilex_formbrack PL_lex_formbrack
883#define PL_Ilex_inpat PL_lex_inpat
884#define PL_Ilex_inwhat PL_lex_inwhat
885#define PL_Ilex_op PL_lex_op
886#define PL_Ilex_repl PL_lex_repl
887#define PL_Ilex_starts PL_lex_starts
888#define PL_Ilex_state PL_lex_state
889#define PL_Ilex_stuff PL_lex_stuff
533c011a
NIS
890#define PL_Ilineary PL_lineary
891#define PL_Ilinestart PL_linestart
0672f40e 892#define PL_Ilinestr PL_linestr
533c011a
NIS
893#define PL_Ilocalpatches PL_localpatches
894#define PL_Imain_cv PL_main_cv
895#define PL_Imain_root PL_main_root
896#define PL_Imain_start PL_main_start
0672f40e
GS
897#define PL_Imax_intro_pending PL_max_intro_pending
898#define PL_Imaxo PL_maxo
533c011a
NIS
899#define PL_Imaxsysfd PL_maxsysfd
900#define PL_Imess_sv PL_mess_sv
0672f40e 901#define PL_Imin_intro_pending PL_min_intro_pending
533c011a
NIS
902#define PL_Iminus_F PL_minus_F
903#define PL_Iminus_a PL_minus_a
904#define PL_Iminus_c PL_minus_c
905#define PL_Iminus_l PL_minus_l
906#define PL_Iminus_n PL_minus_n
907#define PL_Iminus_p PL_minus_p
908#define PL_Imodglobal PL_modglobal
0672f40e
GS
909#define PL_Imulti_close PL_multi_close
910#define PL_Imulti_end PL_multi_end
911#define PL_Imulti_open PL_multi_open
912#define PL_Imulti_start PL_multi_start
533c011a 913#define PL_Imultiline PL_multiline
0672f40e
GS
914#define PL_Inexttoke PL_nexttoke
915#define PL_Inexttype PL_nexttype
916#define PL_Inextval PL_nextval
917#define PL_Inice_chunk PL_nice_chunk
918#define PL_Inice_chunk_size PL_nice_chunk_size
919#define PL_Inomemok PL_nomemok
73c4f7a1
GS
920#define PL_Inthreads PL_nthreads
921#define PL_Inthreads_cond PL_nthreads_cond
f180df80 922#define PL_Inullstash PL_nullstash
a453c169 923#define PL_Inumeric_compat1 PL_numeric_compat1
0672f40e
GS
924#define PL_Inumeric_local PL_numeric_local
925#define PL_Inumeric_name PL_numeric_name
a453c169 926#define PL_Inumeric_radix_sv PL_numeric_radix_sv
0672f40e 927#define PL_Inumeric_standard PL_numeric_standard
533c011a 928#define PL_Iofmt PL_ofmt
0672f40e 929#define PL_Ioldbufptr PL_oldbufptr
533c011a 930#define PL_Ioldname PL_oldname
0672f40e 931#define PL_Ioldoldbufptr PL_oldoldbufptr
533c011a 932#define PL_Iop_mask PL_op_mask
0672f40e
GS
933#define PL_Iop_seqmax PL_op_seqmax
934#define PL_Iorigalen PL_origalen
533c011a
NIS
935#define PL_Iorigargc PL_origargc
936#define PL_Iorigargv PL_origargv
0672f40e 937#define PL_Iorigenviron PL_origenviron
533c011a 938#define PL_Iorigfilename PL_origfilename
7889fe52 939#define PL_Iors_sv PL_ors_sv
0672f40e
GS
940#define PL_Iosname PL_osname
941#define PL_Ipad_reset_pending PL_pad_reset_pending
942#define PL_Ipadix PL_padix
943#define PL_Ipadix_floor PL_padix_floor
533c011a
NIS
944#define PL_Ipatchlevel PL_patchlevel
945#define PL_Ipending_ident PL_pending_ident
946#define PL_Iperl_destruct_level PL_perl_destruct_level
947#define PL_Iperldb PL_perldb
a1ea730d 948#define PL_Iperlio PL_perlio
0672f40e 949#define PL_Ipidstatus PL_pidstatus
533c011a
NIS
950#define PL_Ipreambleav PL_preambleav
951#define PL_Ipreambled PL_preambled
952#define PL_Ipreprocess PL_preprocess
953#define PL_Iprofiledata PL_profiledata
1d7c1841 954#define PL_Ipsig_name PL_psig_name
ce08f86c 955#define PL_Ipsig_pend PL_psig_pend
1d7c1841
GS
956#define PL_Ipsig_ptr PL_psig_ptr
957#define PL_Iptr_table PL_ptr_table
e5dd39fc 958#define PL_Ireentrant_buffer PL_reentrant_buffer
1fcf4c12
AB
959#define PL_Iregex_pad PL_regex_pad
960#define PL_Iregex_padav PL_regex_padav
533c011a 961#define PL_Ireplgv PL_replgv
533c011a
NIS
962#define PL_Irsfp PL_rsfp
963#define PL_Irsfp_filters PL_rsfp_filters
0672f40e 964#define PL_Irunops PL_runops
aefff11f 965#define PL_Isavebegin PL_savebegin
533c011a 966#define PL_Isawampersand PL_sawampersand
0672f40e 967#define PL_Ish_path PL_sh_path
ce08f86c 968#define PL_Isig_pending PL_sig_pending
0672f40e 969#define PL_Isighandlerp PL_sighandlerp
533c011a 970#define PL_Isplitstr PL_splitstr
0672f40e 971#define PL_Isrand_called PL_srand_called
533c011a
NIS
972#define PL_Istatusvalue PL_statusvalue
973#define PL_Istatusvalue_vms PL_statusvalue_vms
bf49b057 974#define PL_Istderrgv PL_stderrgv
533c011a 975#define PL_Istdingv PL_stdingv
533c011a 976#define PL_Istrtab PL_strtab
5f08fbcd 977#define PL_Istrtab_mutex PL_strtab_mutex
533c011a
NIS
978#define PL_Isub_generation PL_sub_generation
979#define PL_Isublex_info PL_sublex_info
0672f40e
GS
980#define PL_Isubline PL_subline
981#define PL_Isubname PL_subname
533c011a
NIS
982#define PL_Isv_arenaroot PL_sv_arenaroot
983#define PL_Isv_count PL_sv_count
48b1b78b 984#define PL_Isv_lock_mutex PL_sv_lock_mutex
73c4f7a1 985#define PL_Isv_mutex PL_sv_mutex
0672f40e 986#define PL_Isv_no PL_sv_no
533c011a
NIS
987#define PL_Isv_objcount PL_sv_objcount
988#define PL_Isv_root PL_sv_root
0672f40e
GS
989#define PL_Isv_undef PL_sv_undef
990#define PL_Isv_yes PL_sv_yes
73c4f7a1 991#define PL_Isvref_mutex PL_svref_mutex
533c011a
NIS
992#define PL_Isys_intern PL_sys_intern
993#define PL_Itainting PL_tainting
994#define PL_Ithreadnum PL_threadnum
73c4f7a1
GS
995#define PL_Ithreads_mutex PL_threads_mutex
996#define PL_Ithreadsv_names PL_threadsv_names
533c011a 997#define PL_Ithrsv PL_thrsv
0672f40e
GS
998#define PL_Itokenbuf PL_tokenbuf
999#define PL_Iuid PL_uid
533c011a 1000#define PL_Iunsafe PL_unsafe
0672f40e 1001#define PL_Iutf8_alnum PL_utf8_alnum
b8c5462f 1002#define PL_Iutf8_alnumc PL_utf8_alnumc
0672f40e 1003#define PL_Iutf8_alpha PL_utf8_alpha
b8c5462f
JH
1004#define PL_Iutf8_ascii PL_utf8_ascii
1005#define PL_Iutf8_cntrl PL_utf8_cntrl
0672f40e 1006#define PL_Iutf8_digit PL_utf8_digit
b8c5462f 1007#define PL_Iutf8_graph PL_utf8_graph
0672f40e
GS
1008#define PL_Iutf8_lower PL_utf8_lower
1009#define PL_Iutf8_mark PL_utf8_mark
1010#define PL_Iutf8_print PL_utf8_print
b8c5462f 1011#define PL_Iutf8_punct PL_utf8_punct
0672f40e 1012#define PL_Iutf8_space PL_utf8_space
b4e400f9 1013#define PL_Iutf8_tofold PL_utf8_tofold
0672f40e
GS
1014#define PL_Iutf8_tolower PL_utf8_tolower
1015#define PL_Iutf8_totitle PL_utf8_totitle
1016#define PL_Iutf8_toupper PL_utf8_toupper
1017#define PL_Iutf8_upper PL_utf8_upper
b8c5462f 1018#define PL_Iutf8_xdigit PL_utf8_xdigit
0672f40e 1019#define PL_Iuudmap PL_uudmap
533c011a 1020#define PL_Iwarnhook PL_warnhook
46487f74 1021#define PL_Iwidesyscalls PL_widesyscalls
0672f40e
GS
1022#define PL_Ixiv_arenaroot PL_xiv_arenaroot
1023#define PL_Ixiv_root PL_xiv_root
612f20c3 1024#define PL_Ixnv_arenaroot PL_xnv_arenaroot
0672f40e 1025#define PL_Ixnv_root PL_xnv_root
612f20c3 1026#define PL_Ixpv_arenaroot PL_xpv_arenaroot
0672f40e 1027#define PL_Ixpv_root PL_xpv_root
612f20c3 1028#define PL_Ixpvav_arenaroot PL_xpvav_arenaroot
932e9ff9 1029#define PL_Ixpvav_root PL_xpvav_root
612f20c3 1030#define PL_Ixpvbm_arenaroot PL_xpvbm_arenaroot
932e9ff9 1031#define PL_Ixpvbm_root PL_xpvbm_root
612f20c3 1032#define PL_Ixpvcv_arenaroot PL_xpvcv_arenaroot
932e9ff9 1033#define PL_Ixpvcv_root PL_xpvcv_root
612f20c3 1034#define PL_Ixpvhv_arenaroot PL_xpvhv_arenaroot
932e9ff9 1035#define PL_Ixpvhv_root PL_xpvhv_root
612f20c3 1036#define PL_Ixpviv_arenaroot PL_xpviv_arenaroot
932e9ff9 1037#define PL_Ixpviv_root PL_xpviv_root
612f20c3 1038#define PL_Ixpvlv_arenaroot PL_xpvlv_arenaroot
932e9ff9 1039#define PL_Ixpvlv_root PL_xpvlv_root
612f20c3 1040#define PL_Ixpvmg_arenaroot PL_xpvmg_arenaroot
932e9ff9 1041#define PL_Ixpvmg_root PL_xpvmg_root
612f20c3 1042#define PL_Ixpvnv_arenaroot PL_xpvnv_arenaroot
932e9ff9 1043#define PL_Ixpvnv_root PL_xpvnv_root
612f20c3 1044#define PL_Ixrv_arenaroot PL_xrv_arenaroot
0672f40e
GS
1045#define PL_Ixrv_root PL_xrv_root
1046#define PL_Iyychar PL_yychar
1047#define PL_Iyydebug PL_yydebug
1048#define PL_Iyyerrflag PL_yyerrflag
1049#define PL_Iyylval PL_yylval
1050#define PL_Iyynerrs PL_yynerrs
1051#define PL_Iyyval PL_yyval
d4cce5f1 1052
acfe0abc 1053# if defined(USE_5005THREADS)
54aff467
GS
1054/* case 4 above */
1055
1056#define PL_Sv (aTHX->TSv)
1057#define PL_Xpv (aTHX->TXpv)
1058#define PL_av_fetch_sv (aTHX->Tav_fetch_sv)
1059#define PL_bodytarget (aTHX->Tbodytarget)
1060#define PL_bostr (aTHX->Tbostr)
1061#define PL_chopset (aTHX->Tchopset)
1062#define PL_colors (aTHX->Tcolors)
1063#define PL_colorset (aTHX->Tcolorset)
1064#define PL_curcop (aTHX->Tcurcop)
1065#define PL_curpad (aTHX->Tcurpad)
1066#define PL_curpm (aTHX->Tcurpm)
1067#define PL_curstack (aTHX->Tcurstack)
1068#define PL_curstackinfo (aTHX->Tcurstackinfo)
1069#define PL_curstash (aTHX->Tcurstash)
1070#define PL_defoutgv (aTHX->Tdefoutgv)
1071#define PL_defstash (aTHX->Tdefstash)
1072#define PL_delaymagic (aTHX->Tdelaymagic)
1073#define PL_dirty (aTHX->Tdirty)
1074#define PL_dumpindent (aTHX->Tdumpindent)
7d5ea4e7
GS
1075#define PL_efloatbuf (aTHX->Tefloatbuf)
1076#define PL_efloatsize (aTHX->Tefloatsize)
5a844595 1077#define PL_errors (aTHX->Terrors)
54aff467
GS
1078#define PL_extralen (aTHX->Textralen)
1079#define PL_firstgv (aTHX->Tfirstgv)
1080#define PL_formtarget (aTHX->Tformtarget)
1081#define PL_hv_fetch_ent_mh (aTHX->Thv_fetch_ent_mh)
1082#define PL_hv_fetch_sv (aTHX->Thv_fetch_sv)
1083#define PL_in_eval (aTHX->Tin_eval)
1084#define PL_last_in_gv (aTHX->Tlast_in_gv)
1085#define PL_lastgotoprobe (aTHX->Tlastgotoprobe)
1086#define PL_lastscream (aTHX->Tlastscream)
1087#define PL_localizing (aTHX->Tlocalizing)
1088#define PL_mainstack (aTHX->Tmainstack)
1089#define PL_markstack (aTHX->Tmarkstack)
1090#define PL_markstack_max (aTHX->Tmarkstack_max)
1091#define PL_markstack_ptr (aTHX->Tmarkstack_ptr)
1092#define PL_maxscream (aTHX->Tmaxscream)
1093#define PL_modcount (aTHX->Tmodcount)
1094#define PL_na (aTHX->Tna)
7889fe52 1095#define PL_ofs_sv (aTHX->Tofs_sv)
54aff467
GS
1096#define PL_op (aTHX->Top)
1097#define PL_opsave (aTHX->Topsave)
a2efc822 1098#define PL_peepp (aTHX->Tpeepp)
54aff467
GS
1099#define PL_protect (aTHX->Tprotect)
1100#define PL_reg_call_cc (aTHX->Treg_call_cc)
1101#define PL_reg_curpm (aTHX->Treg_curpm)
1102#define PL_reg_eval_set (aTHX->Treg_eval_set)
1103#define PL_reg_flags (aTHX->Treg_flags)
1104#define PL_reg_ganch (aTHX->Treg_ganch)
1105#define PL_reg_leftiter (aTHX->Treg_leftiter)
1106#define PL_reg_magic (aTHX->Treg_magic)
53c4c00c 1107#define PL_reg_match_utf8 (aTHX->Treg_match_utf8)
54aff467
GS
1108#define PL_reg_maxiter (aTHX->Treg_maxiter)
1109#define PL_reg_oldcurpm (aTHX->Treg_oldcurpm)
1110#define PL_reg_oldpos (aTHX->Treg_oldpos)
1111#define PL_reg_oldsaved (aTHX->Treg_oldsaved)
1112#define PL_reg_oldsavedlen (aTHX->Treg_oldsavedlen)
1113#define PL_reg_poscache (aTHX->Treg_poscache)
1114#define PL_reg_poscache_size (aTHX->Treg_poscache_size)
1115#define PL_reg_re (aTHX->Treg_re)
1116#define PL_reg_start_tmp (aTHX->Treg_start_tmp)
1117#define PL_reg_start_tmpl (aTHX->Treg_start_tmpl)
1118#define PL_reg_starttry (aTHX->Treg_starttry)
1119#define PL_reg_sv (aTHX->Treg_sv)
1120#define PL_reg_whilem_seen (aTHX->Treg_whilem_seen)
1121#define PL_regbol (aTHX->Tregbol)
1122#define PL_regcc (aTHX->Tregcc)
1123#define PL_regcode (aTHX->Tregcode)
1124#define PL_regcomp_parse (aTHX->Tregcomp_parse)
1125#define PL_regcomp_rx (aTHX->Tregcomp_rx)
31376155 1126#define PL_regcompat1 (aTHX->Tregcompat1)
54aff467
GS
1127#define PL_regcompp (aTHX->Tregcompp)
1128#define PL_regdata (aTHX->Tregdata)
1129#define PL_regdummy (aTHX->Tregdummy)
1130#define PL_regendp (aTHX->Tregendp)
1131#define PL_regeol (aTHX->Tregeol)
1132#define PL_regexecp (aTHX->Tregexecp)
1133#define PL_regflags (aTHX->Tregflags)
1134#define PL_regfree (aTHX->Tregfree)
1135#define PL_regindent (aTHX->Tregindent)
1136#define PL_reginput (aTHX->Treginput)
1137#define PL_regint_start (aTHX->Tregint_start)
1138#define PL_regint_string (aTHX->Tregint_string)
1139#define PL_reginterp_cnt (aTHX->Treginterp_cnt)
a01268b5 1140#define PL_reglastcloseparen (aTHX->Treglastcloseparen)
54aff467
GS
1141#define PL_reglastparen (aTHX->Treglastparen)
1142#define PL_regnarrate (aTHX->Tregnarrate)
1143#define PL_regnaughty (aTHX->Tregnaughty)
1144#define PL_regnpar (aTHX->Tregnpar)
1145#define PL_regprecomp (aTHX->Tregprecomp)
54aff467
GS
1146#define PL_regprogram (aTHX->Tregprogram)
1147#define PL_regsawback (aTHX->Tregsawback)
1148#define PL_regseen (aTHX->Tregseen)
1149#define PL_regsize (aTHX->Tregsize)
1150#define PL_regstartp (aTHX->Tregstartp)
1151#define PL_regtill (aTHX->Tregtill)
1152#define PL_regxend (aTHX->Tregxend)
1153#define PL_restartop (aTHX->Trestartop)
1154#define PL_retstack (aTHX->Tretstack)
1155#define PL_retstack_ix (aTHX->Tretstack_ix)
1156#define PL_retstack_max (aTHX->Tretstack_max)
1157#define PL_rs (aTHX->Trs)
1158#define PL_savestack (aTHX->Tsavestack)
1159#define PL_savestack_ix (aTHX->Tsavestack_ix)
1160#define PL_savestack_max (aTHX->Tsavestack_max)
1161#define PL_scopestack (aTHX->Tscopestack)
1162#define PL_scopestack_ix (aTHX->Tscopestack_ix)
1163#define PL_scopestack_max (aTHX->Tscopestack_max)
1164#define PL_screamfirst (aTHX->Tscreamfirst)
1165#define PL_screamnext (aTHX->Tscreamnext)
1166#define PL_secondgv (aTHX->Tsecondgv)
1167#define PL_seen_evals (aTHX->Tseen_evals)
1168#define PL_seen_zerolen (aTHX->Tseen_zerolen)
1169#define PL_sortcop (aTHX->Tsortcop)
1170#define PL_sortcxix (aTHX->Tsortcxix)
1171#define PL_sortstash (aTHX->Tsortstash)
1172#define PL_stack_base (aTHX->Tstack_base)
1173#define PL_stack_max (aTHX->Tstack_max)
1174#define PL_stack_sp (aTHX->Tstack_sp)
1175#define PL_start_env (aTHX->Tstart_env)
1176#define PL_statbuf (aTHX->Tstatbuf)
1177#define PL_statcache (aTHX->Tstatcache)
1178#define PL_statgv (aTHX->Tstatgv)
1179#define PL_statname (aTHX->Tstatname)
1180#define PL_tainted (aTHX->Ttainted)
1181#define PL_timesbuf (aTHX->Ttimesbuf)
1182#define PL_tmps_floor (aTHX->Ttmps_floor)
1183#define PL_tmps_ix (aTHX->Ttmps_ix)
1184#define PL_tmps_max (aTHX->Ttmps_max)
1185#define PL_tmps_stack (aTHX->Ttmps_stack)
1186#define PL_top_env (aTHX->Ttop_env)
1187#define PL_toptarget (aTHX->Ttoptarget)
db28379b 1188#define PL_unused_1 (aTHX->Tunused_1)
54aff467
GS
1189#define PL_watchaddr (aTHX->Twatchaddr)
1190#define PL_watchok (aTHX->Twatchok)
1191
acfe0abc 1192# else /* !USE_5005THREADS */
1d7c1841 1193/* case 1 above */
d4cce5f1 1194
533c011a
NIS
1195#define PL_TSv PL_Sv
1196#define PL_TXpv PL_Xpv
1197#define PL_Tav_fetch_sv PL_av_fetch_sv
1198#define PL_Tbodytarget PL_bodytarget
1199#define PL_Tbostr PL_bostr
1200#define PL_Tchopset PL_chopset
1201#define PL_Tcolors PL_colors
1202#define PL_Tcolorset PL_colorset
1203#define PL_Tcurcop PL_curcop
1204#define PL_Tcurpad PL_curpad
1205#define PL_Tcurpm PL_curpm
1206#define PL_Tcurstack PL_curstack
1207#define PL_Tcurstackinfo PL_curstackinfo
1208#define PL_Tcurstash PL_curstash
1209#define PL_Tdefoutgv PL_defoutgv
1210#define PL_Tdefstash PL_defstash
1211#define PL_Tdelaymagic PL_delaymagic
1212#define PL_Tdirty PL_dirty
3967c732 1213#define PL_Tdumpindent PL_dumpindent
7d5ea4e7
GS
1214#define PL_Tefloatbuf PL_efloatbuf
1215#define PL_Tefloatsize PL_efloatsize
5a844595 1216#define PL_Terrors PL_errors
533c011a
NIS
1217#define PL_Textralen PL_extralen
1218#define PL_Tfirstgv PL_firstgv
1219#define PL_Tformtarget PL_formtarget
1220#define PL_Thv_fetch_ent_mh PL_hv_fetch_ent_mh
1221#define PL_Thv_fetch_sv PL_hv_fetch_sv
1222#define PL_Tin_eval PL_in_eval
1223#define PL_Tlast_in_gv PL_last_in_gv
1224#define PL_Tlastgotoprobe PL_lastgotoprobe
1225#define PL_Tlastscream PL_lastscream
1226#define PL_Tlocalizing PL_localizing
1227#define PL_Tmainstack PL_mainstack
1228#define PL_Tmarkstack PL_markstack
1229#define PL_Tmarkstack_max PL_markstack_max
1230#define PL_Tmarkstack_ptr PL_markstack_ptr
1231#define PL_Tmaxscream PL_maxscream
1232#define PL_Tmodcount PL_modcount
b099ddc0 1233#define PL_Tna PL_na
7889fe52 1234#define PL_Tofs_sv PL_ofs_sv
533c011a
NIS
1235#define PL_Top PL_op
1236#define PL_Topsave PL_opsave
a2efc822 1237#define PL_Tpeepp PL_peepp
e0284a30 1238#define PL_Tprotect PL_protect
0f5d15d6 1239#define PL_Treg_call_cc PL_reg_call_cc
5c5e4c24 1240#define PL_Treg_curpm PL_reg_curpm
533c011a
NIS
1241#define PL_Treg_eval_set PL_reg_eval_set
1242#define PL_Treg_flags PL_reg_flags
22e551b9 1243#define PL_Treg_ganch PL_reg_ganch
82ba1be6 1244#define PL_Treg_leftiter PL_reg_leftiter
9661b544 1245#define PL_Treg_magic PL_reg_magic
53c4c00c 1246#define PL_Treg_match_utf8 PL_reg_match_utf8
82ba1be6 1247#define PL_Treg_maxiter PL_reg_maxiter
5c5e4c24 1248#define PL_Treg_oldcurpm PL_reg_oldcurpm
9661b544 1249#define PL_Treg_oldpos PL_reg_oldpos
cf93c79d
IZ
1250#define PL_Treg_oldsaved PL_reg_oldsaved
1251#define PL_Treg_oldsavedlen PL_reg_oldsavedlen
82ba1be6
IZ
1252#define PL_Treg_poscache PL_reg_poscache
1253#define PL_Treg_poscache_size PL_reg_poscache_size
0f5d15d6 1254#define PL_Treg_re PL_reg_re
533c011a
NIS
1255#define PL_Treg_start_tmp PL_reg_start_tmp
1256#define PL_Treg_start_tmpl PL_reg_start_tmpl
364723c2 1257#define PL_Treg_starttry PL_reg_starttry
22e551b9 1258#define PL_Treg_sv PL_reg_sv
82ba1be6 1259#define PL_Treg_whilem_seen PL_reg_whilem_seen
533c011a
NIS
1260#define PL_Tregbol PL_regbol
1261#define PL_Tregcc PL_regcc
1262#define PL_Tregcode PL_regcode
1263#define PL_Tregcomp_parse PL_regcomp_parse
1264#define PL_Tregcomp_rx PL_regcomp_rx
31376155 1265#define PL_Tregcompat1 PL_regcompat1
533c011a
NIS
1266#define PL_Tregcompp PL_regcompp
1267#define PL_Tregdata PL_regdata
1268#define PL_Tregdummy PL_regdummy
1269#define PL_Tregendp PL_regendp
1270#define PL_Tregeol PL_regeol
1271#define PL_Tregexecp PL_regexecp
1272#define PL_Tregflags PL_regflags
cad2e5aa 1273#define PL_Tregfree PL_regfree
533c011a
NIS
1274#define PL_Tregindent PL_regindent
1275#define PL_Treginput PL_reginput
cad2e5aa
JH
1276#define PL_Tregint_start PL_regint_start
1277#define PL_Tregint_string PL_regint_string
533c011a 1278#define PL_Treginterp_cnt PL_reginterp_cnt
a01268b5 1279#define PL_Treglastcloseparen PL_reglastcloseparen
533c011a
NIS
1280#define PL_Treglastparen PL_reglastparen
1281#define PL_Tregnarrate PL_regnarrate
1282#define PL_Tregnaughty PL_regnaughty
1283#define PL_Tregnpar PL_regnpar
1284#define PL_Tregprecomp PL_regprecomp
533c011a
NIS
1285#define PL_Tregprogram PL_regprogram
1286#define PL_Tregsawback PL_regsawback
1287#define PL_Tregseen PL_regseen
1288#define PL_Tregsize PL_regsize
1289#define PL_Tregstartp PL_regstartp
1290#define PL_Tregtill PL_regtill
1291#define PL_Tregxend PL_regxend
1292#define PL_Trestartop PL_restartop
1293#define PL_Tretstack PL_retstack
1294#define PL_Tretstack_ix PL_retstack_ix
1295#define PL_Tretstack_max PL_retstack_max
1296#define PL_Trs PL_rs
1297#define PL_Tsavestack PL_savestack
1298#define PL_Tsavestack_ix PL_savestack_ix
1299#define PL_Tsavestack_max PL_savestack_max
1300#define PL_Tscopestack PL_scopestack
1301#define PL_Tscopestack_ix PL_scopestack_ix
1302#define PL_Tscopestack_max PL_scopestack_max
1303#define PL_Tscreamfirst PL_screamfirst
1304#define PL_Tscreamnext PL_screamnext
1305#define PL_Tsecondgv PL_secondgv
1306#define PL_Tseen_evals PL_seen_evals
1307#define PL_Tseen_zerolen PL_seen_zerolen
1308#define PL_Tsortcop PL_sortcop
1309#define PL_Tsortcxix PL_sortcxix
1310#define PL_Tsortstash PL_sortstash
1311#define PL_Tstack_base PL_stack_base
1312#define PL_Tstack_max PL_stack_max
1313#define PL_Tstack_sp PL_stack_sp
1314#define PL_Tstart_env PL_start_env
1315#define PL_Tstatbuf PL_statbuf
1316#define PL_Tstatcache PL_statcache
1317#define PL_Tstatgv PL_statgv
1318#define PL_Tstatname PL_statname
1319#define PL_Ttainted PL_tainted
1320#define PL_Ttimesbuf PL_timesbuf
1321#define PL_Ttmps_floor PL_tmps_floor
1322#define PL_Ttmps_ix PL_tmps_ix
1323#define PL_Ttmps_max PL_tmps_max
1324#define PL_Ttmps_stack PL_tmps_stack
1325#define PL_Ttop_env PL_top_env
1326#define PL_Ttoptarget PL_toptarget
db28379b 1327#define PL_Tunused_1 PL_unused_1
22c35a8c
GS
1328#define PL_Twatchaddr PL_watchaddr
1329#define PL_Twatchok PL_watchok
d4cce5f1 1330
acfe0abc 1331# endif /* USE_5005THREADS */
54aff467 1332#endif /* MULTIPLICITY */
d4cce5f1 1333
54aff467 1334#if defined(PERL_GLOBAL_STRUCT)
22239a37 1335
533c011a
NIS
1336#define PL_No (PL_Vars.GNo)
1337#define PL_Yes (PL_Vars.GYes)
533c011a 1338#define PL_curinterp (PL_Vars.Gcurinterp)
533c011a 1339#define PL_do_undump (PL_Vars.Gdo_undump)
533c011a 1340#define PL_hexdigit (PL_Vars.Ghexdigit)
b363f7ed 1341#define PL_malloc_mutex (PL_Vars.Gmalloc_mutex)
534825c4 1342#define PL_op_mutex (PL_Vars.Gop_mutex)
533c011a 1343#define PL_patleave (PL_Vars.Gpatleave)
570c6a0d 1344#define PL_runops_dbg (PL_Vars.Grunops_dbg)
543c00c9 1345#define PL_runops_std (PL_Vars.Grunops_std)
4f896ddc
AB
1346#define PL_sharedsv_space (PL_Vars.Gsharedsv_space)
1347#define PL_sharedsv_space_mutex (PL_Vars.Gsharedsv_space_mutex)
ba869deb 1348#define PL_thr_key (PL_Vars.Gthr_key)
22239a37
NIS
1349
1350#else /* !PERL_GLOBAL_STRUCT */
1351
533c011a
NIS
1352#define PL_GNo PL_No
1353#define PL_GYes PL_Yes
533c011a 1354#define PL_Gcurinterp PL_curinterp
533c011a 1355#define PL_Gdo_undump PL_do_undump
533c011a 1356#define PL_Ghexdigit PL_hexdigit
b363f7ed 1357#define PL_Gmalloc_mutex PL_malloc_mutex
534825c4 1358#define PL_Gop_mutex PL_op_mutex
533c011a 1359#define PL_Gpatleave PL_patleave
570c6a0d 1360#define PL_Grunops_dbg PL_runops_dbg
543c00c9 1361#define PL_Grunops_std PL_runops_std
4f896ddc
AB
1362#define PL_Gsharedsv_space PL_sharedsv_space
1363#define PL_Gsharedsv_space_mutex PL_sharedsv_space_mutex
ba869deb 1364#define PL_Gthr_key PL_thr_key
22239a37 1365
22239a37
NIS
1366#endif /* PERL_GLOBAL_STRUCT */
1367
85add8c2 1368#ifdef PERL_POLLUTE /* disabled by default in 5.6.0 */
f77c86d0
NIS
1369
1370#define DBsingle PL_DBsingle
1371#define DBsub PL_DBsub
1372#define compiling PL_compiling
1373#define curcop PL_curcop
1374#define curstash PL_curstash
1375#define debstash PL_debstash
9f53fe7d 1376#define defgv PL_defgv
709f4e38
GS
1377#define diehook PL_diehook
1378#define dirty PL_dirty
f77c86d0 1379#define dowarn PL_dowarn
9f53fe7d 1380#define errgv PL_errgv
f77c86d0 1381#define na PL_na
a81cd81f 1382#define no_modify PL_no_modify
709f4e38 1383#define perl_destruct_level PL_perl_destruct_level
9f53fe7d 1384#define perldb PL_perldb
ac634a9a 1385#define ppaddr PL_ppaddr
f77c86d0 1386#define rsfp PL_rsfp
9f53fe7d 1387#define rsfp_filters PL_rsfp_filters
f77c86d0
NIS
1388#define stack_base PL_stack_base
1389#define stack_sp PL_stack_sp
1390#define stdingv PL_stdingv
1391#define sv_arenaroot PL_sv_arenaroot
1392#define sv_no PL_sv_no
1393#define sv_undef PL_sv_undef
1394#define sv_yes PL_sv_yes
1395#define tainted PL_tainted
1396#define tainting PL_tainting
1397
db5cf5a9 1398#endif /* PERL_POLLUTE */