This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Change S_doopen_pm() and S_check_type_and_open() to take an SV parameter.
[perl5.git] / embed.fnc
index 5fd1227..030287c 100644 (file)
--- a/embed.fnc
+++ b/embed.fnc
@@ -171,6 +171,7 @@ Anp |void   |set_context    |NN void *t
 XEop   |bool   |try_amagic_bin |int method|int flags
 XEop   |bool   |try_amagic_un  |int method|int flags
 Ap     |SV*    |amagic_call    |NN SV* left|NN SV* right|int method|int dir
+Ap     |SV *   |amagic_deref_call|NN SV *ref|int method
 Ap     |int    |Gv_AMupdate    |NN HV* stash|bool destructing
 ApR    |CV*    |gv_handler     |NULLOK HV* stash|I32 id
 Apd    |OP*    |op_append_elem |I32 optype|NULLOK OP* first|NULLOK OP* last
@@ -438,6 +439,7 @@ Ap  |void   |gv_fullname4   |NN SV* sv|NN const GV* gv|NULLOK const char* prefix|bool
 : Used in scope.c
 pMox   |GP *   |newGP          |NN GV *const gv
 pX     |void   |cvgv_set       |NN CV* cv|NULLOK GV* gv
+pX     |void   |cvstash_set    |NN CV* cv|NULLOK HV* stash
 Ap     |void   |gv_init        |NN GV* gv|NULLOK HV* stash|NN const char* name|STRLEN len|int multi
 Ap     |void   |gv_name_set    |NN GV* gv|NN const char *name|U32 len|U32 flags
 XMpd   |void   |gv_try_downgrade|NN GV* gv
@@ -624,6 +626,8 @@ AMpd        |I32    |lex_read_unichar|U32 flags
 AMpd   |void   |lex_read_space |U32 flags
 : Public parser API
 AMpd   |OP*    |parse_block    |U32 flags
+AMpd   |OP*    |parse_barestmt |U32 flags
+AMpd   |SV*    |parse_label    |U32 flags
 AMpd   |OP*    |parse_fullstmt |U32 flags
 AMpd   |OP*    |parse_stmtseq  |U32 flags
 : Used in various files
@@ -729,8 +733,7 @@ Apd |void   |mg_magical     |NN SV* sv
 Apd    |int    |mg_set         |NN SV* sv
 Ap     |I32    |mg_size        |NN SV* sv
 Ap     |void   |mini_mktime    |NN struct tm *ptm
-: Used by MOD(), which Data::Alias uses
-EXp    |OP*    |mod            |NULLOK OP* o|I32 type
+AMpd   |OP*    |op_lvalue      |NULLOK OP* o|I32 type
 : Used in op.c and pp_sys.c
 p      |int    |mode_from_discipline|NULLOK const char* s|STRLEN len
 Ap     |const char*    |moreswitches   |NN const char* s
@@ -780,8 +783,7 @@ Ap  |OP*    |newFORM        |I32 floor|NULLOK OP* o|NULLOK OP* block
 #else
 Ap     |void   |newFORM        |I32 floor|NULLOK OP* o|NULLOK OP* block
 #endif
-Apda   |OP*    |newFOROP       |I32 flags|NULLOK char* label|line_t forline \
-                               |NULLOK OP* sv|NN OP* expr|NULLOK OP* block|NULLOK OP* cont
+Apda   |OP*    |newFOROP       |I32 flags|NULLOK OP* sv|NN OP* expr|NULLOK OP* block|NULLOK OP* cont
 Apda   |OP*    |newGIVENOP     |NN OP* cond|NN OP* block|PADOFFSET defsv_off
 Apda   |OP*    |newLOGOP       |I32 optype|I32 flags|NN OP *first|NN OP *other
 Apda   |OP*    |newLOOPEX      |I32 type|NN OP* label
@@ -837,7 +839,7 @@ Apda        |SV*    |newSV_type     |const svtype type
 Apda   |OP*    |newUNOP        |I32 type|I32 flags|NULLOK OP* first
 Apda   |OP*    |newWHENOP      |NULLOK OP* cond|NN OP* block
 Apda   |OP*    |newWHILEOP     |I32 flags|I32 debuggable|NULLOK LOOP* loop \
