Fix [perl #31971] local $^D gives noise
[p5sagit/p5-mst-13.2.git] / embed.fnc
index 2aa04ac..4b9a4a6 100644 (file)
--- a/embed.fnc
+++ b/embed.fnc
@@ -10,7 +10,8 @@
 :                      proto, no #define
 :      d               function has documentation with its source
 :      s               static function, should have an S_ prefix in
-:                      source file
+:                      source file; for macros (m), suffix the usage
+:                      example with a semicolon
 :      n               has no implicit interpreter/thread context argument
 :      p               function has a Perl_ prefix
 :      f               function takes printf style format string, varargs
 :      x               not exported
 :      X               explicitly exported
 :      M               may change
-:      E               visible to Perl core extensions
+:      E               visible to extensions included in the Perl core
 :      b               binary backward compatibility; function is a macro
 :                      but has also Perl_ implementation (which is exported)
+:      U               suppress usage example in autogenerated documentation
 :
 : Individual flags may be separated by whitespace.
 :
@@ -45,9 +47,9 @@ Anod  |void   |perl_free      |PerlInterpreter* interp
 Anod   |int    |perl_run       |PerlInterpreter* interp
 Anod   |int    |perl_parse     |PerlInterpreter* interp|XSINIT_t xsinit \
                                |int argc|char** argv|char** env
-np     |bool   |doing_taint    |int argc|char** argv|char** env
+Anp    |bool   |doing_taint    |int argc|char** argv|char** env
 #if defined(USE_ITHREADS)
-Anod   |PerlInterpreter*|perl_clone|PerlInterpreter* interp, UV flags
+Anod   |PerlInterpreter*|perl_clone|PerlInterpreter* interp|UV flags
 #  if defined(PERL_IMPLICIT_SYS)
 Ano    |PerlInterpreter*|perl_clone_using|PerlInterpreter *interp|UV flags \
                                |struct IPerlMem* m|struct IPerlMem* ms \
@@ -337,6 +339,7 @@ Ap  |bool   |is_uni_punct_lc|UV c
 Ap     |bool   |is_uni_xdigit_lc|UV c
 Apd    |STRLEN |is_utf8_char   |U8 *p
 Apd    |bool   |is_utf8_string |U8 *s|STRLEN len
+Apd    |bool   |is_utf8_string_loc|U8 *s|STRLEN len|U8 **p
 Ap     |bool   |is_utf8_alnum  |U8 *p
 Ap     |bool   |is_utf8_alnumc |U8 *p
 Ap     |bool   |is_utf8_idfirst|U8 *p
@@ -533,11 +536,12 @@ Ap        |OP*    |newWHILEOP     |I32 flags|I32 debuggable|LOOP* loop \
                                |I32 whileline|OP* expr|OP* block|OP* cont
 
 Ap     |PERL_SI*|new_stackinfo|I32 stitems|I32 cxitems
-Apd    |char*  |scan_vstring   |char *vstr|SV *sv
-Apd    |char*  |scan_version   |char *vstr|SV *sv
+Ap     |char*  |scan_vstring   |char *vstr|SV *sv
+Apd    |char*  |scan_version   |char *vstr|SV *sv|bool qv
 Apd    |SV*    |new_version    |SV *ver
 Apd    |SV*    |upg_version    |SV *ver
 Apd    |SV*    |vnumify        |SV *vs
+Apd    |SV*    |vnormal        |SV *vs
 Apd    |SV*    |vstringify     |SV *vs
 Apd    |int    |vcmp           |SV *lvs|SV *rvs
 p      |PerlIO*|nextargv       |GV* gv
@@ -549,6 +553,7 @@ p   |void   |package        |OP* o
 pd     |PADOFFSET|pad_alloc    |I32 optype|U32 tmptype
 p      |PADOFFSET|allocmy      |char* name
 pd     |PADOFFSET|pad_findmy   |char* name
+Ap     |PADOFFSET|find_rundefsvoffset  |
 p      |OP*    |oopsAV         |OP* o
 p      |OP*    |oopsHV         |OP* o
 pd     |void   |pad_leavemy
@@ -589,12 +594,10 @@ Apd       |void   |pack_cat       |SV *cat|char *pat|char *patend|SV **beglist|SV **endlist|SV
 Apd    |void   |packlist       |SV *cat|char *pat|char *patend|SV **beglist|SV **endlist
 p      |void   |pidgone        |Pid_t pid|int status
 Ap     |void   |pmflag         |U32* pmfl|int ch
-p      |OP*    |pmruntime      |OP* pm|OP* expr|OP* repl
+p      |OP*    |pmruntime      |OP* pm|OP* expr|bool isreg
 p      |OP*    |pmtrans        |OP* o|OP* expr|OP* repl
-p      |OP*    |pop_return
 Ap     |void   |pop_scope
 p      |OP*    |prepend_elem   |I32 optype|OP* head|OP* tail
-p      |void   |push_return    |OP* o
 Ap     |void   |push_scope
 p      |OP*    |ref            |OP* o|I32 type
 p      |OP*    |refkids        |OP* o|I32 type
@@ -689,20 +692,23 @@ p |I32    |setenv_getix   |char* nam
 p      |void   |setdefout      |GV* gv
 p      |HEK*   |share_hek      |const char* sv|I32 len|U32 hash
 np     |Signal_t |sighandler   |int sig
+Anp    |Signal_t |csighandler  |int sig
 Ap     |SV**   |stack_grow     |SV** sp|SV**p|int n
 Ap     |I32    |start_subparse |I32 is_format|U32 flags
 p      |void   |sub_crush_depth|CV* cv
 Apd    |bool   |sv_2bool       |SV* sv
 Apd    |CV*    |sv_2cv         |SV* sv|HV** st|GV** gvp|I32 lref
 Apd    |IO*    |sv_2io         |SV* sv
-Apd    |IV     |sv_2iv         |SV* sv
+Amb    |IV     |sv_2iv         |SV* sv
+Apd    |IV     |sv_2iv_flags   |SV* sv|I32 flags
 Apd    |SV*    |sv_2mortal     |SV* sv
 Apd    |NV     |sv_2nv         |SV* sv
 Amb    |char*  |sv_2pv         |SV* sv|STRLEN* lp
 Apd    |char*  |sv_2pvutf8     |SV* sv|STRLEN* lp
 Apd    |char*  |sv_2pvbyte     |SV* sv|STRLEN* lp
 Ap     |char*  |sv_pvn_nomg    |SV* sv|STRLEN* lp
-Apd    |UV     |sv_2uv         |SV* sv
+Amb    |UV     |sv_2uv         |SV* sv
+Apd    |UV     |sv_2uv_flags   |SV* sv|I32 flags
 Apd    |IV     |sv_iv          |SV* sv
 Apd    |UV     |sv_uv          |SV* sv
 Apd    |NV     |sv_nv          |SV* sv
@@ -838,8 +844,9 @@ p   |void   |vivify_ref     |SV* sv|U32 to_what
 p      |I32    |wait4pid       |Pid_t pid|int* statusp|int flags
 p      |U32    |parse_unicode_opts|char **popt
 p      |U32    |seed
+p      |UV     |get_hash_seed
 p      |void   |report_evil_fh |GV *gv|IO *io|I32 op
-pd     |void   |report_uninit
+pd     |void   |report_uninit  |SV* uninit_sv
 Afpd   |void   |warn           |const char* pat|...
 Ap     |void   |vwarn          |const char* pat|va_list* args
 Afp    |void   |warner         |U32 err|const char* pat|...
@@ -848,9 +855,6 @@ p   |void   |watch          |char** addr
 Ap     |I32    |whichsig       |char* sig
 p      |void   |write_to_stderr|const char* message|int msglen
 p      |int    |yyerror        |char* s
-#ifdef USE_PURE_BISON
-p      |int    |yylex_r        |YYSTYPE *lvalp|int *lcharp
-#endif
 p      |int    |yylex
 p      |int    |yyparse
 p      |int    |yywarn         |char* s
@@ -991,8 +995,6 @@ s   |HEK*   |save_hek_flags |const char *str|I32 len|U32 hash|int flags
 s      |void   |hv_magic_check |HV *hv|bool *needs_copy|bool *needs_store
 s      |void   |unshare_hek_or_pvn|HEK* hek|const char* sv|I32 len|U32 hash
 s      |HEK*   |share_hek_flags|const char* sv|I32 len|U32 hash|int flags
-s      |SV**   |hv_fetch_flags |HV* tb|const char* key|I32 klen|I32 lval \
-                                |int flags
 s      |void   |hv_notallowed  |int flags|const char *key|I32 klen|const char *msg
 #endif
 
@@ -1023,10 +1025,10 @@ s       |OP *   |my_kid         |OP *o|OP *attrs|OP **imopsp
 s      |OP *   |dup_attrlist   |OP *o
 s      |void   |apply_attrs    |HV *stash|SV *target|OP *attrs|bool for_my
 s      |void   |apply_attrs_my |HV *stash|OP *target|OP *attrs|OP **imopsp
-#  if defined(PL_OP_SLAB_ALLOC)
-s      |void*  |Slab_Alloc     |int m|size_t sz
-s      |void   |Slab_Free      |void *op
-#  endif
+#endif
+#if defined(PL_OP_SLAB_ALLOC)
+Ap     |void*  |Slab_Alloc     |int m|size_t sz
+Ap     |void   |Slab_Free      |void *op
 #endif
 
 #if defined(PERL_IN_PERL_C) || defined(PERL_DECL_PROT)
@@ -1042,9 +1044,9 @@ s |void   |init_postdump_symbols|int|char **|char **
 s      |void   |init_predump_symbols
 rs     |void   |my_exit_jump
 s      |void   |nuke_stacks
-s      |void   |open_script    |char *|bool|SV *|int *fd
+s      |void   |open_script    |char *|bool|SV *
 s      |void   |usage          |char *
-s      |void   |validate_suid  |char *|char*|int
+s      |void   |validate_suid  |char *|char*
 #  if defined(IAMSUID)
 s      |int    |fd_on_nosuid_fs|int fd
 #  endif
@@ -1084,7 +1086,8 @@ s |void*  |docatch_body
 s      |void*  |vdocatch_body  |va_list args
 #endif
 s      |OP*    |dofindlabel    |OP *o|char *label|OP **opstack|OP **oplimit
-s      |void   |doparseform    |SV *sv
+s      |OP*    |doparseform    |SV *sv
+sn     |bool   |num_overflow   |NV value|I32 fldsize|I32 frcsize
 s      |I32    |dopoptoeval    |I32 startingblock
 s      |I32    |dopoptolabel   |char *label
 s      |I32    |dopoptoloop    |I32 startingblock
@@ -1218,7 +1221,7 @@ s |void   |del_xpvbm      |XPVBM* p
 s      |void   |del_xrv        |XRV* p
 s      |void   |sv_unglob      |SV* sv
 s      |void   |not_a_number   |SV *sv
-s      |I32    |visit          |SVFUNC_t f
+s      |I32    |visit          |SVFUNC_t f|U32 flags|U32 mask
 s      |void   |sv_add_backref |SV *tsv|SV *sv
 s      |void   |sv_del_backref |SV *sv
 #  ifdef DEBUGGING
@@ -1279,7 +1282,7 @@ s |HV *   |find_in_my_stash|char *pkgname|I32 len
 s      |SV*    |new_constant   |char *s|STRLEN len|const char *key|SV *sv \
                                |SV *pv|const char *type
 #  if defined(DEBUGGING)
-s      |void   |tokereport     |char *thing|char *s|I32 rv
+s      |int    |tokereport     |char *s|I32 rv
 #  endif
 s      |int    |ao             |int toketype
 s      |void   |depcom
@@ -1322,7 +1325,7 @@ Apd       |void   |sv_copypv      |SV* dsv|SV* ssv
 Ap     |char*  |my_atof2       |const char *s|NV* value
 Apn    |int    |my_socketpair  |int family|int type|int protocol|int fd[2]
 #ifdef PERL_COPY_ON_WRITE
-pMX    |SV*    |sv_setsv_cow   |SV* dsv|SV* ssv
+pMXE   |SV*    |sv_setsv_cow   |SV* dsv|SV* ssv
 #endif
 
 #if defined(USE_PERLIO) && !defined(USE_SFIO)
@@ -1387,10 +1390,98 @@ sd      |void   |cv_dump        |CV *cv|char *title
 pd     |CV*    |find_runcv     |U32 *db_seqp
 p      |void   |free_tied_hv_pool
 #if defined(DEBUGGING)
-p      |int    |get_debug_opts |char **s
+p      |int    |get_debug_opts |char **s|bool givehelp
 #endif
+Ap     |void   |save_set_svflags|SV* sv|U32 mask|U32 val
+Apod   |void   |hv_assert      |HV* tb
 
+#if defined(PERL_IN_HV_C) || defined(PERL_DECL_PROT)
+sM     |SV*    |hv_delete_common|HV* tb|SV* key_sv|const char* key|STRLEN klen|int k_flags|I32 d_flags|U32 hash
+sM     |HE*    |hv_fetch_common|HV* tb|SV* key_sv|const char* key|STRLEN klen|int flags|int action|SV* val|U32 hash
+#endif
 
+Apd    |void   |hv_clear_placeholders|HV* hb
 
-END_EXTERN_C
+Apd    |SV*    |hv_scalar      |HV* hv|
+p      |SV*    |magic_scalarpack|HV* hv|MAGIC* mg
+#ifdef PERL_IN_SV_C
+sMd    |SV*    |find_uninit_var|OP* obase|SV* uninit_sv|bool top
+#endif
 
+#ifdef PERL_NEED_MY_HTOLE16
+np     |U16    |my_htole16     |U16 n
+#endif
+#ifdef PERL_NEED_MY_LETOH16
+np     |U16    |my_letoh16     |U16 n
+#endif
+#ifdef PERL_NEED_MY_HTOBE16
+np     |U16    |my_htobe16     |U16 n
+#endif
+#ifdef PERL_NEED_MY_BETOH16
+np     |U16    |my_betoh16     |U16 n
+#endif
+#ifdef PERL_NEED_MY_HTOLE32
+np     |U32    |my_htole32     |U32 n
+#endif
+#ifdef PERL_NEED_MY_LETOH32
+np     |U32    |my_letoh32     |U32 n
+#endif
+#ifdef PERL_NEED_MY_HTOBE32
+np     |U32    |my_htobe32     |U32 n
+#endif
+#ifdef PERL_NEED_MY_BETOH32
+np     |U32    |my_betoh32     |U32 n
+#endif
+#ifdef PERL_NEED_MY_HTOLE64
+np     |U64    |my_htole64     |U64 n
+#endif
+#ifdef PERL_NEED_MY_LETOH64
+np     |U64    |my_letoh64     |U64 n
+#endif
+#ifdef PERL_NEED_MY_HTOBE64
+np     |U64    |my_htobe64     |U64 n
+#endif
+#ifdef PERL_NEED_MY_BETOH64
+np     |U64    |my_betoh64     |U64 n
+#endif
+
+#ifdef PERL_NEED_MY_HTOLES
+np     |short  |my_htoles      |short n
+#endif
+#ifdef PERL_NEED_MY_LETOHS
+np     |short  |my_letohs      |short n
+#endif
+#ifdef PERL_NEED_MY_HTOBES
+np     |short  |my_htobes      |short n
+#endif
+#ifdef PERL_NEED_MY_BETOHS
+np     |short  |my_betohs      |short n
+#endif
+#ifdef PERL_NEED_MY_HTOLEI
+np     |int    |my_htolei      |int n
+#endif
+#ifdef PERL_NEED_MY_LETOHI
+np     |int    |my_letohi      |int n
+#endif
+#ifdef PERL_NEED_MY_HTOBEI
+np     |int    |my_htobei      |int n
+#endif
+#ifdef PERL_NEED_MY_BETOHI
+np     |int    |my_betohi      |int n
+#endif
+#ifdef PERL_NEED_MY_HTOLEL
+np     |long   |my_htolel      |long n
+#endif
+#ifdef PERL_NEED_MY_LETOHL
+np     |long   |my_letohl      |long n
+#endif
+#ifdef PERL_NEED_MY_HTOBEL
+np     |long   |my_htobel      |long n
+#endif
+#ifdef PERL_NEED_MY_BETOHL
+np     |long   |my_betohl      |long n
+#endif
+
+np     |void   |my_swabn       |void* ptr|int n
+
+END_EXTERN_C