1 /* -*- buffer-read-only: t -*-
5 * Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
6 * 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 by Larry Wall and others
8 * You may distribute under the terms of either the GNU General Public
9 * License or the Artistic License, as specified in the README file.
11 * !!!!!!! DO NOT EDIT THIS FILE !!!!!!!
12 * This file is built by regen/embed.pl from data in embed.fnc,
13 * regen/embed.pl, regen/opcodes, intrpvar.h and perlvars.h.
14 * Any changes made here will be lost!
16 * Edit those files and run 'make regen_headers' to effect changes.
19 /* (Doing namespace management portably in C is really gross.) */
22 The following combinations of MULTIPLICITY and PERL_IMPLICIT_CONTEXT
25 2) MULTIPLICITY # supported for compatibility
26 3) MULTIPLICITY && PERL_IMPLICIT_CONTEXT
28 All other combinations of these flags are errors.
30 only #3 is supported directly, while #2 is a special
31 case of #3 (supported by redefining vTHX appropriately).
34 #if defined(MULTIPLICITY)
35 /* cases 2 and 3 above */
37 # if defined(PERL_IMPLICIT_CONTEXT)
40 # define vTHX PERL_GET_INTERP
43 #define PL_AboveLatin1 (vTHX->IAboveLatin1)
44 #define PL_Assigned_invlist (vTHX->IAssigned_invlist)
45 #define PL_CCC_non0_non230 (vTHX->ICCC_non0_non230)
46 #define PL_DBcontrol (vTHX->IDBcontrol)
47 #define PL_DBcv (vTHX->IDBcv)
48 #define PL_DBgv (vTHX->IDBgv)
49 #define PL_DBline (vTHX->IDBline)
50 #define PL_DBsignal (vTHX->IDBsignal)
51 #define PL_DBsingle (vTHX->IDBsingle)
52 #define PL_DBsub (vTHX->IDBsub)
53 #define PL_DBtrace (vTHX->IDBtrace)
54 #define PL_Dir (vTHX->IDir)
55 #define PL_Env (vTHX->IEnv)
56 #define PL_GCB_invlist (vTHX->IGCB_invlist)
57 #define PL_HasMultiCharFold (vTHX->IHasMultiCharFold)
58 #define PL_InBitmap (vTHX->IInBitmap)
59 #define PL_InMultiCharFold (vTHX->IInMultiCharFold)
60 #define PL_LB_invlist (vTHX->ILB_invlist)
61 #define PL_LIO (vTHX->ILIO)
62 #define PL_Latin1 (vTHX->ILatin1)
63 #define PL_Mem (vTHX->IMem)
64 #define PL_MemParse (vTHX->IMemParse)
65 #define PL_MemShared (vTHX->IMemShared)
66 #define PL_Posix_ptrs (vTHX->IPosix_ptrs)
67 #define PL_Private_Use (vTHX->IPrivate_Use)
68 #define PL_Proc (vTHX->IProc)
69 #define PL_SB_invlist (vTHX->ISB_invlist)
70 #define PL_SCX_invlist (vTHX->ISCX_invlist)
71 #define PL_Sock (vTHX->ISock)
72 #define PL_StdIO (vTHX->IStdIO)
73 #define PL_Sv (vTHX->ISv)
74 #define PL_TR_SPECIAL_HANDLING_UTF8 (vTHX->ITR_SPECIAL_HANDLING_UTF8)
75 #define PL_UpperLatin1 (vTHX->IUpperLatin1)
76 #define PL_WB_invlist (vTHX->IWB_invlist)
77 #define PL_XPosix_ptrs (vTHX->IXPosix_ptrs)
78 #define PL_Xpv (vTHX->IXpv)
79 #define PL_an (vTHX->Ian)
80 #define PL_argvgv (vTHX->Iargvgv)
81 #define PL_argvout_stack (vTHX->Iargvout_stack)
82 #define PL_argvoutgv (vTHX->Iargvoutgv)
83 #define PL_basetime (vTHX->Ibasetime)
84 #define PL_beginav (vTHX->Ibeginav)
85 #define PL_beginav_save (vTHX->Ibeginav_save)
86 #define PL_blockhooks (vTHX->Iblockhooks)
87 #define PL_body_arenas (vTHX->Ibody_arenas)
88 #define PL_body_roots (vTHX->Ibody_roots)
89 #define PL_bodytarget (vTHX->Ibodytarget)
90 #define PL_breakable_sub_gen (vTHX->Ibreakable_sub_gen)
91 #define PL_checkav (vTHX->Icheckav)
92 #define PL_checkav_save (vTHX->Icheckav_save)
93 #define PL_chopset (vTHX->Ichopset)
94 #define PL_clocktick (vTHX->Iclocktick)
95 #define PL_collation_ix (vTHX->Icollation_ix)
96 #define PL_collation_name (vTHX->Icollation_name)
97 #define PL_collation_standard (vTHX->Icollation_standard)
98 #define PL_collxfrm_base (vTHX->Icollxfrm_base)
99 #define PL_collxfrm_mult (vTHX->Icollxfrm_mult)
100 #define PL_colors (vTHX->Icolors)
101 #define PL_colorset (vTHX->Icolorset)
102 #define PL_compcv (vTHX->Icompcv)
103 #define PL_compiling (vTHX->Icompiling)
104 #define PL_comppad (vTHX->Icomppad)
105 #define PL_comppad_name (vTHX->Icomppad_name)
106 #define PL_comppad_name_fill (vTHX->Icomppad_name_fill)
107 #define PL_comppad_name_floor (vTHX->Icomppad_name_floor)
108 #define PL_constpadix (vTHX->Iconstpadix)
109 #define PL_cop_seqmax (vTHX->Icop_seqmax)
110 #define PL_curcop (vTHX->Icurcop)
111 #define PL_curcopdb (vTHX->Icurcopdb)
112 #define PL_curlocales (vTHX->Icurlocales)
113 #define PL_curpad (vTHX->Icurpad)
114 #define PL_curpm (vTHX->Icurpm)
115 #define PL_curpm_under (vTHX->Icurpm_under)
116 #define PL_curstack (vTHX->Icurstack)
117 #define PL_curstackinfo (vTHX->Icurstackinfo)
118 #define PL_curstash (vTHX->Icurstash)
119 #define PL_curstname (vTHX->Icurstname)
120 #define PL_custom_op_descs (vTHX->Icustom_op_descs)
121 #define PL_custom_op_names (vTHX->Icustom_op_names)
122 #define PL_custom_ops (vTHX->Icustom_ops)
123 #define PL_cv_has_eval (vTHX->Icv_has_eval)
124 #define PL_dbargs (vTHX->Idbargs)
125 #define PL_debstash (vTHX->Idebstash)
126 #define PL_debug (vTHX->Idebug)
127 #define PL_debug_pad (vTHX->Idebug_pad)
128 #define PL_def_layerlist (vTHX->Idef_layerlist)
129 #define PL_defgv (vTHX->Idefgv)
130 #define PL_defoutgv (vTHX->Idefoutgv)
131 #define PL_defstash (vTHX->Idefstash)
132 #define PL_delaymagic (vTHX->Idelaymagic)
133 #define PL_delaymagic_egid (vTHX->Idelaymagic_egid)
134 #define PL_delaymagic_euid (vTHX->Idelaymagic_euid)
135 #define PL_delaymagic_gid (vTHX->Idelaymagic_gid)
136 #define PL_delaymagic_uid (vTHX->Idelaymagic_uid)
137 #define PL_destroyhook (vTHX->Idestroyhook)
138 #define PL_diehook (vTHX->Idiehook)
139 #define PL_doswitches (vTHX->Idoswitches)
140 #define PL_dowarn (vTHX->Idowarn)
141 #define PL_dump_re_max_len (vTHX->Idump_re_max_len)
142 #define PL_dumper_fd (vTHX->Idumper_fd)
143 #define PL_dumpindent (vTHX->Idumpindent)
144 #define PL_e_script (vTHX->Ie_script)
145 #define PL_efloatbuf (vTHX->Iefloatbuf)
146 #define PL_efloatsize (vTHX->Iefloatsize)
147 #define PL_endav (vTHX->Iendav)
148 #define PL_envgv (vTHX->Ienvgv)
149 #define PL_errgv (vTHX->Ierrgv)
150 #define PL_errors (vTHX->Ierrors)
151 #define PL_eval_root (vTHX->Ieval_root)
152 #define PL_eval_start (vTHX->Ieval_start)
153 #define PL_evalseq (vTHX->Ievalseq)
154 #define PL_exit_flags (vTHX->Iexit_flags)
155 #define PL_exitlist (vTHX->Iexitlist)
156 #define PL_exitlistlen (vTHX->Iexitlistlen)
157 #define PL_fdpid (vTHX->Ifdpid)
158 #define PL_filemode (vTHX->Ifilemode)
159 #define PL_firstgv (vTHX->Ifirstgv)
160 #define PL_forkprocess (vTHX->Iforkprocess)
161 #define PL_formtarget (vTHX->Iformtarget)
162 #define PL_generation (vTHX->Igeneration)
163 #define PL_gensym (vTHX->Igensym)
164 #define PL_globalstash (vTHX->Iglobalstash)
165 #define PL_globhook (vTHX->Iglobhook)
166 #define PL_hash_rand_bits (vTHX->Ihash_rand_bits)
167 #define PL_hash_rand_bits_enabled (vTHX->Ihash_rand_bits_enabled)
168 #define PL_hintgv (vTHX->Ihintgv)
169 #define PL_hv_fetch_ent_mh (vTHX->Ihv_fetch_ent_mh)
170 #define PL_in_clean_all (vTHX->Iin_clean_all)
171 #define PL_in_clean_objs (vTHX->Iin_clean_objs)
172 #define PL_in_eval (vTHX->Iin_eval)
173 #define PL_in_load_module (vTHX->Iin_load_module)
174 #define PL_in_some_fold (vTHX->Iin_some_fold)
175 #define PL_in_utf8_COLLATE_locale (vTHX->Iin_utf8_COLLATE_locale)
176 #define PL_in_utf8_CTYPE_locale (vTHX->Iin_utf8_CTYPE_locale)
177 #define PL_in_utf8_turkic_locale (vTHX->Iin_utf8_turkic_locale)
178 #define PL_incgv (vTHX->Iincgv)
179 #define PL_initav (vTHX->Iinitav)
180 #define PL_inplace (vTHX->Iinplace)
181 #define PL_internal_random_state (vTHX->Iinternal_random_state)
182 #define PL_isarev (vTHX->Iisarev)
183 #define PL_known_layers (vTHX->Iknown_layers)
184 #define PL_langinfo_buf (vTHX->Ilanginfo_buf)
185 #define PL_langinfo_bufsize (vTHX->Ilanginfo_bufsize)
186 #define PL_last_in_gv (vTHX->Ilast_in_gv)
187 #define PL_lastfd (vTHX->Ilastfd)
188 #define PL_lastgotoprobe (vTHX->Ilastgotoprobe)
189 #define PL_laststatval (vTHX->Ilaststatval)
190 #define PL_laststype (vTHX->Ilaststype)
191 #define PL_lc_numeric_mutex_depth (vTHX->Ilc_numeric_mutex_depth)
192 #define PL_locale_utf8ness (vTHX->Ilocale_utf8ness)
193 #define PL_localizing (vTHX->Ilocalizing)
194 #define PL_localpatches (vTHX->Ilocalpatches)
195 #define PL_lockhook (vTHX->Ilockhook)
196 #define PL_main_cv (vTHX->Imain_cv)
197 #define PL_main_root (vTHX->Imain_root)
198 #define PL_main_start (vTHX->Imain_start)
199 #define PL_mainstack (vTHX->Imainstack)
200 #define PL_markstack (vTHX->Imarkstack)
201 #define PL_markstack_max (vTHX->Imarkstack_max)
202 #define PL_markstack_ptr (vTHX->Imarkstack_ptr)
203 #define PL_max_intro_pending (vTHX->Imax_intro_pending)
204 #define PL_maxsysfd (vTHX->Imaxsysfd)
205 #define PL_mbrlen_ps (vTHX->Imbrlen_ps)
206 #define PL_mbrtowc_ps (vTHX->Imbrtowc_ps)
207 #define PL_memory_debug_header (vTHX->Imemory_debug_header)
208 #define PL_mess_sv (vTHX->Imess_sv)
209 #define PL_min_intro_pending (vTHX->Imin_intro_pending)
210 #define PL_minus_E (vTHX->Iminus_E)
211 #define PL_minus_F (vTHX->Iminus_F)
212 #define PL_minus_a (vTHX->Iminus_a)
213 #define PL_minus_c (vTHX->Iminus_c)
214 #define PL_minus_l (vTHX->Iminus_l)
215 #define PL_minus_n (vTHX->Iminus_n)
216 #define PL_minus_p (vTHX->Iminus_p)
217 #define PL_modcount (vTHX->Imodcount)
218 #define PL_modglobal (vTHX->Imodglobal)
219 #define PL_multideref_pc (vTHX->Imultideref_pc)
220 #define PL_my_cxt_list (vTHX->Imy_cxt_list)
221 #define PL_my_cxt_size (vTHX->Imy_cxt_size)
222 #define PL_na (vTHX->Ina)
223 #define PL_nomemok (vTHX->Inomemok)
224 #define PL_numeric_name (vTHX->Inumeric_name)
225 #define PL_numeric_radix_sv (vTHX->Inumeric_radix_sv)
226 #define PL_numeric_standard (vTHX->Inumeric_standard)
227 #define PL_numeric_underlying (vTHX->Inumeric_underlying)
228 #define PL_numeric_underlying_is_standard (vTHX->Inumeric_underlying_is_standard)
229 #define PL_ofsgv (vTHX->Iofsgv)
230 #define PL_oldname (vTHX->Ioldname)
231 #define PL_op (vTHX->Iop)
232 #define PL_op_exec_cnt (vTHX->Iop_exec_cnt)
233 #define PL_op_mask (vTHX->Iop_mask)
234 #define PL_opfreehook (vTHX->Iopfreehook)
235 #define PL_origalen (vTHX->Iorigalen)
236 #define PL_origargc (vTHX->Iorigargc)
237 #define PL_origargv (vTHX->Iorigargv)
238 #define PL_origenviron (vTHX->Iorigenviron)
239 #define PL_origfilename (vTHX->Iorigfilename)
240 #define PL_ors_sv (vTHX->Iors_sv)
241 #define PL_osname (vTHX->Iosname)
242 #define PL_pad_reset_pending (vTHX->Ipad_reset_pending)
243 #define PL_padix (vTHX->Ipadix)
244 #define PL_padix_floor (vTHX->Ipadix_floor)
245 #define PL_padlist_generation (vTHX->Ipadlist_generation)
246 #define PL_padname_const (vTHX->Ipadname_const)
247 #define PL_padname_undef (vTHX->Ipadname_undef)
248 #define PL_parser (vTHX->Iparser)
249 #define PL_patchlevel (vTHX->Ipatchlevel)
250 #define PL_peepp (vTHX->Ipeepp)
251 #define PL_perl_destruct_level (vTHX->Iperl_destruct_level)
252 #define PL_perldb (vTHX->Iperldb)
253 #define PL_perlio (vTHX->Iperlio)
254 #define PL_phase (vTHX->Iphase)
255 #define PL_pidstatus (vTHX->Ipidstatus)
256 #define PL_preambleav (vTHX->Ipreambleav)
257 #define PL_profiledata (vTHX->Iprofiledata)
258 #define PL_psig_name (vTHX->Ipsig_name)
259 #define PL_psig_pend (vTHX->Ipsig_pend)
260 #define PL_psig_ptr (vTHX->Ipsig_ptr)
261 #define PL_ptr_table (vTHX->Iptr_table)
262 #define PL_random_state (vTHX->Irandom_state)
263 #define PL_reentrant_buffer (vTHX->Ireentrant_buffer)
264 #define PL_reentrant_retint (vTHX->Ireentrant_retint)
265 #define PL_reg_curpm (vTHX->Ireg_curpm)
266 #define PL_regex_pad (vTHX->Iregex_pad)
267 #define PL_regex_padav (vTHX->Iregex_padav)
268 #define PL_registered_mros (vTHX->Iregistered_mros)
269 #define PL_regmatch_slab (vTHX->Iregmatch_slab)
270 #define PL_regmatch_state (vTHX->Iregmatch_state)
271 #define PL_replgv (vTHX->Ireplgv)
272 #define PL_restartjmpenv (vTHX->Irestartjmpenv)
273 #define PL_restartop (vTHX->Irestartop)
274 #define PL_rpeepp (vTHX->Irpeepp)
275 #define PL_rs (vTHX->Irs)
276 #define PL_runops (vTHX->Irunops)
277 #define PL_savebegin (vTHX->Isavebegin)
278 #define PL_savestack (vTHX->Isavestack)
279 #define PL_savestack_ix (vTHX->Isavestack_ix)
280 #define PL_savestack_max (vTHX->Isavestack_max)
281 #ifndef PL_sawampersand
282 #define PL_sawampersand (vTHX->Isawampersand)
284 #define PL_scopestack (vTHX->Iscopestack)
285 #define PL_scopestack_ix (vTHX->Iscopestack_ix)
286 #define PL_scopestack_max (vTHX->Iscopestack_max)
287 #define PL_scopestack_name (vTHX->Iscopestack_name)
288 #define PL_secondgv (vTHX->Isecondgv)
289 #define PL_setlocale_buf (vTHX->Isetlocale_buf)
290 #define PL_setlocale_bufsize (vTHX->Isetlocale_bufsize)
291 #define PL_sharehook (vTHX->Isharehook)
292 #define PL_sig_pending (vTHX->Isig_pending)
293 #define PL_sighandler1p (vTHX->Isighandler1p)
294 #define PL_sighandler3p (vTHX->Isighandler3p)
295 #define PL_sighandlerp (vTHX->Isighandlerp)
296 #define PL_signalhook (vTHX->Isignalhook)
297 #define PL_signals (vTHX->Isignals)
298 #define PL_sortcop (vTHX->Isortcop)
299 #define PL_sortstash (vTHX->Isortstash)
300 #define PL_splitstr (vTHX->Isplitstr)
301 #define PL_srand_called (vTHX->Isrand_called)
302 #define PL_stack_base (vTHX->Istack_base)
303 #define PL_stack_max (vTHX->Istack_max)
304 #define PL_stack_sp (vTHX->Istack_sp)
305 #define PL_start_env (vTHX->Istart_env)
306 #define PL_stashcache (vTHX->Istashcache)
307 #define PL_stashpad (vTHX->Istashpad)
308 #define PL_stashpadix (vTHX->Istashpadix)
309 #define PL_stashpadmax (vTHX->Istashpadmax)
310 #define PL_statcache (vTHX->Istatcache)
311 #define PL_statgv (vTHX->Istatgv)
312 #define PL_statname (vTHX->Istatname)
313 #define PL_statusvalue (vTHX->Istatusvalue)
314 #define PL_statusvalue_posix (vTHX->Istatusvalue_posix)
315 #define PL_statusvalue_vms (vTHX->Istatusvalue_vms)
316 #define PL_stderrgv (vTHX->Istderrgv)
317 #define PL_stdingv (vTHX->Istdingv)
318 #define PL_strtab (vTHX->Istrtab)
319 #define PL_strxfrm_NUL_replacement (vTHX->Istrxfrm_NUL_replacement)
320 #define PL_strxfrm_is_behaved (vTHX->Istrxfrm_is_behaved)
321 #define PL_strxfrm_max_cp (vTHX->Istrxfrm_max_cp)
322 #define PL_sub_generation (vTHX->Isub_generation)
323 #define PL_subline (vTHX->Isubline)
324 #define PL_subname (vTHX->Isubname)
325 #define PL_sv_arenaroot (vTHX->Isv_arenaroot)
326 #define PL_sv_consts (vTHX->Isv_consts)
327 #define PL_sv_count (vTHX->Isv_count)
328 #define PL_sv_immortals (vTHX->Isv_immortals)
329 #define PL_sv_no (vTHX->Isv_no)
330 #define PL_sv_root (vTHX->Isv_root)
331 #define PL_sv_serial (vTHX->Isv_serial)
332 #define PL_sv_undef (vTHX->Isv_undef)
333 #define PL_sv_yes (vTHX->Isv_yes)
334 #define PL_sv_zero (vTHX->Isv_zero)
335 #define PL_sys_intern (vTHX->Isys_intern)
336 #define PL_taint_warn (vTHX->Itaint_warn)
337 #define PL_tainted (vTHX->Itainted)
338 #define PL_tainting (vTHX->Itainting)
339 #define PL_threadhook (vTHX->Ithreadhook)
340 #define PL_tmps_floor (vTHX->Itmps_floor)
341 #define PL_tmps_ix (vTHX->Itmps_ix)
342 #define PL_tmps_max (vTHX->Itmps_max)
343 #define PL_tmps_stack (vTHX->Itmps_stack)
344 #define PL_top_env (vTHX->Itop_env)
345 #define PL_toptarget (vTHX->Itoptarget)
346 #define PL_underlying_numeric_obj (vTHX->Iunderlying_numeric_obj)
347 #define PL_unicode (vTHX->Iunicode)
348 #define PL_unitcheckav (vTHX->Iunitcheckav)
349 #define PL_unitcheckav_save (vTHX->Iunitcheckav_save)
350 #define PL_unlockhook (vTHX->Iunlockhook)
351 #define PL_unsafe (vTHX->Iunsafe)
352 #define PL_utf8_charname_begin (vTHX->Iutf8_charname_begin)
353 #define PL_utf8_charname_continue (vTHX->Iutf8_charname_continue)
354 #define PL_utf8_foldclosures (vTHX->Iutf8_foldclosures)
355 #define PL_utf8_idcont (vTHX->Iutf8_idcont)
356 #define PL_utf8_idstart (vTHX->Iutf8_idstart)
357 #define PL_utf8_mark (vTHX->Iutf8_mark)
358 #define PL_utf8_perl_idcont (vTHX->Iutf8_perl_idcont)
359 #define PL_utf8_perl_idstart (vTHX->Iutf8_perl_idstart)
360 #define PL_utf8_tofold (vTHX->Iutf8_tofold)
361 #define PL_utf8_tolower (vTHX->Iutf8_tolower)
362 #define PL_utf8_tosimplefold (vTHX->Iutf8_tosimplefold)
363 #define PL_utf8_totitle (vTHX->Iutf8_totitle)
364 #define PL_utf8_toupper (vTHX->Iutf8_toupper)
365 #define PL_utf8_xidcont (vTHX->Iutf8_xidcont)
366 #define PL_utf8_xidstart (vTHX->Iutf8_xidstart)
367 #define PL_utf8cache (vTHX->Iutf8cache)
368 #define PL_utf8locale (vTHX->Iutf8locale)
369 #define PL_warn_locale (vTHX->Iwarn_locale)
370 #define PL_warnhook (vTHX->Iwarnhook)
371 #define PL_watchaddr (vTHX->Iwatchaddr)
372 #define PL_watchok (vTHX->Iwatchok)
373 #define PL_wcrtomb_ps (vTHX->Iwcrtomb_ps)
374 #define PL_xsubfilename (vTHX->Ixsubfilename)
376 #endif /* MULTIPLICITY */