-                               |I32 whileline|NULLOK OP* expr|NULLOK OP* block|NULLOK OP* cont \
+                               |NULLOK OP* expr|NULLOK OP* block|NULLOK OP* cont \
                                |I32 has_my
 Apd    |CV*    |rv2cv_op_cv    |NN OP *cvop|U32 flags
 Apd    |OP*    |ck_entersub_args_list|NN OP *entersubop
@@ -1097,8 +1099,7 @@ Apd       |NV     |scan_bin       |NN const char* start|STRLEN len|NN STRLEN* retlen
 Apd    |NV     |scan_hex       |NN const char* start|STRLEN len|NN STRLEN* retlen
 Ap     |char*  |scan_num       |NN const char* s|NN YYSTYPE *lvalp
 Apd    |NV     |scan_oct       |NN const char* start|STRLEN len|NN STRLEN* retlen
-: Used in perly.y
-p      |OP*    |scope          |NULLOK OP* o
+AMpd   |OP*    |op_scope       |NULLOK OP* o
 Ap     |char*  |screaminstr    |NN SV *bigstr|NN SV *littlestr|I32 start_shift \
                                |I32 end_shift|NN I32 *old_posp|I32 last
 Apd    |void   |setdefout      |NULLOK GV* gv
@@ -1256,6 +1257,7 @@ Apd       |void   |sv_vsetpvfn    |NN SV *const sv|NN const char *const pat|const STRLEN pa
 ApR    |NV     |str_to_version |NN SV *sv
 Ap     |SV*    |swash_init     |NN const char* pkg|NN const char* name|NN SV* listsv|I32 minbits|I32 none
 Ap     |UV     |swash_fetch    |NN SV *swash|NN const U8 *ptr|bool do_utf8
+EMpRX  |HV*    |_swash_inversion_hash  |NN SV *swash
 Ap     |void   |taint_env
 Ap     |void   |taint_proper   |NULLOK const char* f|NN const char *const s
 Apd    |UV     |to_utf8_case   |NN const U8 *p|NN U8* ustrp|NULLOK STRLEN *lenp \
@@ -1449,7 +1451,7 @@ ApR       |HEK*   |hek_dup        |NULLOK HEK* e|NN CLONE_PARAMS* param
 Ap     |void   |re_dup_guts    |NN const REGEXP *sstr|NN REGEXP *dstr \
                                |NN CLONE_PARAMS* param
 Ap     |PerlIO*|fp_dup         |NULLOK PerlIO *const fp|const char type|NN CLONE_PARAMS *const param
-ApR    |DIR*   |dirp_dup       |NULLOK DIR *const dp
+ApR    |DIR*   |dirp_dup       |NULLOK DIR *const dp|NN CLONE_PARAMS *const param
 ApR    |GP*    |gp_dup         |NULLOK GP *const gp|NN CLONE_PARAMS *const param
 ApR    |MAGIC* |mg_dup         |NULLOK MAGIC *mg|NN CLONE_PARAMS *const param
 #if defined(PERL_IN_SV_C)
@@ -1537,7 +1539,7 @@ s |SV*    |magic_methcall1|NN SV *sv|NN const MAGIC *mg \
                                |NN const char *meth|U32 flags \
                                |int n|NULLOK SV *val
 s      |void   |restore_magic  |NULLOK const void *p
-s      |void   |unwind_handler_stack|NN const void *p
+s      |void   |unwind_handler_stack|NULLOK const void *p
 
 #endif
 
@@ -1659,9 +1661,9 @@ sR        |I32    |dopoptosub_at  |NN const PERL_CONTEXT* cxstk|I32 startingblock
 sR     |I32    |dopoptowhen    |I32 startingblock
 s      |void   |save_lines     |NULLOK AV *array|NN SV *sv
 s      |bool   |doeval         |int gimme|NULLOK OP** startop|NULLOK CV* outside|U32 seq
