summaryrefslogtreecommitdiff
path: root/embed.h
diff options
context:
space:
mode:
authorPerl 5 Porters <perl5-porters@africa.nicoh.com>1996-11-19 14:16:00 +1200
committerChip Salzenberg <chip@atlantic.net>1996-11-19 14:16:00 +1200
commit55497cffdd24c959994f9a8ddd56db8ce85e1c5b (patch)
tree444dfb8adc0e5b96d56e0532791122c366f50a3e /embed.h
parentc822f08a5087943f7d9e2c36ce42ea035f03ab97 (diff)
downloadperl-55497cffdd24c959994f9a8ddd56db8ce85e1c5b.tar.gz
[inseparable changes from patch from perl5.003_07 to perl5.003_08]
CORE LANGUAGE CHANGES Subject: Bitwise op sign rationalization From: Chip Salzenberg <chip@atlantic.net> Files: op.c opcode.pl pod/perlop.pod pod/perltoc.pod pp.c pp.h pp_hot.c proto.h sv.c t/op/bop.t Make bitwise ops result in unsigned values, unless C<use integer> is in effect. Includes initial support for UVs. Subject: Defined scoping for C<my> in control structures From: Chip Salzenberg <chip@atlantic.net> Files: op.c perly.c perly.c.diff perly.h perly.y proto.h toke.c Finally defines semantics of "my" in control expressions, like the condition of "if" and "while". In all cases, scope of a "my" var extends to the end of the entire control structure. Also adds new construct "for my", which automatically declares the control variable "my" and limits its scope to the loop. Subject: Fix ++/-- after int conversion (e.g. 'printf "%d"') From: Chip Salzenberg <chip@atlantic.net> Files: pp.c pp_hot.c sv.c This patch makes Perl correctly ignore SvIVX() if either NOK or POK is true, since SvIVX() may be a truncated or overflowed version of the real value. Subject: Make code match Camel II re: functions that use $_ From: Paul Marquess <pmarquess@bfsec.bt.co.uk> Files: opcode.pl Subject: Provide scalar context on left side of "->" From: Chip Salzenberg <chip@atlantic.net> Files: perly.c perly.y Subject: Quote bearword package/handle FOO in "funcname FOO => 'bar'" From: Chip Salzenberg <chip@atlantic.net> Files: toke.c OTHER CORE CHANGES Subject: Warn on overflow of octal and hex integers From: Chip Salzenberg <chip@atlantic.net> Files: proto.h toke.c util.c Subject: If -w active, warn for commas and hashes ('#') in qw() From: Chip Salzenberg <chip@atlantic.net> Files: toke.c Subject: Fixes for pack('w') From: Ulrich Pfeifer <pfeifer@charly.informatik.uni-dortmund.de> Files: pp.c t/op/pack.t Subject: More complete output from sv_dump() From: Gurusamy Sarathy <gsar@engin.umich.edu> Files: sv.c Subject: Major '..' and debugger patches From: Ilya Zakharevich <ilya@math.ohio-state.edu> Files: lib/perl5db.pl op.c pp_ctl.c scope.c scope.h Subject: Fix for formline() From: Gurusamy Sarathy <gsar@engin.umich.edu> Files: global.sym mg.c perl.h pod/perldiag.pod pp_ctl.c proto.h sv.c t/op/write.t Subject: Fix stack botch in untie and binmode From: Gurusamy Sarathy <gsar@engin.umich.edu> Files: pp_sys.c Subject: Complete EMBED, including symbols from interp.sym From: Chip Salzenberg <chip@atlantic.net> Files: MANIFEST embed.pl ext/DynaLoader/dlutils.c ext/SDBM_File/sdbm/sdbm.h global.sym handy.h malloc.c perl.h pp_sys.c proto.h regexec.c toke.c util.c x2p/Makefile.SH x2p/a2p.h x2p/handy.h x2p/util.h New define EMBEDMYMALLOC makes embedding total by avoiding "Mymalloc" etc. Subject: Support old embedding for people who want it From: Chip Salzenberg <chip@atlantic.net> Files: MANIFEST Makefile.SH old_embed.pl old_global.sym PORTABILITY Subject: Miscellaneous VMS fixes From: Charles Bailey <bailey@HMIVAX.HUMGEN.UPENN.EDU> Files: lib/ExtUtils/Liblist.pm lib/ExtUtils/MM_VMS.pm lib/Math/Complex.pm lib/Time/Local.pm lib/timelocal.pl perl.h perl_exp.SH proto.h t/TEST t/io/read.t t/lib/findbin.t t/lib/getopt.t util.c utils/h2xs.PL vms/Makefile vms/config.vms vms/descrip.mms vms/ext/Stdio/Stdio.pm vms/ext/Stdio/Stdio.xs vms/perlvms.pod vms/test.com vms/vms.c Subject: DJGPP patches (MS-DOS) From: "Douglas E. Wegscheid" <wegscd@whirlpool.com> Files: doio.c dosish.h ext/SDBM_File/sdbm/sdbm.c handy.h lib/AutoSplit.pm lib/Cwd.pm lib/File/Find.pm malloc.c perl.c perl.h pp_sys.c proto.h sv.c util.c Subject: Patch to make Perl work under AmigaOS From: "Norbert Pueschel" <pueschel@imsdd.meb.uni-bonn.de> Files: MANIFEST hints/amigaos.sh installman lib/File/Basename.pm lib/File/Find.pm pod/pod2man.PL pp_sys.c util.c
Diffstat (limited to 'embed.h')
-rw-r--r--embed.h230
1 files changed, 199 insertions, 31 deletions
diff --git a/embed.h b/embed.h
index 4d5009d06b..edad0094a9 100644
--- a/embed.h
+++ b/embed.h
@@ -19,9 +19,10 @@
/* globals we need to hide from the world */
#define AMG_names Perl_AMG_names
+#define Error Perl_Error
+#define He Perl_He
#define No Perl_No
#define Sv Perl_Sv
-#define He Perl_He
#define Xpv Perl_Xpv
#define Yes Perl_Yes
#define abs_amg Perl_abs_amg
@@ -32,6 +33,7 @@
#define an Perl_an
#define atan2_amg Perl_atan2_amg
#define band_amg Perl_band_amg
+#define block_type Perl_block_type
#define bool__amg Perl_bool__amg
#define bor_amg Perl_bor_amg
#define buf Perl_buf
@@ -39,9 +41,9 @@
#define bufptr Perl_bufptr
#define bxor_amg Perl_bxor_amg
#define check Perl_check
+#define compcv Perl_compcv
#define compiling Perl_compiling
#define compl_amg Perl_compl_amg
-#define compcv Perl_compcv
#define comppad Perl_comppad
#define comppad_name Perl_comppad_name
#define comppad_name_fill Perl_comppad_name_fill
@@ -53,8 +55,6 @@
#define cryptseen Perl_cryptseen
#define cshlen Perl_cshlen
#define cshname Perl_cshname
-#define curcop Perl_curcop
-#define curcopdb Perl_curcopdb
#define curinterp Perl_curinterp
#define curpad Perl_curpad
#define cv_const_sv Perl_cv_const_sv
@@ -67,7 +67,6 @@
#define do_undump Perl_do_undump
#define ds Perl_ds
#define egid Perl_egid
-#define envgv Perl_envgv
#define eq_amg Perl_eq_amg
#define error_count Perl_error_count
#define euid Perl_euid
@@ -93,23 +92,24 @@
#define last_lop Perl_last_lop
#define last_lop_op Perl_last_lop_op
#define last_uni Perl_last_uni
+#define lc_collate_active Perl_lc_collate_active
#define le_amg Perl_le_amg
-#define lex_state Perl_lex_state
-#define lex_defer Perl_lex_defer
-#define lex_expect Perl_lex_expect
#define lex_brackets Perl_lex_brackets
-#define lex_formbrack Perl_lex_formbrack
-#define lex_fakebrack Perl_lex_fakebrack
+#define lex_brackstack Perl_lex_brackstack
#define lex_casemods Perl_lex_casemods
+#define lex_casestack Perl_lex_casestack
+#define lex_defer Perl_lex_defer
#define lex_dojoin Perl_lex_dojoin
-#define lex_starts Perl_lex_starts
-#define lex_stuff Perl_lex_stuff
-#define lex_repl Perl_lex_repl
-#define lex_op Perl_lex_op
+#define lex_expect Perl_lex_expect
+#define lex_fakebrack Perl_lex_fakebrack
+#define lex_formbrack Perl_lex_formbrack
#define lex_inpat Perl_lex_inpat
#define lex_inwhat Perl_lex_inwhat
-#define lex_brackstack Perl_lex_brackstack
-#define lex_casestack Perl_lex_casestack
+#define lex_op Perl_lex_op
+#define lex_repl Perl_lex_repl
+#define lex_starts Perl_lex_starts
+#define lex_state Perl_lex_state
+#define lex_stuff Perl_lex_stuff
#define linestr Perl_linestr
#define log_amg Perl_log_amg
#define lshift_amg Perl_lshift_amg
@@ -118,8 +118,8 @@
#define markstack Perl_markstack
#define markstack_max Perl_markstack_max
#define markstack_ptr Perl_markstack_ptr
-#define maxo Perl_maxo
#define max_intro_pending Perl_max_intro_pending
+#define maxo Perl_maxo
#define min_intro_pending Perl_min_intro_pending
#define mod_amg Perl_mod_amg
#define mod_ass_amg Perl_mod_ass_amg
@@ -131,22 +131,27 @@
#define multi_start Perl_multi_start
#define na Perl_na
#define ncmp_amg Perl_ncmp_amg
-#define nextval Perl_nextval
-#define nexttype Perl_nexttype
-#define nexttoke Perl_nexttoke
#define ne_amg Perl_ne_amg
#define neg_amg Perl_neg_amg
+#define nexttoke Perl_nexttoke
+#define nexttype Perl_nexttype
#define nexttype Perl_nexttype
#define nextval Perl_nextval
+#define nextval Perl_nextval
+#define nice_chunk Perl_nice_chunk
+#define nice_chunk_size Perl_nice_chunk_size
#define no_aelem Perl_no_aelem
#define no_dir_func Perl_no_dir_func
#define no_func Perl_no_func
#define no_helem Perl_no_helem
#define no_mem Perl_no_mem
#define no_modify Perl_no_modify
+#define no_myglob Perl_no_myglob
#define no_security Perl_no_security
#define no_sock_func Perl_no_sock_func
+#define no_symref Perl_no_symref
#define no_usym Perl_no_usym
+#define no_wrongref Perl_no_wrongref
#define nointrp Perl_nointrp
#define nomem Perl_nomem
#define nomemok Perl_nomemok
@@ -163,15 +168,17 @@
#define origalen Perl_origalen
#define origenviron Perl_origenviron
#define osname Perl_osname
+#define pad_reset_pending Perl_pad_reset_pending
#define padix Perl_padix
+#define padix_floor Perl_padix_floor
#define patleave Perl_patleave
#define pow_amg Perl_pow_amg
#define pow_ass_amg Perl_pow_ass_amg
#define ppaddr Perl_ppaddr
#define profiledata Perl_profiledata
#define provide_ref Perl_provide_ref
-#define psig_ptr Perl_psig_ptr
#define psig_name Perl_psig_name
+#define psig_ptr Perl_psig_ptr
#define qrt_amg Perl_qrt_amg
#define rcsid Perl_rcsid
#define reall_srchlen Perl_reall_srchlen
@@ -181,6 +188,7 @@
#define regdummy Perl_regdummy
#define regendp Perl_regendp
#define regeol Perl_regeol
+#define regflags Perl_regflags
#define regfold Perl_regfold
#define reginput Perl_reginput
#define regkind Perl_regkind
@@ -208,6 +216,7 @@
#define rsfp_filters Perl_rsfp_filters
#define rshift_amg Perl_rshift_amg
#define rshift_ass_amg Perl_rshift_ass_amg
+#define save_iv Perl_save_iv
#define save_pptr Perl_save_pptr
#define savestack Perl_savestack
#define savestack_ix Perl_savestack_ix
@@ -223,7 +232,6 @@
#define sgt_amg Perl_sgt_amg
#define sig_name Perl_sig_name
#define sig_num Perl_sig_num
-#define siggv Perl_siggv
#define sighandler Perl_sighandler
#define simple Perl_simple
#define sin_amg Perl_sin_amg
@@ -243,7 +251,6 @@
#define sv_no Perl_sv_no
#define sv_undef Perl_sv_undef
#define sv_yes Perl_sv_yes
-#define tainting Perl_tainting
#define thisexpr Perl_thisexpr
#define timesbuf Perl_timesbuf
#define tokenbuf Perl_tokenbuf
@@ -257,6 +264,7 @@
#define vtbl_dbline Perl_vtbl_dbline
#define vtbl_env Perl_vtbl_env
#define vtbl_envelem Perl_vtbl_envelem
+#define vtbl_fm Perl_vtbl_fm
#define vtbl_glob Perl_vtbl_glob
#define vtbl_isa Perl_vtbl_isa
#define vtbl_isaelem Perl_vtbl_isaelem
@@ -275,6 +283,7 @@
#define warn_nl Perl_warn_nl
#define warn_nosemi Perl_warn_nosemi
#define warn_reserved Perl_warn_reserved
+#define warn_uninit Perl_warn_uninit
#define watchaddr Perl_watchaddr
#define watchok Perl_watchok
#define yychar Perl_yychar
@@ -316,12 +325,14 @@
#define bind_match Perl_bind_match
#define block_end Perl_block_end
#define block_start Perl_block_start
+#define boot_core_UNIVERSAL Perl_boot_core_UNIVERSAL
#define calllist Perl_calllist
#define cando Perl_cando
#define cast_ulong Perl_cast_ulong
#define check_uni Perl_check_uni
#define checkcomma Perl_checkcomma
#define ck_aelem Perl_ck_aelem
+#define ck_bitop Perl_ck_bitop
#define ck_concat Perl_ck_concat
#define ck_delete Perl_ck_delete
#define ck_eof Perl_ck_eof
@@ -498,6 +509,7 @@
#define magic_setbm Perl_magic_setbm
#define magic_setdbline Perl_magic_setdbline
#define magic_setenv Perl_magic_setenv
+#define magic_setfm Perl_magic_setfm
#define magic_setglob Perl_magic_setglob
#define magic_setisa Perl_magic_setisa
#define magic_setmglob Perl_magic_setmglob
@@ -512,6 +524,7 @@
#define magic_wipepack Perl_magic_wipepack
#define magicname Perl_magicname
#define markstack_grow Perl_markstack_grow
+#define mem_collxfrm Perl_mem_collxfrm
#define mess Perl_mess
#define mg_clear Perl_mg_clear
#define mg_copy Perl_mg_copy
@@ -968,7 +981,16 @@
#define repeatcpy Perl_repeatcpy
#define rninstr Perl_rninstr
#define runops Perl_runops
+#define safecalloc Perl_safecalloc
+#define safemalloc Perl_safemalloc
+#define safefree Perl_safefree
+#define saferealloc Perl_saferealloc
+#define safexcalloc Perl_safexcalloc
+#define safexmalloc Perl_safexmalloc
+#define safexfree Perl_safexfree
+#define safexrealloc Perl_safexrealloc
#define same_dirent Perl_same_dirent
+#define save_I16 Perl_save_I16
#define save_I32 Perl_save_I32
#define save_aptr Perl_save_aptr
#define save_ary Perl_save_ary
@@ -1041,6 +1063,7 @@
#define sv_clear Perl_sv_clear
#define sv_cmp Perl_sv_cmp
#define sv_dec Perl_sv_dec
+#define sv_derived_from Perl_sv_derived_from
#define sv_dump Perl_sv_dump
#define sv_eq Perl_sv_eq
#define sv_free Perl_sv_free
@@ -1073,6 +1096,7 @@
#define sv_setref_pv Perl_sv_setref_pv
#define sv_setref_pvn Perl_sv_setref_pvn
#define sv_setsv Perl_sv_setsv
+#define sv_setuv Perl_sv_setuv
#define sv_unmagic Perl_sv_unmagic
#define sv_unref Perl_sv_unref
#define sv_upgrade Perl_sv_upgrade
@@ -1095,6 +1119,7 @@
#define xpv_root Perl_xpv_root
#define xrv_root Perl_xrv_root
#define yyerror Perl_yyerror
+#define yydestruct Perl_yydestruct
#define yylex Perl_yylex
#define yyparse Perl_yyparse
#define yywarn Perl_yywarn
@@ -1105,14 +1130,6 @@
#ifdef MULTIPLICITY
-/* Undefine symbols that were defined by EMBED. Somewhat ugly */
-
-#undef curcop
-#undef curcopdb
-#undef envgv
-#undef siggv
-#undef tainting
-
#define Argv (curinterp->IArgv)
#define Cmd (curinterp->ICmd)
#define DBgv (curinterp->IDBgv)
@@ -1417,4 +1434,155 @@
#define Iunsafe unsafe
#define Iwarnhook warnhook
+#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 allgvs Perl_allgvs
+#define ampergv Perl_ampergv
+#define argvgv Perl_argvgv
+#define argvoutgv Perl_argvoutgv
+#define basetime Perl_basetime
+#define beginav Perl_beginav
+#define bodytarget Perl_bodytarget
+#define cddir Perl_cddir
+#define chopset Perl_chopset
+#define copline Perl_copline
+#define curblock Perl_curblock
+#define curcop Perl_curcop
+#define curcopdb Perl_curcopdb
+#define curcsv Perl_curcsv
+#define curpm Perl_curpm
+#define curstack Perl_curstack
+#define curstash Perl_curstash
+#define curstname Perl_curstname
+#define cxstack Perl_cxstack
+#define cxstack_ix Perl_cxstack_ix
+#define cxstack_max Perl_cxstack_max
+#define dbargs Perl_dbargs
+#define debdelim Perl_debdelim
+#define debname Perl_debname
+#define debstash Perl_debstash
+#define defgv Perl_defgv
+#define defoutgv Perl_defoutgv
+#define defstash Perl_defstash
+#define delaymagic Perl_delaymagic
+#define diehook Perl_diehook
+#define dirty Perl_dirty
+#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 formtarget Perl_formtarget
+#define gensym Perl_gensym
+#define in_eval Perl_in_eval
+#define incgv Perl_incgv
+#define inplace Perl_inplace
+#define last_in_gv Perl_last_in_gv
+#define lastfd Perl_lastfd
+#define lastretstr Perl_lastretstr
+#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 localizing Perl_localizing
+#define localpatches Perl_localpatches
+#define main_cv Perl_main_cv
+#define main_root Perl_main_root
+#define main_start Perl_main_start
+#define mainstack Perl_mainstack
+#define maxscream Perl_maxscream
+#define maxsysfd Perl_maxsysfd
+#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 mystack_base Perl_mystack_base
+#define mystack_mark Perl_mystack_mark
+#define mystack_max Perl_mystack_max
+#define mystack_sp Perl_mystack_sp
+#define mystrk Perl_mystrk
+#define nrs Perl_nrs
+#define ofmt Perl_ofmt
+#define ofs Perl_ofs
+#define ofslen Perl_ofslen
+#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 perldb Perl_perldb
+#define perl_destruct_level Perl_perl_destruct_level
+#define pidstatus Perl_pidstatus
+#define preambled Perl_preambled
+#define preambleav Perl_preambleav
+#define preprocess Perl_preprocess
+#define restartop Perl_restartop
+#define rightgv Perl_rightgv
+#define rs Perl_rs
+#define runlevel Perl_runlevel
+#define sawampersand Perl_sawampersand
+#define sawi Perl_sawi
+#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 stdingv Perl_stdingv
+#define strchop Perl_strchop
+#define strtab Perl_strtab
+#define sv_count Perl_sv_count
+#define sv_objcount Perl_sv_objcount
+#define sv_root Perl_sv_root
+#define sv_arenaroot Perl_sv_arenaroot
+#define tainted Perl_tainted
+#define tainting Perl_tainting
+#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
+#define unsafe Perl_unsafe
+#define warnhook Perl_warnhook
+
#endif /* MULTIPLICITY */