diff options
author | Hugo van der Sanden <hv@crypt.org> | 2003-01-21 01:52:49 +0000 |
---|---|---|
committer | hv <hv@crypt.org> | 2003-01-21 01:52:49 +0000 |
commit | de37762f3a9822aa6b4b8e833f672685d8ce22a5 (patch) | |
tree | 3debdf24685cc8b36b1c6d2e6ec3ed126c7b1efd /embed.fnc | |
parent | 7e8c5daceba7cb185532328a3b67d4ca7ba4811b (diff) | |
download | perl-de37762f3a9822aa6b4b8e833f672685d8ce22a5.tar.gz |
integrate #18366-18370 from maint-5.8:
Implement the CPP namespace protection from [perl #8610];
unless a function has an 'A' flag, it's defined only if
PERL_CORE. (Why do we have so many many functions with an
'A' flag, is another matter.) (The number of #ifdef PERL_COREs
could be cut down further by having a state variable and
inserting #ifdefs and #endifs when the state flips.)
Caught by change #18366; thanks to the re extension we have some
functions that are file static but yet part of "the public API"...
Maybe a new class of exportability (a new embed.fnc flag) is
required for this case.
Continue on change #18367; implement the said flag, 'E'.
(Some nm output studying was needed to get the right set
of re symbols defined.)
In AIX (strict symbol exports) the cxinc is needed for List::Util.
p4raw-link: @18367 on //depot/maint-5.8/perl: 6f21c313c98cc4764e09fbbce2c8792576c90d7d
p4raw-link: @18366 on //depot/maint-5.8/perl: 704f60d9cfa8683df64f005e872b37aea8f9d60e
p4raw-id: //depot/perl@18531
Diffstat (limited to 'embed.fnc')
-rw-r--r-- | embed.fnc | 91 |
1 files changed, 46 insertions, 45 deletions
@@ -17,6 +17,7 @@ : o has no compatibility macro (#define foo Perl_foo) : x not exported : M may change +: E visible to Perl core extensions : : Individual flags may be separated by whitespace. : @@ -140,7 +141,7 @@ Ap |char** |get_op_names p |char* |get_no_modify p |U32* |get_opargs Ap |PPADDR_t*|get_ppaddr -p |I32 |cxinc +Ap |I32 |cxinc Afp |void |deb |const char* pat|... Ap |void |vdeb |const char* pat|va_list* args Ap |void |debprofdump @@ -605,7 +606,7 @@ Ap |I32 |regexec_flags |regexp* prog|char* stringarg \ |char* strend|char* strbeg|I32 minend \ |SV* screamer|void* data|U32 flags Ap |regnode*|regnext |regnode* p -p |void |regprop |SV* sv|regnode* o +Ep |void |regprop |SV* sv|regnode* o Ap |void |repeatcpy |char* to|const char* from|I32 len|I32 count Ap |char* |rninstr |const char* big|const char* bigend \ |const char* little|const char* lend @@ -1092,60 +1093,60 @@ s |int |dooneliner |char *cmd|char *filename #endif #if defined(PERL_IN_REGCOMP_C) || defined(PERL_DECL_PROT) -s |regnode*|reg |struct RExC_state_t*|I32|I32 * -s |regnode*|reganode |struct RExC_state_t*|U8|U32 -s |regnode*|regatom |struct RExC_state_t*|I32 * -s |regnode*|regbranch |struct RExC_state_t*|I32 *|I32 -s |void |reguni |struct RExC_state_t*|UV|char *|STRLEN* -s |regnode*|regclass |struct RExC_state_t* -s |I32 |regcurly |char * -s |regnode*|reg_node |struct RExC_state_t*|U8 -s |regnode*|regpiece |struct RExC_state_t*|I32 * -s |void |reginsert |struct RExC_state_t*|U8|regnode * -s |void |regoptail |struct RExC_state_t*|regnode *|regnode * -s |void |regtail |struct RExC_state_t*|regnode *|regnode * -s |char*|regwhite |char *|char * -s |char*|nextchar |struct RExC_state_t* +Es |regnode*|reg |struct RExC_state_t*|I32|I32 * +Es |regnode*|reganode |struct RExC_state_t*|U8|U32 +Es |regnode*|regatom |struct RExC_state_t*|I32 * +Es |regnode*|regbranch |struct RExC_state_t*|I32 *|I32 +Es |void |reguni |struct RExC_state_t*|UV|char *|STRLEN* +Es |regnode*|regclass |struct RExC_state_t* +Es |I32 |regcurly |char * +Es |regnode*|reg_node |struct RExC_state_t*|U8 +Es |regnode*|regpiece |struct RExC_state_t*|I32 * +Es |void |reginsert |struct RExC_state_t*|U8|regnode * +Es |void |regoptail |struct RExC_state_t*|regnode *|regnode * +Es |void |regtail |struct RExC_state_t*|regnode *|regnode * +Es |char*|regwhite |char *|char * +Es |char*|nextchar |struct RExC_state_t* # ifdef DEBUGGING -s |regnode*|dumpuntil |regnode *start|regnode *node \ +Es |regnode*|dumpuntil |regnode *start|regnode *node \ |regnode *last|SV* sv|I32 l -s |void |put_byte |SV* sv|int c +Es |void |put_byte |SV* sv|int c # endif -s |void |scan_commit |struct RExC_state_t*|struct scan_data_t *data -s |void |cl_anything |struct RExC_state_t*|struct regnode_charclass_class *cl -s |int |cl_is_anything |struct regnode_charclass_class *cl -s |void |cl_init |struct RExC_state_t*|struct regnode_charclass_class *cl -s |void |cl_init_zero |struct RExC_state_t*|struct regnode_charclass_class *cl -s |void |cl_and |struct regnode_charclass_class *cl \ +Es |void |scan_commit |struct RExC_state_t*|struct scan_data_t *data +Es |void |cl_anything |struct RExC_state_t*|struct regnode_charclass_class *cl +Es |int |cl_is_anything |struct regnode_charclass_class *cl +Es |void |cl_init |struct RExC_state_t*|struct regnode_charclass_class *cl +Es |void |cl_init_zero |struct RExC_state_t*|struct regnode_charclass_class *cl +Es |void |cl_and |struct regnode_charclass_class *cl \ |struct regnode_charclass_class *and_with -s |void |cl_or |struct RExC_state_t*|struct regnode_charclass_class *cl \ +Es |void |cl_or |struct RExC_state_t*|struct regnode_charclass_class *cl \ |struct regnode_charclass_class *or_with -s |I32 |study_chunk |struct RExC_state_t*|regnode **scanp|I32 *deltap \ +Es |I32 |study_chunk |struct RExC_state_t*|regnode **scanp|I32 *deltap \ |regnode *last|struct scan_data_t *data \ |U32 flags -s |I32 |add_data |struct RExC_state_t*|I32 n|char *s +Es |I32 |add_data |struct RExC_state_t*|I32 n|char *s rs |void|re_croak2 |const char* pat1|const char* pat2|... -s |I32 |regpposixcc |struct RExC_state_t*|I32 value -s |void |checkposixcc |struct RExC_state_t* +Es |I32 |regpposixcc |struct RExC_state_t*|I32 value +Es |void |checkposixcc |struct RExC_state_t* #endif #if defined(PERL_IN_REGEXEC_C) || defined(PERL_DECL_PROT) -s |I32 |regmatch |regnode *prog -s |I32 |regrepeat |regnode *p|I32 max -s |I32 |regrepeat_hard |regnode *p|I32 max|I32 *lp -s |I32 |regtry |regexp *prog|char *startpos -s |bool |reginclass |regnode *n|U8 *p|STRLEN *lenp|bool do_utf8sv_is_utf8 -s |CHECKPOINT|regcppush |I32 parenfloor -s |char*|regcppop -s |char*|regcp_set_to |I32 ss -s |void |cache_re |regexp *prog -s |U8* |reghop |U8 *pos|I32 off -s |U8* |reghop3 |U8 *pos|I32 off|U8 *lim -s |U8* |reghopmaybe |U8 *pos|I32 off -s |U8* |reghopmaybe3 |U8 *pos|I32 off|U8 *lim -s |char* |find_byclass |regexp * prog|regnode *c|char *s|char *strend|char *startpos|I32 norun -s |void |to_utf8_substr |regexp * prog -s |void |to_byte_substr |regexp * prog +Es |I32 |regmatch |regnode *prog +Es |I32 |regrepeat |regnode *p|I32 max +Es |I32 |regrepeat_hard |regnode *p|I32 max|I32 *lp +Es |I32 |regtry |regexp *prog|char *startpos +Es |bool |reginclass |regnode *n|U8 *p|STRLEN *lenp|bool do_utf8sv_is_utf8 +Es |CHECKPOINT|regcppush |I32 parenfloor +Es |char*|regcppop +Es |char*|regcp_set_to |I32 ss +Es |void |cache_re |regexp *prog +Es |U8* |reghop |U8 *pos|I32 off +Es |U8* |reghop3 |U8 *pos|I32 off|U8 *lim +Es |U8* |reghopmaybe |U8 *pos|I32 off +Es |U8* |reghopmaybe3 |U8 *pos|I32 off|U8 *lim +Es |char* |find_byclass |regexp * prog|regnode *c|char *s|char *strend|char *startpos|I32 norun +Es |void |to_utf8_substr |regexp * prog +Es |void |to_byte_substr |regexp * prog #endif #if defined(PERL_IN_DUMP_C) || defined(PERL_DECL_PROT) |