-sR     |PerlIO *|check_type_and_open|NN const char *name
+sR     |PerlIO *|check_type_and_open|NN SV *name
 #ifndef PERL_DISABLE_PMC
-sR     |PerlIO *|doopen_pm     |NN const char *name|const STRLEN namelen
+sR     |PerlIO *|doopen_pm     |NN SV *name
 #endif
 sRn    |bool   |path_is_absolute|NN const char *name
 sR     |I32    |run_user_filter|int idx|NN SV *buf_sv|int maxlen
@@ -1790,8 +1792,8 @@ Es        |U8     |regtail_study  |NN struct RExC_state_t *pRExC_state \
 ERs    |I32    |regmatch       |NN regmatch_info *reginfo|NN regnode *prog
 ERs    |I32    |regrepeat      |NN const regexp *prog|NN const regnode *p|I32 max|int depth
 ERs    |I32    |regtry         |NN regmatch_info *reginfo|NN char **startpos
-ERs    |bool   |reginclass     |NULLOK const regexp *prog|NN const regnode *n|NN const U8 *p|NULLOK STRLEN *lenp\
-                               |bool do_utf8sv_is_utf8
+ERs    |bool   |reginclass     |NULLOK const regexp * const prog|NN const regnode * const n|NN const U8 * const p|NULLOK STRLEN *lenp\
+                               |bool const do_utf8sv_is_utf8
 Es     |CHECKPOINT|regcppush   |I32 parenfloor
 Es     |char*  |regcppop       |NN const regexp *rex
 ERsn   |U8*    |reghop3        |NN U8 *s|I32 off|NN const U8 *lim
@@ -1953,7 +1955,6 @@ s |void   |printbuf       |NN const char *const fmt|NN const char *const s
 
 #if defined(PERL_IN_UNIVERSAL_C)
 s      |bool|isa_lookup        |NN HV *stash|NN const char * const name
-so     |HV *   |get_isa_hash   |NN HV *const stash
 #endif
 
 #if defined(PERL_IN_LOCALE_C)
@@ -2110,8 +2111,8 @@ ApoR      |HE**   |hv_eiter_p     |NN HV *hv
 Apo    |void   |hv_riter_set   |NN HV *hv|I32 riter
 Apo    |void   |hv_eiter_set   |NN HV *hv|NULLOK HE *eiter
 Ap     |void   |hv_name_set    |NN HV *hv|NULLOK const char *name|U32 len|U32 flags
-p      |void   |hv_name_add    |NN HV *hv|NN const char *name|U32 len
-p      |void   |hv_name_delete |NN HV *hv|NN const char *name|U32 len
+p      |void   |hv_ename_add   |NN HV *hv|NN const char *name|U32 len
+p      |void   |hv_ename_delete|NN HV *hv|NN const char *name|U32 len
 : Used in dump.c and hv.c
 poM    |AV**   |hv_backreferences_p    |NN HV *hv
 #if defined(PERL_IN_DUMP_C) || defined(PERL_IN_HV_C) || defined(PERL_IN_SV_C)
@@ -2353,6 +2354,14 @@ p        |struct mro_meta*       |mro_meta_dup   |NN struct mro_meta* smeta|NN CLONE_PARAMS* pa
 Apd    |AV*    |mro_get_linear_isa|NN HV* stash
 #if defined(PERL_IN_MRO_C)
 sd     |AV*    |mro_get_linear_isa_dfs|NN HV* stash|U32 level
+s      |void   |mro_clean_isarev|NN HV * const isa   \
+                                |NN const char * const name \
+                                |const STRLEN len \
+                                |NULLOK HV * const exceptions
+s      |void   |mro_gather_and_rename|NN HV * const stashes \
+                                     |NULLOK HV *stash \
+                                     |NULLOK HV *oldstash \
+                                     |NN const char *name|I32 namlen
 #endif
 : Used in hv.c, mg.c, pp.c, sv.c
 md     |void   |mro_isa_changed_in|NN HV* stash