This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
applied new parts of suggested patch
[perl5.git] / embedvar.h
1 /* !!!!!!!   DO NOT EDIT THIS FILE   !!!!!!! 
2    This file is built by embed.pl from data in embed.pl, pp.sym, intrpvar.h,
3    perlvars.h and thrdvar.h.  Any changes made here will be lost!
4 */
5
6 /* (Doing namespace management portably in C is really gross.) */
7
8 /* Put interpreter-specific symbols into a struct? */
9
10 #ifdef MULTIPLICITY
11
12 #ifndef USE_THREADS
13 /* If we do not have threads then per-thread vars are per-interpreter */
14
15 #ifdef PERL_IMPLICIT_CONTEXT
16
17 /* everything has an implicit context pointer */
18
19 #define PL_Sv                   (my_perl->TSv)
20 #define PL_Xpv                  (my_perl->TXpv)
21 #define PL_av_fetch_sv          (my_perl->Tav_fetch_sv)
22 #define PL_bodytarget           (my_perl->Tbodytarget)
23 #define PL_bostr                (my_perl->Tbostr)
24 #define PL_chopset              (my_perl->Tchopset)
25 #define PL_colors               (my_perl->Tcolors)
26 #define PL_colorset             (my_perl->Tcolorset)
27 #define PL_curcop               (my_perl->Tcurcop)
28 #define PL_curpad               (my_perl->Tcurpad)
29 #define PL_curpm                (my_perl->Tcurpm)
30 #define PL_curstack             (my_perl->Tcurstack)
31 #define PL_curstackinfo         (my_perl->Tcurstackinfo)
32 #define PL_curstash             (my_perl->Tcurstash)
33 #define PL_defoutgv             (my_perl->Tdefoutgv)
34 #define PL_defstash             (my_perl->Tdefstash)
35 #define PL_delaymagic           (my_perl->Tdelaymagic)
36 #define PL_dirty                (my_perl->Tdirty)
37 #define PL_dumpindent           (my_perl->Tdumpindent)
38 #define PL_extralen             (my_perl->Textralen)
39 #define PL_firstgv              (my_perl->Tfirstgv)
40 #define PL_formtarget           (my_perl->Tformtarget)
41 #define PL_hv_fetch_ent_mh      (my_perl->Thv_fetch_ent_mh)
42 #define PL_hv_fetch_sv          (my_perl->Thv_fetch_sv)
43 #define PL_in_eval              (my_perl->Tin_eval)
44 #define PL_last_in_gv           (my_perl->Tlast_in_gv)
45 #define PL_lastgotoprobe        (my_perl->Tlastgotoprobe)
46 #define PL_lastscream           (my_perl->Tlastscream)
47 #define PL_localizing           (my_perl->Tlocalizing)
48 #define PL_mainstack            (my_perl->Tmainstack)
49 #define PL_markstack            (my_perl->Tmarkstack)
50 #define PL_markstack_max        (my_perl->Tmarkstack_max)
51 #define PL_markstack_ptr        (my_perl->Tmarkstack_ptr)
52 #define PL_maxscream            (my_perl->Tmaxscream)
53 #define PL_modcount             (my_perl->Tmodcount)
54 #define PL_na                   (my_perl->Tna)
55 #define PL_nrs                  (my_perl->Tnrs)
56 #define PL_ofs                  (my_perl->Tofs)
57 #define PL_ofslen               (my_perl->Tofslen)
58 #define PL_op                   (my_perl->Top)
59 #define PL_opsave               (my_perl->Topsave)
60 #define PL_protect              (my_perl->Tprotect)
61 #define PL_reg_call_cc          (my_perl->Treg_call_cc)
62 #define PL_reg_curpm            (my_perl->Treg_curpm)
63 #define PL_reg_eval_set         (my_perl->Treg_eval_set)
64 #define PL_reg_flags            (my_perl->Treg_flags)
65 #define PL_reg_ganch            (my_perl->Treg_ganch)
66 #define PL_reg_magic            (my_perl->Treg_magic)
67 #define PL_reg_oldcurpm         (my_perl->Treg_oldcurpm)
68 #define PL_reg_oldpos           (my_perl->Treg_oldpos)
69 #define PL_reg_oldsaved         (my_perl->Treg_oldsaved)
70 #define PL_reg_oldsavedlen      (my_perl->Treg_oldsavedlen)
71 #define PL_reg_re               (my_perl->Treg_re)
72 #define PL_reg_start_tmp        (my_perl->Treg_start_tmp)
73 #define PL_reg_start_tmpl       (my_perl->Treg_start_tmpl)
74 #define PL_reg_starttry         (my_perl->Treg_starttry)
75 #define PL_reg_sv               (my_perl->Treg_sv)
76 #define PL_regbol               (my_perl->Tregbol)
77 #define PL_regcc                (my_perl->Tregcc)
78 #define PL_regcode              (my_perl->Tregcode)
79 #define PL_regcomp_parse        (my_perl->Tregcomp_parse)
80 #define PL_regcomp_rx           (my_perl->Tregcomp_rx)
81 #define PL_regcompp             (my_perl->Tregcompp)
82 #define PL_regdata              (my_perl->Tregdata)
83 #define PL_regdummy             (my_perl->Tregdummy)
84 #define PL_regendp              (my_perl->Tregendp)
85 #define PL_regeol               (my_perl->Tregeol)
86 #define PL_regexecp             (my_perl->Tregexecp)
87 #define PL_regflags             (my_perl->Tregflags)
88 #define PL_regfree              (my_perl->Tregfree)
89 #define PL_regindent            (my_perl->Tregindent)
90 #define PL_reginput             (my_perl->Treginput)
91 #define PL_regint_start         (my_perl->Tregint_start)
92 #define PL_regint_string        (my_perl->Tregint_string)
93 #define PL_reginterp_cnt        (my_perl->Treginterp_cnt)
94 #define PL_reglastparen         (my_perl->Treglastparen)
95 #define PL_regnarrate           (my_perl->Tregnarrate)
96 #define PL_regnaughty           (my_perl->Tregnaughty)
97 #define PL_regnpar              (my_perl->Tregnpar)
98 #define PL_regprecomp           (my_perl->Tregprecomp)
99 #define PL_regprev              (my_perl->Tregprev)
100 #define PL_regprogram           (my_perl->Tregprogram)
101 #define PL_regsawback           (my_perl->Tregsawback)
102 #define PL_regseen              (my_perl->Tregseen)
103 #define PL_regsize              (my_perl->Tregsize)
104 #define PL_regstartp            (my_perl->Tregstartp)
105 #define PL_regtill              (my_perl->Tregtill)
106 #define PL_regxend              (my_perl->Tregxend)
107 #define PL_restartop            (my_perl->Trestartop)
108 #define PL_retstack             (my_perl->Tretstack)
109 #define PL_retstack_ix          (my_perl->Tretstack_ix)
110 #define PL_retstack_max         (my_perl->Tretstack_max)
111 #define PL_rs                   (my_perl->Trs)
112 #define PL_savestack            (my_perl->Tsavestack)
113 #define PL_savestack_ix         (my_perl->Tsavestack_ix)
114 #define PL_savestack_max        (my_perl->Tsavestack_max)
115 #define PL_scopestack           (my_perl->Tscopestack)
116 #define PL_scopestack_ix        (my_perl->Tscopestack_ix)
117 #define PL_scopestack_max       (my_perl->Tscopestack_max)
118 #define PL_screamfirst          (my_perl->Tscreamfirst)
119 #define PL_screamnext           (my_perl->Tscreamnext)
120 #define PL_secondgv             (my_perl->Tsecondgv)
121 #define PL_seen_evals           (my_perl->Tseen_evals)
122 #define PL_seen_zerolen         (my_perl->Tseen_zerolen)
123 #define PL_sortcop              (my_perl->Tsortcop)
124 #define PL_sortcxix             (my_perl->Tsortcxix)
125 #define PL_sortstash            (my_perl->Tsortstash)
126 #define PL_stack_base           (my_perl->Tstack_base)
127 #define PL_stack_max            (my_perl->Tstack_max)
128 #define PL_stack_sp             (my_perl->Tstack_sp)
129 #define PL_start_env            (my_perl->Tstart_env)
130 #define PL_statbuf              (my_perl->Tstatbuf)
131 #define PL_statcache            (my_perl->Tstatcache)
132 #define PL_statgv               (my_perl->Tstatgv)
133 #define PL_statname             (my_perl->Tstatname)
134 #define PL_tainted              (my_perl->Ttainted)
135 #define PL_timesbuf             (my_perl->Ttimesbuf)
136 #define PL_tmps_floor           (my_perl->Ttmps_floor)
137 #define PL_tmps_ix              (my_perl->Ttmps_ix)
138 #define PL_tmps_max             (my_perl->Ttmps_max)
139 #define PL_tmps_stack           (my_perl->Ttmps_stack)
140 #define PL_top_env              (my_perl->Ttop_env)
141 #define PL_toptarget            (my_perl->Ttoptarget)
142 #define PL_watchaddr            (my_perl->Twatchaddr)
143 #define PL_watchok              (my_perl->Twatchok)
144
145 #else /* !PERL_IMPLICIT_CONTEXT */
146
147 /* traditional MULTIPLICITY (intepreter is in a global) */
148
149 #define PL_Sv                   (PL_curinterp->TSv)
150 #define PL_Xpv                  (PL_curinterp->TXpv)
151 #define PL_av_fetch_sv          (PL_curinterp->Tav_fetch_sv)
152 #define PL_bodytarget           (PL_curinterp->Tbodytarget)
153 #define PL_bostr                (PL_curinterp->Tbostr)
154 #define PL_chopset              (PL_curinterp->Tchopset)
155 #define PL_colors               (PL_curinterp->Tcolors)
156 #define PL_colorset             (PL_curinterp->Tcolorset)
157 #define PL_curcop               (PL_curinterp->Tcurcop)
158 #define PL_curpad               (PL_curinterp->Tcurpad)
159 #define PL_curpm                (PL_curinterp->Tcurpm)
160 #define PL_curstack             (PL_curinterp->Tcurstack)
161 #define PL_curstackinfo         (PL_curinterp->Tcurstackinfo)
162 #define PL_curstash             (PL_curinterp->Tcurstash)
163 #define PL_defoutgv             (PL_curinterp->Tdefoutgv)
164 #define PL_defstash             (PL_curinterp->Tdefstash)
165 #define PL_delaymagic           (PL_curinterp->Tdelaymagic)
166 #define PL_dirty                (PL_curinterp->Tdirty)
167 #define PL_dumpindent           (PL_curinterp->Tdumpindent)
168 #define PL_extralen             (PL_curinterp->Textralen)
169 #define PL_firstgv              (PL_curinterp->Tfirstgv)
170 #define PL_formtarget           (PL_curinterp->Tformtarget)
171 #define PL_hv_fetch_ent_mh      (PL_curinterp->Thv_fetch_ent_mh)
172 #define PL_hv_fetch_sv          (PL_curinterp->Thv_fetch_sv)
173 #define PL_in_eval              (PL_curinterp->Tin_eval)
174 #define PL_last_in_gv           (PL_curinterp->Tlast_in_gv)
175 #define PL_lastgotoprobe        (PL_curinterp->Tlastgotoprobe)
176 #define PL_lastscream           (PL_curinterp->Tlastscream)
177 #define PL_localizing           (PL_curinterp->Tlocalizing)
178 #define PL_mainstack            (PL_curinterp->Tmainstack)
179 #define PL_markstack            (PL_curinterp->Tmarkstack)
180 #define PL_markstack_max        (PL_curinterp->Tmarkstack_max)
181 #define PL_markstack_ptr        (PL_curinterp->Tmarkstack_ptr)
182 #define PL_maxscream            (PL_curinterp->Tmaxscream)
183 #define PL_modcount             (PL_curinterp->Tmodcount)
184 #define PL_na                   (PL_curinterp->Tna)
185 #define PL_nrs                  (PL_curinterp->Tnrs)
186 #define PL_ofs                  (PL_curinterp->Tofs)
187 #define PL_ofslen               (PL_curinterp->Tofslen)
188 #define PL_op                   (PL_curinterp->Top)
189 #define PL_opsave               (PL_curinterp->Topsave)
190 #define PL_protect              (PL_curinterp->Tprotect)
191 #define PL_reg_call_cc          (PL_curinterp->Treg_call_cc)
192 #define PL_reg_curpm            (PL_curinterp->Treg_curpm)
193 #define PL_reg_eval_set         (PL_curinterp->Treg_eval_set)
194 #define PL_reg_flags            (PL_curinterp->Treg_flags)
195 #define PL_reg_ganch            (PL_curinterp->Treg_ganch)
196 #define PL_reg_magic            (PL_curinterp->Treg_magic)
197 #define PL_reg_oldcurpm         (PL_curinterp->Treg_oldcurpm)
198 #define PL_reg_oldpos           (PL_curinterp->Treg_oldpos)
199 #define PL_reg_oldsaved         (PL_curinterp->Treg_oldsaved)
200 #define PL_reg_oldsavedlen      (PL_curinterp->Treg_oldsavedlen)
201 #define PL_reg_re               (PL_curinterp->Treg_re)
202 #define PL_reg_start_tmp        (PL_curinterp->Treg_start_tmp)
203 #define PL_reg_start_tmpl       (PL_curinterp->Treg_start_tmpl)
204 #define PL_reg_starttry         (PL_curinterp->Treg_starttry)
205 #define PL_reg_sv               (PL_curinterp->Treg_sv)
206 #define PL_regbol               (PL_curinterp->Tregbol)
207 #define PL_regcc                (PL_curinterp->Tregcc)
208 #define PL_regcode              (PL_curinterp->Tregcode)
209 #define PL_regcomp_parse        (PL_curinterp->Tregcomp_parse)
210 #define PL_regcomp_rx           (PL_curinterp->Tregcomp_rx)
211 #define PL_regcompp             (PL_curinterp->Tregcompp)
212 #define PL_regdata              (PL_curinterp->Tregdata)
213 #define PL_regdummy             (PL_curinterp->Tregdummy)
214 #define PL_regendp              (PL_curinterp->Tregendp)
215 #define PL_regeol               (PL_curinterp->Tregeol)
216 #define PL_regexecp             (PL_curinterp->Tregexecp)
217 #define PL_regflags             (PL_curinterp->Tregflags)
218 #define PL_regfree              (PL_curinterp->Tregfree)
219 #define PL_regindent            (PL_curinterp->Tregindent)
220 #define PL_reginput             (PL_curinterp->Treginput)
221 #define PL_regint_start         (PL_curinterp->Tregint_start)
222 #define PL_regint_string        (PL_curinterp->Tregint_string)
223 #define PL_reginterp_cnt        (PL_curinterp->Treginterp_cnt)
224 #define PL_reglastparen         (PL_curinterp->Treglastparen)
225 #define PL_regnarrate           (PL_curinterp->Tregnarrate)
226 #define PL_regnaughty           (PL_curinterp->Tregnaughty)
227 #define PL_regnpar              (PL_curinterp->Tregnpar)
228 #define PL_regprecomp           (PL_curinterp->Tregprecomp)
229 #define PL_regprev              (PL_curinterp->Tregprev)
230 #define PL_regprogram           (PL_curinterp->Tregprogram)
231 #define PL_regsawback           (PL_curinterp->Tregsawback)
232 #define PL_regseen              (PL_curinterp->Tregseen)
233 #define PL_regsize              (PL_curinterp->Tregsize)
234 #define PL_regstartp            (PL_curinterp->Tregstartp)
235 #define PL_regtill              (PL_curinterp->Tregtill)
236 #define PL_regxend              (PL_curinterp->Tregxend)
237 #define PL_restartop            (PL_curinterp->Trestartop)
238 #define PL_retstack             (PL_curinterp->Tretstack)
239 #define PL_retstack_ix          (PL_curinterp->Tretstack_ix)
240 #define PL_retstack_max         (PL_curinterp->Tretstack_max)
241 #define PL_rs                   (PL_curinterp->Trs)
242 #define PL_savestack            (PL_curinterp->Tsavestack)
243 #define PL_savestack_ix         (PL_curinterp->Tsavestack_ix)
244 #define PL_savestack_max        (PL_curinterp->Tsavestack_max)
245 #define PL_scopestack           (PL_curinterp->Tscopestack)
246 #define PL_scopestack_ix        (PL_curinterp->Tscopestack_ix)
247 #define PL_scopestack_max       (PL_curinterp->Tscopestack_max)
248 #define PL_screamfirst          (PL_curinterp->Tscreamfirst)
249 #define PL_screamnext           (PL_curinterp->Tscreamnext)
250 #define PL_secondgv             (PL_curinterp->Tsecondgv)
251 #define PL_seen_evals           (PL_curinterp->Tseen_evals)
252 #define PL_seen_zerolen         (PL_curinterp->Tseen_zerolen)
253 #define PL_sortcop              (PL_curinterp->Tsortcop)
254 #define PL_sortcxix             (PL_curinterp->Tsortcxix)
255 #define PL_sortstash            (PL_curinterp->Tsortstash)
256 #define PL_stack_base           (PL_curinterp->Tstack_base)
257 #define PL_stack_max            (PL_curinterp->Tstack_max)
258 #define PL_stack_sp             (PL_curinterp->Tstack_sp)
259 #define PL_start_env            (PL_curinterp->Tstart_env)
260 #define PL_statbuf              (PL_curinterp->Tstatbuf)
261 #define PL_statcache            (PL_curinterp->Tstatcache)
262 #define PL_statgv               (PL_curinterp->Tstatgv)
263 #define PL_statname             (PL_curinterp->Tstatname)
264 #define PL_tainted              (PL_curinterp->Ttainted)
265 #define PL_timesbuf             (PL_curinterp->Ttimesbuf)
266 #define PL_tmps_floor           (PL_curinterp->Ttmps_floor)
267 #define PL_tmps_ix              (PL_curinterp->Ttmps_ix)
268 #define PL_tmps_max             (PL_curinterp->Ttmps_max)
269 #define PL_tmps_stack           (PL_curinterp->Ttmps_stack)
270 #define PL_top_env              (PL_curinterp->Ttop_env)
271 #define PL_toptarget            (PL_curinterp->Ttoptarget)
272 #define PL_watchaddr            (PL_curinterp->Twatchaddr)
273 #define PL_watchok              (PL_curinterp->Twatchok)
274
275 #endif /* !PERL_IMPLICIT_CONTEXT */
276 #endif /* !USE_THREADS */
277
278 /* These are always per-interpreter if there is more than one */
279
280 #define PL_Argv                 (PL_curinterp->IArgv)
281 #define PL_Cmd                  (PL_curinterp->ICmd)
282 #define PL_DBcv                 (PL_curinterp->IDBcv)
283 #define PL_DBgv                 (PL_curinterp->IDBgv)
284 #define PL_DBline               (PL_curinterp->IDBline)
285 #define PL_DBsignal             (PL_curinterp->IDBsignal)
286 #define PL_DBsingle             (PL_curinterp->IDBsingle)
287 #define PL_DBsub                (PL_curinterp->IDBsub)
288 #define PL_DBtrace              (PL_curinterp->IDBtrace)
289 #define PL_amagic_generation    (PL_curinterp->Iamagic_generation)
290 #define PL_ampergv              (PL_curinterp->Iampergv)
291 #define PL_an                   (PL_curinterp->Ian)
292 #define PL_archpat_auto         (PL_curinterp->Iarchpat_auto)
293 #define PL_argvgv               (PL_curinterp->Iargvgv)
294 #define PL_argvoutgv            (PL_curinterp->Iargvoutgv)
295 #define PL_basetime             (PL_curinterp->Ibasetime)
296 #define PL_beginav              (PL_curinterp->Ibeginav)
297 #define PL_bitcount             (PL_curinterp->Ibitcount)
298 #define PL_bufend               (PL_curinterp->Ibufend)
299 #define PL_bufptr               (PL_curinterp->Ibufptr)
300 #define PL_cddir                (PL_curinterp->Icddir)
301 #define PL_collation_ix         (PL_curinterp->Icollation_ix)
302 #define PL_collation_name       (PL_curinterp->Icollation_name)
303 #define PL_collation_standard   (PL_curinterp->Icollation_standard)
304 #define PL_collxfrm_base        (PL_curinterp->Icollxfrm_base)
305 #define PL_collxfrm_mult        (PL_curinterp->Icollxfrm_mult)
306 #define PL_compcv               (PL_curinterp->Icompcv)
307 #define PL_compiling            (PL_curinterp->Icompiling)
308 #define PL_comppad              (PL_curinterp->Icomppad)
309 #define PL_comppad_name         (PL_curinterp->Icomppad_name)
310 #define PL_comppad_name_fill    (PL_curinterp->Icomppad_name_fill)
311 #define PL_comppad_name_floor   (PL_curinterp->Icomppad_name_floor)
312 #define PL_cop_seqmax           (PL_curinterp->Icop_seqmax)
313 #define PL_copline              (PL_curinterp->Icopline)
314 #define PL_cred_mutex           (PL_curinterp->Icred_mutex)
315 #define PL_cryptseen            (PL_curinterp->Icryptseen)
316 #define PL_cshlen               (PL_curinterp->Icshlen)
317 #define PL_cshname              (PL_curinterp->Icshname)
318 #define PL_curcopdb             (PL_curinterp->Icurcopdb)
319 #define PL_curstname            (PL_curinterp->Icurstname)
320 #define PL_curthr               (PL_curinterp->Icurthr)
321 #define PL_dbargs               (PL_curinterp->Idbargs)
322 #define PL_debdelim             (PL_curinterp->Idebdelim)
323 #define PL_debname              (PL_curinterp->Idebname)
324 #define PL_debstash             (PL_curinterp->Idebstash)
325 #define PL_debug                (PL_curinterp->Idebug)
326 #define PL_defgv                (PL_curinterp->Idefgv)
327 #define PL_diehook              (PL_curinterp->Idiehook)
328 #define PL_dlevel               (PL_curinterp->Idlevel)
329 #define PL_dlmax                (PL_curinterp->Idlmax)
330 #define PL_doextract            (PL_curinterp->Idoextract)
331 #define PL_doswitches           (PL_curinterp->Idoswitches)
332 #define PL_dowarn               (PL_curinterp->Idowarn)
333 #define PL_e_script             (PL_curinterp->Ie_script)
334 #define PL_efloatbuf            (PL_curinterp->Iefloatbuf)
335 #define PL_efloatsize           (PL_curinterp->Iefloatsize)
336 #define PL_egid                 (PL_curinterp->Iegid)
337 #define PL_endav                (PL_curinterp->Iendav)
338 #define PL_envgv                (PL_curinterp->Ienvgv)
339 #define PL_errgv                (PL_curinterp->Ierrgv)
340 #define PL_error_count          (PL_curinterp->Ierror_count)
341 #define PL_euid                 (PL_curinterp->Ieuid)
342 #define PL_eval_cond            (PL_curinterp->Ieval_cond)
343 #define PL_eval_mutex           (PL_curinterp->Ieval_mutex)
344 #define PL_eval_owner           (PL_curinterp->Ieval_owner)
345 #define PL_eval_root            (PL_curinterp->Ieval_root)
346 #define PL_eval_start           (PL_curinterp->Ieval_start)
347 #define PL_evalseq              (PL_curinterp->Ievalseq)
348 #define PL_exitlist             (PL_curinterp->Iexitlist)
349 #define PL_exitlistlen          (PL_curinterp->Iexitlistlen)
350 #define PL_expect               (PL_curinterp->Iexpect)
351 #define PL_fdpid                (PL_curinterp->Ifdpid)
352 #define PL_filemode             (PL_curinterp->Ifilemode)
353 #define PL_filter_debug         (PL_curinterp->Ifilter_debug)
354 #define PL_forkprocess          (PL_curinterp->Iforkprocess)
355 #define PL_formfeed             (PL_curinterp->Iformfeed)
356 #define PL_generation           (PL_curinterp->Igeneration)
357 #define PL_gensym               (PL_curinterp->Igensym)
358 #define PL_gid                  (PL_curinterp->Igid)
359 #define PL_glob_index           (PL_curinterp->Iglob_index)
360 #define PL_globalstash          (PL_curinterp->Iglobalstash)
361 #define PL_he_root              (PL_curinterp->Ihe_root)
362 #define PL_hintgv               (PL_curinterp->Ihintgv)
363 #define PL_hints                (PL_curinterp->Ihints)
364 #define PL_in_clean_all         (PL_curinterp->Iin_clean_all)
365 #define PL_in_clean_objs        (PL_curinterp->Iin_clean_objs)
366 #define PL_in_my                (PL_curinterp->Iin_my)
367 #define PL_in_my_stash          (PL_curinterp->Iin_my_stash)
368 #define PL_incgv                (PL_curinterp->Iincgv)
369 #define PL_initav               (PL_curinterp->Iinitav)
370 #define PL_inplace              (PL_curinterp->Iinplace)
371 #define PL_last_lop             (PL_curinterp->Ilast_lop)
372 #define PL_last_lop_op          (PL_curinterp->Ilast_lop_op)
373 #define PL_last_swash_hv        (PL_curinterp->Ilast_swash_hv)
374 #define PL_last_swash_key       (PL_curinterp->Ilast_swash_key)
375 #define PL_last_swash_klen      (PL_curinterp->Ilast_swash_klen)
376 #define PL_last_swash_slen      (PL_curinterp->Ilast_swash_slen)
377 #define PL_last_swash_tmps      (PL_curinterp->Ilast_swash_tmps)
378 #define PL_last_uni             (PL_curinterp->Ilast_uni)
379 #define PL_lastfd               (PL_curinterp->Ilastfd)
380 #define PL_lastsize             (PL_curinterp->Ilastsize)
381 #define PL_lastspbase           (PL_curinterp->Ilastspbase)
382 #define PL_laststatval          (PL_curinterp->Ilaststatval)
383 #define PL_laststype            (PL_curinterp->Ilaststype)
384 #define PL_leftgv               (PL_curinterp->Ileftgv)
385 #define PL_lex_brackets         (PL_curinterp->Ilex_brackets)
386 #define PL_lex_brackstack       (PL_curinterp->Ilex_brackstack)
387 #define PL_lex_casemods         (PL_curinterp->Ilex_casemods)
388 #define PL_lex_casestack        (PL_curinterp->Ilex_casestack)
389 #define PL_lex_defer            (PL_curinterp->Ilex_defer)
390 #define PL_lex_dojoin           (PL_curinterp->Ilex_dojoin)
391 #define PL_lex_expect           (PL_curinterp->Ilex_expect)
392 #define PL_lex_fakebrack        (PL_curinterp->Ilex_fakebrack)
393 #define PL_lex_formbrack        (PL_curinterp->Ilex_formbrack)
394 #define PL_lex_inpat            (PL_curinterp->Ilex_inpat)
395 #define PL_lex_inwhat           (PL_curinterp->Ilex_inwhat)
396 #define PL_lex_op               (PL_curinterp->Ilex_op)
397 #define PL_lex_repl             (PL_curinterp->Ilex_repl)
398 #define PL_lex_starts           (PL_curinterp->Ilex_starts)
399 #define PL_lex_state            (PL_curinterp->Ilex_state)
400 #define PL_lex_stuff            (PL_curinterp->Ilex_stuff)
401 #define PL_lineary              (PL_curinterp->Ilineary)
402 #define PL_linestart            (PL_curinterp->Ilinestart)
403 #define PL_linestr              (PL_curinterp->Ilinestr)
404 #define PL_localpatches         (PL_curinterp->Ilocalpatches)
405 #define PL_main_cv              (PL_curinterp->Imain_cv)
406 #define PL_main_root            (PL_curinterp->Imain_root)
407 #define PL_main_start           (PL_curinterp->Imain_start)
408 #define PL_malloc_mutex         (PL_curinterp->Imalloc_mutex)
409 #define PL_max_intro_pending    (PL_curinterp->Imax_intro_pending)
410 #define PL_maxo                 (PL_curinterp->Imaxo)
411 #define PL_maxsysfd             (PL_curinterp->Imaxsysfd)
412 #define PL_mess_sv              (PL_curinterp->Imess_sv)
413 #define PL_min_intro_pending    (PL_curinterp->Imin_intro_pending)
414 #define PL_minus_F              (PL_curinterp->Iminus_F)
415 #define PL_minus_a              (PL_curinterp->Iminus_a)
416 #define PL_minus_c              (PL_curinterp->Iminus_c)
417 #define PL_minus_l              (PL_curinterp->Iminus_l)
418 #define PL_minus_n              (PL_curinterp->Iminus_n)
419 #define PL_minus_p              (PL_curinterp->Iminus_p)
420 #define PL_modglobal            (PL_curinterp->Imodglobal)
421 #define PL_multi_close          (PL_curinterp->Imulti_close)
422 #define PL_multi_end            (PL_curinterp->Imulti_end)
423 #define PL_multi_open           (PL_curinterp->Imulti_open)
424 #define PL_multi_start          (PL_curinterp->Imulti_start)
425 #define PL_multiline            (PL_curinterp->Imultiline)
426 #define PL_mystrk               (PL_curinterp->Imystrk)
427 #define PL_nexttoke             (PL_curinterp->Inexttoke)
428 #define PL_nexttype             (PL_curinterp->Inexttype)
429 #define PL_nextval              (PL_curinterp->Inextval)
430 #define PL_nice_chunk           (PL_curinterp->Inice_chunk)
431 #define PL_nice_chunk_size      (PL_curinterp->Inice_chunk_size)
432 #define PL_nomemok              (PL_curinterp->Inomemok)
433 #define PL_nthreads             (PL_curinterp->Inthreads)
434 #define PL_nthreads_cond        (PL_curinterp->Inthreads_cond)
435 #define PL_numeric_local        (PL_curinterp->Inumeric_local)
436 #define PL_numeric_name         (PL_curinterp->Inumeric_name)
437 #define PL_numeric_radix        (PL_curinterp->Inumeric_radix)
438 #define PL_numeric_standard     (PL_curinterp->Inumeric_standard)
439 #define PL_ofmt                 (PL_curinterp->Iofmt)
440 #define PL_oldbufptr            (PL_curinterp->Ioldbufptr)
441 #define PL_oldlastpm            (PL_curinterp->Ioldlastpm)
442 #define PL_oldname              (PL_curinterp->Ioldname)
443 #define PL_oldoldbufptr         (PL_curinterp->Ioldoldbufptr)
444 #define PL_op_mask              (PL_curinterp->Iop_mask)
445 #define PL_op_seqmax            (PL_curinterp->Iop_seqmax)
446 #define PL_origalen             (PL_curinterp->Iorigalen)
447 #define PL_origargc             (PL_curinterp->Iorigargc)
448 #define PL_origargv             (PL_curinterp->Iorigargv)
449 #define PL_origenviron          (PL_curinterp->Iorigenviron)
450 #define PL_origfilename         (PL_curinterp->Iorigfilename)
451 #define PL_ors                  (PL_curinterp->Iors)
452 #define PL_orslen               (PL_curinterp->Iorslen)
453 #define PL_osname               (PL_curinterp->Iosname)
454 #define PL_pad_reset_pending    (PL_curinterp->Ipad_reset_pending)
455 #define PL_padix                (PL_curinterp->Ipadix)
456 #define PL_padix_floor          (PL_curinterp->Ipadix_floor)
457 #define PL_parsehook            (PL_curinterp->Iparsehook)
458 #define PL_patchlevel           (PL_curinterp->Ipatchlevel)
459 #define PL_pending_ident        (PL_curinterp->Ipending_ident)
460 #define PL_perl_destruct_level  (PL_curinterp->Iperl_destruct_level)
461 #define PL_perldb               (PL_curinterp->Iperldb)
462 #define PL_pidstatus            (PL_curinterp->Ipidstatus)
463 #define PL_preambleav           (PL_curinterp->Ipreambleav)
464 #define PL_preambled            (PL_curinterp->Ipreambled)
465 #define PL_preprocess           (PL_curinterp->Ipreprocess)
466 #define PL_profiledata          (PL_curinterp->Iprofiledata)
467 #define PL_replgv               (PL_curinterp->Ireplgv)
468 #define PL_rightgv              (PL_curinterp->Irightgv)
469 #define PL_rsfp                 (PL_curinterp->Irsfp)
470 #define PL_rsfp_filters         (PL_curinterp->Irsfp_filters)
471 #define PL_runops               (PL_curinterp->Irunops)
472 #define PL_sawampersand         (PL_curinterp->Isawampersand)
473 #define PL_sawstudy             (PL_curinterp->Isawstudy)
474 #define PL_sawvec               (PL_curinterp->Isawvec)
475 #define PL_sh_path              (PL_curinterp->Ish_path)
476 #define PL_siggv                (PL_curinterp->Isiggv)
477 #define PL_sighandlerp          (PL_curinterp->Isighandlerp)
478 #define PL_splitstr             (PL_curinterp->Isplitstr)
479 #define PL_srand_called         (PL_curinterp->Isrand_called)
480 #define PL_statusvalue          (PL_curinterp->Istatusvalue)
481 #define PL_statusvalue_vms      (PL_curinterp->Istatusvalue_vms)
482 #define PL_stdingv              (PL_curinterp->Istdingv)
483 #define PL_strchop              (PL_curinterp->Istrchop)
484 #define PL_strtab               (PL_curinterp->Istrtab)
485 #define PL_strtab_mutex         (PL_curinterp->Istrtab_mutex)
486 #define PL_sub_generation       (PL_curinterp->Isub_generation)
487 #define PL_sublex_info          (PL_curinterp->Isublex_info)
488 #define PL_subline              (PL_curinterp->Isubline)
489 #define PL_subname              (PL_curinterp->Isubname)
490 #define PL_sv_arenaroot         (PL_curinterp->Isv_arenaroot)
491 #define PL_sv_count             (PL_curinterp->Isv_count)
492 #define PL_sv_mutex             (PL_curinterp->Isv_mutex)
493 #define PL_sv_no                (PL_curinterp->Isv_no)
494 #define PL_sv_objcount          (PL_curinterp->Isv_objcount)
495 #define PL_sv_root              (PL_curinterp->Isv_root)
496 #define PL_sv_undef             (PL_curinterp->Isv_undef)
497 #define PL_sv_yes               (PL_curinterp->Isv_yes)
498 #define PL_svref_mutex          (PL_curinterp->Isvref_mutex)
499 #define PL_sys_intern           (PL_curinterp->Isys_intern)
500 #define PL_tainting             (PL_curinterp->Itainting)
501 #define PL_thisexpr             (PL_curinterp->Ithisexpr)
502 #define PL_thr_key              (PL_curinterp->Ithr_key)
503 #define PL_threadnum            (PL_curinterp->Ithreadnum)
504 #define PL_threads_mutex        (PL_curinterp->Ithreads_mutex)
505 #define PL_threadsv_names       (PL_curinterp->Ithreadsv_names)
506 #define PL_thrsv                (PL_curinterp->Ithrsv)
507 #define PL_tokenbuf             (PL_curinterp->Itokenbuf)
508 #define PL_uid                  (PL_curinterp->Iuid)
509 #define PL_unsafe               (PL_curinterp->Iunsafe)
510 #define PL_utf8_alnum           (PL_curinterp->Iutf8_alnum)
511 #define PL_utf8_alpha           (PL_curinterp->Iutf8_alpha)
512 #define PL_utf8_digit           (PL_curinterp->Iutf8_digit)
513 #define PL_utf8_lower           (PL_curinterp->Iutf8_lower)
514 #define PL_utf8_mark            (PL_curinterp->Iutf8_mark)
515 #define PL_utf8_print           (PL_curinterp->Iutf8_print)
516 #define PL_utf8_space           (PL_curinterp->Iutf8_space)
517 #define PL_utf8_tolower         (PL_curinterp->Iutf8_tolower)
518 #define PL_utf8_totitle         (PL_curinterp->Iutf8_totitle)
519 #define PL_utf8_toupper         (PL_curinterp->Iutf8_toupper)
520 #define PL_utf8_upper           (PL_curinterp->Iutf8_upper)
521 #define PL_uudmap               (PL_curinterp->Iuudmap)
522 #define PL_warnhook             (PL_curinterp->Iwarnhook)
523 #define PL_xiv_arenaroot        (PL_curinterp->Ixiv_arenaroot)
524 #define PL_xiv_root             (PL_curinterp->Ixiv_root)
525 #define PL_xnv_root             (PL_curinterp->Ixnv_root)
526 #define PL_xpv_root             (PL_curinterp->Ixpv_root)
527 #define PL_xrv_root             (PL_curinterp->Ixrv_root)
528 #define PL_yychar               (PL_curinterp->Iyychar)
529 #define PL_yydebug              (PL_curinterp->Iyydebug)
530 #define PL_yyerrflag            (PL_curinterp->Iyyerrflag)
531 #define PL_yylval               (PL_curinterp->Iyylval)
532 #define PL_yynerrs              (PL_curinterp->Iyynerrs)
533 #define PL_yyval                (PL_curinterp->Iyyval)
534
535 #else   /* !MULTIPLICITY */
536
537 #define PL_IArgv                PL_Argv
538 #define PL_ICmd                 PL_Cmd
539 #define PL_IDBcv                PL_DBcv
540 #define PL_IDBgv                PL_DBgv
541 #define PL_IDBline              PL_DBline
542 #define PL_IDBsignal            PL_DBsignal
543 #define PL_IDBsingle            PL_DBsingle
544 #define PL_IDBsub               PL_DBsub
545 #define PL_IDBtrace             PL_DBtrace
546 #define PL_Iamagic_generation   PL_amagic_generation
547 #define PL_Iampergv             PL_ampergv
548 #define PL_Ian                  PL_an
549 #define PL_Iarchpat_auto        PL_archpat_auto
550 #define PL_Iargvgv              PL_argvgv
551 #define PL_Iargvoutgv           PL_argvoutgv
552 #define PL_Ibasetime            PL_basetime
553 #define PL_Ibeginav             PL_beginav
554 #define PL_Ibitcount            PL_bitcount
555 #define PL_Ibufend              PL_bufend
556 #define PL_Ibufptr              PL_bufptr
557 #define PL_Icddir               PL_cddir
558 #define PL_Icollation_ix        PL_collation_ix
559 #define PL_Icollation_name      PL_collation_name
560 #define PL_Icollation_standard  PL_collation_standard
561 #define PL_Icollxfrm_base       PL_collxfrm_base
562 #define PL_Icollxfrm_mult       PL_collxfrm_mult
563 #define PL_Icompcv              PL_compcv
564 #define PL_Icompiling           PL_compiling
565 #define PL_Icomppad             PL_comppad
566 #define PL_Icomppad_name        PL_comppad_name
567 #define PL_Icomppad_name_fill   PL_comppad_name_fill
568 #define PL_Icomppad_name_floor  PL_comppad_name_floor
569 #define PL_Icop_seqmax          PL_cop_seqmax
570 #define PL_Icopline             PL_copline
571 #define PL_Icred_mutex          PL_cred_mutex
572 #define PL_Icryptseen           PL_cryptseen
573 #define PL_Icshlen              PL_cshlen
574 #define PL_Icshname             PL_cshname
575 #define PL_Icurcopdb            PL_curcopdb
576 #define PL_Icurstname           PL_curstname
577 #define PL_Icurthr              PL_curthr
578 #define PL_Idbargs              PL_dbargs
579 #define PL_Idebdelim            PL_debdelim
580 #define PL_Idebname             PL_debname
581 #define PL_Idebstash            PL_debstash
582 #define PL_Idebug               PL_debug
583 #define PL_Idefgv               PL_defgv
584 #define PL_Idiehook             PL_diehook
585 #define PL_Idlevel              PL_dlevel
586 #define PL_Idlmax               PL_dlmax
587 #define PL_Idoextract           PL_doextract
588 #define PL_Idoswitches          PL_doswitches
589 #define PL_Idowarn              PL_dowarn
590 #define PL_Ie_script            PL_e_script
591 #define PL_Iefloatbuf           PL_efloatbuf
592 #define PL_Iefloatsize          PL_efloatsize
593 #define PL_Iegid                PL_egid
594 #define PL_Iendav               PL_endav
595 #define PL_Ienvgv               PL_envgv
596 #define PL_Ierrgv               PL_errgv
597 #define PL_Ierror_count         PL_error_count
598 #define PL_Ieuid                PL_euid
599 #define PL_Ieval_cond           PL_eval_cond
600 #define PL_Ieval_mutex          PL_eval_mutex
601 #define PL_Ieval_owner          PL_eval_owner
602 #define PL_Ieval_root           PL_eval_root
603 #define PL_Ieval_start          PL_eval_start
604 #define PL_Ievalseq             PL_evalseq
605 #define PL_Iexitlist            PL_exitlist
606 #define PL_Iexitlistlen         PL_exitlistlen
607 #define PL_Iexpect              PL_expect
608 #define PL_Ifdpid               PL_fdpid
609 #define PL_Ifilemode            PL_filemode
610 #define PL_Ifilter_debug        PL_filter_debug
611 #define PL_Iforkprocess         PL_forkprocess
612 #define PL_Iformfeed            PL_formfeed
613 #define PL_Igeneration          PL_generation
614 #define PL_Igensym              PL_gensym
615 #define PL_Igid                 PL_gid
616 #define PL_Iglob_index          PL_glob_index
617 #define PL_Iglobalstash         PL_globalstash
618 #define PL_Ihe_root             PL_he_root
619 #define PL_Ihintgv              PL_hintgv
620 #define PL_Ihints               PL_hints
621 #define PL_Iin_clean_all        PL_in_clean_all
622 #define PL_Iin_clean_objs       PL_in_clean_objs
623 #define PL_Iin_my               PL_in_my
624 #define PL_Iin_my_stash         PL_in_my_stash
625 #define PL_Iincgv               PL_incgv
626 #define PL_Iinitav              PL_initav
627 #define PL_Iinplace             PL_inplace
628 #define PL_Ilast_lop            PL_last_lop
629 #define PL_Ilast_lop_op         PL_last_lop_op
630 #define PL_Ilast_swash_hv       PL_last_swash_hv
631 #define PL_Ilast_swash_key      PL_last_swash_key
632 #define PL_Ilast_swash_klen     PL_last_swash_klen
633 #define PL_Ilast_swash_slen     PL_last_swash_slen
634 #define PL_Ilast_swash_tmps     PL_last_swash_tmps
635 #define PL_Ilast_uni            PL_last_uni
636 #define PL_Ilastfd              PL_lastfd
637 #define PL_Ilastsize            PL_lastsize
638 #define PL_Ilastspbase          PL_lastspbase
639 #define PL_Ilaststatval         PL_laststatval
640 #define PL_Ilaststype           PL_laststype
641 #define PL_Ileftgv              PL_leftgv
642 #define PL_Ilex_brackets        PL_lex_brackets
643 #define PL_Ilex_brackstack      PL_lex_brackstack
644 #define PL_Ilex_casemods        PL_lex_casemods
645 #define PL_Ilex_casestack       PL_lex_casestack
646 #define PL_Ilex_defer           PL_lex_defer
647 #define PL_Ilex_dojoin          PL_lex_dojoin
648 #define PL_Ilex_expect          PL_lex_expect
649 #define PL_Ilex_fakebrack       PL_lex_fakebrack
650 #define PL_Ilex_formbrack       PL_lex_formbrack
651 #define PL_Ilex_inpat           PL_lex_inpat
652 #define PL_Ilex_inwhat          PL_lex_inwhat
653 #define PL_Ilex_op              PL_lex_op
654 #define PL_Ilex_repl            PL_lex_repl
655 #define PL_Ilex_starts          PL_lex_starts
656 #define PL_Ilex_state           PL_lex_state
657 #define PL_Ilex_stuff           PL_lex_stuff
658 #define PL_Ilineary             PL_lineary
659 #define PL_Ilinestart           PL_linestart
660 #define PL_Ilinestr             PL_linestr
661 #define PL_Ilocalpatches        PL_localpatches
662 #define PL_Imain_cv             PL_main_cv
663 #define PL_Imain_root           PL_main_root
664 #define PL_Imain_start          PL_main_start
665 #define PL_Imalloc_mutex        PL_malloc_mutex
666 #define PL_Imax_intro_pending   PL_max_intro_pending
667 #define PL_Imaxo                PL_maxo
668 #define PL_Imaxsysfd            PL_maxsysfd
669 #define PL_Imess_sv             PL_mess_sv
670 #define PL_Imin_intro_pending   PL_min_intro_pending
671 #define PL_Iminus_F             PL_minus_F
672 #define PL_Iminus_a             PL_minus_a
673 #define PL_Iminus_c             PL_minus_c
674 #define PL_Iminus_l             PL_minus_l
675 #define PL_Iminus_n             PL_minus_n
676 #define PL_Iminus_p             PL_minus_p
677 #define PL_Imodglobal           PL_modglobal
678 #define PL_Imulti_close         PL_multi_close
679 #define PL_Imulti_end           PL_multi_end
680 #define PL_Imulti_open          PL_multi_open
681 #define PL_Imulti_start         PL_multi_start
682 #define PL_Imultiline           PL_multiline
683 #define PL_Imystrk              PL_mystrk
684 #define PL_Inexttoke            PL_nexttoke
685 #define PL_Inexttype            PL_nexttype
686 #define PL_Inextval             PL_nextval
687 #define PL_Inice_chunk          PL_nice_chunk
688 #define PL_Inice_chunk_size     PL_nice_chunk_size
689 #define PL_Inomemok             PL_nomemok
690 #define PL_Inthreads            PL_nthreads
691 #define PL_Inthreads_cond       PL_nthreads_cond
692 #define PL_Inumeric_local       PL_numeric_local
693 #define PL_Inumeric_name        PL_numeric_name
694 #define PL_Inumeric_radix       PL_numeric_radix
695 #define PL_Inumeric_standard    PL_numeric_standard
696 #define PL_Iofmt                PL_ofmt
697 #define PL_Ioldbufptr           PL_oldbufptr
698 #define PL_Ioldlastpm           PL_oldlastpm
699 #define PL_Ioldname             PL_oldname
700 #define PL_Ioldoldbufptr        PL_oldoldbufptr
701 #define PL_Iop_mask             PL_op_mask
702 #define PL_Iop_seqmax           PL_op_seqmax
703 #define PL_Iorigalen            PL_origalen
704 #define PL_Iorigargc            PL_origargc
705 #define PL_Iorigargv            PL_origargv
706 #define PL_Iorigenviron         PL_origenviron
707 #define PL_Iorigfilename        PL_origfilename
708 #define PL_Iors                 PL_ors
709 #define PL_Iorslen              PL_orslen
710 #define PL_Iosname              PL_osname
711 #define PL_Ipad_reset_pending   PL_pad_reset_pending
712 #define PL_Ipadix               PL_padix
713 #define PL_Ipadix_floor         PL_padix_floor
714 #define PL_Iparsehook           PL_parsehook
715 #define PL_Ipatchlevel          PL_patchlevel
716 #define PL_Ipending_ident       PL_pending_ident
717 #define PL_Iperl_destruct_level PL_perl_destruct_level
718 #define PL_Iperldb              PL_perldb
719 #define PL_Ipidstatus           PL_pidstatus
720 #define PL_Ipreambleav          PL_preambleav
721 #define PL_Ipreambled           PL_preambled
722 #define PL_Ipreprocess          PL_preprocess
723 #define PL_Iprofiledata         PL_profiledata
724 #define PL_Ireplgv              PL_replgv
725 #define PL_Irightgv             PL_rightgv
726 #define PL_Irsfp                PL_rsfp
727 #define PL_Irsfp_filters        PL_rsfp_filters
728 #define PL_Irunops              PL_runops
729 #define PL_Isawampersand        PL_sawampersand
730 #define PL_Isawstudy            PL_sawstudy
731 #define PL_Isawvec              PL_sawvec
732 #define PL_Ish_path             PL_sh_path
733 #define PL_Isiggv               PL_siggv
734 #define PL_Isighandlerp         PL_sighandlerp
735 #define PL_Isplitstr            PL_splitstr
736 #define PL_Isrand_called        PL_srand_called
737 #define PL_Istatusvalue         PL_statusvalue
738 #define PL_Istatusvalue_vms     PL_statusvalue_vms
739 #define PL_Istdingv             PL_stdingv
740 #define PL_Istrchop             PL_strchop
741 #define PL_Istrtab              PL_strtab
742 #define PL_Istrtab_mutex        PL_strtab_mutex
743 #define PL_Isub_generation      PL_sub_generation
744 #define PL_Isublex_info         PL_sublex_info
745 #define PL_Isubline             PL_subline
746 #define PL_Isubname             PL_subname
747 #define PL_Isv_arenaroot        PL_sv_arenaroot
748 #define PL_Isv_count            PL_sv_count
749 #define PL_Isv_mutex            PL_sv_mutex
750 #define PL_Isv_no               PL_sv_no
751 #define PL_Isv_objcount         PL_sv_objcount
752 #define PL_Isv_root             PL_sv_root
753 #define PL_Isv_undef            PL_sv_undef
754 #define PL_Isv_yes              PL_sv_yes
755 #define PL_Isvref_mutex         PL_svref_mutex
756 #define PL_Isys_intern          PL_sys_intern
757 #define PL_Itainting            PL_tainting
758 #define PL_Ithisexpr            PL_thisexpr
759 #define PL_Ithr_key             PL_thr_key
760 #define PL_Ithreadnum           PL_threadnum
761 #define PL_Ithreads_mutex       PL_threads_mutex
762 #define PL_Ithreadsv_names      PL_threadsv_names
763 #define PL_Ithrsv               PL_thrsv
764 #define PL_Itokenbuf            PL_tokenbuf
765 #define PL_Iuid                 PL_uid
766 #define PL_Iunsafe              PL_unsafe
767 #define PL_Iutf8_alnum          PL_utf8_alnum
768 #define PL_Iutf8_alpha          PL_utf8_alpha
769 #define PL_Iutf8_digit          PL_utf8_digit
770 #define PL_Iutf8_lower          PL_utf8_lower
771 #define PL_Iutf8_mark           PL_utf8_mark
772 #define PL_Iutf8_print          PL_utf8_print
773 #define PL_Iutf8_space          PL_utf8_space
774 #define PL_Iutf8_tolower        PL_utf8_tolower
775 #define PL_Iutf8_totitle        PL_utf8_totitle
776 #define PL_Iutf8_toupper        PL_utf8_toupper
777 #define PL_Iutf8_upper          PL_utf8_upper
778 #define PL_Iuudmap              PL_uudmap
779 #define PL_Iwarnhook            PL_warnhook
780 #define PL_Ixiv_arenaroot       PL_xiv_arenaroot
781 #define PL_Ixiv_root            PL_xiv_root
782 #define PL_Ixnv_root            PL_xnv_root
783 #define PL_Ixpv_root            PL_xpv_root
784 #define PL_Ixrv_root            PL_xrv_root
785 #define PL_Iyychar              PL_yychar
786 #define PL_Iyydebug             PL_yydebug
787 #define PL_Iyyerrflag           PL_yyerrflag
788 #define PL_Iyylval              PL_yylval
789 #define PL_Iyynerrs             PL_yynerrs
790 #define PL_Iyyval               PL_yyval
791
792 #ifndef USE_THREADS
793
794 #define PL_TSv                  PL_Sv
795 #define PL_TXpv                 PL_Xpv
796 #define PL_Tav_fetch_sv         PL_av_fetch_sv
797 #define PL_Tbodytarget          PL_bodytarget
798 #define PL_Tbostr               PL_bostr
799 #define PL_Tchopset             PL_chopset
800 #define PL_Tcolors              PL_colors
801 #define PL_Tcolorset            PL_colorset
802 #define PL_Tcurcop              PL_curcop
803 #define PL_Tcurpad              PL_curpad
804 #define PL_Tcurpm               PL_curpm
805 #define PL_Tcurstack            PL_curstack
806 #define PL_Tcurstackinfo        PL_curstackinfo
807 #define PL_Tcurstash            PL_curstash
808 #define PL_Tdefoutgv            PL_defoutgv
809 #define PL_Tdefstash            PL_defstash
810 #define PL_Tdelaymagic          PL_delaymagic
811 #define PL_Tdirty               PL_dirty
812 #define PL_Tdumpindent          PL_dumpindent
813 #define PL_Textralen            PL_extralen
814 #define PL_Tfirstgv             PL_firstgv
815 #define PL_Tformtarget          PL_formtarget
816 #define PL_Thv_fetch_ent_mh     PL_hv_fetch_ent_mh
817 #define PL_Thv_fetch_sv         PL_hv_fetch_sv
818 #define PL_Tin_eval             PL_in_eval
819 #define PL_Tlast_in_gv          PL_last_in_gv
820 #define PL_Tlastgotoprobe       PL_lastgotoprobe
821 #define PL_Tlastscream          PL_lastscream
822 #define PL_Tlocalizing          PL_localizing
823 #define PL_Tmainstack           PL_mainstack
824 #define PL_Tmarkstack           PL_markstack
825 #define PL_Tmarkstack_max       PL_markstack_max
826 #define PL_Tmarkstack_ptr       PL_markstack_ptr
827 #define PL_Tmaxscream           PL_maxscream
828 #define PL_Tmodcount            PL_modcount
829 #define PL_Tna                  PL_na
830 #define PL_Tnrs                 PL_nrs
831 #define PL_Tofs                 PL_ofs
832 #define PL_Tofslen              PL_ofslen
833 #define PL_Top                  PL_op
834 #define PL_Topsave              PL_opsave
835 #define PL_Tprotect             PL_protect
836 #define PL_Treg_call_cc         PL_reg_call_cc
837 #define PL_Treg_curpm           PL_reg_curpm
838 #define PL_Treg_eval_set        PL_reg_eval_set
839 #define PL_Treg_flags           PL_reg_flags
840 #define PL_Treg_ganch           PL_reg_ganch
841 #define PL_Treg_magic           PL_reg_magic
842 #define PL_Treg_oldcurpm        PL_reg_oldcurpm
843 #define PL_Treg_oldpos          PL_reg_oldpos
844 #define PL_Treg_oldsaved        PL_reg_oldsaved
845 #define PL_Treg_oldsavedlen     PL_reg_oldsavedlen
846 #define PL_Treg_re              PL_reg_re
847 #define PL_Treg_start_tmp       PL_reg_start_tmp
848 #define PL_Treg_start_tmpl      PL_reg_start_tmpl
849 #define PL_Treg_starttry        PL_reg_starttry
850 #define PL_Treg_sv              PL_reg_sv
851 #define PL_Tregbol              PL_regbol
852 #define PL_Tregcc               PL_regcc
853 #define PL_Tregcode             PL_regcode
854 #define PL_Tregcomp_parse       PL_regcomp_parse
855 #define PL_Tregcomp_rx          PL_regcomp_rx
856 #define PL_Tregcompp            PL_regcompp
857 #define PL_Tregdata             PL_regdata
858 #define PL_Tregdummy            PL_regdummy
859 #define PL_Tregendp             PL_regendp
860 #define PL_Tregeol              PL_regeol
861 #define PL_Tregexecp            PL_regexecp
862 #define PL_Tregflags            PL_regflags
863 #define PL_Tregfree             PL_regfree
864 #define PL_Tregindent           PL_regindent
865 #define PL_Treginput            PL_reginput
866 #define PL_Tregint_start        PL_regint_start
867 #define PL_Tregint_string       PL_regint_string
868 #define PL_Treginterp_cnt       PL_reginterp_cnt
869 #define PL_Treglastparen        PL_reglastparen
870 #define PL_Tregnarrate          PL_regnarrate
871 #define PL_Tregnaughty          PL_regnaughty
872 #define PL_Tregnpar             PL_regnpar
873 #define PL_Tregprecomp          PL_regprecomp
874 #define PL_Tregprev             PL_regprev
875 #define PL_Tregprogram          PL_regprogram
876 #define PL_Tregsawback          PL_regsawback
877 #define PL_Tregseen             PL_regseen
878 #define PL_Tregsize             PL_regsize
879 #define PL_Tregstartp           PL_regstartp
880 #define PL_Tregtill             PL_regtill
881 #define PL_Tregxend             PL_regxend
882 #define PL_Trestartop           PL_restartop
883 #define PL_Tretstack            PL_retstack
884 #define PL_Tretstack_ix         PL_retstack_ix
885 #define PL_Tretstack_max        PL_retstack_max
886 #define PL_Trs                  PL_rs
887 #define PL_Tsavestack           PL_savestack
888 #define PL_Tsavestack_ix        PL_savestack_ix
889 #define PL_Tsavestack_max       PL_savestack_max
890 #define PL_Tscopestack          PL_scopestack
891 #define PL_Tscopestack_ix       PL_scopestack_ix
892 #define PL_Tscopestack_max      PL_scopestack_max
893 #define PL_Tscreamfirst         PL_screamfirst
894 #define PL_Tscreamnext          PL_screamnext
895 #define PL_Tsecondgv            PL_secondgv
896 #define PL_Tseen_evals          PL_seen_evals
897 #define PL_Tseen_zerolen        PL_seen_zerolen
898 #define PL_Tsortcop             PL_sortcop
899 #define PL_Tsortcxix            PL_sortcxix
900 #define PL_Tsortstash           PL_sortstash
901 #define PL_Tstack_base          PL_stack_base
902 #define PL_Tstack_max           PL_stack_max
903 #define PL_Tstack_sp            PL_stack_sp
904 #define PL_Tstart_env           PL_start_env
905 #define PL_Tstatbuf             PL_statbuf
906 #define PL_Tstatcache           PL_statcache
907 #define PL_Tstatgv              PL_statgv
908 #define PL_Tstatname            PL_statname
909 #define PL_Ttainted             PL_tainted
910 #define PL_Ttimesbuf            PL_timesbuf
911 #define PL_Ttmps_floor          PL_tmps_floor
912 #define PL_Ttmps_ix             PL_tmps_ix
913 #define PL_Ttmps_max            PL_tmps_max
914 #define PL_Ttmps_stack          PL_tmps_stack
915 #define PL_Ttop_env             PL_top_env
916 #define PL_Ttoptarget           PL_toptarget
917 #define PL_Twatchaddr           PL_watchaddr
918 #define PL_Twatchok             PL_watchok
919
920 #endif /* USE_THREADS */
921
922 /* Hide what would have been interpreter-specific symbols? */
923
924
925 #ifndef USE_THREADS
926
927
928 #endif /* USE_THREADS */
929 #endif /* MULTIPLICITY */
930
931 /* Now same trickey for per-thread variables */
932
933 #ifdef USE_THREADS
934
935 #define PL_Sv                   (thr->TSv)
936 #define PL_Xpv                  (thr->TXpv)
937 #define PL_av_fetch_sv          (thr->Tav_fetch_sv)
938 #define PL_bodytarget           (thr->Tbodytarget)
939 #define PL_bostr                (thr->Tbostr)
940 #define PL_chopset              (thr->Tchopset)
941 #define PL_colors               (thr->Tcolors)
942 #define PL_colorset             (thr->Tcolorset)
943 #define PL_curcop               (thr->Tcurcop)
944 #define PL_curpad               (thr->Tcurpad)
945 #define PL_curpm                (thr->Tcurpm)
946 #define PL_curstack             (thr->Tcurstack)
947 #define PL_curstackinfo         (thr->Tcurstackinfo)
948 #define PL_curstash             (thr->Tcurstash)
949 #define PL_defoutgv             (thr->Tdefoutgv)
950 #define PL_defstash             (thr->Tdefstash)
951 #define PL_delaymagic           (thr->Tdelaymagic)
952 #define PL_dirty                (thr->Tdirty)
953 #define PL_dumpindent           (thr->Tdumpindent)
954 #define PL_extralen             (thr->Textralen)
955 #define PL_firstgv              (thr->Tfirstgv)
956 #define PL_formtarget           (thr->Tformtarget)
957 #define PL_hv_fetch_ent_mh      (thr->Thv_fetch_ent_mh)
958 #define PL_hv_fetch_sv          (thr->Thv_fetch_sv)
959 #define PL_in_eval              (thr->Tin_eval)
960 #define PL_last_in_gv           (thr->Tlast_in_gv)
961 #define PL_lastgotoprobe        (thr->Tlastgotoprobe)
962 #define PL_lastscream           (thr->Tlastscream)
963 #define PL_localizing           (thr->Tlocalizing)
964 #define PL_mainstack            (thr->Tmainstack)
965 #define PL_markstack            (thr->Tmarkstack)
966 #define PL_markstack_max        (thr->Tmarkstack_max)
967 #define PL_markstack_ptr        (thr->Tmarkstack_ptr)
968 #define PL_maxscream            (thr->Tmaxscream)
969 #define PL_modcount             (thr->Tmodcount)
970 #define PL_na                   (thr->Tna)
971 #define PL_nrs                  (thr->Tnrs)
972 #define PL_ofs                  (thr->Tofs)
973 #define PL_ofslen               (thr->Tofslen)
974 #define PL_op                   (thr->Top)
975 #define PL_opsave               (thr->Topsave)
976 #define PL_protect              (thr->Tprotect)
977 #define PL_reg_call_cc          (thr->Treg_call_cc)
978 #define PL_reg_curpm            (thr->Treg_curpm)
979 #define PL_reg_eval_set         (thr->Treg_eval_set)
980 #define PL_reg_flags            (thr->Treg_flags)
981 #define PL_reg_ganch            (thr->Treg_ganch)
982 #define PL_reg_magic            (thr->Treg_magic)
983 #define PL_reg_oldcurpm         (thr->Treg_oldcurpm)
984 #define PL_reg_oldpos           (thr->Treg_oldpos)
985 #define PL_reg_oldsaved         (thr->Treg_oldsaved)
986 #define PL_reg_oldsavedlen      (thr->Treg_oldsavedlen)
987 #define PL_reg_re               (thr->Treg_re)
988 #define PL_reg_start_tmp        (thr->Treg_start_tmp)
989 #define PL_reg_start_tmpl       (thr->Treg_start_tmpl)
990 #define PL_reg_starttry         (thr->Treg_starttry)
991 #define PL_reg_sv               (thr->Treg_sv)
992 #define PL_regbol               (thr->Tregbol)
993 #define PL_regcc                (thr->Tregcc)
994 #define PL_regcode              (thr->Tregcode)
995 #define PL_regcomp_parse        (thr->Tregcomp_parse)
996 #define PL_regcomp_rx           (thr->Tregcomp_rx)
997 #define PL_regcompp             (thr->Tregcompp)
998 #define PL_regdata              (thr->Tregdata)
999 #define PL_regdummy             (thr->Tregdummy)
1000 #define PL_regendp              (thr->Tregendp)
1001 #define PL_regeol               (thr->Tregeol)
1002 #define PL_regexecp             (thr->Tregexecp)
1003 #define PL_regflags             (thr->Tregflags)
1004 #define PL_regfree              (thr->Tregfree)
1005 #define PL_regindent            (thr->Tregindent)
1006 #define PL_reginput             (thr->Treginput)
1007 #define PL_regint_start         (thr->Tregint_start)
1008 #define PL_regint_string        (thr->Tregint_string)
1009 #define PL_reginterp_cnt        (thr->Treginterp_cnt)
1010 #define PL_reglastparen         (thr->Treglastparen)
1011 #define PL_regnarrate           (thr->Tregnarrate)
1012 #define PL_regnaughty           (thr->Tregnaughty)
1013 #define PL_regnpar              (thr->Tregnpar)
1014 #define PL_regprecomp           (thr->Tregprecomp)
1015 #define PL_regprev              (thr->Tregprev)
1016 #define PL_regprogram           (thr->Tregprogram)
1017 #define PL_regsawback           (thr->Tregsawback)
1018 #define PL_regseen              (thr->Tregseen)
1019 #define PL_regsize              (thr->Tregsize)
1020 #define PL_regstartp            (thr->Tregstartp)
1021 #define PL_regtill              (thr->Tregtill)
1022 #define PL_regxend              (thr->Tregxend)
1023 #define PL_restartop            (thr->Trestartop)
1024 #define PL_retstack             (thr->Tretstack)
1025 #define PL_retstack_ix          (thr->Tretstack_ix)
1026 #define PL_retstack_max         (thr->Tretstack_max)
1027 #define PL_rs                   (thr->Trs)
1028 #define PL_savestack            (thr->Tsavestack)
1029 #define PL_savestack_ix         (thr->Tsavestack_ix)
1030 #define PL_savestack_max        (thr->Tsavestack_max)
1031 #define PL_scopestack           (thr->Tscopestack)
1032 #define PL_scopestack_ix        (thr->Tscopestack_ix)
1033 #define PL_scopestack_max       (thr->Tscopestack_max)
1034 #define PL_screamfirst          (thr->Tscreamfirst)
1035 #define PL_screamnext           (thr->Tscreamnext)
1036 #define PL_secondgv             (thr->Tsecondgv)
1037 #define PL_seen_evals           (thr->Tseen_evals)
1038 #define PL_seen_zerolen         (thr->Tseen_zerolen)
1039 #define PL_sortcop              (thr->Tsortcop)
1040 #define PL_sortcxix             (thr->Tsortcxix)
1041 #define PL_sortstash            (thr->Tsortstash)
1042 #define PL_stack_base           (thr->Tstack_base)
1043 #define PL_stack_max            (thr->Tstack_max)
1044 #define PL_stack_sp             (thr->Tstack_sp)
1045 #define PL_start_env            (thr->Tstart_env)
1046 #define PL_statbuf              (thr->Tstatbuf)
1047 #define PL_statcache            (thr->Tstatcache)
1048 #define PL_statgv               (thr->Tstatgv)
1049 #define PL_statname             (thr->Tstatname)
1050 #define PL_tainted              (thr->Ttainted)
1051 #define PL_timesbuf             (thr->Ttimesbuf)
1052 #define PL_tmps_floor           (thr->Ttmps_floor)
1053 #define PL_tmps_ix              (thr->Ttmps_ix)
1054 #define PL_tmps_max             (thr->Ttmps_max)
1055 #define PL_tmps_stack           (thr->Ttmps_stack)
1056 #define PL_top_env              (thr->Ttop_env)
1057 #define PL_toptarget            (thr->Ttoptarget)
1058 #define PL_watchaddr            (thr->Twatchaddr)
1059 #define PL_watchok              (thr->Twatchok)
1060
1061 #endif /* USE_THREADS */
1062
1063 #ifdef PERL_GLOBAL_STRUCT
1064
1065 #define PL_No                   (PL_Vars.GNo)
1066 #define PL_Yes                  (PL_Vars.GYes)
1067 #define PL_curinterp            (PL_Vars.Gcurinterp)
1068 #define PL_do_undump            (PL_Vars.Gdo_undump)
1069 #define PL_hexdigit             (PL_Vars.Ghexdigit)
1070 #define PL_patleave             (PL_Vars.Gpatleave)
1071
1072 #else /* !PERL_GLOBAL_STRUCT */
1073
1074 #define PL_GNo                  PL_No
1075 #define PL_GYes                 PL_Yes
1076 #define PL_Gcurinterp           PL_curinterp
1077 #define PL_Gdo_undump           PL_do_undump
1078 #define PL_Ghexdigit            PL_hexdigit
1079 #define PL_Gpatleave            PL_patleave
1080
1081
1082 #endif /* PERL_GLOBAL_STRUCT */
1083
1084
1085 #ifdef PERL_POLLUTE             /* disabled by default in 5.006 */
1086
1087 #define DBsingle                PL_DBsingle
1088 #define DBsub                   PL_DBsub
1089 #define compiling               PL_compiling
1090 #define curcop                  PL_curcop
1091 #define curstash                PL_curstash
1092 #define debstash                PL_debstash
1093 #define defgv                   PL_defgv
1094 #define diehook                 PL_diehook
1095 #define dirty                   PL_dirty
1096 #define dowarn                  PL_dowarn
1097 #define errgv                   PL_errgv
1098 #define na                      PL_na
1099 #define no_modify               PL_no_modify
1100 #define perl_destruct_level     PL_perl_destruct_level
1101 #define perldb                  PL_perldb
1102 #define rsfp                    PL_rsfp
1103 #define rsfp_filters            PL_rsfp_filters
1104 #define stack_base              PL_stack_base
1105 #define stack_sp                PL_stack_sp
1106 #define stdingv                 PL_stdingv
1107 #define sv_arenaroot            PL_sv_arenaroot
1108 #define sv_no                   PL_sv_no
1109 #define sv_undef                PL_sv_undef
1110 #define sv_yes                  PL_sv_yes
1111 #define tainted                 PL_tainted
1112 #define tainting                PL_tainting
1113
1114 #endif /* PERL_POLLUTE */