is an abnormal case */
)
{
+ PERL_UNUSED_CONTEXT;
PERL_ARGS_ASSERT_REGCURLY;
if (*s++ != '{')
#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
-EiMR |UV* |_invlist_array_init |NN SV* const invlist|const bool will_have_0
-EiMR |UV* |invlist_array |NN SV* const invlist
+EiMRn |UV* |_invlist_array_init |NN SV* const invlist|const bool will_have_0
+EiMRn |UV* |invlist_array |NN SV* const invlist
EsM |void |invlist_extend |NN SV* const invlist|const UV len
-EiMR |UV |invlist_max |NN SV* const invlist
+EiMRn |UV |invlist_max |NN SV* const invlist
EiM |void |invlist_set_len|NN SV* const invlist|const UV len|const bool offset
-EiMR |IV* |get_invlist_previous_index_addr|NN SV* invlist
-EiMR |IV |invlist_previous_index|NN SV* const invlist
-EiM |void |invlist_set_previous_index|NN SV* const invlist|const IV index
-EiM |void |invlist_trim |NN SV* const invlist
+EiMRn |IV* |get_invlist_previous_index_addr|NN SV* invlist
+EiMRn |IV |invlist_previous_index|NN SV* const invlist
+EiMn |void |invlist_set_previous_index|NN SV* const invlist|const IV index
+EiMn |void |invlist_trim |NN SV* const invlist
EiMR |SV* |invlist_clone |NN SV* const invlist
-EiMR |bool |invlist_is_iterating|NN SV* const invlist
-EiMR |STRLEN*|get_invlist_iter_addr |NN SV* invlist
-EiM |void |invlist_iterinit|NN SV* invlist
-EsMR |bool |invlist_iternext|NN SV* invlist|NN UV* start|NN UV* end
-EiM |void |invlist_iterfinish|NN SV* invlist
-EiMR |UV |invlist_highest|NN SV* const invlist
+EiMRn |bool |invlist_is_iterating|NN SV* const invlist
+EiMRn |STRLEN*|get_invlist_iter_addr |NN SV* invlist
+EiMn |void |invlist_iterinit|NN SV* invlist
+EsMRn |bool |invlist_iternext|NN SV* invlist|NN UV* start|NN UV* end
+EiMn |void |invlist_iterfinish|NN SV* invlist
+EiMRn |UV |invlist_highest|NN SV* const invlist
#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
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* |_setup_canned_invlist|const STRLEN size|const UV element0|NN UV** other_elements_ptr
-EXMp |void |_invlist_populate_swatch |NN SV* const invlist|const UV start|const UV end|NN U8* swatch
+EXMpn |void |_invlist_populate_swatch |NN SV* const invlist|const UV start|const UV end|NN U8* swatch
#endif
#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_REGEXEC_C) || defined(PERL_IN_UTF8_C) || defined(PERL_IN_TOKE_C)
EXp |SV* |_core_swash_init|NN const char* pkg|NN const char* name \
#endif
#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_REGEXEC_C) || defined(PERL_IN_UTF8_C)
EXMpR |SV* |_invlist_contents|NN SV* const invlist
-EiMR |bool* |get_invlist_offset_addr|NN SV* invlist
-EiMR |UV |_invlist_len |NN SV* const invlist
-EMiR |bool |_invlist_contains_cp|NN SV* const invlist|const UV cp
-EXpMR |IV |_invlist_search |NN SV* const invlist|const UV cp
+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
EXMpR |SV* |_get_swash_invlist|NN SV* const swash
EXMpR |HV* |_swash_inversion_hash |NN SV* const swash
#endif
|NULLOK SV** ret_invlist
Es |void|add_above_Latin1_folds|NN RExC_state_t *pRExC_state|const U8 cp \
|NN SV** invlist
-Es |bool|could_it_be_a_POSIX_class|NN RExC_state_t *pRExC_state
+Esn |bool|could_it_be_a_POSIX_class|NN RExC_state_t *pRExC_state
Es |regnode*|handle_regex_sets|NN RExC_state_t *pRExC_state \
|NULLOK SV ** return_invlist \
|NN I32 *flagp|U32 depth \
|NN regnode *scan|NN UV *min_subtract \
|NN bool *unfolded_multi_char \
|U32 flags|NULLOK regnode *val|U32 depth
-EsR |char * |regpatws |NN RExC_state_t *pRExC_state \
+EsRn |char * |regpatws |NN RExC_state_t *pRExC_state \
|NN char *p|const bool recognize_comment
Ei |void |alloc_maybe_populate_EXACT|NN RExC_state_t *pRExC_state \
|NN regnode *node|NN I32 *flagp|STRLEN len \
|UV code_point|bool downgradable
-Ei |U8 |compute_EXACTish|NN RExC_state_t *pRExC_state
+Ein |U8 |compute_EXACTish|NN RExC_state_t *pRExC_state
Es |char * |nextchar |NN RExC_state_t *pRExC_state
-Ei |char * |reg_skipcomment|NN RExC_state_t *pRExC_state|NN char * p
+Ein |char * |reg_skipcomment|NN RExC_state_t *pRExC_state|NN char * p
Es |void |scan_commit |NN const RExC_state_t *pRExC_state \
|NN struct scan_data_t *data \
|NN SSize_t *minlenp \
|int is_inf
Es |void |populate_ANYOF_from_invlist|NN regnode *node|NN SV** invlist_ptr
Es |void |ssc_anything |NN regnode_ssc *ssc
-EsR |int |ssc_is_anything|NN const regnode_ssc *ssc
+EsRn |int |ssc_is_anything|NN const regnode_ssc *ssc
Es |void |ssc_init |NN const RExC_state_t *pRExC_state \
|NN regnode_ssc *ssc
-EsR |int |ssc_is_cp_posixl_init|NN const RExC_state_t *pRExC_state \
+EsRn |int |ssc_is_cp_posixl_init|NN const RExC_state_t *pRExC_state \
|NN const regnode_ssc *ssc
Es |void |ssc_and |NN const RExC_state_t *pRExC_state \
|NN regnode_ssc *ssc \
|UV const start|UV const end
Ei |void |ssc_cp_and |NN regnode_ssc *ssc \
|UV const cp
-Ei |void |ssc_clear_locale|NN regnode_ssc *ssc
+Ein |void |ssc_clear_locale|NN regnode_ssc *ssc
Es |void |ssc_finalize |NN RExC_state_t *pRExC_state \
|NN regnode_ssc *ssc
Es |SSize_t|study_chunk |NN RExC_state_t *pRExC_state \
|NULLOK regmatch_info *reginfo
Es |void |to_utf8_substr |NN regexp * prog
Es |bool |to_byte_substr |NN regexp * prog
-ERs |I32 |reg_check_named_buff_matched |NN const regexp *rex \
+ERsn |I32 |reg_check_named_buff_matched |NN const regexp *rex \
|NN const regnode *scan
# ifdef DEBUGGING
Es |void |dump_exec_pos |NN const char *locinput|NN const regnode *scan|NN const char *loc_regeol\
# endif
# if defined(PERL_IN_REGCOMP_C)
#define _append_range_to_invlist(a,b,c) S__append_range_to_invlist(aTHX_ a,b,c)
-#define _invlist_array_init(a,b) S__invlist_array_init(aTHX_ a,b)
+#define _invlist_array_init S__invlist_array_init
#define add_above_Latin1_folds(a,b,c) S_add_above_Latin1_folds(aTHX_ a,b,c)
#define add_cp_to_invlist(a,b) S_add_cp_to_invlist(aTHX_ a,b)
#define add_data S_add_data
#define alloc_maybe_populate_EXACT(a,b,c,d,e,f) S_alloc_maybe_populate_EXACT(aTHX_ a,b,c,d,e,f)
-#define compute_EXACTish(a) S_compute_EXACTish(aTHX_ a)
+#define compute_EXACTish S_compute_EXACTish
#define construct_ahocorasick_from_trie(a,b,c) S_construct_ahocorasick_from_trie(aTHX_ a,b,c)
-#define could_it_be_a_POSIX_class(a) S_could_it_be_a_POSIX_class(aTHX_ a)
+#define could_it_be_a_POSIX_class S_could_it_be_a_POSIX_class
#define get_ANYOF_cp_list_for_ssc(a,b) S_get_ANYOF_cp_list_for_ssc(aTHX_ a,b)
-#define get_invlist_iter_addr(a) S_get_invlist_iter_addr(aTHX_ a)
-#define get_invlist_previous_index_addr(a) S_get_invlist_previous_index_addr(aTHX_ a)
+#define get_invlist_iter_addr S_get_invlist_iter_addr
+#define get_invlist_previous_index_addr S_get_invlist_previous_index_addr
#define grok_bslash_N(a,b,c,d,e,f,g) S_grok_bslash_N(aTHX_ a,b,c,d,e,f,g)
#define handle_regex_sets(a,b,c,d,e) S_handle_regex_sets(aTHX_ a,b,c,d,e)
-#define invlist_array(a) S_invlist_array(aTHX_ a)
+#define invlist_array S_invlist_array
#define invlist_clone(a) S_invlist_clone(aTHX_ a)
#define invlist_extend(a,b) S_invlist_extend(aTHX_ a,b)
-#define invlist_highest(a) S_invlist_highest(aTHX_ a)
-#define invlist_is_iterating(a) S_invlist_is_iterating(aTHX_ a)
-#define invlist_iterfinish(a) S_invlist_iterfinish(aTHX_ a)
-#define invlist_iterinit(a) S_invlist_iterinit(aTHX_ a)
-#define invlist_iternext(a,b,c) S_invlist_iternext(aTHX_ a,b,c)
-#define invlist_max(a) S_invlist_max(aTHX_ a)
-#define invlist_previous_index(a) S_invlist_previous_index(aTHX_ a)
+#define invlist_highest S_invlist_highest
+#define invlist_is_iterating S_invlist_is_iterating
+#define invlist_iterfinish S_invlist_iterfinish
+#define invlist_iterinit S_invlist_iterinit
+#define invlist_iternext S_invlist_iternext
+#define invlist_max S_invlist_max
+#define invlist_previous_index S_invlist_previous_index
#define invlist_set_len(a,b,c) S_invlist_set_len(aTHX_ a,b,c)
-#define invlist_set_previous_index(a,b) S_invlist_set_previous_index(aTHX_ a,b)
-#define invlist_trim(a) S_invlist_trim(aTHX_ a)
+#define invlist_set_previous_index S_invlist_set_previous_index
+#define invlist_trim S_invlist_trim
#define join_exact(a,b,c,d,e,f,g) S_join_exact(aTHX_ a,b,c,d,e,f,g)
#define make_trie(a,b,c,d,e,f,g,h) S_make_trie(aTHX_ a,b,c,d,e,f,g,h)
#define nextchar(a) S_nextchar(aTHX_ a)
#define reg_node(a,b) S_reg_node(aTHX_ a,b)
#define reg_recode(a,b) S_reg_recode(aTHX_ a,b)
#define reg_scan_name(a,b) S_reg_scan_name(aTHX_ a,b)
-#define reg_skipcomment(a,b) S_reg_skipcomment(aTHX_ a,b)
+#define reg_skipcomment S_reg_skipcomment
#define reganode(a,b,c) S_reganode(aTHX_ a,b,c)
#define regatom(a,b,c) S_regatom(aTHX_ a,b,c)
#define regbranch(a,b,c,d) S_regbranch(aTHX_ a,b,c,d)
#define regclass(a,b,c,d,e,f,g) S_regclass(aTHX_ a,b,c,d,e,f,g)
#define reginsert(a,b,c,d) S_reginsert(aTHX_ a,b,c,d)
-#define regpatws(a,b,c) S_regpatws(aTHX_ a,b,c)
+#define regpatws S_regpatws
#define regpiece(a,b,c) S_regpiece(aTHX_ a,b,c)
#define regpposixcc(a,b,c) S_regpposixcc(aTHX_ a,b,c)
#define regtail(a,b,c,d) S_regtail(aTHX_ a,b,c,d)
#define ssc_add_range(a,b,c) S_ssc_add_range(aTHX_ a,b,c)
#define ssc_and(a,b,c) S_ssc_and(aTHX_ a,b,c)
#define ssc_anything(a) S_ssc_anything(aTHX_ a)
-#define ssc_clear_locale(a) S_ssc_clear_locale(aTHX_ a)
+#define ssc_clear_locale S_ssc_clear_locale
#define ssc_cp_and(a,b) S_ssc_cp_and(aTHX_ a,b)
#define ssc_finalize(a,b) S_ssc_finalize(aTHX_ a,b)
#define ssc_init(a,b) S_ssc_init(aTHX_ a,b)
#define ssc_intersection(a,b,c) S_ssc_intersection(aTHX_ a,b,c)
-#define ssc_is_anything(a) S_ssc_is_anything(aTHX_ a)
-#define ssc_is_cp_posixl_init(a,b) S_ssc_is_cp_posixl_init(aTHX_ a,b)
+#define ssc_is_anything S_ssc_is_anything
+#define ssc_is_cp_posixl_init S_ssc_is_cp_posixl_init
#define ssc_or(a,b,c) S_ssc_or(aTHX_ a,b,c)
#define ssc_union(a,b,c) S_ssc_union(aTHX_ a,b,c)
#define study_chunk(a,b,c,d,e,f,g,h,i,j,k) S_study_chunk(aTHX_ a,b,c,d,e,f,g,h,i,j,k)
# endif
# if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_REGEXEC_C) || defined(PERL_IN_UTF8_C)
#define _get_swash_invlist(a) Perl__get_swash_invlist(aTHX_ a)
-#define _invlist_contains_cp(a,b) S__invlist_contains_cp(aTHX_ a,b)
+#define _invlist_contains_cp S__invlist_contains_cp
#define _invlist_contents(a) Perl__invlist_contents(aTHX_ a)
-#define _invlist_len(a) S__invlist_len(aTHX_ a)
-#define _invlist_search(a,b) Perl__invlist_search(aTHX_ a,b)
+#define _invlist_len S__invlist_len
+#define _invlist_search Perl__invlist_search
#define _swash_inversion_hash(a) Perl__swash_inversion_hash(aTHX_ a)
-#define get_invlist_offset_addr(a) S_get_invlist_offset_addr(aTHX_ a)
+#define get_invlist_offset_addr S_get_invlist_offset_addr
# endif
# if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_REGEXEC_C) || defined(PERL_IN_UTF8_C) || defined(PERL_IN_TOKE_C)
#define _core_swash_init(a,b,c,d,e,f,g) Perl__core_swash_init(aTHX_ a,b,c,d,e,f,g)
#define _add_range_to_invlist(a,b,c) Perl__add_range_to_invlist(aTHX_ a,b,c)
#define _invlist_intersection_maybe_complement_2nd(a,b,c,d) Perl__invlist_intersection_maybe_complement_2nd(aTHX_ a,b,c,d)
#define _invlist_invert(a) Perl__invlist_invert(aTHX_ a)
-#define _invlist_populate_swatch(a,b,c,d) Perl__invlist_populate_swatch(aTHX_ a,b,c,d)
+#define _invlist_populate_swatch Perl__invlist_populate_swatch
#define _invlist_union_maybe_complement_2nd(a,b,c,d) Perl__invlist_union_maybe_complement_2nd(aTHX_ a,b,c,d)
#define _new_invlist(a) Perl__new_invlist(aTHX_ a)
#define _setup_canned_invlist(a,b,c) Perl__setup_canned_invlist(aTHX_ a,b,c)
#define find_byclass(a,b,c,d,e) S_find_byclass(aTHX_ a,b,c,d,e)
#define isFOO_lc(a,b) S_isFOO_lc(aTHX_ a,b)
#define isFOO_utf8_lc(a,b) S_isFOO_utf8_lc(aTHX_ a,b)
-#define reg_check_named_buff_matched(a,b) S_reg_check_named_buff_matched(aTHX_ a,b)
+#define reg_check_named_buff_matched S_reg_check_named_buff_matched
#define regcppop(a,b) S_regcppop(aTHX_ a,b)
#define regcppush(a,b,c) S_regcppush(aTHX_ a,b,c)
#define reghop3 S_reghop3
Perl_refcounted_he_inc(pTHX_ struct refcounted_he *he)
{
dVAR;
+ PERL_UNUSED_CONTEXT;
if (he) {
HINTS_REFCNT_LOCK;
he->refcounted_he_refcnt++;
struct refcounted_he *const chain = cop->cop_hints_hash;
PERL_ARGS_ASSERT_COP_FETCH_LABEL;
+ PERL_UNUSED_CONTEXT;
if (!chain)
return NULL;
#define FROM_INTERNAL_SIZE(x) ((x)/ sizeof(UV))
PERL_STATIC_INLINE bool*
-S_get_invlist_offset_addr(pTHX_ SV* invlist)
+S_get_invlist_offset_addr(SV* invlist)
{
/* Return the address of the field that says whether the inversion list is
* offset (it contains 1) or not (contains 0) */
-
PERL_ARGS_ASSERT_GET_INVLIST_OFFSET_ADDR;
assert(SvTYPE(invlist) == SVt_INVLIST);
}
PERL_STATIC_INLINE UV
-S__invlist_len(pTHX_ SV* const invlist)
+S__invlist_len(SV* const invlist)
{
/* Returns the current number of elements stored in the inversion list's
* array */
}
PERL_STATIC_INLINE bool
-S__invlist_contains_cp(pTHX_ SV* const invlist, const UV cp)
+S__invlist_contains_cp(SV* const invlist, const UV cp)
{
/* Does <invlist> contain code point <cp> as part of the set? */
Perl_magic_regdatum_set(pTHX_ SV *sv, MAGIC *mg)
{
PERL_ARGS_ASSERT_MAGIC_REGDATUM_SET;
+ PERL_UNUSED_CONTEXT;
PERL_UNUSED_ARG(sv);
PERL_UNUSED_ARG(mg);
Perl_croak_no_modify();
static void
unblock_sigmask(pTHX_ void* newset)
{
+ PERL_UNUSED_CONTEXT;
sigprocmask(SIG_UNBLOCK, (sigset_t*)newset, NULL);
}
#endif
PERL_ARGS_ASSERT_MAGIC_CLEARARYLEN_P;
PERL_UNUSED_ARG(sv);
+ PERL_UNUSED_CONTEXT;
/* Reset the iterator when the array is cleared */
#if IVSIZE == I32SIZE
struct mro_meta* newmeta;
PERL_ARGS_ASSERT_MRO_META_INIT;
+ PERL_UNUSED_CONTEXT;
assert(HvAUX(stash));
assert(!(HvAUX(stash)->xhv_mro_meta));
Newxz(newmeta, 1, struct mro_meta);
*/
STATIC void
-S_prune_chain_head(pTHX_ OP** op_p)
+S_prune_chain_head(OP** op_p)
{
while (*op_p
&& ( (*op_p)->op_type == OP_NULL
#else
OPSLAB *slab = (OPSLAB *)PerlMemShared_calloc(sz, sizeof(I32 *));
#endif
+#ifndef WIN32
+ /* The context is unused in non-Windows */
+ PERL_UNUSED_CONTEXT;
+#endif
slab->opslab_first = (OPSLOT *)((I32 **)slab + sz - 1);
return slab;
}
ENTER;
CALL_PEEP(PL_eval_start);
finalize_optree(PL_eval_root);
- S_prune_chain_head(aTHX_ &PL_eval_start);
+ S_prune_chain_head(&PL_eval_start);
LEAVE;
PL_savestack_ix = i;
}
PL_main_root->op_next = 0;
CALL_PEEP(PL_main_start);
finalize_optree(PL_main_root);
- S_prune_chain_head(aTHX_ &PL_main_start);
+ S_prune_chain_head(&PL_main_start);
cv_forget_slab(PL_compcv);
PL_compcv = 0;
curop = LINKLIST(o);
o->op_next = 0;
CALL_PEEP(curop);
- S_prune_chain_head(aTHX_ &curop);
+ S_prune_chain_head(&curop);
PL_op = curop;
Perl_pp_pushmark(aTHX);
CALLRUNOPS(aTHX);
/* have to peep the DOs individually as we've removed it from
* the op_next chain */
CALL_PEEP(o);
- S_prune_chain_head(aTHX_ &(o->op_next));
+ S_prune_chain_head(&(o->op_next));
if (is_compiletime)
/* runtime finalizes as part of finalizing whole tree */
finalize_optree(o);
CvROOT(cv)->op_next = 0;
CALL_PEEP(CvSTART(cv));
finalize_optree(CvROOT(cv));
- S_prune_chain_head(aTHX_ &CvSTART(cv));
+ S_prune_chain_head(&CvSTART(cv));
/* now that optimizer has done its work, adjust pad values */
CvROOT(cv)->op_next = 0;
CALL_PEEP(CvSTART(cv));
finalize_optree(CvROOT(cv));
- S_prune_chain_head(aTHX_ &CvSTART(cv));
+ S_prune_chain_head(&CvSTART(cv));
/* now that optimizer has done its work, adjust pad values */
CvROOT(cv)->op_next = 0;
CALL_PEEP(CvSTART(cv));
finalize_optree(CvROOT(cv));
- S_prune_chain_head(aTHX_ &CvSTART(cv));
+ S_prune_chain_head(&CvSTART(cv));
cv_forget_slab(cv);
finish:
}
}
#else
+ PERL_UNUSED_CONTEXT;
PERL_UNUSED_ARG(o);
#endif
}
if (defer_ix == (MAX_DEFERRED-1)) { \
OP **defer = defer_queue[defer_base]; \
CALL_RPEEP(*defer); \
- S_prune_chain_head(aTHX_ defer); \
+ S_prune_chain_head(defer); \
defer_base = (defer_base + 1) % MAX_DEFERRED; \
defer_ix--; \
} \
OP **defer =
defer_queue[(defer_base + defer_ix--) % MAX_DEFERRED];
CALL_RPEEP(*defer);
- S_prune_chain_head(aTHX_ defer);
+ S_prune_chain_head(defer);
}
break;
}
{
dVAR;
+ PERL_UNUSED_CONTEXT;
PERL_ARGS_ASSERT_WRAP_OP_CHECKER;
if (*old_checker_p) return;
OP_CHECK_MUTEX_LOCK;
static void
yysymprint(pTHX_ PerlIO * const yyoutput, int yytype, const YYSTYPE * const yyvaluep)
{
+ PERL_UNUSED_CONTEXT;
if (yytype < YYNTOKENS) {
YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
# ifdef YYPRINT
int pos2_is_uv;
PERL_ARGS_ASSERT_TRANSLATE_SUBSTR_OFFSETS;
+ PERL_UNUSED_CONTEXT;
if (!pos1_is_uv && pos1_iv < 0 && curlen) {
pos1_is_uv = curlen-1 > ~(UV)pos1_iv;
#define PERL_ARGS_ASSERT__APPEND_RANGE_TO_INVLIST \
assert(invlist)
-PERL_STATIC_INLINE UV* S__invlist_array_init(pTHX_ SV* const invlist, const bool will_have_0)
+PERL_STATIC_INLINE UV* S__invlist_array_init(SV* const invlist, const bool will_have_0)
__attribute__warn_unused_result__
- __attribute__nonnull__(pTHX_1);
+ __attribute__nonnull__(1);
#define PERL_ARGS_ASSERT__INVLIST_ARRAY_INIT \
assert(invlist)
#define PERL_ARGS_ASSERT_ALLOC_MAYBE_POPULATE_EXACT \
assert(pRExC_state); assert(node); assert(flagp)
-PERL_STATIC_INLINE U8 S_compute_EXACTish(pTHX_ RExC_state_t *pRExC_state)
- __attribute__nonnull__(pTHX_1);
+PERL_STATIC_INLINE U8 S_compute_EXACTish(RExC_state_t *pRExC_state)
+ __attribute__nonnull__(1);
#define PERL_ARGS_ASSERT_COMPUTE_EXACTISH \
assert(pRExC_state)
#define PERL_ARGS_ASSERT_CONSTRUCT_AHOCORASICK_FROM_TRIE \
assert(pRExC_state); assert(source)
-STATIC bool S_could_it_be_a_POSIX_class(pTHX_ RExC_state_t *pRExC_state)
- __attribute__nonnull__(pTHX_1);
+STATIC bool S_could_it_be_a_POSIX_class(RExC_state_t *pRExC_state)
+ __attribute__nonnull__(1);
#define PERL_ARGS_ASSERT_COULD_IT_BE_A_POSIX_CLASS \
assert(pRExC_state)
#define PERL_ARGS_ASSERT_GET_ANYOF_CP_LIST_FOR_SSC \
assert(pRExC_state); assert(node)
-PERL_STATIC_INLINE STRLEN* S_get_invlist_iter_addr(pTHX_ SV* invlist)
+PERL_STATIC_INLINE STRLEN* S_get_invlist_iter_addr(SV* invlist)
__attribute__warn_unused_result__
- __attribute__nonnull__(pTHX_1);
+ __attribute__nonnull__(1);
#define PERL_ARGS_ASSERT_GET_INVLIST_ITER_ADDR \
assert(invlist)
-PERL_STATIC_INLINE IV* S_get_invlist_previous_index_addr(pTHX_ SV* invlist)
+PERL_STATIC_INLINE IV* S_get_invlist_previous_index_addr(SV* invlist)
__attribute__warn_unused_result__
- __attribute__nonnull__(pTHX_1);
+ __attribute__nonnull__(1);
#define PERL_ARGS_ASSERT_GET_INVLIST_PREVIOUS_INDEX_ADDR \
assert(invlist)
#define PERL_ARGS_ASSERT_HANDLE_REGEX_SETS \
assert(pRExC_state); assert(flagp); assert(oregcomp_parse)
-PERL_STATIC_INLINE UV* S_invlist_array(pTHX_ SV* const invlist)
+PERL_STATIC_INLINE UV* S_invlist_array(SV* const invlist)
__attribute__warn_unused_result__
- __attribute__nonnull__(pTHX_1);
+ __attribute__nonnull__(1);
#define PERL_ARGS_ASSERT_INVLIST_ARRAY \
assert(invlist)
#define PERL_ARGS_ASSERT_INVLIST_EXTEND \
assert(invlist)
-PERL_STATIC_INLINE UV S_invlist_highest(pTHX_ SV* const invlist)
+PERL_STATIC_INLINE UV S_invlist_highest(SV* const invlist)
__attribute__warn_unused_result__
- __attribute__nonnull__(pTHX_1);
+ __attribute__nonnull__(1);
#define PERL_ARGS_ASSERT_INVLIST_HIGHEST \
assert(invlist)
-PERL_STATIC_INLINE bool S_invlist_is_iterating(pTHX_ SV* const invlist)
+PERL_STATIC_INLINE bool S_invlist_is_iterating(SV* const invlist)
__attribute__warn_unused_result__
- __attribute__nonnull__(pTHX_1);
+ __attribute__nonnull__(1);
#define PERL_ARGS_ASSERT_INVLIST_IS_ITERATING \
assert(invlist)
-PERL_STATIC_INLINE void S_invlist_iterfinish(pTHX_ SV* invlist)
- __attribute__nonnull__(pTHX_1);
+PERL_STATIC_INLINE void S_invlist_iterfinish(SV* invlist)
+ __attribute__nonnull__(1);
#define PERL_ARGS_ASSERT_INVLIST_ITERFINISH \
assert(invlist)
-PERL_STATIC_INLINE void S_invlist_iterinit(pTHX_ SV* invlist)
- __attribute__nonnull__(pTHX_1);
+PERL_STATIC_INLINE void S_invlist_iterinit(SV* invlist)
+ __attribute__nonnull__(1);
#define PERL_ARGS_ASSERT_INVLIST_ITERINIT \
assert(invlist)
-STATIC bool S_invlist_iternext(pTHX_ SV* invlist, UV* start, UV* end)
+STATIC bool S_invlist_iternext(SV* invlist, UV* start, UV* end)
__attribute__warn_unused_result__
- __attribute__nonnull__(pTHX_1)
- __attribute__nonnull__(pTHX_2)
- __attribute__nonnull__(pTHX_3);
+ __attribute__nonnull__(1)
+ __attribute__nonnull__(2)
+ __attribute__nonnull__(3);
#define PERL_ARGS_ASSERT_INVLIST_ITERNEXT \
assert(invlist); assert(start); assert(end)
-PERL_STATIC_INLINE UV S_invlist_max(pTHX_ SV* const invlist)
+PERL_STATIC_INLINE UV S_invlist_max(SV* const invlist)
__attribute__warn_unused_result__
- __attribute__nonnull__(pTHX_1);
+ __attribute__nonnull__(1);
#define PERL_ARGS_ASSERT_INVLIST_MAX \
assert(invlist)
-PERL_STATIC_INLINE IV S_invlist_previous_index(pTHX_ SV* const invlist)
+PERL_STATIC_INLINE IV S_invlist_previous_index(SV* const invlist)
__attribute__warn_unused_result__
- __attribute__nonnull__(pTHX_1);
+ __attribute__nonnull__(1);
#define PERL_ARGS_ASSERT_INVLIST_PREVIOUS_INDEX \
assert(invlist)
#define PERL_ARGS_ASSERT_INVLIST_SET_LEN \
assert(invlist)
-PERL_STATIC_INLINE void S_invlist_set_previous_index(pTHX_ SV* const invlist, const IV index)
- __attribute__nonnull__(pTHX_1);
+PERL_STATIC_INLINE void S_invlist_set_previous_index(SV* const invlist, const IV index)
+ __attribute__nonnull__(1);
#define PERL_ARGS_ASSERT_INVLIST_SET_PREVIOUS_INDEX \
assert(invlist)
-PERL_STATIC_INLINE void S_invlist_trim(pTHX_ SV* const invlist)
- __attribute__nonnull__(pTHX_1);
+PERL_STATIC_INLINE void S_invlist_trim(SV* const invlist)
+ __attribute__nonnull__(1);
#define PERL_ARGS_ASSERT_INVLIST_TRIM \
assert(invlist)
#define PERL_ARGS_ASSERT_REG_SCAN_NAME \
assert(pRExC_state)
-PERL_STATIC_INLINE char * S_reg_skipcomment(pTHX_ RExC_state_t *pRExC_state, char * p)
- __attribute__nonnull__(pTHX_1)
- __attribute__nonnull__(pTHX_2);
+PERL_STATIC_INLINE char * S_reg_skipcomment(RExC_state_t *pRExC_state, char * p)
+ __attribute__nonnull__(1)
+ __attribute__nonnull__(2);
#define PERL_ARGS_ASSERT_REG_SKIPCOMMENT \
assert(pRExC_state); assert(p)
#define PERL_ARGS_ASSERT_REGINSERT \
assert(pRExC_state); assert(opnd)
-STATIC char * S_regpatws(pTHX_ RExC_state_t *pRExC_state, char *p, const bool recognize_comment)
+STATIC char * S_regpatws(RExC_state_t *pRExC_state, char *p, const bool recognize_comment)
__attribute__warn_unused_result__
- __attribute__nonnull__(pTHX_1)
- __attribute__nonnull__(pTHX_2);
+ __attribute__nonnull__(1)
+ __attribute__nonnull__(2);
#define PERL_ARGS_ASSERT_REGPATWS \
assert(pRExC_state); assert(p)
#define PERL_ARGS_ASSERT_SSC_ANYTHING \
assert(ssc)
-PERL_STATIC_INLINE void S_ssc_clear_locale(pTHX_ regnode_ssc *ssc)
- __attribute__nonnull__(pTHX_1);
+PERL_STATIC_INLINE void S_ssc_clear_locale(regnode_ssc *ssc)
+ __attribute__nonnull__(1);
#define PERL_ARGS_ASSERT_SSC_CLEAR_LOCALE \
assert(ssc)
#define PERL_ARGS_ASSERT_SSC_INTERSECTION \
assert(ssc); assert(invlist)
-STATIC int S_ssc_is_anything(pTHX_ const regnode_ssc *ssc)
+STATIC int S_ssc_is_anything(const regnode_ssc *ssc)
__attribute__warn_unused_result__
- __attribute__nonnull__(pTHX_1);
+ __attribute__nonnull__(1);
#define PERL_ARGS_ASSERT_SSC_IS_ANYTHING \
assert(ssc)
-STATIC int S_ssc_is_cp_posixl_init(pTHX_ const RExC_state_t *pRExC_state, const regnode_ssc *ssc)
+STATIC int S_ssc_is_cp_posixl_init(const RExC_state_t *pRExC_state, const regnode_ssc *ssc)
__attribute__warn_unused_result__
- __attribute__nonnull__(pTHX_1)
- __attribute__nonnull__(pTHX_2);
+ __attribute__nonnull__(1)
+ __attribute__nonnull__(2);
#define PERL_ARGS_ASSERT_SSC_IS_CP_POSIXL_INIT \
assert(pRExC_state); assert(ssc)
#define PERL_ARGS_ASSERT__GET_SWASH_INVLIST \
assert(swash)
-PERL_STATIC_INLINE bool S__invlist_contains_cp(pTHX_ SV* const invlist, const UV cp)
+PERL_STATIC_INLINE bool S__invlist_contains_cp(SV* const invlist, const UV cp)
__attribute__warn_unused_result__
- __attribute__nonnull__(pTHX_1);
+ __attribute__nonnull__(1);
#define PERL_ARGS_ASSERT__INVLIST_CONTAINS_CP \
assert(invlist)
#define PERL_ARGS_ASSERT__INVLIST_CONTENTS \
assert(invlist)
-PERL_STATIC_INLINE UV S__invlist_len(pTHX_ SV* const invlist)
+PERL_STATIC_INLINE UV S__invlist_len(SV* const invlist)
__attribute__warn_unused_result__
- __attribute__nonnull__(pTHX_1);
+ __attribute__nonnull__(1);
#define PERL_ARGS_ASSERT__INVLIST_LEN \
assert(invlist)
-PERL_CALLCONV IV Perl__invlist_search(pTHX_ SV* const invlist, const UV cp)
+PERL_CALLCONV IV Perl__invlist_search(SV* const invlist, const UV cp)
__attribute__warn_unused_result__
- __attribute__nonnull__(pTHX_1);
+ __attribute__nonnull__(1);
#define PERL_ARGS_ASSERT__INVLIST_SEARCH \
assert(invlist)
#define PERL_ARGS_ASSERT__SWASH_INVERSION_HASH \
assert(swash)
-PERL_STATIC_INLINE bool* S_get_invlist_offset_addr(pTHX_ SV* invlist)
+PERL_STATIC_INLINE bool* S_get_invlist_offset_addr(SV* invlist)
__attribute__warn_unused_result__
- __attribute__nonnull__(pTHX_1);
+ __attribute__nonnull__(1);
#define PERL_ARGS_ASSERT_GET_INVLIST_OFFSET_ADDR \
assert(invlist)
#define PERL_ARGS_ASSERT__INVLIST_INVERT \
assert(invlist)
-PERL_CALLCONV void Perl__invlist_populate_swatch(pTHX_ SV* const invlist, const UV start, const UV end, U8* swatch)
- __attribute__nonnull__(pTHX_1)
- __attribute__nonnull__(pTHX_4);
+PERL_CALLCONV void Perl__invlist_populate_swatch(SV* const invlist, const UV start, const UV end, U8* swatch)
+ __attribute__nonnull__(1)
+ __attribute__nonnull__(4);
#define PERL_ARGS_ASSERT__INVLIST_POPULATE_SWATCH \
assert(invlist); assert(swatch)
#define PERL_ARGS_ASSERT_ISFOO_UTF8_LC \
assert(character)
-STATIC I32 S_reg_check_named_buff_matched(pTHX_ const regexp *rex, const regnode *scan)
+STATIC I32 S_reg_check_named_buff_matched(const regexp *rex, const regnode *scan)
__attribute__warn_unused_result__
- __attribute__nonnull__(pTHX_1)
- __attribute__nonnull__(pTHX_2);
+ __attribute__nonnull__(1)
+ __attribute__nonnull__(2);
#define PERL_ARGS_ASSERT_REG_CHECK_NAMED_BUFF_MATCHED \
assert(rex); assert(scan)
}
STATIC int
-S_ssc_is_anything(pTHX_ const regnode_ssc *ssc)
+S_ssc_is_anything(const regnode_ssc *ssc)
{
/* Returns TRUE if the SSC 'ssc' can match the empty string and any code
* point; FALSE otherwise. Thus, this is used to see if using 'ssc' buys
}
STATIC int
-S_ssc_is_cp_posixl_init(pTHX_ const RExC_state_t *pRExC_state,
- const regnode_ssc *ssc)
+S_ssc_is_cp_posixl_init(const RExC_state_t *pRExC_state,
+ const regnode_ssc *ssc)
{
/* Returns TRUE if the SSC 'ssc' is in its initial state with regard only
* to the list of code points matched, and locale posix classes; hence does
}
PERL_STATIC_INLINE void
-S_ssc_clear_locale(pTHX_ regnode_ssc *ssc)
+S_ssc_clear_locale(regnode_ssc *ssc)
{
/* Set the SSC 'ssc' to not match any locale things */
-
PERL_ARGS_ASSERT_SSC_CLEAR_LOCALE;
assert(is_ANYOF_SYNTHETIC(ssc));
{
int n = 0;
STRLEN s;
+
+ PERL_UNUSED_CONTEXT;
for (s = 0; s < plen; s++) {
if (n < pRExC_state->num_code_blocks
/* The header definitions are in F<inline_invlist.c> */
PERL_STATIC_INLINE UV*
-S__invlist_array_init(pTHX_ SV* const invlist, const bool will_have_0)
+S__invlist_array_init(SV* const invlist, const bool will_have_0)
{
/* Returns a pointer to the first element in the inversion list's array.
* This is called upon initialization of an inversion list. Where the
}
PERL_STATIC_INLINE UV*
-S_invlist_array(pTHX_ SV* const invlist)
+S_invlist_array(SV* const invlist)
{
/* Returns the pointer to the inversion list's array. Every time the
* length changes, this needs to be called in case malloc or realloc moved
{
/* Sets the current number of elements stored in the inversion list.
* Updates SvCUR correspondingly */
-
+ PERL_UNUSED_CONTEXT;
PERL_ARGS_ASSERT_INVLIST_SET_LEN;
assert(SvTYPE(invlist) == SVt_INVLIST);
}
PERL_STATIC_INLINE IV*
-S_get_invlist_previous_index_addr(pTHX_ SV* invlist)
+S_get_invlist_previous_index_addr(SV* invlist)
{
/* Return the address of the IV that is reserved to hold the cached index
* */
-
PERL_ARGS_ASSERT_GET_INVLIST_PREVIOUS_INDEX_ADDR;
assert(SvTYPE(invlist) == SVt_INVLIST);
}
PERL_STATIC_INLINE IV
-S_invlist_previous_index(pTHX_ SV* const invlist)
+S_invlist_previous_index(SV* const invlist)
{
/* Returns cached index of previous search */
}
PERL_STATIC_INLINE void
-S_invlist_set_previous_index(pTHX_ SV* const invlist, const IV index)
+S_invlist_set_previous_index(SV* const invlist, const IV index)
{
/* Caches <index> for later retrieval */
}
PERL_STATIC_INLINE UV
-S_invlist_max(pTHX_ SV* const invlist)
+S_invlist_max(SV* const invlist)
{
/* Returns the maximum number of elements storable in the inversion list's
* array, without having to realloc() */
}
PERL_STATIC_INLINE void
-S_invlist_trim(pTHX_ SV* const invlist)
+S_invlist_trim(SV* const invlist)
{
PERL_ARGS_ASSERT_INVLIST_TRIM;
#ifndef PERL_IN_XSUB_RE
IV
-Perl__invlist_search(pTHX_ SV* const invlist, const UV cp)
+Perl__invlist_search(SV* const invlist, const UV cp)
{
/* Searches the inversion list for the entry that contains the input code
* point <cp>. If <cp> is not in the list, -1 is returned. Otherwise, the
}
void
-Perl__invlist_populate_swatch(pTHX_ SV* const invlist,
- const UV start, const UV end, U8* swatch)
+Perl__invlist_populate_swatch(SV* const invlist,
+ const UV start, const UV end, U8* swatch)
{
/* populates a swatch of a swash the same way swatch_get() does in utf8.c,
* but is used when the swash has an inversion list. This makes this much
}
PERL_STATIC_INLINE STRLEN*
-S_get_invlist_iter_addr(pTHX_ SV* invlist)
+S_get_invlist_iter_addr(SV* invlist)
{
/* Return the address of the UV that contains the current iteration
* position */
}
PERL_STATIC_INLINE void
-S_invlist_iterinit(pTHX_ SV* invlist) /* Initialize iterator for invlist */
+S_invlist_iterinit(SV* invlist) /* Initialize iterator for invlist */
{
PERL_ARGS_ASSERT_INVLIST_ITERINIT;
}
PERL_STATIC_INLINE void
-S_invlist_iterfinish(pTHX_ SV* invlist)
+S_invlist_iterfinish(SV* invlist)
{
/* Terminate iterator for invlist. This is to catch development errors.
* Any iteration that is interrupted before completed should call this
}
STATIC bool
-S_invlist_iternext(pTHX_ SV* invlist, UV* start, UV* end)
+S_invlist_iternext(SV* invlist, UV* start, UV* end)
{
/* An C<invlist_iterinit> call on <invlist> must be used to set this up.
* This call sets in <*start> and <*end>, the next range in <invlist>.
}
PERL_STATIC_INLINE bool
-S_invlist_is_iterating(pTHX_ SV* const invlist)
+S_invlist_is_iterating(SV* const invlist)
{
PERL_ARGS_ASSERT_INVLIST_IS_ITERATING;
}
PERL_STATIC_INLINE UV
-S_invlist_highest(pTHX_ SV* const invlist)
+S_invlist_highest(SV* const invlist)
{
/* Returns the highest code point that matches an inversion list. This API
* has an ambiguity, as it returns 0 under either the highest is actually
}
PERL_STATIC_INLINE U8
-S_compute_EXACTish(pTHX_ RExC_state_t *pRExC_state)
+S_compute_EXACTish(RExC_state_t *pRExC_state)
{
U8 op;
}
STATIC char *
-S_regpatws(pTHX_ RExC_state_t *pRExC_state, char *p , const bool recognize_comment )
+S_regpatws(RExC_state_t *pRExC_state, char *p , const bool recognize_comment )
{
/* Returns the next non-pattern-white space, non-comment character (the
* latter only if 'recognize_comment is true) in the string p, which is
}
STATIC bool
-S_could_it_be_a_POSIX_class(pTHX_ RExC_state_t *pRExC_state)
+S_could_it_be_a_POSIX_class(RExC_state_t *pRExC_state)
{
/* This applies some heuristics at the current parse position (which should
* be at a '[') to see if what follows might be intended to be a [:posix:]
*/
PERL_STATIC_INLINE char*
-S_reg_skipcomment(pTHX_ RExC_state_t *pRExC_state, char* p)
+S_reg_skipcomment(RExC_state_t *pRExC_state, char* p)
{
PERL_ARGS_ASSERT_REG_SKIPCOMMENT;
* or 0 if non of the buffers matched.
*/
STATIC I32
-S_reg_check_named_buff_matched(pTHX_ const regexp *rex, const regnode *scan)
+S_reg_check_named_buff_matched(const regexp *rex, const regnode *scan)
{
I32 n;
RXi_GET_DECL(rex,rexi);
void
Perl_ptr_table_clear(pTHX_ PTR_TBL_t *const tbl)
{
+ PERL_UNUSED_CONTEXT;
if (tbl && tbl->tbl_items) {
struct ptr_tbl_arena *arena = tbl->tbl_arena;
{
struct ptr_tbl_arena *arena;
+ PERL_UNUSED_CONTEXT;
+
if (!tbl) {
return;
}
{
char *newaddr;
STRLEN pvlen;
+
+ PERL_UNUSED_CONTEXT;
+
if (!pv)
return NULL;
{
char *const newaddr = (char*)PerlMemShared_malloc(len + 1);
+ PERL_UNUSED_CONTEXT;
/* PERL_ARGS_ASSERT_SAVESHAREDPVN; */
if (!newaddr) {
#ifdef HAS_TM_TM_ZONE
Time_t now;
const struct tm* my_tm;
+ PERL_UNUSED_CONTEXT;
PERL_ARGS_ASSERT_INIT_TM;
(void)time(&now);
my_tm = localtime(&now);
if (my_tm)
Copy(my_tm, ptm, 1, struct tm);
#else
+ PERL_UNUSED_CONTEXT;
PERL_ARGS_ASSERT_INIT_TM;
PERL_UNUSED_ARG(ptm);
#endif
if(!dir)
return -1;
#ifdef HAS_DIRFD
+ PERL_UNUSED_CONTEXT;
return dirfd(dir);
#elif defined(HAS_DIR_DD_FD)
+ PERL_UNUSED_CONTEXT;
return dir->dd_fd;
#else
Perl_die(aTHX_ PL_no_func, "dirfd");