: If the function is only exported for use in a public
: macro, see X.
:
-: a Allocates memory a la malloc/calloc. Also implies "R":
+: a Allocates memory a la malloc/calloc. Also implies "R".
+: This should only be on functions which returns 'empty' memory
+: which has no other pointers to it, and which does not contain
+: any pointers to other things. So for example realloc() can't be
+: 'a'.
:
: proto.h: add __attribute__malloc__
:
-: b Binary backward compatibility; has an exported Perl_ implementation
-: but function is also normally a macro (i.e. has the "m" flag as well).
-: Backcompat functions ("b") can be anywhere, but if they are also
-: macros ("m") then they have no proto.h entries so must either be in
-: mathoms.c to get marked EXTERN_C (and skipped for -DNO_MATHOMS builds)
-: or else will require special attention to ensure they are marked
-: EXTERN_C (and then won't be automatically skipped for -DNO_MATHOMS
-: builds).
+: b Binary backward compatibility. This is used for functions which are
+: kept only to not have to change legacy applications that call them. If
+: there are no such legacy applications in a Perl installation for all
+: functions flagged with this, the installation can run Configure with the
+: -Accflags='-DNO_MATHOMS' parameter to not even compile them. If there
+: is a macro form of this function that provides equivalent functionality
+: (using a different implementation), also specify the 'm' flag. The 'b'
+: functions are normally moved to mathoms.c, but if circumstances dictate
+: otherwise, they can be anywhere, provided the whole function is wrapped
+: with
+: #ifndef NO_MATHOMS
+: ...
+: #endif
:
+: Note that this flag no longer automatically adds a 'Perl_' prefix to the
+: name. Additionally specify 'p' to do that.
+:
+: For functions, like wrappers, whose macro shortcut doesn't call the
+: function, but which, for whatever reason, aren't considered legacy-only,
+: use the 'o' flag
+:
+: This flag effectively causes nothing to happen if the perl interpreter
+: is compiled with -DNO_MATHOMS; otherwise these happen:
: add entry to the list of exported symbols;
-: don't define PERL_ARGS_ASSERT_FOO
+: create PERL_ARGS_ASSERT_FOO;
+: add embed.h entry (unless overridden by the 'm' flag)
:
: D Function is deprecated:
:
:
: m Implemented as a macro:
:
-: suppress proto.h entry (actually, not suppressed, but commented out)
+: suppress proto.h entry unless 'b' also specified (actually, not
+: suppressed, but commented out)
: suppress entry in the list of exported symbols
: suppress embed.h entry
:
Aanop |Malloc_t|malloc |MEM_SIZE nbytes
Aanop |Malloc_t|calloc |MEM_SIZE elements|MEM_SIZE size
-Aanop |Malloc_t|realloc |Malloc_t where|MEM_SIZE nbytes
+ARnop |Malloc_t|realloc |Malloc_t where|MEM_SIZE nbytes
Anop |Free_t |mfree |Malloc_t where
#if defined(MYMALLOC)
npR |MEM_SIZE|malloced_size |NN void *p
pR |OP* |bind_match |I32 type|NN OP *left|NN OP *right
: Used in perly.y
ApdR |OP* |block_end |I32 floor|NULLOK OP* seq
-ApR |I32 |block_gimme
+ApR |U8 |block_gimme
: Used in perly.y
ApdR |int |block_start |int full
Aodp |void |blockhook_register |NN BHK *hk
|NN const char *const params
npr |void |croak_no_mem
nprX |void |croak_popstack
+fnrp |void |croak_caller|NULLOK const char* pat|...
fnprx |void |noperl_die|NN const char* pat|...
#if defined(WIN32)
norx |void |win32_croak_not_implemented|NN const char * fname
p |void |do_vop |I32 optype|NN SV* sv|NN SV* left|NN SV* right
: Used in perly.y
p |OP* |dofile |NN OP* term|I32 force_builtin
-ApR |I32 |dowantarray
+ApR |U8 |dowantarray
Ap |void |dump_all
p |void |dump_all_perl |bool justperl
Ap |void |dump_eval
ApdR |char* |fbm_instr |NN unsigned char* big|NN unsigned char* bigend \
|NN SV* littlestr|U32 flags
p |CV * |find_lexical_cv|PADOFFSET off
-pR |OP * |parse_subsignature
: Defined in util.c, used only in perl.c
p |char* |find_script |NN const char *scriptname|bool dosearch \
|NULLOK const char *const *const search_ext|I32 flags
: used in SAVEHINTS() and op.c
ApdR |HV * |hv_copy_hints_hv|NULLOK HV *const ohv
Ap |void |hv_delayfree_ent|NN HV *hv|NULLOK HE *entry
-Abmd |SV* |hv_delete |NULLOK HV *hv|NN const char *key|I32 klen \
+Abmdp |SV* |hv_delete |NULLOK HV *hv|NN const char *key|I32 klen \
|I32 flags
-Abmd |SV* |hv_delete_ent |NULLOK HV *hv|NN SV *keysv|I32 flags|U32 hash
-AbmdR |bool |hv_exists |NULLOK HV *hv|NN const char *key|I32 klen
-AbmdR |bool |hv_exists_ent |NULLOK HV *hv|NN SV *keysv|U32 hash
-Abmd |SV** |hv_fetch |NULLOK HV *hv|NN const char *key|I32 klen \
+Abmdp |SV* |hv_delete_ent |NULLOK HV *hv|NN SV *keysv|I32 flags|U32 hash
+AbmdRp |bool |hv_exists |NULLOK HV *hv|NN const char *key|I32 klen
+AbmdRp |bool |hv_exists_ent |NULLOK HV *hv|NN SV *keysv|U32 hash
+Abmdp |SV** |hv_fetch |NULLOK HV *hv|NN const char *key|I32 klen \
|I32 lval
-Abmd |HE* |hv_fetch_ent |NULLOK HV *hv|NN SV *keysv|I32 lval|U32 hash
+Abmdp |HE* |hv_fetch_ent |NULLOK HV *hv|NN SV *keysv|I32 lval|U32 hash
Ap |void* |hv_common |NULLOK HV *hv|NULLOK SV *keysv \
|NULLOK const char* key|STRLEN klen|int flags \
|int action|NULLOK SV *val|U32 hash
|U32 hash|NULLOK SV *value|U32 flags
Xpd |void |refcounted_he_free|NULLOK struct refcounted_he *he
Xpd |struct refcounted_he *|refcounted_he_inc|NULLOK struct refcounted_he *he
-Abmd |SV** |hv_store |NULLOK HV *hv|NULLOK const char *key \
+Apbmd |SV** |hv_store |NULLOK HV *hv|NULLOK const char *key \
|I32 klen|NULLOK SV *val|U32 hash
-Abmd |HE* |hv_store_ent |NULLOK HV *hv|NULLOK SV *key|NULLOK SV *val\
+Apbmd |HE* |hv_store_ent |NULLOK HV *hv|NULLOK SV *key|NULLOK SV *val\
|U32 hash
-AbmM |SV** |hv_store_flags |NULLOK HV *hv|NULLOK const char *key \
+ApbmM |SV** |hv_store_flags |NULLOK HV *hv|NULLOK const char *key \
|I32 klen|NULLOK SV *val|U32 hash|int flags
Amd |void |hv_undef |NULLOK HV *hv
poX |void |hv_undef_flags |NULLOK HV *hv|U32 flags
Ap |void |init_stacks
Ap |void |init_tm |NN struct tm *ptm
: Used in perly.y
-AnpPR |char* |instr |NN const char* big|NN const char* little
+AbmnpPR |char* |instr |NN const char* big|NN const char* little
: Used in sv.c
p |bool |io_close |NN IO* io|NULLOK GV *gv \
|bool not_implicit|bool warn_on_fail
p |OP* |localize |NN OP *o|I32 lex
ApdR |I32 |looks_like_number|NN SV *const sv
Apd |UV |grok_bin |NN const char* start|NN STRLEN* len_p|NN I32* flags|NULLOK NV *result
-#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_TOKE_C)
-EMiR |bool |grok_bslash_x |NN char** s|NN UV* uv \
+#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_TOKE_C) || defined(PERL_IN_DQUOTE_C)
+EMpRX |bool |grok_bslash_x |NN char** s|NN UV* uv \
|NN const char** error_msg \
|const bool output_warning \
|const bool strict \
|const bool silence_non_portable \
|const bool utf8
-#endif
EMpRX |char |grok_bslash_c |const char source|const bool output_warning
EMpRX |bool |grok_bslash_o |NN char** s|NN UV* uv \
|NN const char** error_msg \
|const bool strict \
|const bool silence_non_portable \
|const bool utf8
-EMpPRX |char*|form_short_octal_warning|NN const char * const s \
+EMiR |char*|form_short_octal_warning|NN const char * const s \
|const STRLEN len
+EiPRn |I32 |regcurly |NN const char *s
+#endif
Apd |UV |grok_hex |NN const char* start|NN STRLEN* len_p|NN I32* flags|NULLOK NV *result
Apd |int |grok_infnan |NN const char** sp|NN const char *send
Apd |int |grok_number |NN const char *pv|STRLEN len|NULLOK UV *valuep
Ap |I32 * |markstack_grow
#if defined(USE_LOCALE_COLLATE)
p |int |magic_setcollxfrm|NN SV* sv|NN MAGIC* mg
+pb |char* |mem_collxfrm |NN const char* input_string|STRLEN len|NN STRLEN* xlen
: Defined in locale.c, used only in sv.c
-p |char* |mem_collxfrm |NN const char* s|STRLEN len|NN STRLEN* xlen
+# if defined(PERL_IN_LOCALE_C) || defined(PERL_IN_SV_C) || defined(PERL_IN_MATHOMS_C)
+pM |char* |_mem_collxfrm |NN const char* input_string \
+ |STRLEN len \
+ |NN STRLEN* xlen \
+ |bool utf8
+# endif
#endif
Afpd |SV* |mess |NN const char* pat|...
Apd |SV* |mess_sv |NN SV* basemsg|bool consume
p |int |mode_from_discipline|NULLOK const char* s|STRLEN len
Ap |const char* |moreswitches |NN const char* s
Ap |NV |my_atof |NN const char *s
-#if (!defined(HAS_MEMCPY) && !defined(HAS_BCOPY)) || (!defined(HAS_MEMMOVE) && !defined(HAS_SAFE_MEMCPY) && !defined(HAS_SAFE_BCOPY))
-Anp |char* |my_bcopy |NN const char* from|NN char* to|I32 len
+#if !defined(HAS_MEMCPY) || (!defined(HAS_MEMMOVE) && !defined(HAS_SAFE_MEMCPY))
+Anp |void* |my_bcopy |NN const void* vfrom|NN void* vto|size_t len
#endif
#if !defined(HAS_BZERO) && !defined(HAS_MEMSET)
-Anp |char* |my_bzero |NN char* loc|I32 len
+Anp |void* |my_bzero |NN void* vloc|size_t len
#endif
Apr |void |my_exit |U32 status
Apr |void |my_failure_exit
Apmb |I32 |my_lstat
pX |I32 |my_lstat_flags |NULLOK const U32 flags
#if !defined(HAS_MEMCMP) || !defined(HAS_SANE_MEMCMP)
-AnpP |I32 |my_memcmp |NN const char* s1|NN const char* s2|I32 len
+AnpP |int |my_memcmp |NN const void* vs1|NN const void* vs2|size_t len
#endif
#if !defined(HAS_MEMSET)
-Anp |void* |my_memset |NN char* loc|I32 ch|I32 len
+Anp |void* |my_memset |NN void* vloc|int ch|size_t len
#endif
#if !defined(PERL_IMPLICIT_SYS)
Ap |I32 |my_pclose |NULLOK PerlIO* ptr
Afp |char * |my_strftime |NN const char *fmt|int sec|int min|int hour|int mday|int mon|int year|int wday|int yday|int isdst
: Used in pp_ctl.c
p |void |my_unexec
-ADMnoPR |UV |NATIVE_TO_NEED |const UV enc|const UV ch
-ADMnoPR |UV |ASCII_TO_NEED |const UV enc|const UV ch
-Apa |OP* |newANONLIST |NULLOK OP* o
-Apa |OP* |newANONHASH |NULLOK OP* o
+AbDMnPR |UV |NATIVE_TO_NEED |const UV enc|const UV ch
+AbDMnPR |UV |ASCII_TO_NEED |const UV enc|const UV ch
+ApR |OP* |newANONLIST |NULLOK OP* o
+ApR |OP* |newANONHASH |NULLOK OP* o
Ap |OP* |newANONSUB |I32 floor|NULLOK OP* proto|NULLOK OP* block
-Apda |OP* |newASSIGNOP |I32 flags|NULLOK OP* left|I32 optype|NULLOK OP* right
-Apda |OP* |newCONDOP |I32 flags|NN OP* first|NULLOK OP* trueop|NULLOK OP* falseop
+ApdR |OP* |newASSIGNOP |I32 flags|NULLOK OP* left|I32 optype|NULLOK OP* right
+ApdR |OP* |newCONDOP |I32 flags|NN OP* first|NULLOK OP* trueop|NULLOK OP* falseop
Apd |CV* |newCONSTSUB |NULLOK HV* stash|NULLOK const char* name|NULLOK SV* sv
Apd |CV* |newCONSTSUB_flags|NULLOK HV* stash \
|NULLOK const char* name|STRLEN len \
|U32 flags|NULLOK SV* sv
Ap |void |newFORM |I32 floor|NULLOK OP* o|NULLOK OP* block
-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
-Apda |OP* |newLOOPOP |I32 flags|I32 debuggable|NULLOK OP* expr|NULLOK OP* block
-Apda |OP* |newNULLLIST
-Apda |OP* |newOP |I32 optype|I32 flags
+ApdR |OP* |newFOROP |I32 flags|NULLOK OP* sv|NN OP* expr|NULLOK OP* block|NULLOK OP* cont
+ApdR |OP* |newGIVENOP |NN OP* cond|NN OP* block|PADOFFSET defsv_off
+ApdR |OP* |newLOGOP |I32 optype|I32 flags|NN OP *first|NN OP *other
+pM |LOGOP* |alloc_LOGOP |I32 type|NULLOK OP *first|NULLOK OP *other
+ApdR |OP* |newLOOPEX |I32 type|NN OP* label
+ApdR |OP* |newLOOPOP |I32 flags|I32 debuggable|NULLOK OP* expr|NULLOK OP* block
+ApdR |OP* |newNULLLIST
+ApdR |OP* |newOP |I32 optype|I32 flags
Ap |void |newPROG |NN OP* o
-Apda |OP* |newRANGE |I32 flags|NN OP* left|NN OP* right
-Apda |OP* |newSLICEOP |I32 flags|NULLOK OP* subscript|NULLOK OP* listop
-Apda |OP* |newSTATEOP |I32 flags|NULLOK char* label|NULLOK OP* o
-Abm |CV* |newSUB |I32 floor|NULLOK OP* o|NULLOK OP* proto \
+ApdR |OP* |newRANGE |I32 flags|NN OP* left|NN OP* right
+ApdR |OP* |newSLICEOP |I32 flags|NULLOK OP* subscript|NULLOK OP* listop
+ApdR |OP* |newSTATEOP |I32 flags|NULLOK char* label|NULLOK OP* o
+Apbm |CV* |newSUB |I32 floor|NULLOK OP* o|NULLOK OP* proto \
|NULLOK OP* block
p |CV * |newXS_len_flags|NULLOK const char *name|STRLEN len \
|NN XSUBADDR_t subaddr\
|NULLOK const char *const proto|U32 flags
Apd |CV* |newXS |NULLOK const char *name|NN XSUBADDR_t subaddr\
|NN const char *filename
-AmdbR |AV* |newAV
-Apa |OP* |newAVREF |NN OP* o
-Apda |OP* |newBINOP |I32 type|I32 flags|NULLOK OP* first|NULLOK OP* last
-Apa |OP* |newCVREF |I32 flags|NULLOK OP* o
-Apda |OP* |newGVOP |I32 type|I32 flags|NN GV* gv
+ApmdbR |AV* |newAV
+ApR |OP* |newAVREF |NN OP* o
+ApdR |OP* |newBINOP |I32 type|I32 flags|NULLOK OP* first|NULLOK OP* last
+ApR |OP* |newCVREF |I32 flags|NULLOK OP* o
+ApdR |OP* |newGVOP |I32 type|I32 flags|NN GV* gv
Am |GV* |newGVgen |NN const char* pack
-Apa |GV* |newGVgen_flags |NN const char* pack|U32 flags
-Apa |OP* |newGVREF |I32 type|NULLOK OP* o
-ApaR |OP* |newHVREF |NN OP* o
-AmdbR |HV* |newHV
-ApaR |HV* |newHVhv |NULLOK HV *hv
-Apabm |IO* |newIO
-Apda |OP* |newLISTOP |I32 type|I32 flags|NULLOK OP* first|NULLOK OP* last
-AMpdan |PADNAME *|newPADNAMEouter|NN PADNAME *outer
-AMpdan |PADNAME *|newPADNAMEpvn|NN const char *s|STRLEN len
-AMpdan |PADNAMELIST *|newPADNAMELIST|size_t max
+ApR |GV* |newGVgen_flags |NN const char* pack|U32 flags
+ApR |OP* |newGVREF |I32 type|NULLOK OP* o
+ApR |OP* |newHVREF |NN OP* o
+ApmdbR |HV* |newHV
+ApR |HV* |newHVhv |NULLOK HV *hv
+ApRbm |IO* |newIO
+ApdR |OP* |newLISTOP |I32 type|I32 flags|NULLOK OP* first|NULLOK OP* last
+AMpdRn |PADNAME *|newPADNAMEouter|NN PADNAME *outer
+AMpdRn |PADNAME *|newPADNAMEpvn|NN const char *s|STRLEN len
+AMpdRn |PADNAMELIST *|newPADNAMELIST|size_t max
#ifdef USE_ITHREADS
-Apda |OP* |newPADOP |I32 type|I32 flags|NN SV* sv
-#endif
-Apda |OP* |newPMOP |I32 type|I32 flags
-Apda |OP* |newPVOP |I32 type|I32 flags|NULLOK char* pv
-Apa |SV* |newRV |NN SV *const sv
-Apda |SV* |newRV_noinc |NN SV *const tmpRef
-Apda |SV* |newSV |const STRLEN len
-Apa |OP* |newSVREF |NN OP* o
-Apda |OP* |newSVOP |I32 type|I32 flags|NN SV* sv
+ApdR |OP* |newPADOP |I32 type|I32 flags|NN SV* sv
+#endif
+ApdR |OP* |newPMOP |I32 type|I32 flags
+ApdR |OP* |newPVOP |I32 type|I32 flags|NULLOK char* pv
+ApR |SV* |newRV |NN SV *const sv
+ApdR |SV* |newRV_noinc |NN SV *const tmpRef
+ApdR |SV* |newSV |const STRLEN len
+ApR |OP* |newSVREF |NN OP* o
+ApdR |OP* |newSVOP |I32 type|I32 flags|NN SV* sv
ApdR |OP* |newDEFSVOP
-pa |SV* |newSVavdefelem |NN AV *av|SSize_t ix|bool extendible
-Apda |SV* |newSViv |const IV i
-Apda |SV* |newSVuv |const UV u
-Apda |SV* |newSVnv |const NV n
-Apda |SV* |newSVpv |NULLOK const char *const s|const STRLEN len
-Apda |SV* |newSVpvn |NULLOK const char *const s|const STRLEN len
-Apda |SV* |newSVpvn_flags |NULLOK const char *const s|const STRLEN len|const U32 flags
-Apda |SV* |newSVhek |NULLOK const HEK *const hek
-Apda |SV* |newSVpvn_share |NULLOK const char* s|I32 len|U32 hash
-Apda |SV* |newSVpv_share |NULLOK const char* s|U32 hash
-Afpda |SV* |newSVpvf |NN const char *const pat|...
-Apa |SV* |vnewSVpvf |NN const char *const pat|NULLOK va_list *const args
+pR |SV* |newSVavdefelem |NN AV *av|SSize_t ix|bool extendible
+ApdR |SV* |newSViv |const IV i
+ApdR |SV* |newSVuv |const UV u
+ApdR |SV* |newSVnv |const NV n
+ApdR |SV* |newSVpv |NULLOK const char *const s|const STRLEN len
+ApdR |SV* |newSVpvn |NULLOK const char *const s|const STRLEN len
+ApdR |SV* |newSVpvn_flags |NULLOK const char *const s|const STRLEN len|const U32 flags
+ApdR |SV* |newSVhek |NULLOK const HEK *const hek
+ApdR |SV* |newSVpvn_share |NULLOK const char* s|I32 len|U32 hash
+ApdR |SV* |newSVpv_share |NULLOK const char* s|U32 hash
+AfpdR |SV* |newSVpvf |NN const char *const pat|...
+ApR |SV* |vnewSVpvf |NN const char *const pat|NULLOK va_list *const args
Apd |SV* |newSVrv |NN SV *const rv|NULLOK const char *const classname
-Apda |SV* |newSVsv |NULLOK SV *const old
-Apda |SV* |newSV_type |const svtype type
-Apda |OP* |newUNOP |I32 type|I32 flags|NULLOK OP* first
-Apda |OP* |newUNOP_AUX |I32 type|I32 flags|NULLOK OP* first \
+ApdR |SV* |newSVsv |NULLOK SV *const old
+ApdR |SV* |newSV_type |const svtype type
+ApdR |OP* |newUNOP |I32 type|I32 flags|NULLOK OP* first
+ApdR |OP* |newUNOP_AUX |I32 type|I32 flags|NULLOK OP* first \
|NULLOK UNOP_AUX_item *aux
-Apda |OP* |newWHENOP |NULLOK OP* cond|NN OP* block
-Apda |OP* |newWHILEOP |I32 flags|I32 debuggable|NULLOK LOOP* loop \
+ApdR |OP* |newWHENOP |NULLOK OP* cond|NN OP* block
+ApdR |OP* |newWHILEOP |I32 flags|I32 debuggable|NULLOK LOOP* loop \
|NULLOK OP* expr|NULLOK OP* block|NULLOK OP* cont \
|I32 has_my
-Apda |OP* |newMETHOP |I32 type|I32 flags|NN OP* dynamic_meth
-Apda |OP* |newMETHOP_named|I32 type|I32 flags|NN SV* const_meth
+ApdR |OP* |newMETHOP |I32 type|I32 flags|NN OP* dynamic_meth
+ApdR |OP* |newMETHOP_named|I32 type|I32 flags|NN SV* const_meth
Apd |CV* |rv2cv_op_cv |NN OP *cvop|U32 flags
Apd |OP* |ck_entersub_args_list|NN OP *entersubop
Apd |OP* |ck_entersub_args_proto|NN OP *entersubop|NN GV *namegv|NN SV *protosv
|NN Perl_call_checker ckfun \
|NN SV *ckobj|U32 flags
Apd |void |wrap_op_checker|Optype opcode|NN Perl_check_t new_checker|NN Perl_check_t *old_checker_p
-Apa |PERL_SI*|new_stackinfo|I32 stitems|I32 cxitems
+ApR |PERL_SI*|new_stackinfo|I32 stitems|I32 cxitems
Ap |char* |scan_vstring |NN const char *s|NN const char *const e \
|NN SV *sv
Apd |const char* |scan_version |NN const char *s|NN SV *rv|bool qv
Apd |int |vcmp |NN SV *lhv|NN SV *rhv
: Used in pp_hot.c and pp_sys.c
p |PerlIO*|nextargv |NN GV* gv|bool nomagicopen
-AnpP |char* |ninstr |NN const char* big|NN const char* bigend \
+#ifdef HAS_MEMMEM
+AdnopP |char* |ninstr |NN const char* big|NN const char* bigend \
+ |NN const char* little|NN const char* lend
+#else
+AdnpP |char* |ninstr |NN const char* big|NN const char* bigend \
|NN const char* little|NN const char* lend
+#endif
Apd |void |op_free |NULLOK OP* arg
Mp |OP* |op_unscope |NULLOK OP* o
#ifdef PERL_CORE
#endif
Ap |void |pop_scope
Ap |void |push_scope
-Amb |OP* |ref |NULLOK OP* o|I32 type
+Apmb |OP* |ref |NULLOK OP* o|I32 type
#if defined(PERL_IN_OP_C)
s |OP* |refkids |NULLOK OP* o|I32 type
#endif
Ap |void |regdump |NN const regexp* r
-Ap |SV* |regclass_swash |NULLOK const regexp *prog \
+ApM |SV* |regclass_swash |NULLOK const regexp *prog \
|NN const struct regnode *node|bool doinit \
|NULLOK SV **listsvp|NULLOK SV **altsvp
#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_PERL_C) || defined(PERL_IN_UTF8_C)
|const U32 flags \
|NULLOK re_scream_pos_data *data
Ap |SV* |re_intuit_string|NN REGEXP *const r
-#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_TOKE_C)
-EiPRn |I32 |regcurly |NN const char *s
-#endif
Ap |I32 |regexec_flags |NN REGEXP *const rx|NN char *stringarg \
|NN char *strend|NN char *strbeg \
|SSize_t minend|NN SV *sv \
EXp |SV*|reg_qr_package|NN REGEXP * const rx
Anp |void |repeatcpy |NN char* to|NN const char* from|I32 len|IV count
-AnpP |char* |rninstr |NN const char* big|NN const char* bigend \
+AdnpP |char* |rninstr |NN const char* big|NN const char* bigend \
|NN const char* little|NN const char* lend
Ap |Sighandler_t|rsignal |int i|Sighandler_t t
: Used in pp_sys.c
#if defined(PERL_IN_SV_C)
s |bool |glob_2number |NN GV* const gv
#endif
-Amb |IV |sv_2iv |NN SV *sv
+Apmb |IV |sv_2iv |NN SV *sv
Apd |IV |sv_2iv_flags |NN SV *const sv|const I32 flags
Apd |SV* |sv_2mortal |NULLOK SV *const sv
Apd |NV |sv_2nv_flags |NN SV *const sv|const I32 flags
: Used in pp.c, pp_hot.c, sv.c
pMd |SV* |sv_2num |NN SV *const sv
-Amb |char* |sv_2pv |NN SV *sv|NULLOK STRLEN *lp
+Apmb |char* |sv_2pv |NN SV *sv|NULLOK STRLEN *lp
Apd |char* |sv_2pv_flags |NN SV *const sv|NULLOK STRLEN *const lp|const I32 flags
Apd |char* |sv_2pvutf8 |NN SV *sv|NULLOK STRLEN *const lp
Apd |char* |sv_2pvbyte |NN SV *sv|NULLOK STRLEN *const lp
Ap |char* |sv_pvn_nomg |NN SV* sv|NULLOK STRLEN* lp
-Amb |UV |sv_2uv |NN SV *sv
+Apmb |UV |sv_2uv |NN SV *sv
Apd |UV |sv_2uv_flags |NN SV *const sv|const I32 flags
Apd |IV |sv_iv |NN SV* sv
Apd |UV |sv_uv |NN SV* sv
Apd |void |sv_vcatpvf |NN SV *const sv|NN const char *const pat \
|NULLOK va_list *const args
Apd |void |sv_catpv |NN SV *const sv|NULLOK const char* ptr
-Amdb |void |sv_catpvn |NN SV *dsv|NN const char *sstr|STRLEN len
-Amdb |void |sv_catsv |NN SV *dstr|NULLOK SV *sstr
+Apmdb |void |sv_catpvn |NN SV *dsv|NN const char *sstr|STRLEN len
+Apmdb |void |sv_catsv |NN SV *dstr|NULLOK SV *sstr
Apd |void |sv_chop |NN SV *const sv|NULLOK const char *const ptr
: Used only in perl.c
pd |I32 |sv_clean_all
Apd |char* |sv_grow |NN SV *const sv|STRLEN newlen
Apd |void |sv_inc |NULLOK SV *const sv
Apd |void |sv_inc_nomg |NULLOK SV *const sv
-Amdb |void |sv_insert |NN SV *const bigstr|const STRLEN offset \
+Apmdb |void |sv_insert |NN SV *const bigstr|const STRLEN offset \
|const STRLEN len|NN const char *const little \
|const STRLEN littlelen
Apd |void |sv_insert_flags|NN SV *const bigstr|const STRLEN offset|const STRLEN len \
#endif
: exported for re.pm
EXp |MAGIC *|sv_magicext_mglob|NN SV *sv
-ApdbamR |SV* |sv_mortalcopy |NULLOK SV *const oldsv
-XpaR |SV* |sv_mortalcopy_flags|NULLOK SV *const oldsv|U32 flags
+ApdbmR |SV* |sv_mortalcopy |NULLOK SV *const oldsv
+XpR |SV* |sv_mortalcopy_flags|NULLOK SV *const oldsv|U32 flags
ApdR |SV* |sv_newmortal
Apd |SV* |sv_newref |NULLOK SV *const sv
Ap |char* |sv_peek |NULLOK SV* sv
Apd |void |sv_pos_b2u |NULLOK SV *const sv|NN I32 *const offsetp
Apd |STRLEN |sv_pos_b2u_flags|NN SV *const sv|STRLEN const offset \
|U32 flags
-Amdb |char* |sv_pvn_force |NN SV* sv|NULLOK STRLEN* lp
+Apmdb |char* |sv_pvn_force |NN SV* sv|NULLOK STRLEN* lp
Apd |char* |sv_pvutf8n_force|NN SV *const sv|NULLOK STRLEN *const lp
Apd |char* |sv_pvbyten_force|NN SV *const sv|NULLOK STRLEN *const lp
Apd |char* |sv_recode_to_utf8 |NN SV* sv|NN SV *encoding
Apd |void |sv_setpv |NN SV *const sv|NULLOK const char *const ptr
Apd |void |sv_setpvn |NN SV *const sv|NULLOK const char *const ptr|const STRLEN len
Xp |void |sv_sethek |NN SV *const sv|NULLOK const HEK *const hek
-Amdb |void |sv_setsv |NN SV *dstr|NULLOK SV *sstr
-Amdb |void |sv_taint |NN SV* sv
+Apmdb |void |sv_setsv |NN SV *dstr|NULLOK SV *sstr
+Apmdb |void |sv_taint |NN SV* sv
ApdR |bool |sv_tainted |NN SV *const sv
Apd |int |sv_unmagic |NN SV *const sv|const int type
Apd |int |sv_unmagicext |NN SV *const sv|const int type|NULLOK MGVTBL *vtbl
|NULLOK va_list *const args|NULLOK SV **const svargs \
|const I32 svmax|NULLOK bool *const maybe_tainted
ApR |NV |str_to_version |NN SV *sv
-ApR |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
+ApRM |SV* |swash_init |NN const char* pkg|NN const char* name|NN SV* listsv|I32 minbits|I32 none
+ApM |UV |swash_fetch |NN SV *swash|NN const U8 *ptr|bool do_utf8
#ifdef PERL_IN_REGCOMP_C
EiMR |SV* |add_cp_to_invlist |NULLOK SV* invlist|const UV cp
-EsM |void |_append_range_to_invlist |NN SV* const invlist|const UV start|const UV end
-EiMRn |UV* |_invlist_array_init |NN SV* const invlist|const bool will_have_0
-EsM |void |invlist_extend |NN SV* const invlist|const UV len
-EiMRn |UV |invlist_max |NN SV* const invlist
EiM |void |invlist_set_len|NN SV* const invlist|const UV len|const bool offset
+EiMRn |bool |invlist_is_iterating|NN SV* const invlist
#ifndef PERL_EXT_RE_BUILD
+EiMRn |UV* |_invlist_array_init |NN SV* const invlist|const bool will_have_0
+EiMRn |UV |invlist_max |NN SV* const invlist
+EsM |void |_append_range_to_invlist |NN SV* const invlist|const UV start|const UV end
+EsM |void |invlist_extend |NN SV* const invlist|const UV len
+EsM |void |invlist_replace_list_destroys_src|NN SV *dest|NN SV *src
EiMRn |IV* |get_invlist_previous_index_addr|NN SV* invlist
-EiMRn |bool |invlist_is_iterating|NN SV* const invlist
EiMn |void |invlist_set_previous_index|NN SV* const invlist|const IV index
EiMRn |IV |invlist_previous_index|NN SV* const invlist
-EiMn |void |invlist_trim |NN SV* const invlist
+EiMn |void |invlist_trim |NN SV* invlist
+EiM |void |invlist_clear |NN SV* invlist
#endif
EiMR |SV* |invlist_clone |NN SV* const invlist
EiMRn |STRLEN*|get_invlist_iter_addr |NN SV* invlist
EiMRn |UV |invlist_highest|NN SV* const invlist
EMRs |SV* |_make_exactf_invlist |NN RExC_state_t *pRExC_state \
|NN regnode *node
+EsMR |SV* |invlist_contents|NN SV* const invlist \
+ |const bool traditional_style
#endif
#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_UTF8_C)
EXmM |void |_invlist_intersection |NN SV* const a|NN SV* const b|NN SV** i
EXpM |void |_invlist_invert|NN SV* const invlist
EXMpR |SV* |_new_invlist |IV initial_size
EXMpR |SV* |_swash_to_invlist |NN SV* const swash
-EXMpR |SV* |_add_range_to_invlist |NULLOK SV* invlist|const UV start|const UV end
+EXMpR |SV* |_add_range_to_invlist |NULLOK SV* invlist|UV start|UV end
EXMpR |SV* |_setup_canned_invlist|const STRLEN size|const UV element0|NN UV** other_elements_ptr
EXMpn |void |_invlist_populate_swatch |NN SV* const invlist|const UV start|const UV end|NN U8* swatch
#endif
#endif
#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_REGEXEC_C) || defined(PERL_IN_UTF8_C)
EiMRn |UV* |invlist_array |NN SV* const invlist
-EXMpR |SV* |_invlist_contents|NN SV* const invlist
EiMRn |bool* |get_invlist_offset_addr|NN SV* invlist
EiMRn |UV |_invlist_len |NN SV* const invlist
EMiRn |bool |_invlist_contains_cp|NN SV* const invlist|const UV cp
-EXpMRn |IV |_invlist_search |NN SV* const invlist|const UV cp
+EXpMRn |SSize_t|_invlist_search |NN SV* const invlist|const UV cp
EXMpR |SV* |_get_swash_invlist|NN SV* const swash
EXMpR |HV* |_swash_inversion_hash |NN SV* const swash
#endif
|bool doinit \
|NULLOK SV **listsvp \
|NULLOK SV **lonly_utf8_locale \
- |NULLOK SV *exclude_list
+ |NULLOK SV **output_invlist
EXp |void|_load_PL_utf8_foldclosures|
#endif
#if defined(PERL_IN_REGCOMP_C) || defined (PERL_IN_DUMP_C)
|NN const char *normal \
|NULLOK const char *special
#endif
-Abmd |UV |to_utf8_lower |NN const U8 *p|NN U8* ustrp|NULLOK STRLEN *lenp
+Apbmd |UV |to_utf8_lower |NN const U8 *p|NN U8* ustrp|NULLOK STRLEN *lenp
AMp |UV |_to_utf8_lower_flags |NN const U8 *p|NN U8* ustrp \
|NULLOK STRLEN *lenp|bool flags
-Abmd |UV |to_utf8_upper |NN const U8 *p|NN U8* ustrp|NULLOK STRLEN *lenp
+Apbmd |UV |to_utf8_upper |NN const U8 *p|NN U8* ustrp|NULLOK STRLEN *lenp
AMp |UV |_to_utf8_upper_flags |NN const U8 *p|NN U8* ustrp \
|NULLOK STRLEN *lenp|bool flags
-Abmd |UV |to_utf8_title |NN const U8 *p|NN U8* ustrp|NULLOK STRLEN *lenp
+Apbmd |UV |to_utf8_title |NN const U8 *p|NN U8* ustrp|NULLOK STRLEN *lenp
AMp |UV |_to_utf8_title_flags |NN const U8 *p|NN U8* ustrp \
|NULLOK STRLEN *lenp|bool flags
-Abmd |UV |to_utf8_fold |NN const U8 *p|NN U8* ustrp|NULLOK STRLEN *lenp
+Apbmd |UV |to_utf8_fold |NN const U8 *p|NN U8* ustrp|NULLOK STRLEN *lenp
AMp |UV |_to_utf8_fold_flags|NN const U8 *p|NN U8* ustrp \
|NULLOK STRLEN *lenp|U8 flags
#if defined(PERL_IN_MG_C) || defined(PERL_IN_PP_C)
Ap |U8* |utf16_to_utf8_reversed|NN U8* p|NN U8 *d|I32 bytelen|NN I32 *newlen
AdpPR |STRLEN |utf8_length |NN const U8* s|NN const U8 *e
ApdPR |IV |utf8_distance |NN const U8 *a|NN const U8 *b
-ApdPRn |U8* |utf8_hop |NN const U8 *s|I32 off
+ApdPRn |U8* |utf8_hop |NN const U8 *s|SSize_t off
ApMd |U8* |utf8_to_bytes |NN U8 *s|NN STRLEN *len
Apd |int |bytes_cmp_utf8 |NN const U8 *b|STRLEN blen|NN const U8 *u \
|STRLEN ulen
#endif
Anpa |Malloc_t|safesysmalloc |MEM_SIZE nbytes
Anpa |Malloc_t|safesyscalloc |MEM_SIZE elements|MEM_SIZE size
-Anpa |Malloc_t|safesysrealloc|Malloc_t where|MEM_SIZE nbytes
+AnpR |Malloc_t|safesysrealloc|Malloc_t where|MEM_SIZE nbytes
Anp |Free_t |safesysfree |Malloc_t where
Asrnx |void |croak_memory_wrap
#if defined(PERL_GLOBAL_STRUCT)
ApdRmb |char* |sv_2pv_nolen |NN SV* sv
ApdRmb |char* |sv_2pvutf8_nolen|NN SV* sv
ApdRmb |char* |sv_2pvbyte_nolen|NN SV* sv
-AmdbR |char* |sv_pv |NN SV *sv
-AmdbR |char* |sv_pvutf8 |NN SV *sv
-AmdbR |char* |sv_pvbyte |NN SV *sv
-Amdb |STRLEN |sv_utf8_upgrade|NN SV *sv
+ApmdbR |char* |sv_pv |NN SV *sv
+ApmdbR |char* |sv_pvutf8 |NN SV *sv
+ApmdbR |char* |sv_pvbyte |NN SV *sv
+Apmdb |STRLEN |sv_utf8_upgrade|NN SV *sv
Amd |STRLEN |sv_utf8_upgrade_nomg|NN SV *sv
ApdM |bool |sv_utf8_downgrade|NN SV *const sv|const bool fail_ok
Apd |void |sv_utf8_encode |NN SV *const sv
#if defined(USE_ITHREADS)
ApR |PERL_CONTEXT*|cx_dup |NULLOK PERL_CONTEXT* cx|I32 ix|I32 max|NN CLONE_PARAMS* param
ApR |PERL_SI*|si_dup |NULLOK PERL_SI* si|NN CLONE_PARAMS* param
-Apa |ANY* |ss_dup |NN PerlInterpreter* proto_perl|NN CLONE_PARAMS* param
+ApR |ANY* |ss_dup |NN PerlInterpreter* proto_perl|NN CLONE_PARAMS* param
ApR |void* |any_dup |NULLOK void* v|NN const PerlInterpreter* proto_perl
ApR |HE* |he_dup |NULLOK const HE* e|bool shared|NN CLONE_PARAMS* param
ApR |HEK* |hek_dup |NULLOK HEK* e|NN CLONE_PARAMS* param
Ap |void |rvpv_dup |NN SV *const dstr|NN const SV *const sstr|NN CLONE_PARAMS *const param
Ap |yy_parser*|parser_dup |NULLOK const yy_parser *const proto|NN CLONE_PARAMS *const param
#endif
-Apa |PTR_TBL_t*|ptr_table_new
+ApR |PTR_TBL_t*|ptr_table_new
ApR |void* |ptr_table_fetch|NN PTR_TBL_t *const tbl|NULLOK const void *const sv
Ap |void |ptr_table_store|NN PTR_TBL_t *const tbl|NULLOK const void *const oldsv \
|NN void *const newsv
Adp |void |sv_nosharing |NULLOK SV *sv
Adpbm |void |sv_nolocking |NULLOK SV *sv
Adp |bool |sv_destroyable |NULLOK SV *sv
-#ifdef NO_MATHOMS
-Adpbm |void |sv_nounlocking |NULLOK SV *sv
-#else
Adpb |void |sv_nounlocking |NULLOK SV *sv
-#endif
Adp |int |nothreadhook
p |void |init_constants
s |void|maybe_multimagic_gv|NN GV *gv|NN const char *name|const svtype sv_type
s |bool|gv_is_in_main|NN const char *name|STRLEN len \
|const U32 is_utf8
-s |HV* |require_tie_mod|NN GV *gv|NN const char *varpv|NN SV* namesv \
- |NN const char *methpv|const U32 flags
+s |void |require_tie_mod|NN GV *gv|NN const char *varpv|NN SV* namesv \
+ |const U32 flags
#endif
#if defined(PERL_IN_HV_C) || defined(PERL_IN_SV_C)
s |void |hsplit |NN HV *hv|STRLEN const oldsize|STRLEN newsize
s |void |hfreeentries |NN HV *hv
s |SV* |hv_free_ent_ret|NN HV *hv|NN HE *entry
-sa |HE* |new_he
+sR |HE* |new_he
sanR |HEK* |save_hek_flags |NN const char *str|I32 len|U32 hash|int flags
sn |void |hv_magic_check |NN HV *hv|NN bool *needs_copy|NN bool *needs_store
s |void |unshare_hek_or_pvn|NULLOK const HEK* hek|NULLOK const char* str|I32 len|U32 hash
#if defined(PERL_IN_MG_C)
s |void |save_magic_flags|I32 mgs_ix|NN SV *sv|U32 flags
--s |int |magic_methpack |NN SV *sv|NN const MAGIC *mg|NN SV *meth
+s |int |magic_methpack |NN SV *sv|NN const MAGIC *mg|NN SV *meth
s |SV* |magic_methcall1|NN SV *sv|NN const MAGIC *mg \
|NN SV *meth|U32 flags \
|int n|NULLOK SV *val
s |void |clear_special_blocks |NN const char *const fullname\
|NN GV *const gv|NN CV *const cv
#endif
-Xpa |void* |Slab_Alloc |size_t sz
+XpR |void* |Slab_Alloc |size_t sz
Xp |void |Slab_Free |NN void *op
#if defined(PERL_DEBUG_READONLY_OPS)
# if defined(PERL_CORE)
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_compile |int gimme \
+s |bool |doeval_compile |U8 gimme \
|NULLOK CV* outside|U32 seq|NULLOK HV* hh
sR |PerlIO *|check_type_and_open|NN SV *name
#ifndef PERL_DISABLE_PMC
# if !defined(HAS_MKDIR) || !defined(HAS_RMDIR)
sR |int |dooneliner |NN const char *cmd|NN const char *filename
# endif
-s |SV * |space_join_names_mortal|NN char *const *array
+s |SV * |space_join_names_mortal|NULLOK char *const *array
#endif
p |OP * |tied_method|NN SV *methname|NN SV **sp \
|NN SV *const sv|NN const MAGIC *const mg \
#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_REGEXEC_C)
Ep |void |regprop |NULLOK const regexp *prog|NN SV* sv|NN const regnode* o|NULLOK const regmatch_info *reginfo \
|NULLOK const RExC_state_t *pRExC_state
+Ep |int |re_printf |NN const char *fmt|...
#endif
#if defined(PERL_IN_REGCOMP_C)
Es |regnode*|reg |NN RExC_state_t *pRExC_state \
|NULLOK SV* const only_utf8_locale_list \
|NULLOK SV* const swash \
|const bool has_user_defined_property
+Es |void |output_or_return_posix_warnings \
+ |NN RExC_state_t *pRExC_state \
+ |NN AV* posix_warnings \
+ |NULLOK AV** return_posix_warnings
Es |AV* |add_multi_match|NULLOK AV* multi_char_matches \
|NN SV* multi_string \
|const STRLEN cp_count
|bool allow_multi_fold \
|const bool silence_non_portable \
|const bool strict \
- |bool optimizable \
- |NULLOK SV** ret_invlist
+ |bool optimizable \
+ |NULLOK SV** ret_invlist \
+ |NULLOK AV** return_posix_warnings
Es |void|add_above_Latin1_folds|NN RExC_state_t *pRExC_state|const U8 cp \
|NN SV** invlist
-Esn |bool|could_it_be_a_POSIX_class|NN RExC_state_t *pRExC_state
+Ei |regnode*|handle_named_backref|NN RExC_state_t *pRExC_state \
+ |NN I32 *flagp \
+ |NN char * parse_start \
+ |char ch
EsnP |unsigned int|regex_set_precedence|const U8 my_operator
Es |regnode*|handle_regex_sets|NN RExC_state_t *pRExC_state \
|NULLOK SV ** return_invlist \
|NN char * const oregcomp_parse
Es |void|parse_lparen_question_flags|NN RExC_state_t *pRExC_state
Es |regnode*|reg_node |NN RExC_state_t *pRExC_state|U8 op
-Es |UV |reg_recode |const U8 value|NN SV **encp
Es |regnode*|regpiece |NN RExC_state_t *pRExC_state \
|NN I32 *flagp|U32 depth
Es |bool |grok_bslash_N |NN RExC_state_t *pRExC_state \
|NULLOK UV *code_point_p \
|NULLOK int* cp_count \
|NN I32 *flagp \
+ |const bool strict \
|const U32 depth
Es |void |reginsert |NN RExC_state_t *pRExC_state \
|U8 op|NN regnode *opnd|U32 depth
EsRn |U32 |add_data |NN RExC_state_t* const pRExC_state \
|NN const char* const s|const U32 n
rs |void |re_croak2 |bool utf8|NN const char* pat1|NN const char* pat2|...
-Ei |I32 |regpposixcc |NN RExC_state_t *pRExC_state \
- |I32 value|const bool strict
+Es |int |handle_possible_posix \
+ |NN RExC_state_t *pRExC_state \
+ |NN const char* const s \
+ |NULLOK char ** updated_parse_ptr \
+ |NULLOK AV** posix_warnings \
+ |const bool check_only
Es |I32 |make_trie |NN RExC_state_t *pRExC_state \
|NN regnode *startbranch|NN regnode *first \
|NN regnode *last|NN regnode *tail \
Es |regnode *|construct_ahocorasick_from_trie|NN RExC_state_t *pRExC_state \
|NN regnode *source|U32 depth
EnPs |const char *|cntrl_to_mnemonic|const U8 c
+EnPs |int |edit_distance |NN const UV *src \
+ |NN const UV *tgt \
+ |const STRLEN x \
+ |const STRLEN y \
+ |const SSize_t maxDistance
# ifdef DEBUGGING
+Ep |int |re_indentf |NN const char *fmt|U32 depth|...
Es |void |regdump_intflags|NULLOK const char *lead| const U32 flags
Es |void |regdump_extflags|NULLOK const char *lead| const U32 flags
Es |const regnode*|dumpuntil|NN const regexp *r|NN const regnode *start \
|NULLOK const regnode *plast \
|NN SV* sv|I32 indent|U32 depth
Es |void |put_code_point |NN SV* sv|UV c
-Es |bool |put_charclass_bitmap_innards|NN SV* sv \
- |NN char* bitmap \
- |NULLOK SV** bitmap_invlist
+Es |bool |put_charclass_bitmap_innards|NN SV* sv \
+ |NN char* bitmap \
+ |NULLOK SV* nonbitmap_invlist \
+ |NULLOK SV* only_utf8_locale_invlist\
+ |NULLOK const regnode * const node \
+ |const bool force_as_is_display
+Es |SV* |put_charclass_bitmap_innards_common \
+ |NN SV* invlist \
+ |NULLOK SV* posixes \
+ |NULLOK SV* only_utf8 \
+ |NULLOK SV* not_utf8 \
+ |NULLOK SV* only_utf8_locale \
+ |const bool invert
+Es |void |put_charclass_bitmap_innards_invlist \
+ |NN SV *sv \
+ |NN SV* invlist
Es |void |put_range |NN SV* sv|UV start|const UV end \
|const bool allow_literals
Es |void |dump_trie |NN const struct _reg_trie_data *trie\
ERsn |U8* |reghop3 |NN U8 *s|SSize_t off|NN const U8 *lim
ERsn |U8* |reghop4 |NN U8 *s|SSize_t off|NN const U8 *llim \
|NN const U8 *rlim
-ERsn |U8* |reghopmaybe3 |NN U8 *s|SSize_t off|NN const U8 *lim
+ERsn |U8* |reghopmaybe3 |NN U8 *s|SSize_t off|NN const U8 * const lim
ERs |char* |find_byclass |NN regexp * prog|NN const regnode *c \
|NN char *s|NN const char *strend \
|NULLOK regmatch_info *reginfo
Es |bool |to_byte_substr |NN regexp * prog
ERsn |I32 |reg_check_named_buff_matched |NN const regexp *rex \
|NN const regnode *scan
-EinR |bool |isGCB |const GCB_enum before|const GCB_enum after
+EsR |bool |isGCB |const GCB_enum before \
+ |const GCB_enum after \
+ |NN const U8 * const strbeg \
+ |NN const U8 * const curpos \
+ |const bool utf8_target
+EsR |GCB_enum|backup_one_GCB|NN const U8 * const strbeg \
+ |NN U8 ** curpos \
+ |const bool utf8_target
EsR |bool |isLB |LB_enum before \
|LB_enum after \
|NN const U8 * const strbeg \
|const bool utf8_target
# ifdef DEBUGGING
Es |void |dump_exec_pos |NN const char *locinput|NN const regnode *scan|NN const char *loc_regeol\
- |NN const char *loc_bostr|NN const char *loc_reg_starttry|const bool do_utf8
+ |NN const char *loc_bostr|NN const char *loc_reg_starttry|const bool do_utf8|const U32 depth
Es |void |debug_start_match|NN const REGEXP *prog|const bool do_utf8\
|NN const char *start|NN const char *end\
|NN const char *blurb
+
+Ep |int |re_exec_indentf |NN const char *fmt|U32 depth|...
# endif
#endif
#if defined(PERL_IN_SV_C) || defined (PERL_IN_OP_C)
pR |SV * |varname |NULLOK const GV *const gv|const char gvtype \
|PADOFFSET targ|NULLOK const SV *const keyname \
- |I32 aindex|int subscript_type
+ |SSize_t aindex|int subscript_type
#endif
pX |void |sv_del_backref |NN SV *const tsv|NN SV *const sv
s |I32 |lop |I32 f|int x|NN char *s
rs |void |missingterm |NULLOK char *s
s |void |no_op |NN const char *const what|NULLOK char *s
-s |int |pending_ident
+s |int |pending_ident |bool is_sig
sR |I32 |sublex_done
sR |I32 |sublex_push
sR |I32 |sublex_start
s |int |ao |int toketype
s |void|parse_ident|NN char **s|NN char **d \
|NN char * const e|int allow_package \
- |bool is_utf8
+ |bool is_utf8|bool check_dollar
# if defined(PERL_CR_FILTER)
s |I32 |cr_textfilter |int idx|NULLOK SV *sv|int maxlen
s |void |strip_return |NN SV *sv
#if defined(USE_LOCALE) && defined(PERL_IN_LOCALE_C)
s |char* |stdize_locale |NN char* locs
+# ifdef DEBUGGING
+s |void |print_collxfrm_input_and_return \
+ |NN const char * const s \
+ |NN const char * const e \
+ |NULLOK const STRLEN * const xlen \
+ |const bool is_utf8
+# endif
#endif
#if defined(USE_LOCALE) \
#endif
#endif
+#if defined(PERL_MEM_LOG)
+pn |Malloc_t |mem_log_alloc |const UV nconst|UV typesize|NN const char *type_name|Malloc_t newalloc|NN const char *filename|const int linenumber|NN const char *funcname
+pn |Malloc_t |mem_log_realloc |const UV n|const UV typesize|NN const char *type_name|Malloc_t oldalloc|Malloc_t newalloc|NN const char *filename|const int linenumber|NN const char *funcname
+pn |Malloc_t |mem_log_free |Malloc_t oldalloc|NN const char *filename|const int linenumber|NN const char *funcname
+#endif
+
#if defined(PERL_IN_NUMERIC_C)
#ifndef USE_QUADMATH
sn |NV|mulexp10 |NV value|I32 exponent
#endif
: pad API
-Apda |PADLIST*|pad_new |int flags
+ApdR |PADLIST*|pad_new |int flags
#ifdef DEBUGGING
pnX |void|set_padlist| NN CV * cv | NULLOK PADLIST * padlist
#endif
#endif
ApdR |SV* |hv_scalar |NN HV *hv
+ApdRM |SV* |hv_bucket_ratio|NN HV *hv
ApoR |I32* |hv_riter_p |NN HV *hv
ApoR |HE** |hv_eiter_p |NN HV *hv
Apo |void |hv_riter_set |NN HV *hv|I32 riter
#if defined(PERL_IN_SV_C)
s |SV * |find_hash_subscript|NULLOK const HV *const hv \
|NN const SV *const val
-s |I32 |find_array_subscript|NULLOK const AV *const av \
+s |SSize_t|find_array_subscript|NULLOK const AV *const av \
|NN const SV *const val
sMd |SV* |find_uninit_var|NULLOK const OP *const obase \
|NULLOK const SV *const uninit_sv|bool match \
Apo |bool |ckwarn |U32 w
Apo |bool |ckwarn_d |U32 w
: FIXME - exported for ByteLoader - public or private?
-XEopMa |STRLEN *|new_warnings_bitfield|NULLOK STRLEN *buffer \
+XEopMR |STRLEN *|new_warnings_bitfield|NULLOK STRLEN *buffer \
|NN const char *const bits|STRLEN size
#ifndef SPRINTF_RETURNS_STRLEN
# if defined(PERL_IN_SV_C)
s |void |unreferenced_to_tmp_stack|NN AV *const unreferenced
# endif
-Aanop |CLONE_PARAMS *|clone_params_new|NN PerlInterpreter *const from \
+ARnop |CLONE_PARAMS *|clone_params_new|NN PerlInterpreter *const from \
|NN PerlInterpreter *const to
Anop |void |clone_params_del|NN CLONE_PARAMS *param
#endif
|NULLOK STRLEN *lenp
#endif
-EMpPX |SV* |_get_encoding
Ap |void |clear_defarray |NN AV* av|bool abandon
ApM |void |leave_adjust_stacks|NN SV **from_sp|NN SV **to_sp \
- |I32 gimme|int filter
+ |U8 gimme|int filter
#ifndef PERL_NO_INLINE_FUNCTIONS
AiM |PERL_CONTEXT * |cx_pushblock|U8 type|U8 gimme|NN SV** sp|I32 saveix
AiM |void |cx_popblock|NN PERL_CONTEXT *cx
AiM |void |cx_topblock|NN PERL_CONTEXT *cx
-AiM |void |cx_pushsub |NN PERL_CONTEXT *cx|NN CV *cv|NULLOK OP *retop \
- |bool hasargs
+AiM |void |cx_pushsub |NN PERL_CONTEXT *cx|NN CV *cv \
+ |NULLOK OP *retop|bool hasargs
AiM |void |cx_popsub_common|NN PERL_CONTEXT *cx
AiM |void |cx_popsub_args |NN PERL_CONTEXT *cx
AiM |void |cx_popsub |NN PERL_CONTEXT *cx
+AiM |void |cx_pushformat |NN PERL_CONTEXT *cx|NN CV *cv \
+ |NULLOK OP *retop|NULLOK GV *gv
+AiM |void |cx_popformat |NN PERL_CONTEXT *cx
+AiM |void |cx_pusheval |NN PERL_CONTEXT *cx \
+ |NULLOK OP *retop|NULLOK SV *namesv
+AiM |void |cx_popeval |NN PERL_CONTEXT *cx
+AiM |void |cx_pushloop_plain|NN PERL_CONTEXT *cx
+AiM |void |cx_pushloop_for |NN PERL_CONTEXT *cx \
+ |NN void *itervarp|NULLOK SV *itersave
+AiM |void |cx_poploop |NN PERL_CONTEXT *cx
+AiM |void |cx_pushwhen |NN PERL_CONTEXT *cx
+AiM |void |cx_popwhen |NN PERL_CONTEXT *cx
+AiM |void |cx_pushgiven |NN PERL_CONTEXT *cx|NULLOK SV *orig_defsv
+AiM |void |cx_popgiven |NN PERL_CONTEXT *cx
+#endif
+
+#ifdef USE_DTRACE
+XEop |void |dtrace_probe_call |NN CV *cv|bool is_call
+XEop |void |dtrace_probe_load |NN const char *name|bool is_loading
+XEop |void |dtrace_probe_op |NN const OP *op
+XEop |void |dtrace_probe_phase|enum perl_phase phase
#endif
: ex: set ts=8 sts=4 sw=4 noet: