[win32] Revert to keeping (some) constant strings as globals
[p5sagit/p5-mst-13.2.git] / embedvar.h
1 /* !!!!!!!   DO NOT EDIT THIS FILE   !!!!!!! 
2    This file is built by embed.pl from global.sym, intrpvar.h,
3    and thrdvar.h.  Any changes made here will be lost!
4 */
5
6 /* (Doing namespace management portably in C is really gross.) */
7
8 /*  EMBED has no run-time penalty, but helps keep the Perl namespace
9     from colliding with that used by other libraries pulled in
10     by extensions or by embedding perl.  Allow a cc -DNO_EMBED
11     override, however, to keep binary compatability with previous
12     versions of perl.
13 */
14
15
16 /* Put interpreter-specific symbols into a struct? */
17
18 #ifdef MULTIPLICITY
19
20 #ifndef USE_THREADS
21 /* If we do not have threads then per-thread vars are per-interpreter */
22
23 #define Sv                      (curinterp->TSv)
24 #define Xpv                     (curinterp->TXpv)
25 #define bodytarget              (curinterp->Tbodytarget)
26 #define chopset                 (curinterp->Tchopset)
27 #define curcop                  (curinterp->Tcurcop)
28 #define curpad                  (curinterp->Tcurpad)
29 #define curpm                   (curinterp->Tcurpm)
30 #define curstack                (curinterp->Tcurstack)
31 #define curstash                (curinterp->Tcurstash)
32 #define cxstack                 (curinterp->Tcxstack)
33 #define cxstack_ix              (curinterp->Tcxstack_ix)
34 #define cxstack_max             (curinterp->Tcxstack_max)
35 #define defoutgv                (curinterp->Tdefoutgv)
36 #define defstash                (curinterp->Tdefstash)
37 #define delaymagic              (curinterp->Tdelaymagic)
38 #define dirty                   (curinterp->Tdirty)
39 #define formtarget              (curinterp->Tformtarget)
40 #define in_eval                 (curinterp->Tin_eval)
41 #define last_in_gv              (curinterp->Tlast_in_gv)
42 #define localizing              (curinterp->Tlocalizing)
43 #define mainstack               (curinterp->Tmainstack)
44 #define markstack               (curinterp->Tmarkstack)
45 #define markstack_max           (curinterp->Tmarkstack_max)
46 #define markstack_ptr           (curinterp->Tmarkstack_ptr)
47 #define nrs                     (curinterp->Tnrs)
48 #define ofs                     (curinterp->Tofs)
49 #define ofslen                  (curinterp->Tofslen)
50 #define op                      (curinterp->Top)
51 #define opsave                  (curinterp->Topsave)
52 #define restartop               (curinterp->Trestartop)
53 #define retstack                (curinterp->Tretstack)
54 #define retstack_ix             (curinterp->Tretstack_ix)
55 #define retstack_max            (curinterp->Tretstack_max)
56 #define rs                      (curinterp->Trs)
57 #define savestack               (curinterp->Tsavestack)
58 #define savestack_ix            (curinterp->Tsavestack_ix)
59 #define savestack_max           (curinterp->Tsavestack_max)
60 #define scopestack              (curinterp->Tscopestack)
61 #define scopestack_ix           (curinterp->Tscopestack_ix)
62 #define scopestack_max          (curinterp->Tscopestack_max)
63 #define stack_base              (curinterp->Tstack_base)
64 #define stack_max               (curinterp->Tstack_max)
65 #define stack_sp                (curinterp->Tstack_sp)
66 #define start_env               (curinterp->Tstart_env)
67 #define statbuf                 (curinterp->Tstatbuf)
68 #define tainted                 (curinterp->Ttainted)
69 #define timesbuf                (curinterp->Ttimesbuf)
70 #define tmps_floor              (curinterp->Ttmps_floor)
71 #define tmps_ix                 (curinterp->Ttmps_ix)
72 #define tmps_max                (curinterp->Ttmps_max)
73 #define tmps_stack              (curinterp->Ttmps_stack)
74 #define top_env                 (curinterp->Ttop_env)
75 #define toptarget               (curinterp->Ttoptarget)
76
77 #endif /* !USE_THREADS */
78
79 /* These are always per-interpreter if there is more than one */
80
81 #define Argv                    (curinterp->IArgv)
82 #define Cmd                     (curinterp->ICmd)
83 #define DBgv                    (curinterp->IDBgv)
84 #define DBline                  (curinterp->IDBline)
85 #define DBsignal                (curinterp->IDBsignal)
86 #define DBsingle                (curinterp->IDBsingle)
87 #define DBsub                   (curinterp->IDBsub)
88 #define DBtrace                 (curinterp->IDBtrace)
89 #define ampergv                 (curinterp->Iampergv)
90 #define argvgv                  (curinterp->Iargvgv)
91 #define argvoutgv               (curinterp->Iargvoutgv)
92 #define basetime                (curinterp->Ibasetime)
93 #define beginav                 (curinterp->Ibeginav)
94 #define cddir                   (curinterp->Icddir)
95 #define copline                 (curinterp->Icopline)
96 #define curcopdb                (curinterp->Icurcopdb)
97 #define curstname               (curinterp->Icurstname)
98 #define dbargs                  (curinterp->Idbargs)
99 #define debdelim                (curinterp->Idebdelim)
100 #define debname                 (curinterp->Idebname)
101 #define debstash                (curinterp->Idebstash)
102 #define defgv                   (curinterp->Idefgv)
103 #define diehook                 (curinterp->Idiehook)
104 #define dlevel                  (curinterp->Idlevel)
105 #define dlmax                   (curinterp->Idlmax)
106 #define doextract               (curinterp->Idoextract)
107 #define doswitches              (curinterp->Idoswitches)
108 #define dowarn                  (curinterp->Idowarn)
109 #define dumplvl                 (curinterp->Idumplvl)
110 #define e_fp                    (curinterp->Ie_fp)
111 #define e_tmpname               (curinterp->Ie_tmpname)
112 #define endav                   (curinterp->Iendav)
113 #define envgv                   (curinterp->Ienvgv)
114 #define errgv                   (curinterp->Ierrgv)
115 #define eval_root               (curinterp->Ieval_root)
116 #define eval_start              (curinterp->Ieval_start)
117 #define fdpid                   (curinterp->Ifdpid)
118 #define filemode                (curinterp->Ifilemode)
119 #define firstgv                 (curinterp->Ifirstgv)
120 #define forkprocess             (curinterp->Iforkprocess)
121 #define formfeed                (curinterp->Iformfeed)
122 #define gensym                  (curinterp->Igensym)
123 #define globalstash             (curinterp->Iglobalstash)
124 #define incgv                   (curinterp->Iincgv)
125 #define initav                  (curinterp->Iinitav)
126 #define inplace                 (curinterp->Iinplace)
127 #define lastfd                  (curinterp->Ilastfd)
128 #define lastscream              (curinterp->Ilastscream)
129 #define lastsize                (curinterp->Ilastsize)
130 #define lastspbase              (curinterp->Ilastspbase)
131 #define laststatval             (curinterp->Ilaststatval)
132 #define laststype               (curinterp->Ilaststype)
133 #define leftgv                  (curinterp->Ileftgv)
134 #define lineary                 (curinterp->Ilineary)
135 #define localpatches            (curinterp->Ilocalpatches)
136 #define main_cv                 (curinterp->Imain_cv)
137 #define main_root               (curinterp->Imain_root)
138 #define main_start              (curinterp->Imain_start)
139 #define maxscream               (curinterp->Imaxscream)
140 #define maxsysfd                (curinterp->Imaxsysfd)
141 #define mess_sv                 (curinterp->Imess_sv)
142 #define minus_F                 (curinterp->Iminus_F)
143 #define minus_a                 (curinterp->Iminus_a)
144 #define minus_c                 (curinterp->Iminus_c)
145 #define minus_l                 (curinterp->Iminus_l)
146 #define minus_n                 (curinterp->Iminus_n)
147 #define minus_p                 (curinterp->Iminus_p)
148 #define multiline               (curinterp->Imultiline)
149 #define mystrk                  (curinterp->Imystrk)
150 #define ofmt                    (curinterp->Iofmt)
151 #define oldlastpm               (curinterp->Ioldlastpm)
152 #define oldname                 (curinterp->Ioldname)
153 #define op_mask                 (curinterp->Iop_mask)
154 #define origargc                (curinterp->Iorigargc)
155 #define origargv                (curinterp->Iorigargv)
156 #define origfilename            (curinterp->Iorigfilename)
157 #define ors                     (curinterp->Iors)
158 #define orslen                  (curinterp->Iorslen)
159 #define parsehook               (curinterp->Iparsehook)
160 #define patchlevel              (curinterp->Ipatchlevel)
161 #define perl_destruct_level     (curinterp->Iperl_destruct_level)
162 #define perldb                  (curinterp->Iperldb)
163 #define preambleav              (curinterp->Ipreambleav)
164 #define preambled               (curinterp->Ipreambled)
165 #define preprocess              (curinterp->Ipreprocess)
166 #define rightgv                 (curinterp->Irightgv)
167 #define sawampersand            (curinterp->Isawampersand)
168 #define sawstudy                (curinterp->Isawstudy)
169 #define sawvec                  (curinterp->Isawvec)
170 #define screamfirst             (curinterp->Iscreamfirst)
171 #define screamnext              (curinterp->Iscreamnext)
172 #define secondgv                (curinterp->Isecondgv)
173 #define siggv                   (curinterp->Isiggv)
174 #define signalstack             (curinterp->Isignalstack)
175 #define sortcop                 (curinterp->Isortcop)
176 #define sortstack               (curinterp->Isortstack)
177 #define sortstash               (curinterp->Isortstash)
178 #define splitstr                (curinterp->Isplitstr)
179 #define statcache               (curinterp->Istatcache)
180 #define statgv                  (curinterp->Istatgv)
181 #define statname                (curinterp->Istatname)
182 #define statusvalue             (curinterp->Istatusvalue)
183 #define statusvalue_vms         (curinterp->Istatusvalue_vms)
184 #define stdingv                 (curinterp->Istdingv)
185 #define strchop                 (curinterp->Istrchop)
186 #define strtab                  (curinterp->Istrtab)
187 #define sv_arenaroot            (curinterp->Isv_arenaroot)
188 #define sv_count                (curinterp->Isv_count)
189 #define sv_objcount             (curinterp->Isv_objcount)
190 #define sv_root                 (curinterp->Isv_root)
191 #define tainting                (curinterp->Itainting)
192 #define thrsv                   (curinterp->Ithrsv)
193 #define unsafe                  (curinterp->Iunsafe)
194 #define warnhook                (curinterp->Iwarnhook)
195
196 #else   /* !MULTIPLICITY */
197
198 #define IArgv                   Argv
199 #define ICmd                    Cmd
200 #define IDBgv                   DBgv
201 #define IDBline                 DBline
202 #define IDBsignal               DBsignal
203 #define IDBsingle               DBsingle
204 #define IDBsub                  DBsub
205 #define IDBtrace                DBtrace
206 #define Iampergv                ampergv
207 #define Iargvgv                 argvgv
208 #define Iargvoutgv              argvoutgv
209 #define Ibasetime               basetime
210 #define Ibeginav                beginav
211 #define Icddir                  cddir
212 #define Icopline                copline
213 #define Icurcopdb               curcopdb
214 #define Icurstname              curstname
215 #define Idbargs                 dbargs
216 #define Idebdelim               debdelim
217 #define Idebname                debname
218 #define Idebstash               debstash
219 #define Idefgv                  defgv
220 #define Idiehook                diehook
221 #define Idlevel                 dlevel
222 #define Idlmax                  dlmax
223 #define Idoextract              doextract
224 #define Idoswitches             doswitches
225 #define Idowarn                 dowarn
226 #define Idumplvl                dumplvl
227 #define Ie_fp                   e_fp
228 #define Ie_tmpname              e_tmpname
229 #define Iendav                  endav
230 #define Ienvgv                  envgv
231 #define Ierrgv                  errgv
232 #define Ieval_root              eval_root
233 #define Ieval_start             eval_start
234 #define Ifdpid                  fdpid
235 #define Ifilemode               filemode
236 #define Ifirstgv                firstgv
237 #define Iforkprocess            forkprocess
238 #define Iformfeed               formfeed
239 #define Igensym                 gensym
240 #define Iglobalstash            globalstash
241 #define Iincgv                  incgv
242 #define Iinitav                 initav
243 #define Iinplace                inplace
244 #define Ilastfd                 lastfd
245 #define Ilastscream             lastscream
246 #define Ilastsize               lastsize
247 #define Ilastspbase             lastspbase
248 #define Ilaststatval            laststatval
249 #define Ilaststype              laststype
250 #define Ileftgv                 leftgv
251 #define Ilineary                lineary
252 #define Ilocalpatches           localpatches
253 #define Imain_cv                main_cv
254 #define Imain_root              main_root
255 #define Imain_start             main_start
256 #define Imaxscream              maxscream
257 #define Imaxsysfd               maxsysfd
258 #define Imess_sv                mess_sv
259 #define Iminus_F                minus_F
260 #define Iminus_a                minus_a
261 #define Iminus_c                minus_c
262 #define Iminus_l                minus_l
263 #define Iminus_n                minus_n
264 #define Iminus_p                minus_p
265 #define Imultiline              multiline
266 #define Imystrk                 mystrk
267 #define Iofmt                   ofmt
268 #define Ioldlastpm              oldlastpm
269 #define Ioldname                oldname
270 #define Iop_mask                op_mask
271 #define Iorigargc               origargc
272 #define Iorigargv               origargv
273 #define Iorigfilename           origfilename
274 #define Iors                    ors
275 #define Iorslen                 orslen
276 #define Iparsehook              parsehook
277 #define Ipatchlevel             patchlevel
278 #define Iperl_destruct_level    perl_destruct_level
279 #define Iperldb                 perldb
280 #define Ipreambleav             preambleav
281 #define Ipreambled              preambled
282 #define Ipreprocess             preprocess
283 #define Irightgv                rightgv
284 #define Isawampersand           sawampersand
285 #define Isawstudy               sawstudy
286 #define Isawvec                 sawvec
287 #define Iscreamfirst            screamfirst
288 #define Iscreamnext             screamnext
289 #define Isecondgv               secondgv
290 #define Isiggv                  siggv
291 #define Isignalstack            signalstack
292 #define Isortcop                sortcop
293 #define Isortstack              sortstack
294 #define Isortstash              sortstash
295 #define Isplitstr               splitstr
296 #define Istatcache              statcache
297 #define Istatgv                 statgv
298 #define Istatname               statname
299 #define Istatusvalue            statusvalue
300 #define Istatusvalue_vms        statusvalue_vms
301 #define Istdingv                stdingv
302 #define Istrchop                strchop
303 #define Istrtab                 strtab
304 #define Isv_arenaroot           sv_arenaroot
305 #define Isv_count               sv_count
306 #define Isv_objcount            sv_objcount
307 #define Isv_root                sv_root
308 #define Itainting               tainting
309 #define Ithrsv                  thrsv
310 #define Iunsafe                 unsafe
311 #define Iwarnhook               warnhook
312
313 #ifndef USE_THREADS
314
315 #define TSv                     Sv
316 #define TXpv                    Xpv
317 #define Tbodytarget             bodytarget
318 #define Tchopset                chopset
319 #define Tcurcop                 curcop
320 #define Tcurpad                 curpad
321 #define Tcurpm                  curpm
322 #define Tcurstack               curstack
323 #define Tcurstash               curstash
324 #define Tcxstack                cxstack
325 #define Tcxstack_ix             cxstack_ix
326 #define Tcxstack_max            cxstack_max
327 #define Tdefoutgv               defoutgv
328 #define Tdefstash               defstash
329 #define Tdelaymagic             delaymagic
330 #define Tdirty                  dirty
331 #define Tformtarget             formtarget
332 #define Tin_eval                in_eval
333 #define Tlast_in_gv             last_in_gv
334 #define Tlocalizing             localizing
335 #define Tmainstack              mainstack
336 #define Tmarkstack              markstack
337 #define Tmarkstack_max          markstack_max
338 #define Tmarkstack_ptr          markstack_ptr
339 #define Tnrs                    nrs
340 #define Tofs                    ofs
341 #define Tofslen                 ofslen
342 #define Top                     op
343 #define Topsave                 opsave
344 #define Trestartop              restartop
345 #define Tretstack               retstack
346 #define Tretstack_ix            retstack_ix
347 #define Tretstack_max           retstack_max
348 #define Trs                     rs
349 #define Tsavestack              savestack
350 #define Tsavestack_ix           savestack_ix
351 #define Tsavestack_max          savestack_max
352 #define Tscopestack             scopestack
353 #define Tscopestack_ix          scopestack_ix
354 #define Tscopestack_max         scopestack_max
355 #define Tstack_base             stack_base
356 #define Tstack_max              stack_max
357 #define Tstack_sp               stack_sp
358 #define Tstart_env              start_env
359 #define Tstatbuf                statbuf
360 #define Ttainted                tainted
361 #define Ttimesbuf               timesbuf
362 #define Ttmps_floor             tmps_floor
363 #define Ttmps_ix                tmps_ix
364 #define Ttmps_max               tmps_max
365 #define Ttmps_stack             tmps_stack
366 #define Ttop_env                top_env
367 #define Ttoptarget              toptarget
368
369 #endif /* USE_THREADS */
370
371 /* Hide what would have been interpreter-specific symbols? */
372
373 #ifdef EMBED
374
375 #define Argv                    Perl_Argv
376 #define Cmd                     Perl_Cmd
377 #define DBgv                    Perl_DBgv
378 #define DBline                  Perl_DBline
379 #define DBsignal                Perl_DBsignal
380 #define DBsingle                Perl_DBsingle
381 #define DBsub                   Perl_DBsub
382 #define DBtrace                 Perl_DBtrace
383 #define ampergv                 Perl_ampergv
384 #define argvgv                  Perl_argvgv
385 #define argvoutgv               Perl_argvoutgv
386 #define basetime                Perl_basetime
387 #define beginav                 Perl_beginav
388 #define cddir                   Perl_cddir
389 #define copline                 Perl_copline
390 #define curcopdb                Perl_curcopdb
391 #define curstname               Perl_curstname
392 #define dbargs                  Perl_dbargs
393 #define debdelim                Perl_debdelim
394 #define debname                 Perl_debname
395 #define debstash                Perl_debstash
396 #define defgv                   Perl_defgv
397 #define diehook                 Perl_diehook
398 #define dlevel                  Perl_dlevel
399 #define dlmax                   Perl_dlmax
400 #define doextract               Perl_doextract
401 #define doswitches              Perl_doswitches
402 #define dowarn                  Perl_dowarn
403 #define dumplvl                 Perl_dumplvl
404 #define e_fp                    Perl_e_fp
405 #define e_tmpname               Perl_e_tmpname
406 #define endav                   Perl_endav
407 #define envgv                   Perl_envgv
408 #define errgv                   Perl_errgv
409 #define eval_root               Perl_eval_root
410 #define eval_start              Perl_eval_start
411 #define fdpid                   Perl_fdpid
412 #define filemode                Perl_filemode
413 #define firstgv                 Perl_firstgv
414 #define forkprocess             Perl_forkprocess
415 #define formfeed                Perl_formfeed
416 #define gensym                  Perl_gensym
417 #define globalstash             Perl_globalstash
418 #define incgv                   Perl_incgv
419 #define initav                  Perl_initav
420 #define inplace                 Perl_inplace
421 #define lastfd                  Perl_lastfd
422 #define lastscream              Perl_lastscream
423 #define lastsize                Perl_lastsize
424 #define lastspbase              Perl_lastspbase
425 #define laststatval             Perl_laststatval
426 #define laststype               Perl_laststype
427 #define leftgv                  Perl_leftgv
428 #define lineary                 Perl_lineary
429 #define localpatches            Perl_localpatches
430 #define main_cv                 Perl_main_cv
431 #define main_root               Perl_main_root
432 #define main_start              Perl_main_start
433 #define maxscream               Perl_maxscream
434 #define maxsysfd                Perl_maxsysfd
435 #define mess_sv                 Perl_mess_sv
436 #define minus_F                 Perl_minus_F
437 #define minus_a                 Perl_minus_a
438 #define minus_c                 Perl_minus_c
439 #define minus_l                 Perl_minus_l
440 #define minus_n                 Perl_minus_n
441 #define minus_p                 Perl_minus_p
442 #define multiline               Perl_multiline
443 #define mystrk                  Perl_mystrk
444 #define ofmt                    Perl_ofmt
445 #define oldlastpm               Perl_oldlastpm
446 #define oldname                 Perl_oldname
447 #define op_mask                 Perl_op_mask
448 #define origargc                Perl_origargc
449 #define origargv                Perl_origargv
450 #define origfilename            Perl_origfilename
451 #define ors                     Perl_ors
452 #define orslen                  Perl_orslen
453 #define parsehook               Perl_parsehook
454 #define patchlevel              Perl_patchlevel
455 #define perl_destruct_level     Perl_perl_destruct_level
456 #define perldb                  Perl_perldb
457 #define preambleav              Perl_preambleav
458 #define preambled               Perl_preambled
459 #define preprocess              Perl_preprocess
460 #define rightgv                 Perl_rightgv
461 #define sawampersand            Perl_sawampersand
462 #define sawstudy                Perl_sawstudy
463 #define sawvec                  Perl_sawvec
464 #define screamfirst             Perl_screamfirst
465 #define screamnext              Perl_screamnext
466 #define secondgv                Perl_secondgv
467 #define siggv                   Perl_siggv
468 #define signalstack             Perl_signalstack
469 #define sortcop                 Perl_sortcop
470 #define sortstack               Perl_sortstack
471 #define sortstash               Perl_sortstash
472 #define splitstr                Perl_splitstr
473 #define statcache               Perl_statcache
474 #define statgv                  Perl_statgv
475 #define statname                Perl_statname
476 #define statusvalue             Perl_statusvalue
477 #define statusvalue_vms         Perl_statusvalue_vms
478 #define stdingv                 Perl_stdingv
479 #define strchop                 Perl_strchop
480 #define strtab                  Perl_strtab
481 #define sv_arenaroot            Perl_sv_arenaroot
482 #define sv_count                Perl_sv_count
483 #define sv_objcount             Perl_sv_objcount
484 #define sv_root                 Perl_sv_root
485 #define tainting                Perl_tainting
486 #define thrsv                   Perl_thrsv
487 #define unsafe                  Perl_unsafe
488 #define warnhook                Perl_warnhook
489
490 #ifndef USE_THREADS
491
492 #define Sv                      Perl_Sv
493 #define Xpv                     Perl_Xpv
494 #define bodytarget              Perl_bodytarget
495 #define chopset                 Perl_chopset
496 #define curcop                  Perl_curcop
497 #define curpad                  Perl_curpad
498 #define curpm                   Perl_curpm
499 #define curstack                Perl_curstack
500 #define curstash                Perl_curstash
501 #define cxstack                 Perl_cxstack
502 #define cxstack_ix              Perl_cxstack_ix
503 #define cxstack_max             Perl_cxstack_max
504 #define defoutgv                Perl_defoutgv
505 #define defstash                Perl_defstash
506 #define delaymagic              Perl_delaymagic
507 #define dirty                   Perl_dirty
508 #define formtarget              Perl_formtarget
509 #define in_eval                 Perl_in_eval
510 #define last_in_gv              Perl_last_in_gv
511 #define localizing              Perl_localizing
512 #define mainstack               Perl_mainstack
513 #define markstack               Perl_markstack
514 #define markstack_max           Perl_markstack_max
515 #define markstack_ptr           Perl_markstack_ptr
516 #define nrs                     Perl_nrs
517 #define ofs                     Perl_ofs
518 #define ofslen                  Perl_ofslen
519 #define op                      Perl_op
520 #define opsave                  Perl_opsave
521 #define restartop               Perl_restartop
522 #define retstack                Perl_retstack
523 #define retstack_ix             Perl_retstack_ix
524 #define retstack_max            Perl_retstack_max
525 #define rs                      Perl_rs
526 #define savestack               Perl_savestack
527 #define savestack_ix            Perl_savestack_ix
528 #define savestack_max           Perl_savestack_max
529 #define scopestack              Perl_scopestack
530 #define scopestack_ix           Perl_scopestack_ix
531 #define scopestack_max          Perl_scopestack_max
532 #define stack_base              Perl_stack_base
533 #define stack_max               Perl_stack_max
534 #define stack_sp                Perl_stack_sp
535 #define start_env               Perl_start_env
536 #define statbuf                 Perl_statbuf
537 #define tainted                 Perl_tainted
538 #define timesbuf                Perl_timesbuf
539 #define tmps_floor              Perl_tmps_floor
540 #define tmps_ix                 Perl_tmps_ix
541 #define tmps_max                Perl_tmps_max
542 #define tmps_stack              Perl_tmps_stack
543 #define top_env                 Perl_top_env
544 #define toptarget               Perl_toptarget
545
546 #endif /* USE_THREADS */
547 #endif /* EMBED */
548 #endif /* MULTIPLICITY */
549
550 /* Now same trickey for per-thread variables */
551
552 #ifdef USE_THREADS
553
554 #define Sv                      (thr->TSv)
555 #define Xpv                     (thr->TXpv)
556 #define bodytarget              (thr->Tbodytarget)
557 #define chopset                 (thr->Tchopset)
558 #define curcop                  (thr->Tcurcop)
559 #define curpad                  (thr->Tcurpad)
560 #define curpm                   (thr->Tcurpm)
561 #define curstack                (thr->Tcurstack)
562 #define curstash                (thr->Tcurstash)
563 #define cxstack                 (thr->Tcxstack)
564 #define cxstack_ix              (thr->Tcxstack_ix)
565 #define cxstack_max             (thr->Tcxstack_max)
566 #define defoutgv                (thr->Tdefoutgv)
567 #define defstash                (thr->Tdefstash)
568 #define delaymagic              (thr->Tdelaymagic)
569 #define dirty                   (thr->Tdirty)
570 #define formtarget              (thr->Tformtarget)
571 #define in_eval                 (thr->Tin_eval)
572 #define last_in_gv              (thr->Tlast_in_gv)
573 #define localizing              (thr->Tlocalizing)
574 #define mainstack               (thr->Tmainstack)
575 #define markstack               (thr->Tmarkstack)
576 #define markstack_max           (thr->Tmarkstack_max)
577 #define markstack_ptr           (thr->Tmarkstack_ptr)
578 #define nrs                     (thr->Tnrs)
579 #define ofs                     (thr->Tofs)
580 #define ofslen                  (thr->Tofslen)
581 #define op                      (thr->Top)
582 #define opsave                  (thr->Topsave)
583 #define restartop               (thr->Trestartop)
584 #define retstack                (thr->Tretstack)
585 #define retstack_ix             (thr->Tretstack_ix)
586 #define retstack_max            (thr->Tretstack_max)
587 #define rs                      (thr->Trs)
588 #define savestack               (thr->Tsavestack)
589 #define savestack_ix            (thr->Tsavestack_ix)
590 #define savestack_max           (thr->Tsavestack_max)
591 #define scopestack              (thr->Tscopestack)
592 #define scopestack_ix           (thr->Tscopestack_ix)
593 #define scopestack_max          (thr->Tscopestack_max)
594 #define stack_base              (thr->Tstack_base)
595 #define stack_max               (thr->Tstack_max)
596 #define stack_sp                (thr->Tstack_sp)
597 #define start_env               (thr->Tstart_env)
598 #define statbuf                 (thr->Tstatbuf)
599 #define tainted                 (thr->Ttainted)
600 #define timesbuf                (thr->Ttimesbuf)
601 #define tmps_floor              (thr->Ttmps_floor)
602 #define tmps_ix                 (thr->Ttmps_ix)
603 #define tmps_max                (thr->Ttmps_max)
604 #define tmps_stack              (thr->Ttmps_stack)
605 #define top_env                 (thr->Ttop_env)
606 #define toptarget               (thr->Ttoptarget)
607
608 #endif /* USE_THREADS */
609
610 #ifdef PERL_GLOBAL_STRUCT
611
612 #define No                      (Perl_Vars.GNo)
613 #define Yes                     (Perl_Vars.GYes)
614 #define amagic_generation       (Perl_Vars.Gamagic_generation)
615 #define an                      (Perl_Vars.Gan)
616 #define bufend                  (Perl_Vars.Gbufend)
617 #define bufptr                  (Perl_Vars.Gbufptr)
618 #define collation_ix            (Perl_Vars.Gcollation_ix)
619 #define collation_name          (Perl_Vars.Gcollation_name)
620 #define collation_standard      (Perl_Vars.Gcollation_standard)
621 #define collxfrm_base           (Perl_Vars.Gcollxfrm_base)
622 #define collxfrm_mult           (Perl_Vars.Gcollxfrm_mult)
623 #define compcv                  (Perl_Vars.Gcompcv)
624 #define compiling               (Perl_Vars.Gcompiling)
625 #define comppad                 (Perl_Vars.Gcomppad)
626 #define comppad_name            (Perl_Vars.Gcomppad_name)
627 #define comppad_name_fill       (Perl_Vars.Gcomppad_name_fill)
628 #define comppad_name_floor      (Perl_Vars.Gcomppad_name_floor)
629 #define cop_seqmax              (Perl_Vars.Gcop_seqmax)
630 #define cryptseen               (Perl_Vars.Gcryptseen)
631 #define cshlen                  (Perl_Vars.Gcshlen)
632 #define cshname                 (Perl_Vars.Gcshname)
633 #define curinterp               (Perl_Vars.Gcurinterp)
634 #define curthr                  (Perl_Vars.Gcurthr)
635 #define debug                   (Perl_Vars.Gdebug)
636 #define do_undump               (Perl_Vars.Gdo_undump)
637 #define egid                    (Perl_Vars.Gegid)
638 #define error_count             (Perl_Vars.Gerror_count)
639 #define euid                    (Perl_Vars.Geuid)
640 #define eval_cond               (Perl_Vars.Geval_cond)
641 #define eval_mutex              (Perl_Vars.Geval_mutex)
642 #define eval_owner              (Perl_Vars.Geval_owner)
643 #define evalseq                 (Perl_Vars.Gevalseq)
644 #define expect                  (Perl_Vars.Gexpect)
645 #define gid                     (Perl_Vars.Ggid)
646 #define he_root                 (Perl_Vars.Ghe_root)
647 #define hexdigit                (Perl_Vars.Ghexdigit)
648 #define hints                   (Perl_Vars.Ghints)
649 #define in_my                   (Perl_Vars.Gin_my)
650 #define in_my_stash             (Perl_Vars.Gin_my_stash)
651 #define last_lop                (Perl_Vars.Glast_lop)
652 #define last_lop_op             (Perl_Vars.Glast_lop_op)
653 #define last_uni                (Perl_Vars.Glast_uni)
654 #define lex_brackets            (Perl_Vars.Glex_brackets)
655 #define lex_brackstack          (Perl_Vars.Glex_brackstack)
656 #define lex_casemods            (Perl_Vars.Glex_casemods)
657 #define lex_casestack           (Perl_Vars.Glex_casestack)
658 #define lex_defer               (Perl_Vars.Glex_defer)
659 #define lex_dojoin              (Perl_Vars.Glex_dojoin)
660 #define lex_expect              (Perl_Vars.Glex_expect)
661 #define lex_fakebrack           (Perl_Vars.Glex_fakebrack)
662 #define lex_formbrack           (Perl_Vars.Glex_formbrack)
663 #define lex_inpat               (Perl_Vars.Glex_inpat)
664 #define lex_inwhat              (Perl_Vars.Glex_inwhat)
665 #define lex_op                  (Perl_Vars.Glex_op)
666 #define lex_repl                (Perl_Vars.Glex_repl)
667 #define lex_starts              (Perl_Vars.Glex_starts)
668 #define lex_state               (Perl_Vars.Glex_state)
669 #define lex_stuff               (Perl_Vars.Glex_stuff)
670 #define linestr                 (Perl_Vars.Glinestr)
671 #define malloc_mutex            (Perl_Vars.Gmalloc_mutex)
672 #define max_intro_pending       (Perl_Vars.Gmax_intro_pending)
673 #define maxo                    (Perl_Vars.Gmaxo)
674 #define min_intro_pending       (Perl_Vars.Gmin_intro_pending)
675 #define multi_close             (Perl_Vars.Gmulti_close)
676 #define multi_end               (Perl_Vars.Gmulti_end)
677 #define multi_open              (Perl_Vars.Gmulti_open)
678 #define multi_start             (Perl_Vars.Gmulti_start)
679 #define na                      (Perl_Vars.Gna)
680 #define nexttoke                (Perl_Vars.Gnexttoke)
681 #define nexttype                (Perl_Vars.Gnexttype)
682 #define nextval                 (Perl_Vars.Gnextval)
683 #define nice_chunk              (Perl_Vars.Gnice_chunk)
684 #define nice_chunk_size         (Perl_Vars.Gnice_chunk_size)
685 #define nomemok                 (Perl_Vars.Gnomemok)
686 #define nthreads                (Perl_Vars.Gnthreads)
687 #define nthreads_cond           (Perl_Vars.Gnthreads_cond)
688 #define numeric_local           (Perl_Vars.Gnumeric_local)
689 #define numeric_name            (Perl_Vars.Gnumeric_name)
690 #define numeric_standard        (Perl_Vars.Gnumeric_standard)
691 #define oldbufptr               (Perl_Vars.Goldbufptr)
692 #define oldoldbufptr            (Perl_Vars.Goldoldbufptr)
693 #define op_seqmax               (Perl_Vars.Gop_seqmax)
694 #define origalen                (Perl_Vars.Gorigalen)
695 #define origenviron             (Perl_Vars.Gorigenviron)
696 #define osname                  (Perl_Vars.Gosname)
697 #define pad_reset_pending       (Perl_Vars.Gpad_reset_pending)
698 #define padix                   (Perl_Vars.Gpadix)
699 #define padix_floor             (Perl_Vars.Gpadix_floor)
700 #define patleave                (Perl_Vars.Gpatleave)
701 #define pidstatus               (Perl_Vars.Gpidstatus)
702 #define profiledata             (Perl_Vars.Gprofiledata)
703 #define rsfp                    (Perl_Vars.Grsfp)
704 #define rsfp_filters            (Perl_Vars.Grsfp_filters)
705 #define runops                  (Perl_Vars.Grunops)
706 #define scrgv                   (Perl_Vars.Gscrgv)
707 #define sh_path                 (Perl_Vars.Gsh_path)
708 #define sighandlerp             (Perl_Vars.Gsighandlerp)
709 #define sub_generation          (Perl_Vars.Gsub_generation)
710 #define subline                 (Perl_Vars.Gsubline)
711 #define subname                 (Perl_Vars.Gsubname)
712 #define sv_mutex                (Perl_Vars.Gsv_mutex)
713 #define sv_no                   (Perl_Vars.Gsv_no)
714 #define sv_undef                (Perl_Vars.Gsv_undef)
715 #define sv_yes                  (Perl_Vars.Gsv_yes)
716 #define thisexpr                (Perl_Vars.Gthisexpr)
717 #define thr_key                 (Perl_Vars.Gthr_key)
718 #define threads_mutex           (Perl_Vars.Gthreads_mutex)
719 #define threadsv_names          (Perl_Vars.Gthreadsv_names)
720 #define tokenbuf                (Perl_Vars.Gtokenbuf)
721 #define uid                     (Perl_Vars.Guid)
722 #define xiv_arenaroot           (Perl_Vars.Gxiv_arenaroot)
723 #define xiv_root                (Perl_Vars.Gxiv_root)
724 #define xnv_root                (Perl_Vars.Gxnv_root)
725 #define xpv_root                (Perl_Vars.Gxpv_root)
726 #define xrv_root                (Perl_Vars.Gxrv_root)
727
728 #else /* !PERL_GLOBAL_STRUCT */
729
730 #define GNo                     No
731 #define GYes                    Yes
732 #define Gamagic_generation      amagic_generation
733 #define Gan                     an
734 #define Gbufend                 bufend
735 #define Gbufptr                 bufptr
736 #define Gcollation_ix           collation_ix
737 #define Gcollation_name         collation_name
738 #define Gcollation_standard     collation_standard
739 #define Gcollxfrm_base          collxfrm_base
740 #define Gcollxfrm_mult          collxfrm_mult
741 #define Gcompcv                 compcv
742 #define Gcompiling              compiling
743 #define Gcomppad                comppad
744 #define Gcomppad_name           comppad_name
745 #define Gcomppad_name_fill      comppad_name_fill
746 #define Gcomppad_name_floor     comppad_name_floor
747 #define Gcop_seqmax             cop_seqmax
748 #define Gcryptseen              cryptseen
749 #define Gcshlen                 cshlen
750 #define Gcshname                cshname
751 #define Gcurinterp              curinterp
752 #define Gcurthr                 curthr
753 #define Gdebug                  debug
754 #define Gdo_undump              do_undump
755 #define Gegid                   egid
756 #define Gerror_count            error_count
757 #define Geuid                   euid
758 #define Geval_cond              eval_cond
759 #define Geval_mutex             eval_mutex
760 #define Geval_owner             eval_owner
761 #define Gevalseq                evalseq
762 #define Gexpect                 expect
763 #define Ggid                    gid
764 #define Ghe_root                he_root
765 #define Ghexdigit               hexdigit
766 #define Ghints                  hints
767 #define Gin_my                  in_my
768 #define Gin_my_stash            in_my_stash
769 #define Glast_lop               last_lop
770 #define Glast_lop_op            last_lop_op
771 #define Glast_uni               last_uni
772 #define Glex_brackets           lex_brackets
773 #define Glex_brackstack         lex_brackstack
774 #define Glex_casemods           lex_casemods
775 #define Glex_casestack          lex_casestack
776 #define Glex_defer              lex_defer
777 #define Glex_dojoin             lex_dojoin
778 #define Glex_expect             lex_expect
779 #define Glex_fakebrack          lex_fakebrack
780 #define Glex_formbrack          lex_formbrack
781 #define Glex_inpat              lex_inpat
782 #define Glex_inwhat             lex_inwhat
783 #define Glex_op                 lex_op
784 #define Glex_repl               lex_repl
785 #define Glex_starts             lex_starts
786 #define Glex_state              lex_state
787 #define Glex_stuff              lex_stuff
788 #define Glinestr                linestr
789 #define Gmalloc_mutex           malloc_mutex
790 #define Gmax_intro_pending      max_intro_pending
791 #define Gmaxo                   maxo
792 #define Gmin_intro_pending      min_intro_pending
793 #define Gmulti_close            multi_close
794 #define Gmulti_end              multi_end
795 #define Gmulti_open             multi_open
796 #define Gmulti_start            multi_start
797 #define Gna                     na
798 #define Gnexttoke               nexttoke
799 #define Gnexttype               nexttype
800 #define Gnextval                nextval
801 #define Gnice_chunk             nice_chunk
802 #define Gnice_chunk_size        nice_chunk_size
803 #define Gnomemok                nomemok
804 #define Gnthreads               nthreads
805 #define Gnthreads_cond          nthreads_cond
806 #define Gnumeric_local          numeric_local
807 #define Gnumeric_name           numeric_name
808 #define Gnumeric_standard       numeric_standard
809 #define Goldbufptr              oldbufptr
810 #define Goldoldbufptr           oldoldbufptr
811 #define Gop_seqmax              op_seqmax
812 #define Gorigalen               origalen
813 #define Gorigenviron            origenviron
814 #define Gosname                 osname
815 #define Gpad_reset_pending      pad_reset_pending
816 #define Gpadix                  padix
817 #define Gpadix_floor            padix_floor
818 #define Gpatleave               patleave
819 #define Gpidstatus              pidstatus
820 #define Gprofiledata            profiledata
821 #define Grsfp                   rsfp
822 #define Grsfp_filters           rsfp_filters
823 #define Grunops                 runops
824 #define Gscrgv                  scrgv
825 #define Gsh_path                sh_path
826 #define Gsighandlerp            sighandlerp
827 #define Gsub_generation         sub_generation
828 #define Gsubline                subline
829 #define Gsubname                subname
830 #define Gsv_mutex               sv_mutex
831 #define Gsv_no                  sv_no
832 #define Gsv_undef               sv_undef
833 #define Gsv_yes                 sv_yes
834 #define Gthisexpr               thisexpr
835 #define Gthr_key                thr_key
836 #define Gthreads_mutex          threads_mutex
837 #define Gthreadsv_names         threadsv_names
838 #define Gtokenbuf               tokenbuf
839 #define Guid                    uid
840 #define Gxiv_arenaroot          xiv_arenaroot
841 #define Gxiv_root               xiv_root
842 #define Gxnv_root               xnv_root
843 #define Gxpv_root               xpv_root
844 #define Gxrv_root               xrv_root
845
846 #ifdef EMBED
847
848 #define No                      Perl_No
849 #define Yes                     Perl_Yes
850 #define amagic_generation       Perl_amagic_generation
851 #define an                      Perl_an
852 #define bufend                  Perl_bufend
853 #define bufptr                  Perl_bufptr
854 #define collation_ix            Perl_collation_ix
855 #define collation_name          Perl_collation_name
856 #define collation_standard      Perl_collation_standard
857 #define collxfrm_base           Perl_collxfrm_base
858 #define collxfrm_mult           Perl_collxfrm_mult
859 #define compcv                  Perl_compcv
860 #define compiling               Perl_compiling
861 #define comppad                 Perl_comppad
862 #define comppad_name            Perl_comppad_name
863 #define comppad_name_fill       Perl_comppad_name_fill
864 #define comppad_name_floor      Perl_comppad_name_floor
865 #define cop_seqmax              Perl_cop_seqmax
866 #define cryptseen               Perl_cryptseen
867 #define cshlen                  Perl_cshlen
868 #define cshname                 Perl_cshname
869 #define curinterp               Perl_curinterp
870 #define curthr                  Perl_curthr
871 #define debug                   Perl_debug
872 #define do_undump               Perl_do_undump
873 #define egid                    Perl_egid
874 #define error_count             Perl_error_count
875 #define euid                    Perl_euid
876 #define eval_cond               Perl_eval_cond
877 #define eval_mutex              Perl_eval_mutex
878 #define eval_owner              Perl_eval_owner
879 #define evalseq                 Perl_evalseq
880 #define expect                  Perl_expect
881 #define gid                     Perl_gid
882 #define he_root                 Perl_he_root
883 #define hexdigit                Perl_hexdigit
884 #define hints                   Perl_hints
885 #define in_my                   Perl_in_my
886 #define in_my_stash             Perl_in_my_stash
887 #define last_lop                Perl_last_lop
888 #define last_lop_op             Perl_last_lop_op
889 #define last_uni                Perl_last_uni
890 #define lex_brackets            Perl_lex_brackets
891 #define lex_brackstack          Perl_lex_brackstack
892 #define lex_casemods            Perl_lex_casemods
893 #define lex_casestack           Perl_lex_casestack
894 #define lex_defer               Perl_lex_defer
895 #define lex_dojoin              Perl_lex_dojoin
896 #define lex_expect              Perl_lex_expect
897 #define lex_fakebrack           Perl_lex_fakebrack
898 #define lex_formbrack           Perl_lex_formbrack
899 #define lex_inpat               Perl_lex_inpat
900 #define lex_inwhat              Perl_lex_inwhat
901 #define lex_op                  Perl_lex_op
902 #define lex_repl                Perl_lex_repl
903 #define lex_starts              Perl_lex_starts
904 #define lex_state               Perl_lex_state
905 #define lex_stuff               Perl_lex_stuff
906 #define linestr                 Perl_linestr
907 #define malloc_mutex            Perl_malloc_mutex
908 #define max_intro_pending       Perl_max_intro_pending
909 #define maxo                    Perl_maxo
910 #define min_intro_pending       Perl_min_intro_pending
911 #define multi_close             Perl_multi_close
912 #define multi_end               Perl_multi_end
913 #define multi_open              Perl_multi_open
914 #define multi_start             Perl_multi_start
915 #define na                      Perl_na
916 #define nexttoke                Perl_nexttoke
917 #define nexttype                Perl_nexttype
918 #define nextval                 Perl_nextval
919 #define nice_chunk              Perl_nice_chunk
920 #define nice_chunk_size         Perl_nice_chunk_size
921 #define nomemok                 Perl_nomemok
922 #define nthreads                Perl_nthreads
923 #define nthreads_cond           Perl_nthreads_cond
924 #define numeric_local           Perl_numeric_local
925 #define numeric_name            Perl_numeric_name
926 #define numeric_standard        Perl_numeric_standard
927 #define oldbufptr               Perl_oldbufptr
928 #define oldoldbufptr            Perl_oldoldbufptr
929 #define op_seqmax               Perl_op_seqmax
930 #define origalen                Perl_origalen
931 #define origenviron             Perl_origenviron
932 #define osname                  Perl_osname
933 #define pad_reset_pending       Perl_pad_reset_pending
934 #define padix                   Perl_padix
935 #define padix_floor             Perl_padix_floor
936 #define patleave                Perl_patleave
937 #define pidstatus               Perl_pidstatus
938 #define profiledata             Perl_profiledata
939 #define rsfp                    Perl_rsfp
940 #define rsfp_filters            Perl_rsfp_filters
941 #define runops                  Perl_runops
942 #define scrgv                   Perl_scrgv
943 #define sh_path                 Perl_sh_path
944 #define sighandlerp             Perl_sighandlerp
945 #define sub_generation          Perl_sub_generation
946 #define subline                 Perl_subline
947 #define subname                 Perl_subname
948 #define sv_mutex                Perl_sv_mutex
949 #define sv_no                   Perl_sv_no
950 #define sv_undef                Perl_sv_undef
951 #define sv_yes                  Perl_sv_yes
952 #define thisexpr                Perl_thisexpr
953 #define thr_key                 Perl_thr_key
954 #define threads_mutex           Perl_threads_mutex
955 #define threadsv_names          Perl_threadsv_names
956 #define tokenbuf                Perl_tokenbuf
957 #define uid                     Perl_uid
958 #define xiv_arenaroot           Perl_xiv_arenaroot
959 #define xiv_root                Perl_xiv_root
960 #define xnv_root                Perl_xnv_root
961 #define xpv_root                Perl_xpv_root
962 #define xrv_root                Perl_xrv_root
963
964 #endif /* EMBED */
965 #endif /* PERL_GLOBAL_STRUCT */
966