diff options
author | Nick Ing-Simmons <nik@tiuk.ti.com> | 1997-11-30 20:00:19 +0000 |
---|---|---|
committer | Nick Ing-Simmons <nik@tiuk.ti.com> | 1997-11-30 20:00:19 +0000 |
commit | d4cce5f1785350c29a181d4bbaaa3141c6fdbe1e (patch) | |
tree | 31d1c1ad53b77dd43bd3cc61ebf29d225e620e94 /embedvar.h | |
parent | 49f531dad558d800dbb0a247178a2e50ad834fae (diff) | |
download | perl-d4cce5f1785350c29a181d4bbaaa3141c6fdbe1e.tar.gz |
embed.pl now reads *var*.h to do its stuff.
Split generated embed.h into two - new embedvar.h
is #included when 'op' etc. will not mess up proto.h etc.
Removed #define foo (thr->Tfoo) from thread.h
Added some 'missing' symbols to global.sym, removed
those in the *var*.h files
Has build all MULTIPLICITY/USE_THREADS options on win32
with VC++ (and passed tests), but not with exactly this set
of files.
p4raw-id: //depot/ansiperl@338
Diffstat (limited to 'embedvar.h')
-rw-r--r-- | embedvar.h | 609 |
1 files changed, 609 insertions, 0 deletions
diff --git a/embedvar.h b/embedvar.h new file mode 100644 index 0000000000..b68624ab69 --- /dev/null +++ b/embedvar.h @@ -0,0 +1,609 @@ +/* !!!!!!! DO NOT EDIT THIS FILE !!!!!!! + This file is built by embed.pl from global.sym, intrpvar.h, + and thrdvar.h. Any changes made here will be lost! +*/ + +/* (Doing namespace management portably in C is really gross.) */ + +/* EMBED has no run-time penalty, but helps keep the Perl namespace + from colliding with that used by other libraries pulled in + by extensions or by embedding perl. Allow a cc -DNO_EMBED + override, however, to keep binary compatability with previous + versions of perl. +*/ + + +/* Put interpreter-specific symbols into a struct? */ + +#ifdef MULTIPLICITY + +#ifndef USE_THREADS +/* If we do not have threads then per-thread vars are per-interpreter */ + +#define Sv (curinterp->TSv) +#define Xpv (curinterp->TXpv) +#define bodytarget (curinterp->Tbodytarget) +#define chopset (curinterp->Tchopset) +#define curcop (curinterp->Tcurcop) +#define curpad (curinterp->Tcurpad) +#define curpm (curinterp->Tcurpm) +#define curstack (curinterp->Tcurstack) +#define curstash (curinterp->Tcurstash) +#define cxstack (curinterp->Tcxstack) +#define cxstack_ix (curinterp->Tcxstack_ix) +#define cxstack_max (curinterp->Tcxstack_max) +#define defoutgv (curinterp->Tdefoutgv) +#define defstash (curinterp->Tdefstash) +#define delaymagic (curinterp->Tdelaymagic) +#define dirty (curinterp->Tdirty) +#define formtarget (curinterp->Tformtarget) +#define in_eval (curinterp->Tin_eval) +#define last_in_gv (curinterp->Tlast_in_gv) +#define localizing (curinterp->Tlocalizing) +#define mainstack (curinterp->Tmainstack) +#define markstack (curinterp->Tmarkstack) +#define markstack_max (curinterp->Tmarkstack_max) +#define markstack_ptr (curinterp->Tmarkstack_ptr) +#define nrs (curinterp->Tnrs) +#define ofs (curinterp->Tofs) +#define ofslen (curinterp->Tofslen) +#define op (curinterp->Top) +#define opsave (curinterp->Topsave) +#define restartop (curinterp->Trestartop) +#define retstack (curinterp->Tretstack) +#define retstack_ix (curinterp->Tretstack_ix) +#define retstack_max (curinterp->Tretstack_max) +#define rs (curinterp->Trs) +#define savestack (curinterp->Tsavestack) +#define savestack_ix (curinterp->Tsavestack_ix) +#define savestack_max (curinterp->Tsavestack_max) +#define scopestack (curinterp->Tscopestack) +#define scopestack_ix (curinterp->Tscopestack_ix) +#define scopestack_max (curinterp->Tscopestack_max) +#define stack_base (curinterp->Tstack_base) +#define stack_max (curinterp->Tstack_max) +#define stack_sp (curinterp->Tstack_sp) +#define start_env (curinterp->Tstart_env) +#define statbuf (curinterp->Tstatbuf) +#define tainted (curinterp->Ttainted) +#define timesbuf (curinterp->Ttimesbuf) +#define tmps_floor (curinterp->Ttmps_floor) +#define tmps_ix (curinterp->Ttmps_ix) +#define tmps_max (curinterp->Ttmps_max) +#define tmps_stack (curinterp->Ttmps_stack) +#define top_env (curinterp->Ttop_env) +#define toptarget (curinterp->Ttoptarget) + +#endif /* !USE_THREADS */ + +/* These are always per-interpreter if there is more than one */ + +#define Argv (curinterp->IArgv) +#define Cmd (curinterp->ICmd) +#define DBgv (curinterp->IDBgv) +#define DBline (curinterp->IDBline) +#define DBsignal (curinterp->IDBsignal) +#define DBsingle (curinterp->IDBsingle) +#define DBsub (curinterp->IDBsub) +#define DBtrace (curinterp->IDBtrace) +#define ampergv (curinterp->Iampergv) +#define argvgv (curinterp->Iargvgv) +#define argvoutgv (curinterp->Iargvoutgv) +#define basetime (curinterp->Ibasetime) +#define beginav (curinterp->Ibeginav) +#define cddir (curinterp->Icddir) +#define copline (curinterp->Icopline) +#define curcopdb (curinterp->Icurcopdb) +#define curstname (curinterp->Icurstname) +#define dbargs (curinterp->Idbargs) +#define debdelim (curinterp->Idebdelim) +#define debname (curinterp->Idebname) +#define debstash (curinterp->Idebstash) +#define defgv (curinterp->Idefgv) +#define diehook (curinterp->Idiehook) +#define dlevel (curinterp->Idlevel) +#define dlmax (curinterp->Idlmax) +#define doextract (curinterp->Idoextract) +#define doswitches (curinterp->Idoswitches) +#define dowarn (curinterp->Idowarn) +#define dumplvl (curinterp->Idumplvl) +#define e_fp (curinterp->Ie_fp) +#define e_tmpname (curinterp->Ie_tmpname) +#define endav (curinterp->Iendav) +#define envgv (curinterp->Ienvgv) +#define errgv (curinterp->Ierrgv) +#define eval_root (curinterp->Ieval_root) +#define eval_start (curinterp->Ieval_start) +#define fdpid (curinterp->Ifdpid) +#define filemode (curinterp->Ifilemode) +#define firstgv (curinterp->Ifirstgv) +#define forkprocess (curinterp->Iforkprocess) +#define formfeed (curinterp->Iformfeed) +#define gensym (curinterp->Igensym) +#define globalstash (curinterp->Iglobalstash) +#define incgv (curinterp->Iincgv) +#define initav (curinterp->Iinitav) +#define inplace (curinterp->Iinplace) +#define lastfd (curinterp->Ilastfd) +#define lastscream (curinterp->Ilastscream) +#define lastsize (curinterp->Ilastsize) +#define lastspbase (curinterp->Ilastspbase) +#define laststatval (curinterp->Ilaststatval) +#define laststype (curinterp->Ilaststype) +#define leftgv (curinterp->Ileftgv) +#define lineary (curinterp->Ilineary) +#define localpatches (curinterp->Ilocalpatches) +#define main_cv (curinterp->Imain_cv) +#define main_root (curinterp->Imain_root) +#define main_start (curinterp->Imain_start) +#define maxscream (curinterp->Imaxscream) +#define maxsysfd (curinterp->Imaxsysfd) +#define mess_sv (curinterp->Imess_sv) +#define minus_F (curinterp->Iminus_F) +#define minus_a (curinterp->Iminus_a) +#define minus_c (curinterp->Iminus_c) +#define minus_l (curinterp->Iminus_l) +#define minus_n (curinterp->Iminus_n) +#define minus_p (curinterp->Iminus_p) +#define multiline (curinterp->Imultiline) +#define mystrk (curinterp->Imystrk) +#define ofmt (curinterp->Iofmt) +#define oldlastpm (curinterp->Ioldlastpm) +#define oldname (curinterp->Ioldname) +#define op_mask (curinterp->Iop_mask) +#define origargc (curinterp->Iorigargc) +#define origargv (curinterp->Iorigargv) +#define origfilename (curinterp->Iorigfilename) +#define ors (curinterp->Iors) +#define orslen (curinterp->Iorslen) +#define parsehook (curinterp->Iparsehook) +#define patchlevel (curinterp->Ipatchlevel) +#define perl_destruct_level (curinterp->Iperl_destruct_level) +#define perldb (curinterp->Iperldb) +#define preambleav (curinterp->Ipreambleav) +#define preambled (curinterp->Ipreambled) +#define preprocess (curinterp->Ipreprocess) +#define rightgv (curinterp->Irightgv) +#define sawampersand (curinterp->Isawampersand) +#define sawstudy (curinterp->Isawstudy) +#define sawvec (curinterp->Isawvec) +#define screamfirst (curinterp->Iscreamfirst) +#define screamnext (curinterp->Iscreamnext) +#define secondgv (curinterp->Isecondgv) +#define siggv (curinterp->Isiggv) +#define signalstack (curinterp->Isignalstack) +#define sortcop (curinterp->Isortcop) +#define sortstack (curinterp->Isortstack) +#define sortstash (curinterp->Isortstash) +#define splitstr (curinterp->Isplitstr) +#define statcache (curinterp->Istatcache) +#define statgv (curinterp->Istatgv) +#define statname (curinterp->Istatname) +#define statusvalue (curinterp->Istatusvalue) +#define statusvalue_vms (curinterp->Istatusvalue_vms) +#define stdingv (curinterp->Istdingv) +#define strchop (curinterp->Istrchop) +#define strtab (curinterp->Istrtab) +#define sv_arenaroot (curinterp->Isv_arenaroot) +#define sv_count (curinterp->Isv_count) +#define sv_objcount (curinterp->Isv_objcount) +#define sv_root (curinterp->Isv_root) +#define tainting (curinterp->Itainting) +#define thrsv (curinterp->Ithrsv) +#define unsafe (curinterp->Iunsafe) +#define warnhook (curinterp->Iwarnhook) + +#else /* !MULTIPLICITY */ + +#define IArgv Argv +#define ICmd Cmd +#define IDBgv DBgv +#define IDBline DBline +#define IDBsignal DBsignal +#define IDBsingle DBsingle +#define IDBsub DBsub +#define IDBtrace DBtrace +#define Iampergv ampergv +#define Iargvgv argvgv +#define Iargvoutgv argvoutgv +#define Ibasetime basetime +#define Ibeginav beginav +#define Icddir cddir +#define Icopline copline +#define Icurcopdb curcopdb +#define Icurstname curstname +#define Idbargs dbargs +#define Idebdelim debdelim +#define Idebname debname +#define Idebstash debstash +#define Idefgv defgv +#define Idiehook diehook +#define Idlevel dlevel +#define Idlmax dlmax +#define Idoextract doextract +#define Idoswitches doswitches +#define Idowarn dowarn +#define Idumplvl dumplvl +#define Ie_fp e_fp +#define Ie_tmpname e_tmpname +#define Iendav endav +#define Ienvgv envgv +#define Ierrgv errgv +#define Ieval_root eval_root +#define Ieval_start eval_start +#define Ifdpid fdpid +#define Ifilemode filemode +#define Ifirstgv firstgv +#define Iforkprocess forkprocess +#define Iformfeed formfeed +#define Igensym gensym +#define Iglobalstash globalstash +#define Iincgv incgv +#define Iinitav initav +#define Iinplace inplace +#define Ilastfd lastfd +#define Ilastscream lastscream +#define Ilastsize lastsize +#define Ilastspbase lastspbase +#define Ilaststatval laststatval +#define Ilaststype laststype +#define Ileftgv leftgv +#define Ilineary lineary +#define Ilocalpatches localpatches +#define Imain_cv main_cv +#define Imain_root main_root +#define Imain_start main_start +#define Imaxscream maxscream +#define Imaxsysfd maxsysfd +#define Imess_sv mess_sv +#define Iminus_F minus_F +#define Iminus_a minus_a +#define Iminus_c minus_c +#define Iminus_l minus_l +#define Iminus_n minus_n +#define Iminus_p minus_p +#define Imultiline multiline +#define Imystrk mystrk +#define Iofmt ofmt +#define Ioldlastpm oldlastpm +#define Ioldname oldname +#define Iop_mask op_mask +#define Iorigargc origargc +#define Iorigargv origargv +#define Iorigfilename origfilename +#define Iors ors +#define Iorslen orslen +#define Iparsehook parsehook +#define Ipatchlevel patchlevel +#define Iperl_destruct_level perl_destruct_level +#define Iperldb perldb +#define Ipreambleav preambleav +#define Ipreambled preambled +#define Ipreprocess preprocess +#define Irightgv rightgv +#define Isawampersand sawampersand +#define Isawstudy sawstudy +#define Isawvec sawvec +#define Iscreamfirst screamfirst +#define Iscreamnext screamnext +#define Isecondgv secondgv +#define Isiggv siggv +#define Isignalstack signalstack +#define Isortcop sortcop +#define Isortstack sortstack +#define Isortstash sortstash +#define Isplitstr splitstr +#define Istatcache statcache +#define Istatgv statgv +#define Istatname statname +#define Istatusvalue statusvalue +#define Istatusvalue_vms statusvalue_vms +#define Istdingv stdingv +#define Istrchop strchop +#define Istrtab strtab +#define Isv_arenaroot sv_arenaroot +#define Isv_count sv_count +#define Isv_objcount sv_objcount +#define Isv_root sv_root +#define Itainting tainting +#define Ithrsv thrsv +#define Iunsafe unsafe +#define Iwarnhook warnhook + +#ifndef USE_THREADS + +#define TSv Sv +#define TXpv Xpv +#define Tbodytarget bodytarget +#define Tchopset chopset +#define Tcurcop curcop +#define Tcurpad curpad +#define Tcurpm curpm +#define Tcurstack curstack +#define Tcurstash curstash +#define Tcxstack cxstack +#define Tcxstack_ix cxstack_ix +#define Tcxstack_max cxstack_max +#define Tdefoutgv defoutgv +#define Tdefstash defstash +#define Tdelaymagic delaymagic +#define Tdirty dirty +#define Tformtarget formtarget +#define Tin_eval in_eval +#define Tlast_in_gv last_in_gv +#define Tlocalizing localizing +#define Tmainstack mainstack +#define Tmarkstack markstack +#define Tmarkstack_max markstack_max +#define Tmarkstack_ptr markstack_ptr +#define Tnrs nrs +#define Tofs ofs +#define Tofslen ofslen +#define Top op +#define Topsave opsave +#define Trestartop restartop +#define Tretstack retstack +#define Tretstack_ix retstack_ix +#define Tretstack_max retstack_max +#define Trs rs +#define Tsavestack savestack +#define Tsavestack_ix savestack_ix +#define Tsavestack_max savestack_max +#define Tscopestack scopestack +#define Tscopestack_ix scopestack_ix +#define Tscopestack_max scopestack_max +#define Tstack_base stack_base +#define Tstack_max stack_max +#define Tstack_sp stack_sp +#define Tstart_env start_env +#define Tstatbuf statbuf +#define Ttainted tainted +#define Ttimesbuf timesbuf +#define Ttmps_floor tmps_floor +#define Ttmps_ix tmps_ix +#define Ttmps_max tmps_max +#define Ttmps_stack tmps_stack +#define Ttop_env top_env +#define Ttoptarget toptarget + +#endif /* USE_THREADS */ + +/* Hide what would have been interpreter-specific symbols? */ + +#ifdef EMBED + +#define Argv Perl_Argv +#define Cmd Perl_Cmd +#define DBgv Perl_DBgv +#define DBline Perl_DBline +#define DBsignal Perl_DBsignal +#define DBsingle Perl_DBsingle +#define DBsub Perl_DBsub +#define DBtrace Perl_DBtrace +#define ampergv Perl_ampergv +#define argvgv Perl_argvgv +#define argvoutgv Perl_argvoutgv +#define basetime Perl_basetime +#define beginav Perl_beginav +#define cddir Perl_cddir +#define copline Perl_copline +#define curcopdb Perl_curcopdb +#define curstname Perl_curstname +#define dbargs Perl_dbargs +#define debdelim Perl_debdelim +#define debname Perl_debname +#define debstash Perl_debstash +#define defgv Perl_defgv +#define diehook Perl_diehook +#define dlevel Perl_dlevel +#define dlmax Perl_dlmax +#define doextract Perl_doextract +#define doswitches Perl_doswitches +#define dowarn Perl_dowarn +#define dumplvl Perl_dumplvl +#define e_fp Perl_e_fp +#define e_tmpname Perl_e_tmpname +#define endav Perl_endav +#define envgv Perl_envgv +#define errgv Perl_errgv +#define eval_root Perl_eval_root +#define eval_start Perl_eval_start +#define fdpid Perl_fdpid +#define filemode Perl_filemode +#define firstgv Perl_firstgv +#define forkprocess Perl_forkprocess +#define formfeed Perl_formfeed +#define gensym Perl_gensym +#define globalstash Perl_globalstash +#define incgv Perl_incgv +#define initav Perl_initav +#define inplace Perl_inplace +#define lastfd Perl_lastfd +#define lastscream Perl_lastscream +#define lastsize Perl_lastsize +#define lastspbase Perl_lastspbase +#define laststatval Perl_laststatval +#define laststype Perl_laststype +#define leftgv Perl_leftgv +#define lineary Perl_lineary +#define localpatches Perl_localpatches +#define main_cv Perl_main_cv +#define main_root Perl_main_root +#define main_start Perl_main_start +#define maxscream Perl_maxscream +#define maxsysfd Perl_maxsysfd +#define mess_sv Perl_mess_sv +#define minus_F Perl_minus_F +#define minus_a Perl_minus_a +#define minus_c Perl_minus_c +#define minus_l Perl_minus_l +#define minus_n Perl_minus_n +#define minus_p Perl_minus_p +#define multiline Perl_multiline +#define mystrk Perl_mystrk +#define ofmt Perl_ofmt +#define oldlastpm Perl_oldlastpm +#define oldname Perl_oldname +#define op_mask Perl_op_mask +#define origargc Perl_origargc +#define origargv Perl_origargv +#define origfilename Perl_origfilename +#define ors Perl_ors +#define orslen Perl_orslen +#define parsehook Perl_parsehook +#define patchlevel Perl_patchlevel +#define perl_destruct_level Perl_perl_destruct_level +#define perldb Perl_perldb +#define preambleav Perl_preambleav +#define preambled Perl_preambled +#define preprocess Perl_preprocess +#define rightgv Perl_rightgv +#define sawampersand Perl_sawampersand +#define sawstudy Perl_sawstudy +#define sawvec Perl_sawvec +#define screamfirst Perl_screamfirst +#define screamnext Perl_screamnext +#define secondgv Perl_secondgv +#define siggv Perl_siggv +#define signalstack Perl_signalstack +#define sortcop Perl_sortcop +#define sortstack Perl_sortstack +#define sortstash Perl_sortstash +#define splitstr Perl_splitstr +#define statcache Perl_statcache +#define statgv Perl_statgv +#define statname Perl_statname +#define statusvalue Perl_statusvalue +#define statusvalue_vms Perl_statusvalue_vms +#define stdingv Perl_stdingv +#define strchop Perl_strchop +#define strtab Perl_strtab +#define sv_arenaroot Perl_sv_arenaroot +#define sv_count Perl_sv_count +#define sv_objcount Perl_sv_objcount +#define sv_root Perl_sv_root +#define tainting Perl_tainting +#define thrsv Perl_thrsv +#define unsafe Perl_unsafe +#define warnhook Perl_warnhook + +#ifndef USE_THREADS + +#define Sv Perl_Sv +#define Xpv Perl_Xpv +#define bodytarget Perl_bodytarget +#define chopset Perl_chopset +#define curcop Perl_curcop +#define curpad Perl_curpad +#define curpm Perl_curpm +#define curstack Perl_curstack +#define curstash Perl_curstash +#define cxstack Perl_cxstack +#define cxstack_ix Perl_cxstack_ix +#define cxstack_max Perl_cxstack_max +#define defoutgv Perl_defoutgv +#define defstash Perl_defstash +#define delaymagic Perl_delaymagic +#define dirty Perl_dirty +#define formtarget Perl_formtarget +#define in_eval Perl_in_eval +#define last_in_gv Perl_last_in_gv +#define localizing Perl_localizing +#define mainstack Perl_mainstack +#define markstack Perl_markstack +#define markstack_max Perl_markstack_max +#define markstack_ptr Perl_markstack_ptr +#define nrs Perl_nrs +#define ofs Perl_ofs +#define ofslen Perl_ofslen +#define op Perl_op +#define opsave Perl_opsave +#define restartop Perl_restartop +#define retstack Perl_retstack +#define retstack_ix Perl_retstack_ix +#define retstack_max Perl_retstack_max +#define rs Perl_rs +#define savestack Perl_savestack +#define savestack_ix Perl_savestack_ix +#define savestack_max Perl_savestack_max +#define scopestack Perl_scopestack +#define scopestack_ix Perl_scopestack_ix +#define scopestack_max Perl_scopestack_max +#define stack_base Perl_stack_base +#define stack_max Perl_stack_max +#define stack_sp Perl_stack_sp +#define start_env Perl_start_env +#define statbuf Perl_statbuf +#define tainted Perl_tainted +#define timesbuf Perl_timesbuf +#define tmps_floor Perl_tmps_floor +#define tmps_ix Perl_tmps_ix +#define tmps_max Perl_tmps_max +#define tmps_stack Perl_tmps_stack +#define top_env Perl_top_env +#define toptarget Perl_toptarget + +#endif /* USE_THREADS */ +#endif /* EMBED */ +#endif /* MULTIPLICITY */ + +/* Now same trickey for per-thread variables */ + +#ifdef USE_THREADS + +#define Sv (thr->TSv) +#define Xpv (thr->TXpv) +#define bodytarget (thr->Tbodytarget) +#define chopset (thr->Tchopset) +#define curcop (thr->Tcurcop) +#define curpad (thr->Tcurpad) +#define curpm (thr->Tcurpm) +#define curstack (thr->Tcurstack) +#define curstash (thr->Tcurstash) +#define cxstack (thr->Tcxstack) +#define cxstack_ix (thr->Tcxstack_ix) +#define cxstack_max (thr->Tcxstack_max) +#define defoutgv (thr->Tdefoutgv) +#define defstash (thr->Tdefstash) +#define delaymagic (thr->Tdelaymagic) +#define dirty (thr->Tdirty) +#define formtarget (thr->Tformtarget) +#define in_eval (thr->Tin_eval) +#define last_in_gv (thr->Tlast_in_gv) +#define localizing (thr->Tlocalizing) +#define mainstack (thr->Tmainstack) +#define markstack (thr->Tmarkstack) +#define markstack_max (thr->Tmarkstack_max) +#define markstack_ptr (thr->Tmarkstack_ptr) +#define nrs (thr->Tnrs) +#define ofs (thr->Tofs) +#define ofslen (thr->Tofslen) +#define op (thr->Top) +#define opsave (thr->Topsave) +#define restartop (thr->Trestartop) +#define retstack (thr->Tretstack) +#define retstack_ix (thr->Tretstack_ix) +#define retstack_max (thr->Tretstack_max) +#define rs (thr->Trs) +#define savestack (thr->Tsavestack) +#define savestack_ix (thr->Tsavestack_ix) +#define savestack_max (thr->Tsavestack_max) +#define scopestack (thr->Tscopestack) +#define scopestack_ix (thr->Tscopestack_ix) +#define scopestack_max (thr->Tscopestack_max) +#define stack_base (thr->Tstack_base) +#define stack_max (thr->Tstack_max) +#define stack_sp (thr->Tstack_sp) +#define start_env (thr->Tstart_env) +#define statbuf (thr->Tstatbuf) +#define tainted (thr->Ttainted) +#define timesbuf (thr->Ttimesbuf) +#define tmps_floor (thr->Ttmps_floor) +#define tmps_ix (thr->Ttmps_ix) +#define tmps_max (thr->Ttmps_max) +#define tmps_stack (thr->Ttmps_stack) +#define top_env (thr->Ttop_env) +#define toptarget (thr->Ttoptarget) + +#endif /* USE_THREADS */ + |