Commit | Line | Data |
---|---|---|
37442d52 RGS |
1 | /* -*- buffer-read-only: t -*- |
2 | * | |
f5e3445d RGS |
3 | * proto.h |
4 | * | |
4bb101f2 | 5 | * Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, |
83706693 | 6 | * 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, by Larry Wall and others |
f5e3445d RGS |
7 | * |
8 | * You may distribute under the terms of either the GNU General Public | |
9 | * License or the Artistic License, as specified in the README file. | |
10 | * | |
11 | * !!!!!!! DO NOT EDIT THIS FILE !!!!!!! | |
12 | * This file is built by embed.pl from data in embed.fnc, embed.pl, | |
907b3e23 | 13 | * pp.sym, intrpvar.h, and perlvars.h. |
f5e3445d RGS |
14 | * Any changes made here will be lost! |
15 | * | |
16 | * Edit those files and run 'make regen_headers' to effect changes. | |
17 | */ | |
1d7c1841 | 18 | |
1d7c1841 GS |
19 | START_EXTERN_C |
20 | ||
21 | #if defined(PERL_IMPLICIT_SYS) | |
16bf6295 | 22 | PERL_CALLCONV PerlInterpreter* perl_alloc_using(struct IPerlMem *ipM, struct IPerlMem *ipMS, struct IPerlMem *ipMP, struct IPerlEnv *ipE, struct IPerlStdIO *ipStd, struct IPerlLIO *ipLIO, struct IPerlDir *ipD, struct IPerlSock *ipS, struct IPerlProc *ipP) |
fb9bf107 NC |
23 | __attribute__nonnull__(1) |
24 | __attribute__nonnull__(2) | |
25 | __attribute__nonnull__(3) | |
26 | __attribute__nonnull__(4) | |
27 | __attribute__nonnull__(5) | |
28 | __attribute__nonnull__(6) | |
29 | __attribute__nonnull__(7) | |
30 | __attribute__nonnull__(8) | |
31 | __attribute__nonnull__(9); | |
7918f24d | 32 | #define PERL_ARGS_ASSERT_PERL_ALLOC_USING \ |
16bf6295 | 33 | assert(ipM); assert(ipMS); assert(ipMP); assert(ipE); assert(ipStd); assert(ipLIO); assert(ipD); assert(ipS); assert(ipP) |
fb9bf107 | 34 | |
1d7c1841 | 35 | #endif |
b46bc2b6 | 36 | PERL_CALLCONV PerlInterpreter* perl_alloc(void); |
4048f010 | 37 | PERL_CALLCONV void perl_construct(PerlInterpreter *my_perl) |
abb2c242 | 38 | __attribute__nonnull__(1); |
7918f24d NC |
39 | #define PERL_ARGS_ASSERT_PERL_CONSTRUCT \ |
40 | assert(my_perl) | |
f54cb97a | 41 | |
4048f010 | 42 | PERL_CALLCONV int perl_destruct(PerlInterpreter *my_perl) |
abb2c242 | 43 | __attribute__nonnull__(1); |
7918f24d NC |
44 | #define PERL_ARGS_ASSERT_PERL_DESTRUCT \ |
45 | assert(my_perl) | |
f54cb97a | 46 | |
4048f010 | 47 | PERL_CALLCONV void perl_free(PerlInterpreter *my_perl) |
abb2c242 | 48 | __attribute__nonnull__(1); |
7918f24d NC |
49 | #define PERL_ARGS_ASSERT_PERL_FREE \ |
50 | assert(my_perl) | |
f54cb97a | 51 | |
4048f010 | 52 | PERL_CALLCONV int perl_run(PerlInterpreter *my_perl) |
abb2c242 | 53 | __attribute__nonnull__(1); |
7918f24d NC |
54 | #define PERL_ARGS_ASSERT_PERL_RUN \ |
55 | assert(my_perl) | |
f54cb97a | 56 | |
4048f010 | 57 | PERL_CALLCONV int perl_parse(PerlInterpreter *my_perl, XSINIT_t xsinit, int argc, char** argv, char** env) |
fb9bf107 | 58 | __attribute__nonnull__(1); |
7918f24d NC |
59 | #define PERL_ARGS_ASSERT_PERL_PARSE \ |
60 | assert(my_perl) | |
fb9bf107 | 61 | |
a28509cc AL |
62 | PERL_CALLCONV bool Perl_doing_taint(int argc, char** argv, char** env) |
63 | __attribute__warn_unused_result__; | |
64 | ||
1d7c1841 | 65 | #if defined(USE_ITHREADS) |
4048f010 | 66 | PERL_CALLCONV PerlInterpreter* perl_clone(PerlInterpreter *proto_perl, UV flags) |
fb9bf107 | 67 | __attribute__nonnull__(1); |
7918f24d NC |
68 | #define PERL_ARGS_ASSERT_PERL_CLONE \ |
69 | assert(proto_perl) | |
fb9bf107 | 70 | |
1d7c1841 | 71 | # if defined(PERL_IMPLICIT_SYS) |
589df73b | 72 | PERL_CALLCONV PerlInterpreter* perl_clone_using(PerlInterpreter *proto_perl, UV flags, struct IPerlMem* ipM, struct IPerlMem* ipMS, struct IPerlMem* ipMP, struct IPerlEnv* ipE, struct IPerlStdIO* ipStd, struct IPerlLIO* ipLIO, struct IPerlDir* ipD, struct IPerlSock* ipS, struct IPerlProc* ipP) |
fb9bf107 NC |
73 | __attribute__nonnull__(1) |
74 | __attribute__nonnull__(3) | |
75 | __attribute__nonnull__(4) | |
76 | __attribute__nonnull__(5) | |
77 | __attribute__nonnull__(6) | |
78 | __attribute__nonnull__(7) | |
79 | __attribute__nonnull__(8) | |
80 | __attribute__nonnull__(9) | |
81 | __attribute__nonnull__(10) | |
82 | __attribute__nonnull__(11); | |
7918f24d | 83 | #define PERL_ARGS_ASSERT_PERL_CLONE_USING \ |
589df73b | 84 | assert(proto_perl); assert(ipM); assert(ipMS); assert(ipMP); assert(ipE); assert(ipStd); assert(ipLIO); assert(ipD); assert(ipS); assert(ipP) |
fb9bf107 | 85 | |
1d7c1841 GS |
86 | # endif |
87 | #endif | |
88 | ||
4373e329 | 89 | PERL_CALLCONV Malloc_t Perl_malloc(MEM_SIZE nbytes) |
abb2c242 JH |
90 | __attribute__malloc__ |
91 | __attribute__warn_unused_result__; | |
f54cb97a | 92 | |
4373e329 | 93 | PERL_CALLCONV Malloc_t Perl_calloc(MEM_SIZE elements, MEM_SIZE size) |
abb2c242 JH |
94 | __attribute__malloc__ |
95 | __attribute__warn_unused_result__; | |
f54cb97a | 96 | |
4373e329 | 97 | PERL_CALLCONV Malloc_t Perl_realloc(Malloc_t where, MEM_SIZE nbytes) |
abb2c242 JH |
98 | __attribute__malloc__ |
99 | __attribute__warn_unused_result__; | |
f54cb97a | 100 | |
1d7c1841 | 101 | PERL_CALLCONV Free_t Perl_mfree(Malloc_t where); |
cae6d0e5 | 102 | #if defined(MYMALLOC) |
b464bac0 | 103 | PERL_CALLCONV MEM_SIZE Perl_malloced_size(void *p) |
fb9bf107 NC |
104 | __attribute__warn_unused_result__ |
105 | __attribute__nonnull__(1); | |
7918f24d NC |
106 | #define PERL_ARGS_ASSERT_MALLOCED_SIZE \ |
107 | assert(p) | |
b464bac0 | 108 | |
64107180 NC |
109 | PERL_CALLCONV MEM_SIZE Perl_malloc_good_size(size_t nbytes) |
110 | __attribute__warn_unused_result__; | |
111 | ||
1d7c1841 GS |
112 | #endif |
113 | ||
255164ba DM |
114 | PERL_CALLCONV void* Perl_get_context(void) |
115 | __attribute__warn_unused_result__; | |
116 | ||
9f6cc744 | 117 | PERL_CALLCONV void Perl_set_context(void *t) |
255164ba | 118 | __attribute__nonnull__(1); |
7918f24d NC |
119 | #define PERL_ARGS_ASSERT_SET_CONTEXT \ |
120 | assert(t) | |
255164ba | 121 | |
ba869deb | 122 | |
1d7c1841 GS |
123 | END_EXTERN_C |
124 | ||
125 | /* functions with flag 'n' should come before here */ | |
1d7c1841 | 126 | START_EXTERN_C |
1d7c1841 | 127 | # include "pp_proto.h" |
6f1401dc DM |
128 | PERL_CALLCONV bool Perl_try_amagic_bin(pTHX_ int method, int flags); |
129 | PERL_CALLCONV bool Perl_try_amagic_un(pTHX_ int method, int flags); | |
46c461b5 AL |
130 | PERL_CALLCONV SV* Perl_amagic_call(pTHX_ SV* left, SV* right, int method, int dir) |
131 | __attribute__nonnull__(pTHX_1) | |
132 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
133 | #define PERL_ARGS_ASSERT_AMAGIC_CALL \ |
134 | assert(left); assert(right) | |
46c461b5 | 135 | |
c3a9a790 | 136 | PERL_CALLCONV int Perl_Gv_AMupdate(pTHX_ HV* stash, bool destructing) |
255164ba | 137 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
138 | #define PERL_ARGS_ASSERT_GV_AMUPDATE \ |
139 | assert(stash) | |
255164ba DM |
140 | |
141 | PERL_CALLCONV CV* Perl_gv_handler(pTHX_ HV* stash, I32 id) | |
142 | __attribute__warn_unused_result__; | |
143 | ||
144 | PERL_CALLCONV OP* Perl_append_elem(pTHX_ I32 optype, OP* first, OP* last); | |
1d7c1841 | 145 | PERL_CALLCONV OP* Perl_append_list(pTHX_ I32 optype, LISTOP* first, LISTOP* last); |
255164ba DM |
146 | PERL_CALLCONV I32 Perl_apply(pTHX_ I32 type, SV** mark, SV** sp) |
147 | __attribute__nonnull__(pTHX_2) | |
148 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
149 | #define PERL_ARGS_ASSERT_APPLY \ |
150 | assert(mark); assert(sp) | |
255164ba DM |
151 | |
152 | PERL_CALLCONV void Perl_apply_attrs_string(pTHX_ const char *stashpv, CV *cv, const char *attrstr, STRLEN len) | |
153 | __attribute__nonnull__(pTHX_1) | |
154 | __attribute__nonnull__(pTHX_2) | |
155 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
156 | #define PERL_ARGS_ASSERT_APPLY_ATTRS_STRING \ |
157 | assert(stashpv); assert(cv); assert(attrstr) | |
255164ba | 158 | |
4048f010 | 159 | PERL_CALLCONV void Perl_av_clear(pTHX_ AV *av) |
7a5b473e | 160 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
161 | #define PERL_ARGS_ASSERT_AV_CLEAR \ |
162 | assert(av) | |
7a5b473e | 163 | |
4048f010 | 164 | PERL_CALLCONV SV* Perl_av_delete(pTHX_ AV *av, I32 key, I32 flags) |
7a5b473e | 165 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
166 | #define PERL_ARGS_ASSERT_AV_DELETE \ |
167 | assert(av) | |
7a5b473e | 168 | |
4048f010 | 169 | PERL_CALLCONV bool Perl_av_exists(pTHX_ AV *av, I32 key) |
7a5b473e AL |
170 | __attribute__warn_unused_result__ |
171 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
172 | #define PERL_ARGS_ASSERT_AV_EXISTS \ |
173 | assert(av) | |
a3b680e6 | 174 | |
4048f010 | 175 | PERL_CALLCONV void Perl_av_extend(pTHX_ AV *av, I32 key) |
abb2c242 | 176 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
177 | #define PERL_ARGS_ASSERT_AV_EXTEND \ |
178 | assert(av) | |
a3b680e6 | 179 | |
4048f010 | 180 | PERL_CALLCONV SV** Perl_av_fetch(pTHX_ AV *av, I32 key, I32 lval) |
7a5b473e AL |
181 | __attribute__warn_unused_result__ |
182 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
183 | #define PERL_ARGS_ASSERT_AV_FETCH \ |
184 | assert(av) | |
a3b680e6 | 185 | |
4048f010 | 186 | PERL_CALLCONV void Perl_av_fill(pTHX_ AV *av, I32 fill) |
255164ba | 187 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
188 | #define PERL_ARGS_ASSERT_AV_FILL \ |
189 | assert(av) | |
255164ba | 190 | |
bb5dd93d | 191 | PERL_CALLCONV I32 Perl_av_len(pTHX_ AV *av) |
255164ba DM |
192 | __attribute__warn_unused_result__ |
193 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
194 | #define PERL_ARGS_ASSERT_AV_LEN \ |
195 | assert(av) | |
a3b680e6 | 196 | |
4048f010 | 197 | PERL_CALLCONV AV* Perl_av_make(pTHX_ I32 size, SV **strp) |
abb2c242 JH |
198 | __attribute__warn_unused_result__ |
199 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
200 | #define PERL_ARGS_ASSERT_AV_MAKE \ |
201 | assert(strp) | |
a3b680e6 | 202 | |
4048f010 | 203 | PERL_CALLCONV SV* Perl_av_pop(pTHX_ AV *av) |
7a5b473e | 204 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
205 | #define PERL_ARGS_ASSERT_AV_POP \ |
206 | assert(av) | |
7a5b473e | 207 | |
29a861e7 NC |
208 | PERL_CALLCONV void Perl_av_create_and_push(pTHX_ AV **const avp, SV *const val) |
209 | __attribute__nonnull__(pTHX_1) | |
210 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
211 | #define PERL_ARGS_ASSERT_AV_CREATE_AND_PUSH \ |
212 | assert(avp); assert(val) | |
29a861e7 | 213 | |
4048f010 | 214 | PERL_CALLCONV void Perl_av_push(pTHX_ AV *av, SV *val) |
7a5b473e | 215 | __attribute__nonnull__(pTHX_1) |
255164ba | 216 | __attribute__nonnull__(pTHX_2); |
7918f24d NC |
217 | #define PERL_ARGS_ASSERT_AV_PUSH \ |
218 | assert(av); assert(val) | |
255164ba | 219 | |
4048f010 | 220 | PERL_CALLCONV void Perl_av_reify(pTHX_ AV *av) |
255164ba | 221 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
222 | #define PERL_ARGS_ASSERT_AV_REIFY \ |
223 | assert(av) | |
255164ba | 224 | |
4048f010 | 225 | PERL_CALLCONV SV* Perl_av_shift(pTHX_ AV *av) |
7a5b473e AL |
226 | __attribute__warn_unused_result__ |
227 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
228 | #define PERL_ARGS_ASSERT_AV_SHIFT \ |
229 | assert(av) | |
7a5b473e | 230 | |
4048f010 | 231 | PERL_CALLCONV SV** Perl_av_store(pTHX_ AV *av, I32 key, SV *val) |
7a5b473e | 232 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
233 | #define PERL_ARGS_ASSERT_AV_STORE \ |
234 | assert(av) | |
7a5b473e | 235 | |
4048f010 | 236 | PERL_CALLCONV void Perl_av_undef(pTHX_ AV *av) |
7a5b473e | 237 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
238 | #define PERL_ARGS_ASSERT_AV_UNDEF \ |
239 | assert(av) | |
7a5b473e | 240 | |
29a861e7 NC |
241 | PERL_CALLCONV SV** Perl_av_create_and_unshift_one(pTHX_ AV **const avp, SV *const val) |
242 | __attribute__nonnull__(pTHX_1) | |
243 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
244 | #define PERL_ARGS_ASSERT_AV_CREATE_AND_UNSHIFT_ONE \ |
245 | assert(avp); assert(val) | |
29a861e7 | 246 | |
4048f010 | 247 | PERL_CALLCONV void Perl_av_unshift(pTHX_ AV *av, I32 num) |
7a5b473e | 248 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
249 | #define PERL_ARGS_ASSERT_AV_UNSHIFT \ |
250 | assert(av) | |
a3b680e6 | 251 | |
4048f010 | 252 | PERL_CALLCONV SV** Perl_av_arylen_p(pTHX_ AV *av) |
255164ba | 253 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
254 | #define PERL_ARGS_ASSERT_AV_ARYLEN_P \ |
255 | assert(av) | |
255164ba | 256 | |
4048f010 | 257 | PERL_CALLCONV IV* Perl_av_iter_p(pTHX_ AV *av) |
878d132a | 258 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
259 | #define PERL_ARGS_ASSERT_AV_ITER_P \ |
260 | assert(av) | |
878d132a | 261 | |
43869a0c | 262 | #if defined(PERL_IN_AV_C) |
878d132a NC |
263 | STATIC MAGIC* S_get_aux_mg(pTHX_ AV *av) |
264 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
265 | #define PERL_ARGS_ASSERT_GET_AUX_MG \ |
266 | assert(av) | |
878d132a NC |
267 | |
268 | #endif | |
4048f010 | 269 | PERL_CALLCONV OP* Perl_bind_match(pTHX_ I32 type, OP *left, OP *right) |
abb2c242 JH |
270 | __attribute__warn_unused_result__ |
271 | __attribute__nonnull__(pTHX_2) | |
272 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
273 | #define PERL_ARGS_ASSERT_BIND_MATCH \ |
274 | assert(left); assert(right) | |
a3b680e6 AL |
275 | |
276 | PERL_CALLCONV OP* Perl_block_end(pTHX_ I32 floor, OP* seq) | |
6472dca1 | 277 | __attribute__warn_unused_result__; |
a3b680e6 AL |
278 | |
279 | PERL_CALLCONV I32 Perl_block_gimme(pTHX) | |
abb2c242 | 280 | __attribute__warn_unused_result__; |
a3b680e6 AL |
281 | |
282 | PERL_CALLCONV int Perl_block_start(pTHX_ int full) | |
abb2c242 | 283 | __attribute__warn_unused_result__; |
a3b680e6 | 284 | |
bb6c22e7 BM |
285 | PERL_CALLCONV void Perl_blockhook_register(pTHX_ BHK *hk) |
286 | __attribute__nonnull__(pTHX_1); | |
287 | #define PERL_ARGS_ASSERT_BLOCKHOOK_REGISTER \ | |
288 | assert(hk) | |
289 | ||
1d7c1841 | 290 | PERL_CALLCONV void Perl_boot_core_UNIVERSAL(pTHX); |
36ed5425 | 291 | PERL_CALLCONV void Perl_boot_core_PerlIO(pTHX); |
4048f010 | 292 | PERL_CALLCONV void Perl_call_list(pTHX_ I32 oldscope, AV *paramList) |
abb2c242 | 293 | __attribute__nonnull__(pTHX_2); |
7918f24d NC |
294 | #define PERL_ARGS_ASSERT_CALL_LIST \ |
295 | assert(paramList) | |
a3b680e6 | 296 | |
2fefa6c7 | 297 | PERL_CALLCONV const PERL_CONTEXT * Perl_caller_cx(pTHX_ I32 level, const PERL_CONTEXT **dbcxp); |
ae1951c1 | 298 | PERL_CALLCONV bool Perl_cando(pTHX_ Mode_t mode, bool effective, const Stat_t* statbufp) |
abb2c242 JH |
299 | __attribute__warn_unused_result__ |
300 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
301 | #define PERL_ARGS_ASSERT_CANDO \ |
302 | assert(statbufp) | |
f54cb97a | 303 | |
53c1dcc0 AL |
304 | PERL_CALLCONV U32 Perl_cast_ulong(pTHX_ NV f) |
305 | __attribute__warn_unused_result__; | |
306 | ||
307 | PERL_CALLCONV I32 Perl_cast_i32(pTHX_ NV f) | |
308 | __attribute__warn_unused_result__; | |
309 | ||
310 | PERL_CALLCONV IV Perl_cast_iv(pTHX_ NV f) | |
311 | __attribute__warn_unused_result__; | |
312 | ||
313 | PERL_CALLCONV UV Perl_cast_uv(pTHX_ NV f) | |
314 | __attribute__warn_unused_result__; | |
315 | ||
cea2e8a9 | 316 | #if !defined(HAS_TRUNCATE) && !defined(HAS_CHSIZE) && defined(F_FREESP) |
53c1dcc0 AL |
317 | PERL_CALLCONV I32 Perl_my_chsize(pTHX_ int fd, Off_t length) |
318 | __attribute__warn_unused_result__; | |
319 | ||
cea2e8a9 | 320 | #endif |
53c1dcc0 AL |
321 | PERL_CALLCONV OP* Perl_convert(pTHX_ I32 optype, I32 flags, OP* o) |
322 | __attribute__warn_unused_result__; | |
323 | ||
2fefa6c7 BM |
324 | PERL_CALLCONV HV* Perl_cop_hints_2hv(pTHX_ const COP *cop) |
325 | __attribute__nonnull__(pTHX_1); | |
326 | #define PERL_ARGS_ASSERT_COP_HINTS_2HV \ | |
327 | assert(cop) | |
328 | ||
329 | PERL_CALLCONV SV* Perl_cop_hints_fetchpvn(pTHX_ const COP *cop, const char *key, STRLEN klen, int flags, U32 hash) | |
330 | __attribute__nonnull__(pTHX_1) | |
331 | __attribute__nonnull__(pTHX_2); | |
332 | #define PERL_ARGS_ASSERT_COP_HINTS_FETCHPVN \ | |
333 | assert(cop); assert(key) | |
334 | ||
335 | /* PERL_CALLCONV SV* cop_hints_fetchpvs(pTHX_ const COP *cop, const char *const key) | |
336 | __attribute__nonnull__(pTHX_1) | |
337 | __attribute__nonnull__(pTHX_2); */ | |
338 | ||
339 | /* PERL_CALLCONV SV* cop_hints_fetchsv(pTHX_ const COP *cop, SV *keysv, U32 hash) | |
340 | __attribute__nonnull__(pTHX_1) | |
341 | __attribute__nonnull__(pTHX_2); */ | |
342 | ||
edb2152a | 343 | PERL_CALLCONV PERL_CONTEXT* Perl_create_eval_scope(pTHX_ U32 flags); |
c5df3096 Z |
344 | PERL_CALLCONV void Perl_croak_sv(pTHX_ SV *baseex) |
345 | __attribute__noreturn__ | |
346 | __attribute__nonnull__(pTHX_1); | |
347 | #define PERL_ARGS_ASSERT_CROAK_SV \ | |
348 | assert(baseex) | |
349 | ||
f54cb97a | 350 | PERL_CALLCONV void Perl_croak(pTHX_ const char* pat, ...) |
cdfeb707 RB |
351 | __attribute__noreturn__ |
352 | __attribute__format__null_ok__(__printf__,pTHX_1,pTHX_2); | |
f54cb97a AL |
353 | |
354 | PERL_CALLCONV void Perl_vcroak(pTHX_ const char* pat, va_list* args) | |
f3dc127a | 355 | __attribute__noreturn__; |
f54cb97a | 356 | |
6ad8f254 NC |
357 | PERL_CALLCONV void Perl_croak_no_modify(pTHX) |
358 | __attribute__noreturn__; | |
359 | ||
afa74d42 NC |
360 | PERL_CALLCONV void Perl_croak_xs_usage(pTHX_ const CV *const cv, const char *const params) |
361 | __attribute__noreturn__ | |
362 | __attribute__nonnull__(pTHX_1) | |
363 | __attribute__nonnull__(pTHX_2); | |
364 | #define PERL_ARGS_ASSERT_CROAK_XS_USAGE \ | |
365 | assert(cv); assert(params) | |
366 | ||
367 | ||
cea2e8a9 | 368 | #if defined(PERL_IMPLICIT_CONTEXT) |
f54cb97a | 369 | PERL_CALLCONV void Perl_croak_nocontext(const char* pat, ...) |
abb2c242 | 370 | __attribute__noreturn__ |
52a5bfab | 371 | __attribute__format__null_ok__(__printf__,1,2); |
f54cb97a | 372 | |
894356b3 | 373 | PERL_CALLCONV OP* Perl_die_nocontext(const char* pat, ...) |
cf284a24 | 374 | __attribute__format__null_ok__(__printf__,1,2); |
f54cb97a | 375 | |
894356b3 | 376 | PERL_CALLCONV void Perl_deb_nocontext(const char* pat, ...) |
255164ba DM |
377 | __attribute__format__(__printf__,1,2) |
378 | __attribute__nonnull__(1); | |
7918f24d NC |
379 | #define PERL_ARGS_ASSERT_DEB_NOCONTEXT \ |
380 | assert(pat) | |
f54cb97a | 381 | |
894356b3 | 382 | PERL_CALLCONV char* Perl_form_nocontext(const char* pat, ...) |
255164ba DM |
383 | __attribute__format__(__printf__,1,2) |
384 | __attribute__nonnull__(1); | |
7918f24d NC |
385 | #define PERL_ARGS_ASSERT_FORM_NOCONTEXT \ |
386 | assert(pat) | |
255164ba DM |
387 | |
388 | PERL_CALLCONV void Perl_load_module_nocontext(U32 flags, SV* name, SV* ver, ...) | |
3d4dd4c7 | 389 | __attribute__nonnull__(2); |
7918f24d NC |
390 | #define PERL_ARGS_ASSERT_LOAD_MODULE_NOCONTEXT \ |
391 | assert(name) | |
f54cb97a | 392 | |
894356b3 | 393 | PERL_CALLCONV SV* Perl_mess_nocontext(const char* pat, ...) |
255164ba DM |
394 | __attribute__format__(__printf__,1,2) |
395 | __attribute__nonnull__(1); | |
7918f24d NC |
396 | #define PERL_ARGS_ASSERT_MESS_NOCONTEXT \ |
397 | assert(pat) | |
f54cb97a | 398 | |
894356b3 | 399 | PERL_CALLCONV void Perl_warn_nocontext(const char* pat, ...) |
255164ba DM |
400 | __attribute__format__(__printf__,1,2) |
401 | __attribute__nonnull__(1); | |
7918f24d NC |
402 | #define PERL_ARGS_ASSERT_WARN_NOCONTEXT \ |
403 | assert(pat) | |
f54cb97a | 404 | |
894356b3 | 405 | PERL_CALLCONV void Perl_warner_nocontext(U32 err, const char* pat, ...) |
255164ba DM |
406 | __attribute__format__(__printf__,2,3) |
407 | __attribute__nonnull__(2); | |
7918f24d NC |
408 | #define PERL_ARGS_ASSERT_WARNER_NOCONTEXT \ |
409 | assert(pat) | |
f54cb97a | 410 | |
23f13727 | 411 | PERL_CALLCONV SV* Perl_newSVpvf_nocontext(const char *const pat, ...) |
255164ba DM |
412 | __attribute__format__(__printf__,1,2) |
413 | __attribute__nonnull__(1); | |
7918f24d NC |
414 | #define PERL_ARGS_ASSERT_NEWSVPVF_NOCONTEXT \ |
415 | assert(pat) | |
f54cb97a | 416 | |
89e38212 | 417 | PERL_CALLCONV void Perl_sv_catpvf_nocontext(SV *const sv, const char *const pat, ...) |
255164ba | 418 | __attribute__format__(__printf__,2,3) |
fb9bf107 NC |
419 | __attribute__nonnull__(1) |
420 | __attribute__nonnull__(2); | |
7918f24d NC |
421 | #define PERL_ARGS_ASSERT_SV_CATPVF_NOCONTEXT \ |
422 | assert(sv); assert(pat) | |
f54cb97a | 423 | |
89e38212 | 424 | PERL_CALLCONV void Perl_sv_setpvf_nocontext(SV *const sv, const char *const pat, ...) |
255164ba | 425 | __attribute__format__(__printf__,2,3) |
fb9bf107 NC |
426 | __attribute__nonnull__(1) |
427 | __attribute__nonnull__(2); | |
7918f24d NC |
428 | #define PERL_ARGS_ASSERT_SV_SETPVF_NOCONTEXT \ |
429 | assert(sv); assert(pat) | |
f54cb97a | 430 | |
89e38212 | 431 | PERL_CALLCONV void Perl_sv_catpvf_mg_nocontext(SV *const sv, const char *const pat, ...) |
255164ba | 432 | __attribute__format__(__printf__,2,3) |
fb9bf107 NC |
433 | __attribute__nonnull__(1) |
434 | __attribute__nonnull__(2); | |
7918f24d NC |
435 | #define PERL_ARGS_ASSERT_SV_CATPVF_MG_NOCONTEXT \ |
436 | assert(sv); assert(pat) | |
f54cb97a | 437 | |
89e38212 | 438 | PERL_CALLCONV void Perl_sv_setpvf_mg_nocontext(SV *const sv, const char *const pat, ...) |
255164ba | 439 | __attribute__format__(__printf__,2,3) |
fb9bf107 NC |
440 | __attribute__nonnull__(1) |
441 | __attribute__nonnull__(2); | |
7918f24d NC |
442 | #define PERL_ARGS_ASSERT_SV_SETPVF_MG_NOCONTEXT \ |
443 | assert(sv); assert(pat) | |
f54cb97a | 444 | |
4048f010 | 445 | PERL_CALLCONV int Perl_fprintf_nocontext(PerlIO *stream, const char *format, ...) |
255164ba DM |
446 | __attribute__format__(__printf__,2,3) |
447 | __attribute__nonnull__(1) | |
448 | __attribute__nonnull__(2); | |
7918f24d NC |
449 | #define PERL_ARGS_ASSERT_FPRINTF_NOCONTEXT \ |
450 | assert(stream); assert(format) | |
f54cb97a | 451 | |
4048f010 | 452 | PERL_CALLCONV int Perl_printf_nocontext(const char *format, ...) |
255164ba DM |
453 | __attribute__format__(__printf__,1,2) |
454 | __attribute__nonnull__(1); | |
7918f24d NC |
455 | #define PERL_ARGS_ASSERT_PRINTF_NOCONTEXT \ |
456 | assert(format) | |
f54cb97a | 457 | |
0cb96387 | 458 | #endif |
cbf82dd0 NC |
459 | PERL_CALLCONV void Perl_cv_ckproto_len(pTHX_ const CV* cv, const GV* gv, const char* p, const STRLEN len) |
460 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
461 | #define PERL_ARGS_ASSERT_CV_CKPROTO_LEN \ |
462 | assert(cv) | |
cbf82dd0 | 463 | |
4373e329 | 464 | PERL_CALLCONV CV* Perl_cv_clone(pTHX_ CV* proto) |
abb2c242 | 465 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
466 | #define PERL_ARGS_ASSERT_CV_CLONE \ |
467 | assert(proto) | |
f54cb97a | 468 | |
62d55b22 NC |
469 | PERL_CALLCONV SV* Perl_gv_const_sv(pTHX_ GV* gv) |
470 | __attribute__warn_unused_result__ | |
471 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
472 | #define PERL_ARGS_ASSERT_GV_CONST_SV \ |
473 | assert(gv) | |
62d55b22 | 474 | |
d45f5b30 | 475 | PERL_CALLCONV SV* Perl_cv_const_sv(pTHX_ const CV *const cv) |
255164ba DM |
476 | __attribute__warn_unused_result__; |
477 | ||
478 | PERL_CALLCONV SV* Perl_op_const_sv(pTHX_ const OP* o, CV* cv) | |
479 | __attribute__warn_unused_result__; | |
480 | ||
481 | PERL_CALLCONV void Perl_cv_undef(pTHX_ CV* cv) | |
482 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
483 | #define PERL_ARGS_ASSERT_CV_UNDEF \ |
484 | assert(cv) | |
255164ba DM |
485 | |
486 | PERL_CALLCONV void Perl_cx_dump(pTHX_ PERL_CONTEXT* cx) | |
487 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
488 | #define PERL_ARGS_ASSERT_CX_DUMP \ |
489 | assert(cx) | |
255164ba | 490 | |
1d7c1841 | 491 | PERL_CALLCONV SV* Perl_filter_add(pTHX_ filter_t funcp, SV* datasv); |
255164ba DM |
492 | PERL_CALLCONV void Perl_filter_del(pTHX_ filter_t funcp) |
493 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
494 | #define PERL_ARGS_ASSERT_FILTER_DEL \ |
495 | assert(funcp) | |
255164ba | 496 | |
4048f010 | 497 | PERL_CALLCONV I32 Perl_filter_read(pTHX_ int idx, SV *buf_sv, int maxlen) |
255164ba DM |
498 | __attribute__warn_unused_result__ |
499 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
500 | #define PERL_ARGS_ASSERT_FILTER_READ \ |
501 | assert(buf_sv) | |
255164ba | 502 | |
4373e329 | 503 | PERL_CALLCONV char** Perl_get_op_descs(pTHX) |
abb2c242 JH |
504 | __attribute__warn_unused_result__ |
505 | __attribute__pure__; | |
f54cb97a | 506 | |
4373e329 | 507 | PERL_CALLCONV char** Perl_get_op_names(pTHX) |
abb2c242 JH |
508 | __attribute__warn_unused_result__ |
509 | __attribute__pure__; | |
f54cb97a | 510 | |
4373e329 | 511 | PERL_CALLCONV const char* Perl_get_no_modify(pTHX) |
abb2c242 JH |
512 | __attribute__warn_unused_result__ |
513 | __attribute__pure__; | |
f54cb97a | 514 | |
4373e329 | 515 | PERL_CALLCONV U32* Perl_get_opargs(pTHX) |
abb2c242 JH |
516 | __attribute__warn_unused_result__ |
517 | __attribute__pure__; | |
f54cb97a | 518 | |
4373e329 | 519 | PERL_CALLCONV PPADDR_t* Perl_get_ppaddr(pTHX) |
abb2c242 JH |
520 | __attribute__warn_unused_result__ |
521 | __attribute__pure__; | |
f54cb97a | 522 | |
a3b680e6 | 523 | PERL_CALLCONV I32 Perl_cxinc(pTHX) |
abb2c242 | 524 | __attribute__warn_unused_result__; |
a3b680e6 | 525 | |
894356b3 | 526 | PERL_CALLCONV void Perl_deb(pTHX_ const char* pat, ...) |
255164ba DM |
527 | __attribute__format__(__printf__,pTHX_1,pTHX_2) |
528 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
529 | #define PERL_ARGS_ASSERT_DEB \ |
530 | assert(pat) | |
255164ba DM |
531 | |
532 | PERL_CALLCONV void Perl_vdeb(pTHX_ const char* pat, va_list* args) | |
533 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
534 | #define PERL_ARGS_ASSERT_VDEB \ |
535 | assert(pat) | |
f54cb97a | 536 | |
1d7c1841 | 537 | PERL_CALLCONV void Perl_debprofdump(pTHX); |
4373e329 | 538 | PERL_CALLCONV I32 Perl_debop(pTHX_ const OP* o) |
abb2c242 | 539 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
540 | #define PERL_ARGS_ASSERT_DEBOP \ |
541 | assert(o) | |
f54cb97a | 542 | |
1d7c1841 GS |
543 | PERL_CALLCONV I32 Perl_debstack(pTHX); |
544 | PERL_CALLCONV I32 Perl_debstackptrs(pTHX); | |
04c9e624 VP |
545 | PERL_CALLCONV char* Perl_delimcpy(char* to, const char* toend, const char* from, const char* fromend, int delim, I32* retlen) |
546 | __attribute__nonnull__(1) | |
547 | __attribute__nonnull__(2) | |
548 | __attribute__nonnull__(3) | |
549 | __attribute__nonnull__(4) | |
550 | __attribute__nonnull__(6); | |
7918f24d NC |
551 | #define PERL_ARGS_ASSERT_DELIMCPY \ |
552 | assert(to); assert(toend); assert(from); assert(fromend); assert(retlen) | |
f54cb97a | 553 | |
edb2152a | 554 | PERL_CALLCONV void Perl_delete_eval_scope(pTHX); |
c5df3096 Z |
555 | PERL_CALLCONV OP* Perl_die_sv(pTHX_ SV *baseex) |
556 | __attribute__nonnull__(pTHX_1); | |
557 | #define PERL_ARGS_ASSERT_DIE_SV \ | |
558 | assert(baseex) | |
559 | ||
cdfeb707 RB |
560 | PERL_CALLCONV OP* Perl_die(pTHX_ const char* pat, ...) |
561 | __attribute__format__null_ok__(__printf__,pTHX_1,pTHX_2); | |
562 | ||
62705b21 | 563 | PERL_CALLCONV void Perl_die_unwind(pTHX_ SV* msv) |
c5df3096 Z |
564 | __attribute__noreturn__ |
565 | __attribute__nonnull__(pTHX_1); | |
566 | #define PERL_ARGS_ASSERT_DIE_UNWIND \ | |
62705b21 | 567 | assert(msv) |
bb4c52e0 | 568 | |
1d7c1841 | 569 | PERL_CALLCONV void Perl_dounwind(pTHX_ I32 cxix); |
a9f96b3f | 570 | /* PERL_CALLCONV bool Perl_do_aexec(pTHX_ SV* really, SV** mark, SV** sp) |
255164ba | 571 | __attribute__nonnull__(pTHX_2) |
a9f96b3f | 572 | __attribute__nonnull__(pTHX_3); */ |
7918f24d NC |
573 | #define PERL_ARGS_ASSERT_DO_AEXEC \ |
574 | assert(mark); assert(sp) | |
255164ba | 575 | |
5b5cf8d2 | 576 | PERL_CALLCONV bool Perl_do_aexec5(pTHX_ SV* really, SV** mark, SV** sp, int fd, int do_report) |
255164ba DM |
577 | __attribute__nonnull__(pTHX_2) |
578 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
579 | #define PERL_ARGS_ASSERT_DO_AEXEC5 \ |
580 | assert(mark); assert(sp) | |
255164ba | 581 | |
4373e329 | 582 | PERL_CALLCONV int Perl_do_binmode(pTHX_ PerlIO *fp, int iotype, int mode) |
abb2c242 | 583 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
584 | #define PERL_ARGS_ASSERT_DO_BINMODE \ |
585 | assert(fp) | |
f54cb97a | 586 | |
4048f010 | 587 | PERL_CALLCONV void Perl_do_chop(pTHX_ SV *astr, SV *sv) |
abb2c242 JH |
588 | __attribute__nonnull__(pTHX_1) |
589 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
590 | #define PERL_ARGS_ASSERT_DO_CHOP \ |
591 | assert(astr); assert(sv) | |
f54cb97a | 592 | |
063df69c | 593 | PERL_CALLCONV bool Perl_do_close(pTHX_ GV* gv, bool not_implicit); |
4373e329 | 594 | PERL_CALLCONV bool Perl_do_eof(pTHX_ GV* gv) |
abb2c242 | 595 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
596 | #define PERL_ARGS_ASSERT_DO_EOF \ |
597 | assert(gv) | |
f54cb97a | 598 | |
8c654ff2 NC |
599 | |
600 | #ifdef PERL_DEFAULT_DO_EXEC3_IMPLEMENTATION | |
9555a685 NC |
601 | /* PERL_CALLCONV bool Perl_do_exec(pTHX_ const char* cmd) |
602 | __attribute__nonnull__(pTHX_1); */ | |
7918f24d NC |
603 | #define PERL_ARGS_ASSERT_DO_EXEC \ |
604 | assert(cmd) | |
f54cb97a | 605 | |
8c654ff2 NC |
606 | #else |
607 | PERL_CALLCONV bool Perl_do_exec(pTHX_ const char* cmd) | |
608 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
609 | #define PERL_ARGS_ASSERT_DO_EXEC \ |
610 | assert(cmd) | |
8c654ff2 NC |
611 | |
612 | #endif | |
613 | ||
9ec7171b | 614 | #if defined(WIN32) || defined(__SYMBIAN32__) || defined(VMS) |
255164ba | 615 | PERL_CALLCONV int Perl_do_aspawn(pTHX_ SV* really, SV** mark, SV** sp) |
255164ba DM |
616 | __attribute__nonnull__(pTHX_2) |
617 | __attribute__nonnull__(pTHX_3); | |
7918f24d | 618 | #define PERL_ARGS_ASSERT_DO_ASPAWN \ |
a3e405b2 | 619 | assert(mark); assert(sp) |
255164ba DM |
620 | |
621 | PERL_CALLCONV int Perl_do_spawn(pTHX_ char* cmd) | |
622 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
623 | #define PERL_ARGS_ASSERT_DO_SPAWN \ |
624 | assert(cmd) | |
255164ba DM |
625 | |
626 | PERL_CALLCONV int Perl_do_spawn_nowait(pTHX_ char* cmd) | |
627 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
628 | #define PERL_ARGS_ASSERT_DO_SPAWN_NOWAIT \ |
629 | assert(cmd) | |
255164ba | 630 | |
54725af6 | 631 | #endif |
864dbfa3 | 632 | #if !defined(WIN32) |
4048f010 | 633 | PERL_CALLCONV bool Perl_do_exec3(pTHX_ const char *incmd, int fd, int do_report) |
255164ba | 634 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
635 | #define PERL_ARGS_ASSERT_DO_EXEC3 \ |
636 | assert(incmd) | |
255164ba | 637 | |
864dbfa3 | 638 | #endif |
1d7c1841 | 639 | PERL_CALLCONV void Perl_do_execfree(pTHX); |
43869a0c | 640 | #if defined(PERL_IN_DOIO_C) |
b1366aaf RGS |
641 | STATIC void S_exec_failed(pTHX_ const char *cmd, int fd, int do_report) |
642 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
643 | #define PERL_ARGS_ASSERT_EXEC_FAILED \ |
644 | assert(cmd) | |
b1366aaf | 645 | |
a0f2c8ec | 646 | #endif |
864dbfa3 | 647 | #if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM) |
fb9bf107 NC |
648 | PERL_CALLCONV I32 Perl_do_ipcctl(pTHX_ I32 optype, SV** mark, SV** sp) |
649 | __attribute__nonnull__(pTHX_2) | |
650 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
651 | #define PERL_ARGS_ASSERT_DO_IPCCTL \ |
652 | assert(mark); assert(sp) | |
fb9bf107 NC |
653 | |
654 | PERL_CALLCONV I32 Perl_do_ipcget(pTHX_ I32 optype, SV** mark, SV** sp) | |
655 | __attribute__nonnull__(pTHX_2) | |
656 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
657 | #define PERL_ARGS_ASSERT_DO_IPCGET \ |
658 | assert(mark); assert(sp) | |
fb9bf107 NC |
659 | |
660 | PERL_CALLCONV I32 Perl_do_msgrcv(pTHX_ SV** mark, SV** sp) | |
661 | __attribute__nonnull__(pTHX_1) | |
662 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
663 | #define PERL_ARGS_ASSERT_DO_MSGRCV \ |
664 | assert(mark); assert(sp) | |
fb9bf107 NC |
665 | |
666 | PERL_CALLCONV I32 Perl_do_msgsnd(pTHX_ SV** mark, SV** sp) | |
667 | __attribute__nonnull__(pTHX_1) | |
668 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
669 | #define PERL_ARGS_ASSERT_DO_MSGSND \ |
670 | assert(mark); assert(sp) | |
fb9bf107 NC |
671 | |
672 | PERL_CALLCONV I32 Perl_do_semop(pTHX_ SV** mark, SV** sp) | |
673 | __attribute__nonnull__(pTHX_1) | |
674 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
675 | #define PERL_ARGS_ASSERT_DO_SEMOP \ |
676 | assert(mark); assert(sp) | |
fb9bf107 NC |
677 | |
678 | PERL_CALLCONV I32 Perl_do_shmio(pTHX_ I32 optype, SV** mark, SV** sp) | |
679 | __attribute__nonnull__(pTHX_2) | |
680 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
681 | #define PERL_ARGS_ASSERT_DO_SHMIO \ |
682 | assert(mark); assert(sp) | |
fb9bf107 | 683 | |
0cb96387 | 684 | #endif |
4048f010 | 685 | PERL_CALLCONV void Perl_do_join(pTHX_ SV *sv, SV *delim, SV **mark, SV **sp) |
abb2c242 JH |
686 | __attribute__nonnull__(pTHX_1) |
687 | __attribute__nonnull__(pTHX_2) | |
688 | __attribute__nonnull__(pTHX_3) | |
689 | __attribute__nonnull__(pTHX_4); | |
7918f24d NC |
690 | #define PERL_ARGS_ASSERT_DO_JOIN \ |
691 | assert(sv); assert(delim); assert(mark); assert(sp) | |
f54cb97a | 692 | |
1d7c1841 | 693 | PERL_CALLCONV OP* Perl_do_kv(pTHX); |
e4dba786 | 694 | /* PERL_CALLCONV bool Perl_do_open(pTHX_ GV* gv, const char* name, I32 len, int as_raw, int rawmode, int rawperm, PerlIO* supplied_fp) |
255164ba | 695 | __attribute__nonnull__(pTHX_1) |
e4dba786 | 696 | __attribute__nonnull__(pTHX_2); */ |
7918f24d NC |
697 | #define PERL_ARGS_ASSERT_DO_OPEN \ |
698 | assert(gv); assert(name) | |
255164ba | 699 | |
2fbb330f | 700 | PERL_CALLCONV bool Perl_do_open9(pTHX_ GV *gv, const char *name, I32 len, int as_raw, int rawmode, int rawperm, PerlIO *supplied_fp, SV *svs, I32 num) |
255164ba DM |
701 | __attribute__nonnull__(pTHX_1) |
702 | __attribute__nonnull__(pTHX_2) | |
703 | __attribute__nonnull__(pTHX_8); | |
7918f24d NC |
704 | #define PERL_ARGS_ASSERT_DO_OPEN9 \ |
705 | assert(gv); assert(name); assert(svs) | |
255164ba | 706 | |
4048f010 | 707 | PERL_CALLCONV bool Perl_do_openn(pTHX_ GV *gv, const char *oname, I32 len, int as_raw, int rawmode, int rawperm, PerlIO *supplied_fp, SV **svp, I32 num) |
255164ba DM |
708 | __attribute__nonnull__(pTHX_1) |
709 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
710 | #define PERL_ARGS_ASSERT_DO_OPENN \ |
711 | assert(gv); assert(oname) | |
255164ba | 712 | |
255164ba DM |
713 | PERL_CALLCONV bool Perl_do_print(pTHX_ SV* sv, PerlIO* fp) |
714 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
715 | #define PERL_ARGS_ASSERT_DO_PRINT \ |
716 | assert(fp) | |
255164ba DM |
717 | |
718 | PERL_CALLCONV OP* Perl_do_readline(pTHX) | |
719 | __attribute__warn_unused_result__; | |
720 | ||
721 | PERL_CALLCONV I32 Perl_do_chomp(pTHX_ SV* sv) | |
722 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
723 | #define PERL_ARGS_ASSERT_DO_CHOMP \ |
724 | assert(sv) | |
255164ba | 725 | |
1d7c1841 | 726 | PERL_CALLCONV bool Perl_do_seek(pTHX_ GV* gv, Off_t pos, int whence); |
255164ba DM |
727 | PERL_CALLCONV void Perl_do_sprintf(pTHX_ SV* sv, I32 len, SV** sarg) |
728 | __attribute__nonnull__(pTHX_1) | |
729 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
730 | #define PERL_ARGS_ASSERT_DO_SPRINTF \ |
731 | assert(sv); assert(sarg) | |
255164ba DM |
732 | |
733 | PERL_CALLCONV Off_t Perl_do_sysseek(pTHX_ GV* gv, Off_t pos, int whence) | |
734 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
735 | #define PERL_ARGS_ASSERT_DO_SYSSEEK \ |
736 | assert(gv) | |
255164ba DM |
737 | |
738 | PERL_CALLCONV Off_t Perl_do_tell(pTHX_ GV* gv) | |
739 | __attribute__warn_unused_result__ | |
740 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
741 | #define PERL_ARGS_ASSERT_DO_TELL \ |
742 | assert(gv) | |
255164ba DM |
743 | |
744 | PERL_CALLCONV I32 Perl_do_trans(pTHX_ SV* sv) | |
745 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
746 | #define PERL_ARGS_ASSERT_DO_TRANS \ |
747 | assert(sv) | |
255164ba | 748 | |
4373e329 | 749 | PERL_CALLCONV UV Perl_do_vecget(pTHX_ SV* sv, I32 offset, I32 size) |
abb2c242 | 750 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
751 | #define PERL_ARGS_ASSERT_DO_VECGET \ |
752 | assert(sv) | |
f54cb97a | 753 | |
4373e329 | 754 | PERL_CALLCONV void Perl_do_vecset(pTHX_ SV* sv) |
abb2c242 | 755 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
756 | #define PERL_ARGS_ASSERT_DO_VECSET \ |
757 | assert(sv) | |
f54cb97a | 758 | |
255164ba DM |
759 | PERL_CALLCONV void Perl_do_vop(pTHX_ I32 optype, SV* sv, SV* left, SV* right) |
760 | __attribute__nonnull__(pTHX_2) | |
761 | __attribute__nonnull__(pTHX_3) | |
762 | __attribute__nonnull__(pTHX_4); | |
7918f24d NC |
763 | #define PERL_ARGS_ASSERT_DO_VOP \ |
764 | assert(sv); assert(left); assert(right) | |
255164ba | 765 | |
850e8516 | 766 | PERL_CALLCONV OP* Perl_dofile(pTHX_ OP* term, I32 force_builtin) |
255164ba | 767 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
768 | #define PERL_ARGS_ASSERT_DOFILE \ |
769 | assert(term) | |
255164ba DM |
770 | |
771 | PERL_CALLCONV I32 Perl_dowantarray(pTHX) | |
772 | __attribute__warn_unused_result__; | |
773 | ||
1d7c1841 | 774 | PERL_CALLCONV void Perl_dump_all(pTHX); |
f0e3f042 | 775 | PERL_CALLCONV void Perl_dump_all_perl(pTHX_ bool justperl); |
1d7c1841 | 776 | PERL_CALLCONV void Perl_dump_eval(pTHX); |
864dbfa3 | 777 | #if defined(DUMP_FDS) |
9a957fbc AL |
778 | PERL_CALLCONV void Perl_dump_fds(pTHX_ char* s) |
779 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
780 | #define PERL_ARGS_ASSERT_DUMP_FDS \ |
781 | assert(s) | |
9a957fbc | 782 | |
0cb96387 | 783 | #endif |
9a957fbc AL |
784 | PERL_CALLCONV void Perl_dump_form(pTHX_ const GV* gv) |
785 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
786 | #define PERL_ARGS_ASSERT_DUMP_FORM \ |
787 | assert(gv) | |
9a957fbc | 788 | |
255164ba DM |
789 | PERL_CALLCONV void Perl_gv_dump(pTHX_ GV* gv) |
790 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
791 | #define PERL_ARGS_ASSERT_GV_DUMP \ |
792 | assert(gv) | |
255164ba | 793 | |
4048f010 | 794 | PERL_CALLCONV void Perl_op_dump(pTHX_ const OP *o) |
255164ba | 795 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
796 | #define PERL_ARGS_ASSERT_OP_DUMP \ |
797 | assert(o) | |
255164ba | 798 | |
1d7c1841 | 799 | PERL_CALLCONV void Perl_pmop_dump(pTHX_ PMOP* pm); |
9a957fbc AL |
800 | PERL_CALLCONV void Perl_dump_packsubs(pTHX_ const HV* stash) |
801 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
802 | #define PERL_ARGS_ASSERT_DUMP_PACKSUBS \ |
803 | assert(stash) | |
9a957fbc | 804 | |
f0e3f042 CS |
805 | PERL_CALLCONV void Perl_dump_packsubs_perl(pTHX_ const HV* stash, bool justperl) |
806 | __attribute__nonnull__(pTHX_1); | |
807 | #define PERL_ARGS_ASSERT_DUMP_PACKSUBS_PERL \ | |
808 | assert(stash) | |
809 | ||
f54cb97a | 810 | PERL_CALLCONV void Perl_dump_sub(pTHX_ const GV* gv) |
abb2c242 | 811 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
812 | #define PERL_ARGS_ASSERT_DUMP_SUB \ |
813 | assert(gv) | |
f54cb97a | 814 | |
f0e3f042 CS |
815 | PERL_CALLCONV void Perl_dump_sub_perl(pTHX_ const GV* gv, bool justperl) |
816 | __attribute__nonnull__(pTHX_1); | |
817 | #define PERL_ARGS_ASSERT_DUMP_SUB_PERL \ | |
818 | assert(gv) | |
819 | ||
255164ba DM |
820 | PERL_CALLCONV void Perl_fbm_compile(pTHX_ SV* sv, U32 flags) |
821 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
822 | #define PERL_ARGS_ASSERT_FBM_COMPILE \ |
823 | assert(sv) | |
255164ba | 824 | |
9f6cc744 | 825 | PERL_CALLCONV char* Perl_fbm_instr(pTHX_ unsigned char* big, unsigned char* bigend, SV* littlestr, U32 flags) |
255164ba DM |
826 | __attribute__warn_unused_result__ |
827 | __attribute__nonnull__(pTHX_1) | |
828 | __attribute__nonnull__(pTHX_2) | |
829 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
830 | #define PERL_ARGS_ASSERT_FBM_INSTR \ |
831 | assert(big); assert(bigend); assert(littlestr) | |
255164ba | 832 | |
fb9bf107 NC |
833 | PERL_CALLCONV char* Perl_find_script(pTHX_ const char *scriptname, bool dosearch, const char *const *const search_ext, I32 flags) |
834 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
835 | #define PERL_ARGS_ASSERT_FIND_SCRIPT \ |
836 | assert(scriptname) | |
fb9bf107 | 837 | |
43869a0c | 838 | #if defined(PERL_IN_OP_C) |
b7783a12 NC |
839 | STATIC OP* S_force_list(pTHX_ OP* arg); |
840 | STATIC OP* S_fold_constants(pTHX_ OP *o) | |
abb2c242 | 841 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
842 | #define PERL_ARGS_ASSERT_FOLD_CONSTANTS \ |
843 | assert(o) | |
f54cb97a | 844 | |
b7783a12 | 845 | #endif |
894356b3 | 846 | PERL_CALLCONV char* Perl_form(pTHX_ const char* pat, ...) |
aec46f14 AL |
847 | __attribute__format__(__printf__,pTHX_1,pTHX_2) |
848 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
849 | #define PERL_ARGS_ASSERT_FORM \ |
850 | assert(pat) | |
aec46f14 AL |
851 | |
852 | PERL_CALLCONV char* Perl_vform(pTHX_ const char* pat, va_list* args) | |
853 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
854 | #define PERL_ARGS_ASSERT_VFORM \ |
855 | assert(pat) | |
f54cb97a | 856 | |
1d7c1841 | 857 | PERL_CALLCONV void Perl_free_tmps(pTHX); |
43869a0c | 858 | #if defined(PERL_IN_OP_C) |
b7783a12 | 859 | STATIC OP* S_gen_constant_list(pTHX_ OP* o); |
0da8eb3a | 860 | #endif |
864dbfa3 | 861 | #if !defined(HAS_GETENV_LEN) |
9f6cc744 | 862 | PERL_CALLCONV char* Perl_getenv_len(pTHX_ const char *env_elem, unsigned long *len) |
8772537c AL |
863 | __attribute__nonnull__(pTHX_1) |
864 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
865 | #define PERL_ARGS_ASSERT_GETENV_LEN \ |
866 | assert(env_elem); assert(len) | |
8772537c | 867 | |
0cb96387 | 868 | #endif |
005a8a35 NC |
869 | PERL_CALLCONV void Perl_get_db_sub(pTHX_ SV **svp, CV *cv) |
870 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
871 | #define PERL_ARGS_ASSERT_GET_DB_SUB \ |
872 | assert(cv) | |
005a8a35 | 873 | |
1d7c1841 GS |
874 | PERL_CALLCONV void Perl_gp_free(pTHX_ GV* gv); |
875 | PERL_CALLCONV GP* Perl_gp_ref(pTHX_ GP* gp); | |
bb85b28a NC |
876 | PERL_CALLCONV GV* Perl_gv_add_by_type(pTHX_ GV *gv, svtype type); |
877 | /* PERL_CALLCONV GV* Perl_gv_AVadd(pTHX_ GV *gv); */ | |
878 | /* PERL_CALLCONV GV* Perl_gv_HVadd(pTHX_ GV *gv); */ | |
879 | /* PERL_CALLCONV GV* Perl_gv_IOadd(pTHX_ GV* gv); */ | |
a28509cc AL |
880 | PERL_CALLCONV GV* Perl_gv_autoload4(pTHX_ HV* stash, const char* name, STRLEN len, I32 method) |
881 | __attribute__warn_unused_result__ | |
882 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
883 | #define PERL_ARGS_ASSERT_GV_AUTOLOAD4 \ |
884 | assert(name) | |
a28509cc | 885 | |
1146e912 | 886 | PERL_CALLCONV void Perl_gv_check(pTHX_ const HV* stash) |
46c461b5 | 887 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
888 | #define PERL_ARGS_ASSERT_GV_CHECK \ |
889 | assert(stash) | |
46c461b5 AL |
890 | |
891 | PERL_CALLCONV void Perl_gv_efullname(pTHX_ SV* sv, const GV* gv) | |
892 | __attribute__nonnull__(pTHX_1) | |
893 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
894 | #define PERL_ARGS_ASSERT_GV_EFULLNAME \ |
895 | assert(sv); assert(gv) | |
46c461b5 AL |
896 | |
897 | /* PERL_CALLCONV void Perl_gv_efullname3(pTHX_ SV* sv, const GV* gv, const char* prefix) | |
898 | __attribute__nonnull__(pTHX_1) | |
899 | __attribute__nonnull__(pTHX_2); */ | |
7918f24d NC |
900 | #define PERL_ARGS_ASSERT_GV_EFULLNAME3 \ |
901 | assert(sv); assert(gv) | |
46c461b5 AL |
902 | |
903 | PERL_CALLCONV void Perl_gv_efullname4(pTHX_ SV* sv, const GV* gv, const char* prefix, bool keepmain) | |
904 | __attribute__nonnull__(pTHX_1) | |
905 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
906 | #define PERL_ARGS_ASSERT_GV_EFULLNAME4 \ |
907 | assert(sv); assert(gv) | |
46c461b5 | 908 | |
53c1dcc0 AL |
909 | PERL_CALLCONV GV* Perl_gv_fetchfile(pTHX_ const char* name) |
910 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
911 | #define PERL_ARGS_ASSERT_GV_FETCHFILE \ |
912 | assert(name) | |
53c1dcc0 | 913 | |
d9095cec NC |
914 | PERL_CALLCONV GV* Perl_gv_fetchfile_flags(pTHX_ const char *const name, const STRLEN len, const U32 flags) |
915 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
916 | #define PERL_ARGS_ASSERT_GV_FETCHFILE_FLAGS \ |
917 | assert(name) | |
d9095cec | 918 | |
fb9bf107 NC |
919 | PERL_CALLCONV GV* Perl_gv_fetchmeth(pTHX_ HV* stash, const char* name, STRLEN len, I32 level) |
920 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
921 | #define PERL_ARGS_ASSERT_GV_FETCHMETH \ |
922 | assert(name) | |
fb9bf107 NC |
923 | |
924 | PERL_CALLCONV GV* Perl_gv_fetchmeth_autoload(pTHX_ HV* stash, const char* name, STRLEN len, I32 level) | |
925 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
926 | #define PERL_ARGS_ASSERT_GV_FETCHMETH_AUTOLOAD \ |
927 | assert(name) | |
fb9bf107 | 928 | |
887986eb | 929 | /* PERL_CALLCONV GV* Perl_gv_fetchmethod(pTHX_ HV* stash, const char* name) |
eff494dd | 930 | __attribute__nonnull__(pTHX_1) |
887986eb | 931 | __attribute__nonnull__(pTHX_2); */ |
7918f24d | 932 | #define PERL_ARGS_ASSERT_GV_FETCHMETHOD \ |
eff494dd | 933 | assert(stash); assert(name) |
fb9bf107 NC |
934 | |
935 | PERL_CALLCONV GV* Perl_gv_fetchmethod_autoload(pTHX_ HV* stash, const char* name, I32 autoload) | |
eff494dd | 936 | __attribute__nonnull__(pTHX_1) |
fb9bf107 | 937 | __attribute__nonnull__(pTHX_2); |
7918f24d | 938 | #define PERL_ARGS_ASSERT_GV_FETCHMETHOD_AUTOLOAD \ |
eff494dd | 939 | assert(stash); assert(name) |
fb9bf107 | 940 | |
256d1bb2 | 941 | PERL_CALLCONV GV* Perl_gv_fetchmethod_flags(pTHX_ HV* stash, const char* name, U32 flags) |
eff494dd | 942 | __attribute__nonnull__(pTHX_1) |
256d1bb2 NC |
943 | __attribute__nonnull__(pTHX_2); |
944 | #define PERL_ARGS_ASSERT_GV_FETCHMETHOD_FLAGS \ | |
eff494dd | 945 | assert(stash); assert(name) |
256d1bb2 | 946 | |
fe9845cc | 947 | PERL_CALLCONV GV* Perl_gv_fetchpv(pTHX_ const char *nambeg, I32 add, const svtype sv_type) |
9a957fbc | 948 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
949 | #define PERL_ARGS_ASSERT_GV_FETCHPV \ |
950 | assert(nambeg) | |
9a957fbc AL |
951 | |
952 | PERL_CALLCONV void Perl_gv_fullname(pTHX_ SV* sv, const GV* gv) | |
953 | __attribute__nonnull__(pTHX_1) | |
954 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
955 | #define PERL_ARGS_ASSERT_GV_FULLNAME \ |
956 | assert(sv); assert(gv) | |
9a957fbc AL |
957 | |
958 | /* PERL_CALLCONV void Perl_gv_fullname3(pTHX_ SV* sv, const GV* gv, const char* prefix) | |
959 | __attribute__nonnull__(pTHX_1) | |
960 | __attribute__nonnull__(pTHX_2); */ | |
7918f24d NC |
961 | #define PERL_ARGS_ASSERT_GV_FULLNAME3 \ |
962 | assert(sv); assert(gv) | |
9a957fbc AL |
963 | |
964 | PERL_CALLCONV void Perl_gv_fullname4(pTHX_ SV* sv, const GV* gv, const char* prefix, bool keepmain) | |
965 | __attribute__nonnull__(pTHX_1) | |
966 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
967 | #define PERL_ARGS_ASSERT_GV_FULLNAME4 \ |
968 | assert(sv); assert(gv) | |
9a957fbc | 969 | |
12816592 NC |
970 | PERL_CALLCONV GP * Perl_newGP(pTHX_ GV *const gv) |
971 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
972 | #define PERL_ARGS_ASSERT_NEWGP \ |
973 | assert(gv) | |
12816592 | 974 | |
803f2748 DM |
975 | PERL_CALLCONV void Perl_cvgv_set(pTHX_ CV* cv, GV* gv) |
976 | __attribute__nonnull__(pTHX_1); | |
977 | #define PERL_ARGS_ASSERT_CVGV_SET \ | |
978 | assert(cv) | |
979 | ||
53c1dcc0 AL |
980 | PERL_CALLCONV void Perl_gv_init(pTHX_ GV* gv, HV* stash, const char* name, STRLEN len, int multi) |
981 | __attribute__nonnull__(pTHX_1) | |
53c1dcc0 | 982 | __attribute__nonnull__(pTHX_3); |
7918f24d NC |
983 | #define PERL_ARGS_ASSERT_GV_INIT \ |
984 | assert(gv); assert(name) | |
53c1dcc0 | 985 | |
f5c1e807 | 986 | PERL_CALLCONV void Perl_gv_name_set(pTHX_ GV* gv, const char *name, U32 len, U32 flags) |
9f616d01 MHM |
987 | __attribute__nonnull__(pTHX_1) |
988 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
989 | #define PERL_ARGS_ASSERT_GV_NAME_SET \ |
990 | assert(gv); assert(name) | |
f5c1e807 | 991 | |
f7461760 Z |
992 | PERL_CALLCONV void Perl_gv_try_downgrade(pTHX_ GV* gv) |
993 | __attribute__nonnull__(pTHX_1); | |
994 | #define PERL_ARGS_ASSERT_GV_TRY_DOWNGRADE \ | |
995 | assert(gv) | |
996 | ||
da51bb9b | 997 | PERL_CALLCONV HV* Perl_gv_stashpv(pTHX_ const char* name, I32 flags) |
aa924a5a | 998 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
999 | #define PERL_ARGS_ASSERT_GV_STASHPV \ |
1000 | assert(name) | |
aa924a5a | 1001 | |
da51bb9b | 1002 | PERL_CALLCONV HV* Perl_gv_stashpvn(pTHX_ const char* name, U32 namelen, I32 flags) |
aa924a5a | 1003 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1004 | #define PERL_ARGS_ASSERT_GV_STASHPVN \ |
1005 | assert(name) | |
aa924a5a | 1006 | |
8798655d NC |
1007 | PERL_CALLCONV HV* Perl_gv_stashsv(pTHX_ SV* sv, I32 flags) |
1008 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
1009 | #define PERL_ARGS_ASSERT_GV_STASHSV \ |
1010 | assert(sv) | |
8798655d | 1011 | |
4048f010 | 1012 | PERL_CALLCONV void Perl_hv_clear(pTHX_ HV *hv); |
defdfed5 Z |
1013 | PERL_CALLCONV HV * Perl_hv_copy_hints_hv(pTHX_ HV *const ohv) |
1014 | __attribute__warn_unused_result__; | |
1015 | ||
4048f010 | 1016 | PERL_CALLCONV void Perl_hv_delayfree_ent(pTHX_ HV *hv, HE *entry) |
aa924a5a | 1017 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1018 | #define PERL_ARGS_ASSERT_HV_DELAYFREE_ENT \ |
1019 | assert(hv) | |
aa924a5a | 1020 | |
4048f010 | 1021 | /* PERL_CALLCONV SV* Perl_hv_delete(pTHX_ HV *hv, const char *key, I32 klen, I32 flags) |
a038e571 | 1022 | __attribute__nonnull__(pTHX_2); */ |
7918f24d NC |
1023 | #define PERL_ARGS_ASSERT_HV_DELETE \ |
1024 | assert(key) | |
aa924a5a | 1025 | |
4048f010 | 1026 | /* PERL_CALLCONV SV* Perl_hv_delete_ent(pTHX_ HV *hv, SV *keysv, I32 flags, U32 hash) |
4c2df08c | 1027 | __attribute__nonnull__(pTHX_2); */ |
7918f24d NC |
1028 | #define PERL_ARGS_ASSERT_HV_DELETE_ENT \ |
1029 | assert(keysv) | |
aa924a5a | 1030 | |
4048f010 | 1031 | /* PERL_CALLCONV bool Perl_hv_exists(pTHX_ HV *hv, const char *key, I32 klen) |
aa924a5a | 1032 | __attribute__warn_unused_result__ |
a038e571 | 1033 | __attribute__nonnull__(pTHX_2); */ |
7918f24d NC |
1034 | #define PERL_ARGS_ASSERT_HV_EXISTS \ |
1035 | assert(key) | |
901017d6 | 1036 | |
4048f010 | 1037 | /* PERL_CALLCONV bool Perl_hv_exists_ent(pTHX_ HV *hv, SV *keysv, U32 hash) |
aa924a5a | 1038 | __attribute__warn_unused_result__ |
4c2df08c | 1039 | __attribute__nonnull__(pTHX_2); */ |
7918f24d NC |
1040 | #define PERL_ARGS_ASSERT_HV_EXISTS_ENT \ |
1041 | assert(keysv) | |
aa924a5a | 1042 | |
4048f010 | 1043 | /* PERL_CALLCONV SV** Perl_hv_fetch(pTHX_ HV *hv, const char *key, I32 klen, I32 lval) |
a038e571 | 1044 | __attribute__nonnull__(pTHX_2); */ |
7918f24d NC |
1045 | #define PERL_ARGS_ASSERT_HV_FETCH \ |
1046 | assert(key) | |
901017d6 | 1047 | |
4048f010 | 1048 | /* PERL_CALLCONV HE* Perl_hv_fetch_ent(pTHX_ HV *hv, SV *keysv, I32 lval, U32 hash) |
4c2df08c | 1049 | __attribute__nonnull__(pTHX_2); */ |
7918f24d NC |
1050 | #define PERL_ARGS_ASSERT_HV_FETCH_ENT \ |
1051 | assert(keysv) | |
aa924a5a | 1052 | |
4048f010 | 1053 | PERL_CALLCONV void* Perl_hv_common(pTHX_ HV *hv, SV *keysv, const char* key, STRLEN klen, int flags, int action, SV *val, U32 hash); |
a038e571 NC |
1054 | PERL_CALLCONV void* Perl_hv_common_key_len(pTHX_ HV *hv, const char *key, I32 klen_i32, const int action, SV *val, const U32 hash) |
1055 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1056 | #define PERL_ARGS_ASSERT_HV_COMMON_KEY_LEN \ |
1057 | assert(key) | |
a038e571 | 1058 | |
4d0fbddd NC |
1059 | PERL_CALLCONV STRLEN Perl_hv_fill(pTHX_ HV const *const hv) |
1060 | __attribute__nonnull__(pTHX_1); | |
1061 | #define PERL_ARGS_ASSERT_HV_FILL \ | |
1062 | assert(hv) | |
1063 | ||
4048f010 | 1064 | PERL_CALLCONV void Perl_hv_free_ent(pTHX_ HV *hv, HE *entryK) |
abb2c242 | 1065 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1066 | #define PERL_ARGS_ASSERT_HV_FREE_ENT \ |
1067 | assert(hv) | |
a3b680e6 | 1068 | |
4048f010 | 1069 | PERL_CALLCONV I32 Perl_hv_iterinit(pTHX_ HV *hv) |
abb2c242 | 1070 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1071 | #define PERL_ARGS_ASSERT_HV_ITERINIT \ |
1072 | assert(hv) | |
a3b680e6 AL |
1073 | |
1074 | PERL_CALLCONV char* Perl_hv_iterkey(pTHX_ HE* entry, I32* retlen) | |
abb2c242 JH |
1075 | __attribute__warn_unused_result__ |
1076 | __attribute__nonnull__(pTHX_1) | |
1077 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1078 | #define PERL_ARGS_ASSERT_HV_ITERKEY \ |
1079 | assert(entry); assert(retlen) | |
a3b680e6 AL |
1080 | |
1081 | PERL_CALLCONV SV* Perl_hv_iterkeysv(pTHX_ HE* entry) | |
abb2c242 JH |
1082 | __attribute__warn_unused_result__ |
1083 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
1084 | #define PERL_ARGS_ASSERT_HV_ITERKEYSV \ |
1085 | assert(entry) | |
a3b680e6 | 1086 | |
4048f010 | 1087 | /* PERL_CALLCONV HE* Perl_hv_iternext(pTHX_ HV *hv) |
abb2c242 | 1088 | __attribute__warn_unused_result__ |
7a7b9979 | 1089 | __attribute__nonnull__(pTHX_1); */ |
7918f24d NC |
1090 | #define PERL_ARGS_ASSERT_HV_ITERNEXT \ |
1091 | assert(hv) | |
a3b680e6 | 1092 | |
4048f010 | 1093 | PERL_CALLCONV SV* Perl_hv_iternextsv(pTHX_ HV *hv, char **key, I32 *retlen) |
abb2c242 JH |
1094 | __attribute__warn_unused_result__ |
1095 | __attribute__nonnull__(pTHX_1) | |
1096 | __attribute__nonnull__(pTHX_2) | |
1097 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
1098 | #define PERL_ARGS_ASSERT_HV_ITERNEXTSV \ |
1099 | assert(hv); assert(key); assert(retlen) | |
a3b680e6 | 1100 | |
4048f010 | 1101 | PERL_CALLCONV HE* Perl_hv_iternext_flags(pTHX_ HV *hv, I32 flags) |
abb2c242 JH |
1102 | __attribute__warn_unused_result__ |
1103 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
1104 | #define PERL_ARGS_ASSERT_HV_ITERNEXT_FLAGS \ |
1105 | assert(hv) | |
a3b680e6 | 1106 | |
4048f010 | 1107 | PERL_CALLCONV SV* Perl_hv_iterval(pTHX_ HV *hv, HE *entry) |
abb2c242 JH |
1108 | __attribute__warn_unused_result__ |
1109 | __attribute__nonnull__(pTHX_1) | |
1110 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1111 | #define PERL_ARGS_ASSERT_HV_ITERVAL \ |
1112 | assert(hv); assert(entry) | |
a3b680e6 | 1113 | |
4048f010 | 1114 | PERL_CALLCONV void Perl_hv_ksplit(pTHX_ HV *hv, IV newmax) |
abb2c242 | 1115 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1116 | #define PERL_ARGS_ASSERT_HV_KSPLIT \ |
1117 | assert(hv) | |
a3b680e6 | 1118 | |
4048f010 | 1119 | /* PERL_CALLCONV void Perl_hv_magic(pTHX_ HV *hv, GV *gv, int how) |
bc5cdc23 | 1120 | __attribute__nonnull__(pTHX_1); */ |
7918f24d NC |
1121 | #define PERL_ARGS_ASSERT_HV_MAGIC \ |
1122 | assert(hv) | |
fb9bf107 | 1123 | |
b3ca2e83 | 1124 | PERL_CALLCONV HV * Perl_refcounted_he_chain_2hv(pTHX_ const struct refcounted_he *c); |
18759386 | 1125 | PERL_CALLCONV SV * Perl_refcounted_he_fetch(pTHX_ const struct refcounted_he *chain, SV *keysv, const char *key, STRLEN klen, int flags, U32 hash); |
b3ca2e83 | 1126 | PERL_CALLCONV void Perl_refcounted_he_free(pTHX_ struct refcounted_he *he); |
b46c265e | 1127 | PERL_CALLCONV struct refcounted_he * Perl_refcounted_he_new(pTHX_ struct refcounted_he *const parent, SV *const key, SV *const value); |
43869a0c | 1128 | #if defined(PERL_IN_HV_C) |
012da8e5 NC |
1129 | STATIC struct refcounted_he * S_refcounted_he_new_common(pTHX_ struct refcounted_he *const parent, const char *const key_p, const STRLEN key_len, const char flags, char value_type, const void *value, const STRLEN value_len) |
1130 | __attribute__nonnull__(pTHX_2) | |
1131 | __attribute__nonnull__(pTHX_6); | |
1132 | #define PERL_ARGS_ASSERT_REFCOUNTED_HE_NEW_COMMON \ | |
1133 | assert(key_p); assert(value) | |
1134 | ||
1135 | #endif | |
4048f010 NC |
1136 | /* PERL_CALLCONV SV** Perl_hv_store(pTHX_ HV *hv, const char *key, I32 klen, SV *val, U32 hash); */ |
1137 | /* PERL_CALLCONV HE* Perl_hv_store_ent(pTHX_ HV *hv, SV *key, SV *val, U32 hash); */ | |
1138 | /* PERL_CALLCONV SV** Perl_hv_store_flags(pTHX_ HV *hv, const char *key, I32 klen, SV *val, U32 hash, int flags); */ | |
1139 | PERL_CALLCONV void Perl_hv_undef(pTHX_ HV *hv); | |
e6226b18 KW |
1140 | /* PERL_CALLCONV I32 ibcmp(pTHX_ const char* a, const char* b, I32 len) |
1141 | __attribute__nonnull__(pTHX_1) | |
1142 | __attribute__nonnull__(pTHX_2); */ | |
1143 | ||
1144 | PERL_CALLCONV I32 Perl_foldEQ(const char* a, const char* b, I32 len) | |
abb2c242 | 1145 | __attribute__pure__ |
04c9e624 VP |
1146 | __attribute__nonnull__(1) |
1147 | __attribute__nonnull__(2); | |
e6226b18 | 1148 | #define PERL_ARGS_ASSERT_FOLDEQ \ |
7918f24d | 1149 | assert(a); assert(b) |
f54cb97a | 1150 | |
e6226b18 KW |
1151 | /* PERL_CALLCONV I32 ibcmp_locale(pTHX_ const char* a, const char* b, I32 len) |
1152 | __attribute__nonnull__(pTHX_1) | |
1153 | __attribute__nonnull__(pTHX_2); */ | |
1154 | ||
1155 | PERL_CALLCONV I32 Perl_foldEQ_locale(const char* a, const char* b, I32 len) | |
abb2c242 | 1156 | __attribute__pure__ |
04c9e624 VP |
1157 | __attribute__nonnull__(1) |
1158 | __attribute__nonnull__(2); | |
e6226b18 | 1159 | #define PERL_ARGS_ASSERT_FOLDEQ_LOCALE \ |
7918f24d | 1160 | assert(a); assert(b) |
f54cb97a | 1161 | |
e6226b18 KW |
1162 | /* PERL_CALLCONV I32 ibcmp_utf8(pTHX_ const char *s1, char **pe1, UV l1, bool u1, const char *s2, char **pe2, UV l2, bool u2) |
1163 | __attribute__nonnull__(pTHX_1) | |
1164 | __attribute__nonnull__(pTHX_5); */ | |
1165 | ||
1166 | PERL_CALLCONV I32 Perl_foldEQ_utf8(pTHX_ const char *s1, char **pe1, UV l1, bool u1, const char *s2, char **pe2, UV l2, bool u2) | |
abb2c242 JH |
1167 | __attribute__nonnull__(pTHX_1) |
1168 | __attribute__nonnull__(pTHX_5); | |
e6226b18 | 1169 | #define PERL_ARGS_ASSERT_FOLDEQ_UTF8 \ |
7918f24d | 1170 | assert(s1); assert(s2) |
f54cb97a | 1171 | |
43869a0c | 1172 | #if defined(PERL_IN_DOIO_C) |
0da8eb3a | 1173 | STATIC bool S_ingroup(pTHX_ Gid_t testgid, bool effective) |
abb2c242 | 1174 | __attribute__warn_unused_result__; |
f54cb97a | 1175 | |
0da8eb3a | 1176 | #endif |
4373e329 | 1177 | PERL_CALLCONV void Perl_init_argv_symbols(pTHX_ int argc, char **argv) |
abb2c242 | 1178 | __attribute__nonnull__(pTHX_2); |
7918f24d NC |
1179 | #define PERL_ARGS_ASSERT_INIT_ARGV_SYMBOLS \ |
1180 | assert(argv) | |
f54cb97a | 1181 | |
8af6f985 | 1182 | PERL_CALLCONV void Perl_init_dbargs(pTHX); |
1d7c1841 GS |
1183 | PERL_CALLCONV void Perl_init_debugger(pTHX); |
1184 | PERL_CALLCONV void Perl_init_stacks(pTHX); | |
bfce84ec AL |
1185 | PERL_CALLCONV void Perl_init_tm(pTHX_ struct tm *ptm) |
1186 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
1187 | #define PERL_ARGS_ASSERT_INIT_TM \ |
1188 | assert(ptm) | |
bfce84ec | 1189 | |
1d7c1841 | 1190 | PERL_CALLCONV U32 Perl_intro_my(pTHX); |
04c9e624 | 1191 | PERL_CALLCONV char* Perl_instr(const char* big, const char* little) |
b464bac0 | 1192 | __attribute__warn_unused_result__ |
abb2c242 | 1193 | __attribute__pure__ |
04c9e624 VP |
1194 | __attribute__nonnull__(1) |
1195 | __attribute__nonnull__(2); | |
7918f24d NC |
1196 | #define PERL_ARGS_ASSERT_INSTR \ |
1197 | assert(big); assert(little) | |
f54cb97a | 1198 | |
b464bac0 | 1199 | PERL_CALLCONV bool Perl_io_close(pTHX_ IO* io, bool not_implicit) |
b464bac0 | 1200 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1201 | #define PERL_ARGS_ASSERT_IO_CLOSE \ |
1202 | assert(io) | |
b464bac0 AL |
1203 | |
1204 | PERL_CALLCONV OP* Perl_invert(pTHX_ OP* cmd) | |
1205 | __attribute__warn_unused_result__; | |
1206 | ||
f54cb97a | 1207 | PERL_CALLCONV I32 Perl_is_lvalue_sub(pTHX) |
abb2c242 | 1208 | __attribute__warn_unused_result__; |
f54cb97a AL |
1209 | |
1210 | PERL_CALLCONV U32 Perl_to_uni_upper_lc(pTHX_ U32 c) | |
abb2c242 JH |
1211 | __attribute__warn_unused_result__ |
1212 | __attribute__pure__; | |
f54cb97a AL |
1213 | |
1214 | PERL_CALLCONV U32 Perl_to_uni_title_lc(pTHX_ U32 c) | |
abb2c242 JH |
1215 | __attribute__warn_unused_result__ |
1216 | __attribute__pure__; | |
f54cb97a AL |
1217 | |
1218 | PERL_CALLCONV U32 Perl_to_uni_lower_lc(pTHX_ U32 c) | |
abb2c242 JH |
1219 | __attribute__warn_unused_result__ |
1220 | __attribute__pure__; | |
f54cb97a AL |
1221 | |
1222 | PERL_CALLCONV bool Perl_is_uni_alnum(pTHX_ UV c) | |
abb2c242 JH |
1223 | __attribute__warn_unused_result__ |
1224 | __attribute__pure__; | |
f54cb97a | 1225 | |
f54cb97a | 1226 | PERL_CALLCONV bool Perl_is_uni_idfirst(pTHX_ UV c) |
abb2c242 JH |
1227 | __attribute__warn_unused_result__ |
1228 | __attribute__pure__; | |
f54cb97a AL |
1229 | |
1230 | PERL_CALLCONV bool Perl_is_uni_alpha(pTHX_ UV c) | |
abb2c242 JH |
1231 | __attribute__warn_unused_result__ |
1232 | __attribute__pure__; | |
f54cb97a AL |
1233 | |
1234 | PERL_CALLCONV bool Perl_is_uni_ascii(pTHX_ UV c) | |
abb2c242 JH |
1235 | __attribute__warn_unused_result__ |
1236 | __attribute__pure__; | |
f54cb97a AL |
1237 | |
1238 | PERL_CALLCONV bool Perl_is_uni_space(pTHX_ UV c) | |
abb2c242 JH |
1239 | __attribute__warn_unused_result__ |
1240 | __attribute__pure__; | |
f54cb97a AL |
1241 | |
1242 | PERL_CALLCONV bool Perl_is_uni_cntrl(pTHX_ UV c) | |
abb2c242 JH |
1243 | __attribute__warn_unused_result__ |
1244 | __attribute__pure__; | |
f54cb97a AL |
1245 | |
1246 | PERL_CALLCONV bool Perl_is_uni_graph(pTHX_ UV c) | |
abb2c242 JH |
1247 | __attribute__warn_unused_result__ |
1248 | __attribute__pure__; | |
f54cb97a AL |
1249 | |
1250 | PERL_CALLCONV bool Perl_is_uni_digit(pTHX_ UV c) | |
abb2c242 JH |
1251 | __attribute__warn_unused_result__ |
1252 | __attribute__pure__; | |
f54cb97a AL |
1253 | |
1254 | PERL_CALLCONV bool Perl_is_uni_upper(pTHX_ UV c) | |
abb2c242 JH |
1255 | __attribute__warn_unused_result__ |
1256 | __attribute__pure__; | |
f54cb97a AL |
1257 | |
1258 | PERL_CALLCONV bool Perl_is_uni_lower(pTHX_ UV c) | |
abb2c242 JH |
1259 | __attribute__warn_unused_result__ |
1260 | __attribute__pure__; | |
f54cb97a AL |
1261 | |
1262 | PERL_CALLCONV bool Perl_is_uni_print(pTHX_ UV c) | |
abb2c242 JH |
1263 | __attribute__warn_unused_result__ |
1264 | __attribute__pure__; | |
f54cb97a AL |
1265 | |
1266 | PERL_CALLCONV bool Perl_is_uni_punct(pTHX_ UV c) | |
abb2c242 JH |
1267 | __attribute__warn_unused_result__ |
1268 | __attribute__pure__; | |
f54cb97a AL |
1269 | |
1270 | PERL_CALLCONV bool Perl_is_uni_xdigit(pTHX_ UV c) | |
abb2c242 JH |
1271 | __attribute__warn_unused_result__ |
1272 | __attribute__pure__; | |
f54cb97a | 1273 | |
4373e329 | 1274 | PERL_CALLCONV UV Perl_to_uni_upper(pTHX_ UV c, U8 *p, STRLEN *lenp) |
abb2c242 JH |
1275 | __attribute__nonnull__(pTHX_2) |
1276 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
1277 | #define PERL_ARGS_ASSERT_TO_UNI_UPPER \ |
1278 | assert(p); assert(lenp) | |
f54cb97a | 1279 | |
4373e329 | 1280 | PERL_CALLCONV UV Perl_to_uni_title(pTHX_ UV c, U8 *p, STRLEN *lenp) |
abb2c242 JH |
1281 | __attribute__nonnull__(pTHX_2) |
1282 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
1283 | #define PERL_ARGS_ASSERT_TO_UNI_TITLE \ |
1284 | assert(p); assert(lenp) | |
f54cb97a | 1285 | |
4373e329 | 1286 | PERL_CALLCONV UV Perl_to_uni_lower(pTHX_ UV c, U8 *p, STRLEN *lenp) |
abb2c242 JH |
1287 | __attribute__nonnull__(pTHX_2) |
1288 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
1289 | #define PERL_ARGS_ASSERT_TO_UNI_LOWER \ |
1290 | assert(p); assert(lenp) | |
f54cb97a | 1291 | |
4373e329 | 1292 | PERL_CALLCONV UV Perl_to_uni_fold(pTHX_ UV c, U8 *p, STRLEN *lenp) |
abb2c242 JH |
1293 | __attribute__nonnull__(pTHX_2) |
1294 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
1295 | #define PERL_ARGS_ASSERT_TO_UNI_FOLD \ |
1296 | assert(p); assert(lenp) | |
f54cb97a AL |
1297 | |
1298 | PERL_CALLCONV bool Perl_is_uni_alnum_lc(pTHX_ UV c) | |
abb2c242 JH |
1299 | __attribute__warn_unused_result__ |
1300 | __attribute__pure__; | |
f54cb97a | 1301 | |
f54cb97a | 1302 | PERL_CALLCONV bool Perl_is_uni_idfirst_lc(pTHX_ UV c) |
abb2c242 JH |
1303 | __attribute__warn_unused_result__ |
1304 | __attribute__pure__; | |
f54cb97a AL |
1305 | |
1306 | PERL_CALLCONV bool Perl_is_uni_alpha_lc(pTHX_ UV c) | |
abb2c242 JH |
1307 | __attribute__warn_unused_result__ |
1308 | __attribute__pure__; | |
f54cb97a AL |
1309 | |
1310 | PERL_CALLCONV bool Perl_is_uni_ascii_lc(pTHX_ UV c) | |
abb2c242 JH |
1311 | __attribute__warn_unused_result__ |
1312 | __attribute__pure__; | |
f54cb97a AL |
1313 | |
1314 | PERL_CALLCONV bool Perl_is_uni_space_lc(pTHX_ UV c) | |
abb2c242 JH |
1315 | __attribute__warn_unused_result__ |
1316 | __attribute__pure__; | |
f54cb97a AL |
1317 | |
1318 | PERL_CALLCONV bool Perl_is_uni_cntrl_lc(pTHX_ UV c) | |
abb2c242 JH |
1319 | __attribute__warn_unused_result__ |
1320 | __attribute__pure__; | |
f54cb97a AL |
1321 | |
1322 | PERL_CALLCONV bool Perl_is_uni_graph_lc(pTHX_ UV c) | |
abb2c242 JH |
1323 | __attribute__warn_unused_result__ |
1324 | __attribute__pure__; | |
f54cb97a AL |
1325 | |
1326 | PERL_CALLCONV bool Perl_is_uni_digit_lc(pTHX_ UV c) | |
abb2c242 JH |
1327 | __attribute__warn_unused_result__ |
1328 | __attribute__pure__; | |
f54cb97a AL |
1329 | |
1330 | PERL_CALLCONV bool Perl_is_uni_upper_lc(pTHX_ UV c) | |
abb2c242 JH |
1331 | __attribute__warn_unused_result__ |
1332 | __attribute__pure__; | |
f54cb97a AL |
1333 | |
1334 | PERL_CALLCONV bool Perl_is_uni_lower_lc(pTHX_ UV c) | |
abb2c242 JH |
1335 | __attribute__warn_unused_result__ |
1336 | __attribute__pure__; | |
f54cb97a AL |
1337 | |
1338 | PERL_CALLCONV bool Perl_is_uni_print_lc(pTHX_ UV c) | |
abb2c242 JH |
1339 | __attribute__warn_unused_result__ |
1340 | __attribute__pure__; | |
f54cb97a AL |
1341 | |
1342 | PERL_CALLCONV bool Perl_is_uni_punct_lc(pTHX_ UV c) | |
abb2c242 JH |
1343 | __attribute__warn_unused_result__ |
1344 | __attribute__pure__; | |
f54cb97a AL |
1345 | |
1346 | PERL_CALLCONV bool Perl_is_uni_xdigit_lc(pTHX_ UV c) | |
abb2c242 JH |
1347 | __attribute__warn_unused_result__ |
1348 | __attribute__pure__; | |
f54cb97a | 1349 | |
668b6d8d VP |
1350 | PERL_CALLCONV bool Perl_is_ascii_string(const U8 *s, STRLEN len) |
1351 | __attribute__nonnull__(1); | |
eaf7a4d2 CS |
1352 | #define PERL_ARGS_ASSERT_IS_ASCII_STRING \ |
1353 | assert(s) | |
1354 | ||
668b6d8d VP |
1355 | PERL_CALLCONV STRLEN Perl_is_utf8_char(const U8 *s) |
1356 | __attribute__nonnull__(1); | |
7918f24d NC |
1357 | #define PERL_ARGS_ASSERT_IS_UTF8_CHAR \ |
1358 | assert(s) | |
f54cb97a | 1359 | |
668b6d8d VP |
1360 | PERL_CALLCONV bool Perl_is_utf8_string(const U8 *s, STRLEN len) |
1361 | __attribute__nonnull__(1); | |
7918f24d NC |
1362 | #define PERL_ARGS_ASSERT_IS_UTF8_STRING \ |
1363 | assert(s) | |
f54cb97a | 1364 | |
668b6d8d VP |
1365 | /* PERL_CALLCONV bool Perl_is_utf8_string_loc(const U8 *s, STRLEN len, const U8 **p) |
1366 | __attribute__nonnull__(1); */ | |
7918f24d NC |
1367 | #define PERL_ARGS_ASSERT_IS_UTF8_STRING_LOC \ |
1368 | assert(s) | |
768c67ee | 1369 | |
668b6d8d VP |
1370 | PERL_CALLCONV bool Perl_is_utf8_string_loclen(const U8 *s, STRLEN len, const U8 **ep, STRLEN *el) |
1371 | __attribute__nonnull__(1); | |
7918f24d NC |
1372 | #define PERL_ARGS_ASSERT_IS_UTF8_STRING_LOCLEN \ |
1373 | assert(s) | |
f54cb97a | 1374 | |
4373e329 | 1375 | PERL_CALLCONV bool Perl_is_utf8_alnum(pTHX_ const U8 *p) |
1df70142 | 1376 | __attribute__warn_unused_result__ |
abb2c242 | 1377 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1378 | #define PERL_ARGS_ASSERT_IS_UTF8_ALNUM \ |
1379 | assert(p) | |
f54cb97a | 1380 | |
4373e329 | 1381 | PERL_CALLCONV bool Perl_is_utf8_idfirst(pTHX_ const U8 *p) |
1df70142 | 1382 | __attribute__warn_unused_result__ |
abb2c242 | 1383 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1384 | #define PERL_ARGS_ASSERT_IS_UTF8_IDFIRST \ |
1385 | assert(p) | |
f54cb97a | 1386 | |
4373e329 | 1387 | PERL_CALLCONV bool Perl_is_utf8_idcont(pTHX_ const U8 *p) |
1df70142 | 1388 | __attribute__warn_unused_result__ |
abb2c242 | 1389 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1390 | #define PERL_ARGS_ASSERT_IS_UTF8_IDCONT \ |
1391 | assert(p) | |
f54cb97a | 1392 | |
4373e329 | 1393 | PERL_CALLCONV bool Perl_is_utf8_alpha(pTHX_ const U8 *p) |
1df70142 | 1394 | __attribute__warn_unused_result__ |
abb2c242 | 1395 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1396 | #define PERL_ARGS_ASSERT_IS_UTF8_ALPHA \ |
1397 | assert(p) | |
f54cb97a | 1398 | |
4373e329 | 1399 | PERL_CALLCONV bool Perl_is_utf8_ascii(pTHX_ const U8 *p) |
1df70142 | 1400 | __attribute__warn_unused_result__ |
abb2c242 | 1401 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1402 | #define PERL_ARGS_ASSERT_IS_UTF8_ASCII \ |
1403 | assert(p) | |
f54cb97a | 1404 | |
4373e329 | 1405 | PERL_CALLCONV bool Perl_is_utf8_space(pTHX_ const U8 *p) |
1df70142 | 1406 | __attribute__warn_unused_result__ |
abb2c242 | 1407 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1408 | #define PERL_ARGS_ASSERT_IS_UTF8_SPACE \ |
1409 | assert(p) | |
f54cb97a | 1410 | |
d1eb3177 YO |
1411 | PERL_CALLCONV bool Perl_is_utf8_perl_space(pTHX_ const U8 *p) |
1412 | __attribute__warn_unused_result__ | |
1413 | __attribute__nonnull__(pTHX_1); | |
1414 | #define PERL_ARGS_ASSERT_IS_UTF8_PERL_SPACE \ | |
1415 | assert(p) | |
1416 | ||
1417 | PERL_CALLCONV bool Perl_is_utf8_perl_word(pTHX_ const U8 *p) | |
1418 | __attribute__warn_unused_result__ | |
1419 | __attribute__nonnull__(pTHX_1); | |
1420 | #define PERL_ARGS_ASSERT_IS_UTF8_PERL_WORD \ | |
1421 | assert(p) | |
1422 | ||
4373e329 | 1423 | PERL_CALLCONV bool Perl_is_utf8_cntrl(pTHX_ const U8 *p) |
1df70142 | 1424 | __attribute__warn_unused_result__ |
abb2c242 | 1425 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1426 | #define PERL_ARGS_ASSERT_IS_UTF8_CNTRL \ |
1427 | assert(p) | |
f54cb97a | 1428 | |
4373e329 | 1429 | PERL_CALLCONV bool Perl_is_utf8_digit(pTHX_ const U8 *p) |
1df70142 | 1430 | __attribute__warn_unused_result__ |
abb2c242 | 1431 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1432 | #define PERL_ARGS_ASSERT_IS_UTF8_DIGIT \ |
1433 | assert(p) | |
f54cb97a | 1434 | |
d1eb3177 YO |
1435 | PERL_CALLCONV bool Perl_is_utf8_posix_digit(pTHX_ const U8 *p) |
1436 | __attribute__warn_unused_result__ | |
1437 | __attribute__nonnull__(pTHX_1); | |
1438 | #define PERL_ARGS_ASSERT_IS_UTF8_POSIX_DIGIT \ | |
1439 | assert(p) | |
1440 | ||
4373e329 | 1441 | PERL_CALLCONV bool Perl_is_utf8_graph(pTHX_ const U8 *p) |
1df70142 | 1442 | __attribute__warn_unused_result__ |
abb2c242 | 1443 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1444 | #define PERL_ARGS_ASSERT_IS_UTF8_GRAPH \ |
1445 | assert(p) | |
f54cb97a | 1446 | |
4373e329 | 1447 | PERL_CALLCONV bool Perl_is_utf8_upper(pTHX_ const U8 *p) |
1df70142 | 1448 | __attribute__warn_unused_result__ |
abb2c242 | 1449 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1450 | #define PERL_ARGS_ASSERT_IS_UTF8_UPPER \ |
1451 | assert(p) | |
f54cb97a | 1452 | |
4373e329 | 1453 | PERL_CALLCONV bool Perl_is_utf8_lower(pTHX_ const U8 *p) |
1df70142 | 1454 | __attribute__warn_unused_result__ |
abb2c242 | 1455 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1456 | #define PERL_ARGS_ASSERT_IS_UTF8_LOWER \ |
1457 | assert(p) | |
f54cb97a | 1458 | |
4373e329 | 1459 | PERL_CALLCONV bool Perl_is_utf8_print(pTHX_ const U8 *p) |
1df70142 | 1460 | __attribute__warn_unused_result__ |
abb2c242 | 1461 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1462 | #define PERL_ARGS_ASSERT_IS_UTF8_PRINT \ |
1463 | assert(p) | |
f54cb97a | 1464 | |
4373e329 | 1465 | PERL_CALLCONV bool Perl_is_utf8_punct(pTHX_ const U8 *p) |
1df70142 | 1466 | __attribute__warn_unused_result__ |
abb2c242 | 1467 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1468 | #define PERL_ARGS_ASSERT_IS_UTF8_PUNCT \ |
1469 | assert(p) | |
f54cb97a | 1470 | |
4373e329 | 1471 | PERL_CALLCONV bool Perl_is_utf8_xdigit(pTHX_ const U8 *p) |
1df70142 | 1472 | __attribute__warn_unused_result__ |
abb2c242 | 1473 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1474 | #define PERL_ARGS_ASSERT_IS_UTF8_XDIGIT \ |
1475 | assert(p) | |
f54cb97a | 1476 | |
4373e329 | 1477 | PERL_CALLCONV bool Perl_is_utf8_mark(pTHX_ const U8 *p) |
1df70142 | 1478 | __attribute__warn_unused_result__ |
abb2c242 | 1479 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1480 | #define PERL_ARGS_ASSERT_IS_UTF8_MARK \ |
1481 | assert(p) | |
f54cb97a | 1482 | |
37e2e78e KW |
1483 | PERL_CALLCONV bool Perl_is_utf8_X_begin(pTHX_ const U8 *p) |
1484 | __attribute__warn_unused_result__ | |
1485 | __attribute__nonnull__(pTHX_1); | |
1486 | #define PERL_ARGS_ASSERT_IS_UTF8_X_BEGIN \ | |
1487 | assert(p) | |
1488 | ||
1489 | PERL_CALLCONV bool Perl_is_utf8_X_extend(pTHX_ const U8 *p) | |
1490 | __attribute__warn_unused_result__ | |
1491 | __attribute__nonnull__(pTHX_1); | |
1492 | #define PERL_ARGS_ASSERT_IS_UTF8_X_EXTEND \ | |
1493 | assert(p) | |
1494 | ||
1495 | PERL_CALLCONV bool Perl_is_utf8_X_prepend(pTHX_ const U8 *p) | |
1496 | __attribute__warn_unused_result__ | |
1497 | __attribute__nonnull__(pTHX_1); | |
1498 | #define PERL_ARGS_ASSERT_IS_UTF8_X_PREPEND \ | |
1499 | assert(p) | |
1500 | ||
1501 | PERL_CALLCONV bool Perl_is_utf8_X_non_hangul(pTHX_ const U8 *p) | |
1502 | __attribute__warn_unused_result__ | |
1503 | __attribute__nonnull__(pTHX_1); | |
1504 | #define PERL_ARGS_ASSERT_IS_UTF8_X_NON_HANGUL \ | |
1505 | assert(p) | |
1506 | ||
1507 | PERL_CALLCONV bool Perl_is_utf8_X_L(pTHX_ const U8 *p) | |
1508 | __attribute__warn_unused_result__ | |
1509 | __attribute__nonnull__(pTHX_1); | |
1510 | #define PERL_ARGS_ASSERT_IS_UTF8_X_L \ | |
1511 | assert(p) | |
1512 | ||
1513 | PERL_CALLCONV bool Perl_is_utf8_X_LV(pTHX_ const U8 *p) | |
1514 | __attribute__warn_unused_result__ | |
1515 | __attribute__nonnull__(pTHX_1); | |
1516 | #define PERL_ARGS_ASSERT_IS_UTF8_X_LV \ | |
1517 | assert(p) | |
1518 | ||
1519 | PERL_CALLCONV bool Perl_is_utf8_X_LVT(pTHX_ const U8 *p) | |
1520 | __attribute__warn_unused_result__ | |
1521 | __attribute__nonnull__(pTHX_1); | |
1522 | #define PERL_ARGS_ASSERT_IS_UTF8_X_LVT \ | |
1523 | assert(p) | |
1524 | ||
1525 | PERL_CALLCONV bool Perl_is_utf8_X_LV_LVT_V(pTHX_ const U8 *p) | |
1526 | __attribute__warn_unused_result__ | |
1527 | __attribute__nonnull__(pTHX_1); | |
1528 | #define PERL_ARGS_ASSERT_IS_UTF8_X_LV_LVT_V \ | |
1529 | assert(p) | |
1530 | ||
1531 | PERL_CALLCONV bool Perl_is_utf8_X_T(pTHX_ const U8 *p) | |
1532 | __attribute__warn_unused_result__ | |
1533 | __attribute__nonnull__(pTHX_1); | |
1534 | #define PERL_ARGS_ASSERT_IS_UTF8_X_T \ | |
1535 | assert(p) | |
1536 | ||
1537 | PERL_CALLCONV bool Perl_is_utf8_X_V(pTHX_ const U8 *p) | |
1538 | __attribute__warn_unused_result__ | |
1539 | __attribute__nonnull__(pTHX_1); | |
1540 | #define PERL_ARGS_ASSERT_IS_UTF8_X_V \ | |
1541 | assert(p) | |
1542 | ||
4048f010 | 1543 | PERL_CALLCONV OP* Perl_jmaybe(pTHX_ OP *o) |
abb2c242 | 1544 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1545 | #define PERL_ARGS_ASSERT_JMAYBE \ |
1546 | assert(o) | |
f54cb97a | 1547 | |
4048f010 | 1548 | PERL_CALLCONV I32 Perl_keyword(pTHX_ const char *name, I32 len, bool all_keywords) |
abb2c242 JH |
1549 | __attribute__pure__ |
1550 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
1551 | #define PERL_ARGS_ASSERT_KEYWORD \ |
1552 | assert(name) | |
f54cb97a | 1553 | |
43869a0c | 1554 | #if defined(PERL_IN_OP_C) |
867fa1e2 YO |
1555 | STATIC OP* S_opt_scalarhv(pTHX_ OP* rep_op) |
1556 | __attribute__nonnull__(pTHX_1); | |
1557 | #define PERL_ARGS_ASSERT_OPT_SCALARHV \ | |
1558 | assert(rep_op) | |
1559 | ||
2f9e2db0 VP |
1560 | STATIC OP* S_is_inplace_av(pTHX_ OP* o, OP* oright) |
1561 | __attribute__nonnull__(pTHX_1); | |
1562 | #define PERL_ARGS_ASSERT_IS_INPLACE_AV \ | |
1563 | assert(o) | |
1564 | ||
867fa1e2 | 1565 | #endif |
1d7c1841 GS |
1566 | PERL_CALLCONV void Perl_leave_scope(pTHX_ I32 base); |
1567 | PERL_CALLCONV void Perl_lex_end(pTHX); | |
5486870f | 1568 | PERL_CALLCONV void Perl_lex_start(pTHX_ SV* line, PerlIO *rsfp, bool new_filter); |
f0e67a1d Z |
1569 | PERL_CALLCONV bool Perl_lex_bufutf8(pTHX); |
1570 | PERL_CALLCONV char* Perl_lex_grow_linestr(pTHX_ STRLEN len); | |
83aa740e | 1571 | PERL_CALLCONV void Perl_lex_stuff_pvn(pTHX_ const char* pv, STRLEN len, U32 flags) |
f0e67a1d Z |
1572 | __attribute__nonnull__(pTHX_1); |
1573 | #define PERL_ARGS_ASSERT_LEX_STUFF_PVN \ | |
1574 | assert(pv) | |
1575 | ||
1576 | PERL_CALLCONV void Perl_lex_stuff_sv(pTHX_ SV* sv, U32 flags) | |
1577 | __attribute__nonnull__(pTHX_1); | |
1578 | #define PERL_ARGS_ASSERT_LEX_STUFF_SV \ | |
1579 | assert(sv) | |
1580 | ||
1581 | PERL_CALLCONV void Perl_lex_unstuff(pTHX_ char* ptr) | |
1582 | __attribute__nonnull__(pTHX_1); | |
1583 | #define PERL_ARGS_ASSERT_LEX_UNSTUFF \ | |
1584 | assert(ptr) | |
1585 | ||
1586 | PERL_CALLCONV void Perl_lex_read_to(pTHX_ char* ptr) | |
1587 | __attribute__nonnull__(pTHX_1); | |
1588 | #define PERL_ARGS_ASSERT_LEX_READ_TO \ | |
1589 | assert(ptr) | |
1590 | ||
1591 | PERL_CALLCONV void Perl_lex_discard_to(pTHX_ char* ptr) | |
1592 | __attribute__nonnull__(pTHX_1); | |
1593 | #define PERL_ARGS_ASSERT_LEX_DISCARD_TO \ | |
1594 | assert(ptr) | |
1595 | ||
1596 | PERL_CALLCONV bool Perl_lex_next_chunk(pTHX_ U32 flags); | |
1597 | PERL_CALLCONV I32 Perl_lex_peek_unichar(pTHX_ U32 flags); | |
1598 | PERL_CALLCONV I32 Perl_lex_read_unichar(pTHX_ U32 flags); | |
1599 | PERL_CALLCONV void Perl_lex_read_space(pTHX_ U32 flags); | |
636def1f | 1600 | PERL_CALLCONV OP* Perl_parse_fullstmt(pTHX_ U32 flags); |
aec46f14 AL |
1601 | PERL_CALLCONV void Perl_op_null(pTHX_ OP* o) |
1602 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
1603 | #define PERL_ARGS_ASSERT_OP_NULL \ |
1604 | assert(o) | |
aec46f14 AL |
1605 | |
1606 | PERL_CALLCONV void Perl_op_clear(pTHX_ OP* o) | |
1607 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
1608 | #define PERL_ARGS_ASSERT_OP_CLEAR \ |
1609 | assert(o) | |
aec46f14 | 1610 | |
4026c95a SH |
1611 | PERL_CALLCONV void Perl_op_refcnt_lock(pTHX); |
1612 | PERL_CALLCONV void Perl_op_refcnt_unlock(pTHX); | |
43869a0c | 1613 | #if defined(PERL_IN_OP_C) |
12e93c28 | 1614 | STATIC OP* S_linklist(pTHX_ OP *o) |
aec46f14 | 1615 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1616 | #define PERL_ARGS_ASSERT_LINKLIST \ |
1617 | assert(o) | |
aec46f14 | 1618 | |
412da003 | 1619 | STATIC OP* S_listkids(pTHX_ OP* o); |
2dd5337b | 1620 | #endif |
1d7c1841 | 1621 | PERL_CALLCONV OP* Perl_list(pTHX_ OP* o); |
aec46f14 AL |
1622 | PERL_CALLCONV void Perl_load_module(pTHX_ U32 flags, SV* name, SV* ver, ...) |
1623 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1624 | #define PERL_ARGS_ASSERT_LOAD_MODULE \ |
1625 | assert(name) | |
aec46f14 AL |
1626 | |
1627 | PERL_CALLCONV void Perl_vload_module(pTHX_ U32 flags, SV* name, SV* ver, va_list* args) | |
1628 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1629 | #define PERL_ARGS_ASSERT_VLOAD_MODULE \ |
1630 | assert(name) | |
aec46f14 | 1631 | |
4048f010 | 1632 | PERL_CALLCONV OP* Perl_localize(pTHX_ OP *o, I32 lex) |
bfce84ec | 1633 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1634 | #define PERL_ARGS_ASSERT_LOCALIZE \ |
1635 | assert(o) | |
bfce84ec | 1636 | |
aad570aa | 1637 | PERL_CALLCONV I32 Perl_looks_like_number(pTHX_ SV *const sv) |
abb2c242 JH |
1638 | __attribute__warn_unused_result__ |
1639 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
1640 | #define PERL_ARGS_ASSERT_LOOKS_LIKE_NUMBER \ |
1641 | assert(sv) | |
f54cb97a | 1642 | |
a3b680e6 | 1643 | PERL_CALLCONV UV Perl_grok_bin(pTHX_ const char* start, STRLEN* len_p, I32* flags, NV *result) |
abb2c242 JH |
1644 | __attribute__nonnull__(pTHX_1) |
1645 | __attribute__nonnull__(pTHX_2) | |
1646 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
1647 | #define PERL_ARGS_ASSERT_GROK_BIN \ |
1648 | assert(start); assert(len_p); assert(flags) | |
f54cb97a | 1649 | |
e52cd83c RGS |
1650 | PERL_CALLCONV char Perl_grok_bslash_c(pTHX_ const char source, const bool output_warning) |
1651 | __attribute__warn_unused_result__; | |
1652 | ||
454155d9 | 1653 | PERL_CALLCONV bool Perl_grok_bslash_o(pTHX_ const char* s, UV* uv, STRLEN* len, const char** error_msg, const bool output_warning) |
f0a2b745 KW |
1654 | __attribute__warn_unused_result__ |
1655 | __attribute__nonnull__(pTHX_1) | |
1656 | __attribute__nonnull__(pTHX_2) | |
454155d9 KW |
1657 | __attribute__nonnull__(pTHX_3) |
1658 | __attribute__nonnull__(pTHX_4); | |
f0a2b745 | 1659 | #define PERL_ARGS_ASSERT_GROK_BSLASH_O \ |
454155d9 | 1660 | assert(s); assert(uv); assert(len); assert(error_msg) |
f0a2b745 | 1661 | |
a3b680e6 | 1662 | PERL_CALLCONV UV Perl_grok_hex(pTHX_ const char* start, STRLEN* len_p, I32* flags, NV *result) |
abb2c242 JH |
1663 | __attribute__nonnull__(pTHX_1) |
1664 | __attribute__nonnull__(pTHX_2) | |
1665 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
1666 | #define PERL_ARGS_ASSERT_GROK_HEX \ |
1667 | assert(start); assert(len_p); assert(flags) | |
f54cb97a AL |
1668 | |
1669 | PERL_CALLCONV int Perl_grok_number(pTHX_ const char *pv, STRLEN len, UV *valuep) | |
abb2c242 | 1670 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
1671 | #define PERL_ARGS_ASSERT_GROK_NUMBER \ |
1672 | assert(pv) | |
f54cb97a | 1673 | |
901017d6 | 1674 | PERL_CALLCONV bool Perl_grok_numeric_radix(pTHX_ const char **sp, const char *send) |
bfce84ec AL |
1675 | __attribute__warn_unused_result__ |
1676 | __attribute__nonnull__(pTHX_1) | |
1677 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1678 | #define PERL_ARGS_ASSERT_GROK_NUMERIC_RADIX \ |
1679 | assert(sp); assert(send) | |
bfce84ec AL |
1680 | |
1681 | PERL_CALLCONV UV Perl_grok_oct(pTHX_ const char* start, STRLEN* len_p, I32* flags, NV *result) | |
fb9bf107 NC |
1682 | __attribute__nonnull__(pTHX_1) |
1683 | __attribute__nonnull__(pTHX_2) | |
1684 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
1685 | #define PERL_ARGS_ASSERT_GROK_OCT \ |
1686 | assert(start); assert(len_p); assert(flags) | |
bfce84ec AL |
1687 | |
1688 | PERL_CALLCONV int Perl_magic_clearenv(pTHX_ SV* sv, MAGIC* mg) | |
1689 | __attribute__nonnull__(pTHX_1) | |
1690 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1691 | #define PERL_ARGS_ASSERT_MAGIC_CLEARENV \ |
1692 | assert(sv); assert(mg) | |
bfce84ec AL |
1693 | |
1694 | PERL_CALLCONV int Perl_magic_clear_all_env(pTHX_ SV* sv, MAGIC* mg) | |
1695 | __attribute__nonnull__(pTHX_1) | |
1696 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1697 | #define PERL_ARGS_ASSERT_MAGIC_CLEAR_ALL_ENV \ |
1698 | assert(sv); assert(mg) | |
bfce84ec | 1699 | |
b3ca2e83 NC |
1700 | PERL_CALLCONV int Perl_magic_clearhint(pTHX_ SV* sv, MAGIC* mg) |
1701 | __attribute__nonnull__(pTHX_1) | |
1702 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1703 | #define PERL_ARGS_ASSERT_MAGIC_CLEARHINT \ |
1704 | assert(sv); assert(mg) | |
b3ca2e83 | 1705 | |
f747ebd6 Z |
1706 | PERL_CALLCONV int Perl_magic_clearhints(pTHX_ SV* sv, MAGIC* mg) |
1707 | __attribute__nonnull__(pTHX_1) | |
1708 | __attribute__nonnull__(pTHX_2); | |
1709 | #define PERL_ARGS_ASSERT_MAGIC_CLEARHINTS \ | |
1710 | assert(sv); assert(mg) | |
1711 | ||
52b45067 | 1712 | PERL_CALLCONV int Perl_magic_clearisa(pTHX_ SV* sv, MAGIC* mg) |
52b45067 | 1713 | __attribute__nonnull__(pTHX_2); |
7918f24d | 1714 | #define PERL_ARGS_ASSERT_MAGIC_CLEARISA \ |
0e446081 | 1715 | assert(mg) |
52b45067 | 1716 | |
bfce84ec AL |
1717 | PERL_CALLCONV int Perl_magic_clearpack(pTHX_ SV* sv, MAGIC* mg) |
1718 | __attribute__nonnull__(pTHX_1) | |
1719 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1720 | #define PERL_ARGS_ASSERT_MAGIC_CLEARPACK \ |
1721 | assert(sv); assert(mg) | |
bfce84ec AL |
1722 | |
1723 | PERL_CALLCONV int Perl_magic_clearsig(pTHX_ SV* sv, MAGIC* mg) | |
1724 | __attribute__nonnull__(pTHX_1) | |
1725 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1726 | #define PERL_ARGS_ASSERT_MAGIC_CLEARSIG \ |
1727 | assert(sv); assert(mg) | |
bfce84ec | 1728 | |
1146e912 | 1729 | PERL_CALLCONV int Perl_magic_existspack(pTHX_ SV* sv, const MAGIC* mg) |
bfce84ec AL |
1730 | __attribute__nonnull__(pTHX_1) |
1731 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1732 | #define PERL_ARGS_ASSERT_MAGIC_EXISTSPACK \ |
1733 | assert(sv); assert(mg) | |
bfce84ec | 1734 | |
bfce84ec AL |
1735 | PERL_CALLCONV int Perl_magic_freeovrld(pTHX_ SV* sv, MAGIC* mg) |
1736 | __attribute__nonnull__(pTHX_1) | |
1737 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1738 | #define PERL_ARGS_ASSERT_MAGIC_FREEOVRLD \ |
1739 | assert(sv); assert(mg) | |
bfce84ec AL |
1740 | |
1741 | PERL_CALLCONV int Perl_magic_get(pTHX_ SV* sv, MAGIC* mg) | |
1742 | __attribute__nonnull__(pTHX_1) | |
1743 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1744 | #define PERL_ARGS_ASSERT_MAGIC_GET \ |
1745 | assert(sv); assert(mg) | |
901017d6 | 1746 | |
8772537c AL |
1747 | PERL_CALLCONV int Perl_magic_getarylen(pTHX_ SV* sv, const MAGIC* mg) |
1748 | __attribute__nonnull__(pTHX_1) | |
1749 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1750 | #define PERL_ARGS_ASSERT_MAGIC_GETARYLEN \ |
1751 | assert(sv); assert(mg) | |
8772537c | 1752 | |
bfce84ec AL |
1753 | PERL_CALLCONV int Perl_magic_getdefelem(pTHX_ SV* sv, MAGIC* mg) |
1754 | __attribute__nonnull__(pTHX_1) | |
1755 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1756 | #define PERL_ARGS_ASSERT_MAGIC_GETDEFELEM \ |
1757 | assert(sv); assert(mg) | |
bfce84ec | 1758 | |
bfce84ec AL |
1759 | PERL_CALLCONV int Perl_magic_getnkeys(pTHX_ SV* sv, MAGIC* mg) |
1760 | __attribute__nonnull__(pTHX_1) | |
1761 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1762 | #define PERL_ARGS_ASSERT_MAGIC_GETNKEYS \ |
1763 | assert(sv); assert(mg) | |
bfce84ec AL |
1764 | |
1765 | PERL_CALLCONV int Perl_magic_getpack(pTHX_ SV* sv, MAGIC* mg) | |
1766 | __attribute__nonnull__(pTHX_1) | |
1767 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1768 | #define PERL_ARGS_ASSERT_MAGIC_GETPACK \ |
1769 | assert(sv); assert(mg) | |
bfce84ec AL |
1770 | |
1771 | PERL_CALLCONV int Perl_magic_getpos(pTHX_ SV* sv, MAGIC* mg) | |
1772 | __attribute__nonnull__(pTHX_1) | |
1773 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1774 | #define PERL_ARGS_ASSERT_MAGIC_GETPOS \ |
1775 | assert(sv); assert(mg) | |
bfce84ec AL |
1776 | |
1777 | PERL_CALLCONV int Perl_magic_getsig(pTHX_ SV* sv, MAGIC* mg) | |
1778 | __attribute__nonnull__(pTHX_1) | |
1779 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1780 | #define PERL_ARGS_ASSERT_MAGIC_GETSIG \ |
1781 | assert(sv); assert(mg) | |
bfce84ec AL |
1782 | |
1783 | PERL_CALLCONV int Perl_magic_getsubstr(pTHX_ SV* sv, MAGIC* mg) | |
1784 | __attribute__nonnull__(pTHX_1) | |
1785 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1786 | #define PERL_ARGS_ASSERT_MAGIC_GETSUBSTR \ |
1787 | assert(sv); assert(mg) | |
bfce84ec AL |
1788 | |
1789 | PERL_CALLCONV int Perl_magic_gettaint(pTHX_ SV* sv, MAGIC* mg) | |
1790 | __attribute__nonnull__(pTHX_1) | |
1791 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1792 | #define PERL_ARGS_ASSERT_MAGIC_GETTAINT \ |
1793 | assert(sv); assert(mg) | |
bfce84ec AL |
1794 | |
1795 | PERL_CALLCONV int Perl_magic_getuvar(pTHX_ SV* sv, MAGIC* mg) | |
1796 | __attribute__nonnull__(pTHX_1) | |
1797 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1798 | #define PERL_ARGS_ASSERT_MAGIC_GETUVAR \ |
1799 | assert(sv); assert(mg) | |
bfce84ec AL |
1800 | |
1801 | PERL_CALLCONV int Perl_magic_getvec(pTHX_ SV* sv, MAGIC* mg) | |
1802 | __attribute__nonnull__(pTHX_1) | |
1803 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1804 | #define PERL_ARGS_ASSERT_MAGIC_GETVEC \ |
1805 | assert(sv); assert(mg) | |
bfce84ec AL |
1806 | |
1807 | PERL_CALLCONV U32 Perl_magic_len(pTHX_ SV* sv, MAGIC* mg) | |
1808 | __attribute__nonnull__(pTHX_1) | |
1809 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1810 | #define PERL_ARGS_ASSERT_MAGIC_LEN \ |
1811 | assert(sv); assert(mg) | |
bfce84ec | 1812 | |
4048f010 | 1813 | PERL_CALLCONV int Perl_magic_nextpack(pTHX_ SV *sv, MAGIC *mg, SV *key) |
bfce84ec AL |
1814 | __attribute__nonnull__(pTHX_1) |
1815 | __attribute__nonnull__(pTHX_2) | |
1816 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
1817 | #define PERL_ARGS_ASSERT_MAGIC_NEXTPACK \ |
1818 | assert(sv); assert(mg); assert(key) | |
bfce84ec AL |
1819 | |
1820 | PERL_CALLCONV U32 Perl_magic_regdata_cnt(pTHX_ SV* sv, MAGIC* mg) | |
1821 | __attribute__nonnull__(pTHX_1) | |
1822 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1823 | #define PERL_ARGS_ASSERT_MAGIC_REGDATA_CNT \ |
1824 | assert(sv); assert(mg) | |
bfce84ec AL |
1825 | |
1826 | PERL_CALLCONV int Perl_magic_regdatum_get(pTHX_ SV* sv, MAGIC* mg) | |
1827 | __attribute__nonnull__(pTHX_1) | |
1828 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1829 | #define PERL_ARGS_ASSERT_MAGIC_REGDATUM_GET \ |
1830 | assert(sv); assert(mg) | |
bfce84ec | 1831 | |
f54cb97a | 1832 | PERL_CALLCONV int Perl_magic_regdatum_set(pTHX_ SV* sv, MAGIC* mg) |
bfce84ec AL |
1833 | __attribute__noreturn__ |
1834 | __attribute__nonnull__(pTHX_1) | |
1835 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1836 | #define PERL_ARGS_ASSERT_MAGIC_REGDATUM_SET \ |
1837 | assert(sv); assert(mg) | |
bfce84ec AL |
1838 | |
1839 | PERL_CALLCONV int Perl_magic_set(pTHX_ SV* sv, MAGIC* mg) | |
1840 | __attribute__nonnull__(pTHX_1) | |
1841 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1842 | #define PERL_ARGS_ASSERT_MAGIC_SET \ |
1843 | assert(sv); assert(mg) | |
bfce84ec AL |
1844 | |
1845 | PERL_CALLCONV int Perl_magic_setamagic(pTHX_ SV* sv, MAGIC* mg) | |
1846 | __attribute__nonnull__(pTHX_1) | |
1847 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1848 | #define PERL_ARGS_ASSERT_MAGIC_SETAMAGIC \ |
1849 | assert(sv); assert(mg) | |
bfce84ec AL |
1850 | |
1851 | PERL_CALLCONV int Perl_magic_setarylen(pTHX_ SV* sv, MAGIC* mg) | |
1852 | __attribute__nonnull__(pTHX_1) | |
1853 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1854 | #define PERL_ARGS_ASSERT_MAGIC_SETARYLEN \ |
1855 | assert(sv); assert(mg) | |
bfce84ec AL |
1856 | |
1857 | PERL_CALLCONV int Perl_magic_freearylen_p(pTHX_ SV* sv, MAGIC* mg) | |
1858 | __attribute__nonnull__(pTHX_1) | |
1859 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1860 | #define PERL_ARGS_ASSERT_MAGIC_FREEARYLEN_P \ |
1861 | assert(sv); assert(mg) | |
bfce84ec | 1862 | |
488344d2 | 1863 | PERL_CALLCONV int Perl_magic_setdbline(pTHX_ SV* sv, MAGIC* mg) |
bfce84ec AL |
1864 | __attribute__nonnull__(pTHX_1) |
1865 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1866 | #define PERL_ARGS_ASSERT_MAGIC_SETDBLINE \ |
1867 | assert(sv); assert(mg) | |
bfce84ec | 1868 | |
488344d2 | 1869 | PERL_CALLCONV int Perl_magic_setdefelem(pTHX_ SV* sv, MAGIC* mg) |
bfce84ec AL |
1870 | __attribute__nonnull__(pTHX_1) |
1871 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1872 | #define PERL_ARGS_ASSERT_MAGIC_SETDEFELEM \ |
1873 | assert(sv); assert(mg) | |
bfce84ec | 1874 | |
488344d2 | 1875 | PERL_CALLCONV int Perl_magic_setenv(pTHX_ SV* sv, MAGIC* mg) |
bfce84ec AL |
1876 | __attribute__nonnull__(pTHX_1) |
1877 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1878 | #define PERL_ARGS_ASSERT_MAGIC_SETENV \ |
1879 | assert(sv); assert(mg) | |
bfce84ec | 1880 | |
b3ca2e83 NC |
1881 | PERL_CALLCONV int Perl_magic_sethint(pTHX_ SV* sv, MAGIC* mg) |
1882 | __attribute__nonnull__(pTHX_1) | |
1883 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1884 | #define PERL_ARGS_ASSERT_MAGIC_SETHINT \ |
1885 | assert(sv); assert(mg) | |
b3ca2e83 | 1886 | |
bfce84ec AL |
1887 | PERL_CALLCONV int Perl_magic_setisa(pTHX_ SV* sv, MAGIC* mg) |
1888 | __attribute__nonnull__(pTHX_1) | |
1889 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1890 | #define PERL_ARGS_ASSERT_MAGIC_SETISA \ |
1891 | assert(sv); assert(mg) | |
bfce84ec | 1892 | |
bfce84ec AL |
1893 | PERL_CALLCONV int Perl_magic_setmglob(pTHX_ SV* sv, MAGIC* mg) |
1894 | __attribute__nonnull__(pTHX_1) | |
1895 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1896 | #define PERL_ARGS_ASSERT_MAGIC_SETMGLOB \ |
1897 | assert(sv); assert(mg) | |
bfce84ec AL |
1898 | |
1899 | PERL_CALLCONV int Perl_magic_setnkeys(pTHX_ SV* sv, MAGIC* mg) | |
1900 | __attribute__nonnull__(pTHX_1) | |
1901 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1902 | #define PERL_ARGS_ASSERT_MAGIC_SETNKEYS \ |
1903 | assert(sv); assert(mg) | |
bfce84ec AL |
1904 | |
1905 | PERL_CALLCONV int Perl_magic_setpack(pTHX_ SV* sv, MAGIC* mg) | |
1906 | __attribute__nonnull__(pTHX_1) | |
1907 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1908 | #define PERL_ARGS_ASSERT_MAGIC_SETPACK \ |
1909 | assert(sv); assert(mg) | |
bfce84ec AL |
1910 | |
1911 | PERL_CALLCONV int Perl_magic_setpos(pTHX_ SV* sv, MAGIC* mg) | |
1912 | __attribute__nonnull__(pTHX_1) | |
1913 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1914 | #define PERL_ARGS_ASSERT_MAGIC_SETPOS \ |
1915 | assert(sv); assert(mg) | |
bfce84ec AL |
1916 | |
1917 | PERL_CALLCONV int Perl_magic_setregexp(pTHX_ SV* sv, MAGIC* mg) | |
1918 | __attribute__nonnull__(pTHX_1) | |
1919 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1920 | #define PERL_ARGS_ASSERT_MAGIC_SETREGEXP \ |
1921 | assert(sv); assert(mg) | |
bfce84ec AL |
1922 | |
1923 | PERL_CALLCONV int Perl_magic_setsig(pTHX_ SV* sv, MAGIC* mg) | |
bfce84ec | 1924 | __attribute__nonnull__(pTHX_2); |
7918f24d | 1925 | #define PERL_ARGS_ASSERT_MAGIC_SETSIG \ |
38a124f0 | 1926 | assert(mg) |
bfce84ec AL |
1927 | |
1928 | PERL_CALLCONV int Perl_magic_setsubstr(pTHX_ SV* sv, MAGIC* mg) | |
1929 | __attribute__nonnull__(pTHX_1) | |
1930 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1931 | #define PERL_ARGS_ASSERT_MAGIC_SETSUBSTR \ |
1932 | assert(sv); assert(mg) | |
bfce84ec AL |
1933 | |
1934 | PERL_CALLCONV int Perl_magic_settaint(pTHX_ SV* sv, MAGIC* mg) | |
1935 | __attribute__nonnull__(pTHX_1) | |
1936 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1937 | #define PERL_ARGS_ASSERT_MAGIC_SETTAINT \ |
1938 | assert(sv); assert(mg) | |
bfce84ec AL |
1939 | |
1940 | PERL_CALLCONV int Perl_magic_setuvar(pTHX_ SV* sv, MAGIC* mg) | |
1941 | __attribute__nonnull__(pTHX_1) | |
1942 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1943 | #define PERL_ARGS_ASSERT_MAGIC_SETUVAR \ |
1944 | assert(sv); assert(mg) | |
bfce84ec AL |
1945 | |
1946 | PERL_CALLCONV int Perl_magic_setvec(pTHX_ SV* sv, MAGIC* mg) | |
1947 | __attribute__nonnull__(pTHX_1) | |
1948 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1949 | #define PERL_ARGS_ASSERT_MAGIC_SETVEC \ |
1950 | assert(sv); assert(mg) | |
bfce84ec AL |
1951 | |
1952 | PERL_CALLCONV int Perl_magic_setutf8(pTHX_ SV* sv, MAGIC* mg) | |
1953 | __attribute__nonnull__(pTHX_1) | |
1954 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1955 | #define PERL_ARGS_ASSERT_MAGIC_SETUTF8 \ |
1956 | assert(sv); assert(mg) | |
bfce84ec AL |
1957 | |
1958 | PERL_CALLCONV int Perl_magic_set_all_env(pTHX_ SV* sv, MAGIC* mg) | |
1959 | __attribute__nonnull__(pTHX_1) | |
1960 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1961 | #define PERL_ARGS_ASSERT_MAGIC_SET_ALL_ENV \ |
1962 | assert(sv); assert(mg) | |
bfce84ec AL |
1963 | |
1964 | PERL_CALLCONV U32 Perl_magic_sizepack(pTHX_ SV* sv, MAGIC* mg) | |
1965 | __attribute__nonnull__(pTHX_1) | |
1966 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1967 | #define PERL_ARGS_ASSERT_MAGIC_SIZEPACK \ |
1968 | assert(sv); assert(mg) | |
bfce84ec AL |
1969 | |
1970 | PERL_CALLCONV int Perl_magic_wipepack(pTHX_ SV* sv, MAGIC* mg) | |
1971 | __attribute__nonnull__(pTHX_1) | |
1972 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1973 | #define PERL_ARGS_ASSERT_MAGIC_WIPEPACK \ |
1974 | assert(sv); assert(mg) | |
bfce84ec | 1975 | |
046b0c7d | 1976 | PERL_CALLCONV SV* Perl_magic_methcall(pTHX_ SV *sv, const MAGIC *mg, const char *meth, U32 flags, U32 argc, ...) |
efaf3674 DM |
1977 | __attribute__nonnull__(pTHX_1) |
1978 | __attribute__nonnull__(pTHX_2) | |
1979 | __attribute__nonnull__(pTHX_3); | |
1980 | #define PERL_ARGS_ASSERT_MAGIC_METHCALL \ | |
1981 | assert(sv); assert(mg); assert(meth) | |
1982 | ||
1d7c1841 | 1983 | PERL_CALLCONV void Perl_markstack_grow(pTHX); |
864dbfa3 | 1984 | #if defined(USE_LOCALE_COLLATE) |
aa924a5a SH |
1985 | PERL_CALLCONV int Perl_magic_setcollxfrm(pTHX_ SV* sv, MAGIC* mg) |
1986 | __attribute__nonnull__(pTHX_1) | |
1987 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
1988 | #define PERL_ARGS_ASSERT_MAGIC_SETCOLLXFRM \ |
1989 | assert(sv); assert(mg) | |
aa924a5a SH |
1990 | |
1991 | PERL_CALLCONV char* Perl_mem_collxfrm(pTHX_ const char* s, STRLEN len, STRLEN* xlen) | |
1992 | __attribute__nonnull__(pTHX_1) | |
1993 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
1994 | #define PERL_ARGS_ASSERT_MEM_COLLXFRM \ |
1995 | assert(s); assert(xlen) | |
aa924a5a | 1996 | |
0cb96387 | 1997 | #endif |
894356b3 | 1998 | PERL_CALLCONV SV* Perl_mess(pTHX_ const char* pat, ...) |
aec46f14 AL |
1999 | __attribute__format__(__printf__,pTHX_1,pTHX_2) |
2000 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2001 | #define PERL_ARGS_ASSERT_MESS \ |
2002 | assert(pat) | |
aec46f14 | 2003 | |
c5df3096 Z |
2004 | PERL_CALLCONV SV* Perl_mess_sv(pTHX_ SV* basemsg, bool consume) |
2005 | __attribute__nonnull__(pTHX_1); | |
2006 | #define PERL_ARGS_ASSERT_MESS_SV \ | |
2007 | assert(basemsg) | |
2008 | ||
aec46f14 AL |
2009 | PERL_CALLCONV SV* Perl_vmess(pTHX_ const char* pat, va_list* args) |
2010 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2011 | #define PERL_ARGS_ASSERT_VMESS \ |
2012 | assert(pat) | |
f54cb97a | 2013 | |
aa924a5a SH |
2014 | PERL_CALLCONV void Perl_qerror(pTHX_ SV* err) |
2015 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2016 | #define PERL_ARGS_ASSERT_QERROR \ |
2017 | assert(err) | |
aa924a5a SH |
2018 | |
2019 | PERL_CALLCONV void Perl_sortsv(pTHX_ SV** array, size_t num_elts, SVCOMPARE_t cmp) | |
52657f30 | 2020 | __attribute__nonnull__(pTHX_3); |
7918f24d NC |
2021 | #define PERL_ARGS_ASSERT_SORTSV \ |
2022 | assert(cmp) | |
aa924a5a | 2023 | |
7b9ef140 | 2024 | PERL_CALLCONV void Perl_sortsv_flags(pTHX_ SV** array, size_t num_elts, SVCOMPARE_t cmp, U32 flags) |
52657f30 | 2025 | __attribute__nonnull__(pTHX_3); |
7918f24d NC |
2026 | #define PERL_ARGS_ASSERT_SORTSV_FLAGS \ |
2027 | assert(cmp) | |
7b9ef140 | 2028 | |
9a957fbc AL |
2029 | PERL_CALLCONV int Perl_mg_clear(pTHX_ SV* sv) |
2030 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2031 | #define PERL_ARGS_ASSERT_MG_CLEAR \ |
2032 | assert(sv) | |
9a957fbc | 2033 | |
4048f010 | 2034 | PERL_CALLCONV int Perl_mg_copy(pTHX_ SV *sv, SV *nsv, const char *key, I32 klen) |
9a957fbc AL |
2035 | __attribute__nonnull__(pTHX_1) |
2036 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
2037 | #define PERL_ARGS_ASSERT_MG_COPY \ |
2038 | assert(sv); assert(nsv) | |
9a957fbc | 2039 | |
af7df257 | 2040 | PERL_CALLCONV void Perl_mg_localize(pTHX_ SV* sv, SV* nsv, bool setmagic) |
9a957fbc AL |
2041 | __attribute__nonnull__(pTHX_1) |
2042 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
2043 | #define PERL_ARGS_ASSERT_MG_LOCALIZE \ |
2044 | assert(sv); assert(nsv) | |
9a957fbc | 2045 | |
255164ba DM |
2046 | PERL_CALLCONV MAGIC* Perl_mg_find(pTHX_ const SV* sv, int type) |
2047 | __attribute__warn_unused_result__; | |
2048 | ||
9a957fbc AL |
2049 | PERL_CALLCONV int Perl_mg_free(pTHX_ SV* sv) |
2050 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2051 | #define PERL_ARGS_ASSERT_MG_FREE \ |
2052 | assert(sv) | |
9a957fbc AL |
2053 | |
2054 | PERL_CALLCONV int Perl_mg_get(pTHX_ SV* sv) | |
2055 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2056 | #define PERL_ARGS_ASSERT_MG_GET \ |
2057 | assert(sv) | |
9a957fbc AL |
2058 | |
2059 | PERL_CALLCONV U32 Perl_mg_length(pTHX_ SV* sv) | |
2060 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2061 | #define PERL_ARGS_ASSERT_MG_LENGTH \ |
2062 | assert(sv) | |
9a957fbc AL |
2063 | |
2064 | PERL_CALLCONV void Perl_mg_magical(pTHX_ SV* sv) | |
2065 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2066 | #define PERL_ARGS_ASSERT_MG_MAGICAL \ |
2067 | assert(sv) | |
9a957fbc AL |
2068 | |
2069 | PERL_CALLCONV int Perl_mg_set(pTHX_ SV* sv) | |
2070 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2071 | #define PERL_ARGS_ASSERT_MG_SET \ |
2072 | assert(sv) | |
9a957fbc AL |
2073 | |
2074 | PERL_CALLCONV I32 Perl_mg_size(pTHX_ SV* sv) | |
2075 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2076 | #define PERL_ARGS_ASSERT_MG_SIZE \ |
2077 | assert(sv) | |
9a957fbc | 2078 | |
9f6cc744 | 2079 | PERL_CALLCONV void Perl_mini_mktime(pTHX_ struct tm *ptm) |
9a957fbc | 2080 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2081 | #define PERL_ARGS_ASSERT_MINI_MKTIME \ |
2082 | assert(ptm) | |
9a957fbc | 2083 | |
1d7c1841 | 2084 | PERL_CALLCONV OP* Perl_mod(pTHX_ OP* o, I32 type); |
a79b25b7 | 2085 | PERL_CALLCONV int Perl_mode_from_discipline(pTHX_ const char* s, STRLEN len); |
c7030b81 | 2086 | PERL_CALLCONV const char* Perl_moreswitches(pTHX_ const char* s) |
bfce84ec | 2087 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2088 | #define PERL_ARGS_ASSERT_MORESWITCHES \ |
2089 | assert(s) | |
bfce84ec | 2090 | |
4373e329 | 2091 | PERL_CALLCONV NV Perl_my_atof(pTHX_ const char *s) |
abb2c242 | 2092 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2093 | #define PERL_ARGS_ASSERT_MY_ATOF \ |
2094 | assert(s) | |
f54cb97a | 2095 | |
2253333f | 2096 | #if (!defined(HAS_MEMCPY) && !defined(HAS_BCOPY)) || (!defined(HAS_MEMMOVE) && !defined(HAS_SAFE_MEMCPY) && !defined(HAS_SAFE_BCOPY)) |
4373e329 | 2097 | PERL_CALLCONV char* Perl_my_bcopy(const char* from, char* to, I32 len) |
abb2c242 JH |
2098 | __attribute__nonnull__(1) |
2099 | __attribute__nonnull__(2); | |
7918f24d NC |
2100 | #define PERL_ARGS_ASSERT_MY_BCOPY \ |
2101 | assert(from); assert(to) | |
f54cb97a | 2102 | |
5f05dabc | 2103 | #endif |
a0d0e21e | 2104 | #if !defined(HAS_BZERO) && !defined(HAS_MEMSET) |
4373e329 | 2105 | PERL_CALLCONV char* Perl_my_bzero(char* loc, I32 len) |
abb2c242 | 2106 | __attribute__nonnull__(1); |
7918f24d NC |
2107 | #define PERL_ARGS_ASSERT_MY_BZERO \ |
2108 | assert(loc) | |
f54cb97a | 2109 | |
864dbfa3 | 2110 | #endif |
f54cb97a | 2111 | PERL_CALLCONV void Perl_my_exit(pTHX_ U32 status) |
abb2c242 | 2112 | __attribute__noreturn__; |
f54cb97a AL |
2113 | |
2114 | PERL_CALLCONV void Perl_my_failure_exit(pTHX) | |
abb2c242 | 2115 | __attribute__noreturn__; |
f54cb97a | 2116 | |
1d7c1841 | 2117 | PERL_CALLCONV I32 Perl_my_fflush_all(pTHX); |
52e18b1f GS |
2118 | PERL_CALLCONV Pid_t Perl_my_fork(void); |
2119 | PERL_CALLCONV void Perl_atfork_lock(void); | |
2120 | PERL_CALLCONV void Perl_atfork_unlock(void); | |
0d7d409d DM |
2121 | /* PERL_CALLCONV I32 Perl_my_lstat(pTHX); */ |
2122 | PERL_CALLCONV I32 Perl_my_lstat_flags(pTHX_ const U32 flags); | |
5f05dabc | 2123 | #if !defined(HAS_MEMCMP) || !defined(HAS_SANE_MEMCMP) |
4373e329 | 2124 | PERL_CALLCONV I32 Perl_my_memcmp(const char* s1, const char* s2, I32 len) |
abb2c242 JH |
2125 | __attribute__pure__ |
2126 | __attribute__nonnull__(1) | |
2127 | __attribute__nonnull__(2); | |
7918f24d NC |
2128 | #define PERL_ARGS_ASSERT_MY_MEMCMP \ |
2129 | assert(s1); assert(s2) | |
f54cb97a | 2130 | |
a0d0e21e | 2131 | #endif |
fc36a67e | 2132 | #if !defined(HAS_MEMSET) |
4373e329 | 2133 | PERL_CALLCONV void* Perl_my_memset(char* loc, I32 ch, I32 len) |
abb2c242 | 2134 | __attribute__nonnull__(1); |
7918f24d NC |
2135 | #define PERL_ARGS_ASSERT_MY_MEMSET \ |
2136 | assert(loc) | |
f54cb97a | 2137 | |
864dbfa3 | 2138 | #endif |
1d7c1841 | 2139 | PERL_CALLCONV I32 Perl_my_pclose(pTHX_ PerlIO* ptr); |
bfce84ec AL |
2140 | PERL_CALLCONV PerlIO* Perl_my_popen(pTHX_ const char* cmd, const char* mode) |
2141 | __attribute__nonnull__(pTHX_1) | |
2142 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
2143 | #define PERL_ARGS_ASSERT_MY_POPEN \ |
2144 | assert(cmd); assert(mode) | |
bfce84ec | 2145 | |
c9289b7b | 2146 | PERL_CALLCONV PerlIO* Perl_my_popen_list(pTHX_ const char* mode, int n, SV ** args) |
bfce84ec AL |
2147 | __attribute__nonnull__(pTHX_1) |
2148 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
2149 | #define PERL_ARGS_ASSERT_MY_POPEN_LIST \ |
2150 | assert(mode); assert(args) | |
bfce84ec | 2151 | |
e1ec3a88 | 2152 | PERL_CALLCONV void Perl_my_setenv(pTHX_ const char* nam, const char* val); |
0d7d409d DM |
2153 | /* PERL_CALLCONV I32 Perl_my_stat(pTHX); */ |
2154 | PERL_CALLCONV I32 Perl_my_stat_flags(pTHX_ const U32 flags); | |
bfce84ec AL |
2155 | PERL_CALLCONV char * Perl_my_strftime(pTHX_ const char *fmt, int sec, int min, int hour, int mday, int mon, int year, int wday, int yday, int isdst) |
2156 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2157 | #define PERL_ARGS_ASSERT_MY_STRFTIME \ |
2158 | assert(fmt) | |
bfce84ec | 2159 | |
864dbfa3 | 2160 | #if defined(MYSWAP) |
4373e329 | 2161 | PERL_CALLCONV short Perl_my_swap(pTHX_ short s) |
abb2c242 JH |
2162 | __attribute__malloc__ |
2163 | __attribute__warn_unused_result__ | |
2164 | __attribute__pure__; | |
f54cb97a | 2165 | |
4373e329 | 2166 | PERL_CALLCONV long Perl_my_htonl(pTHX_ long l) |
abb2c242 JH |
2167 | __attribute__malloc__ |
2168 | __attribute__warn_unused_result__ | |
2169 | __attribute__pure__; | |
f54cb97a | 2170 | |
4373e329 | 2171 | PERL_CALLCONV long Perl_my_ntohl(pTHX_ long l) |
abb2c242 JH |
2172 | __attribute__malloc__ |
2173 | __attribute__warn_unused_result__ | |
2174 | __attribute__pure__; | |
f54cb97a | 2175 | |
0cb96387 | 2176 | #endif |
1d7c1841 | 2177 | PERL_CALLCONV void Perl_my_unexec(pTHX); |
f54cb97a | 2178 | PERL_CALLCONV OP* Perl_newANONLIST(pTHX_ OP* o) |
abb2c242 JH |
2179 | __attribute__malloc__ |
2180 | __attribute__warn_unused_result__; | |
f54cb97a AL |
2181 | |
2182 | PERL_CALLCONV OP* Perl_newANONHASH(pTHX_ OP* o) | |
abb2c242 JH |
2183 | __attribute__malloc__ |
2184 | __attribute__warn_unused_result__; | |
f54cb97a | 2185 | |
1d7c1841 | 2186 | PERL_CALLCONV OP* Perl_newANONSUB(pTHX_ I32 floor, OP* proto, OP* block); |
f54cb97a | 2187 | PERL_CALLCONV OP* Perl_newASSIGNOP(pTHX_ I32 flags, OP* left, I32 optype, OP* right) |
abb2c242 JH |
2188 | __attribute__malloc__ |
2189 | __attribute__warn_unused_result__; | |
f54cb97a | 2190 | |
aec46f14 | 2191 | PERL_CALLCONV OP* Perl_newCONDOP(pTHX_ I32 flags, OP* first, OP* trueop, OP* falseop) |
abb2c242 | 2192 | __attribute__malloc__ |
aec46f14 AL |
2193 | __attribute__warn_unused_result__ |
2194 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
2195 | #define PERL_ARGS_ASSERT_NEWCONDOP \ |
2196 | assert(first) | |
aec46f14 | 2197 | |
99ab892b | 2198 | PERL_CALLCONV CV* Perl_newCONSTSUB(pTHX_ HV* stash, const char* name, SV* sv); |
eb8433b7 NC |
2199 | #ifdef PERL_MAD |
2200 | PERL_CALLCONV OP* Perl_newFORM(pTHX_ I32 floor, OP* o, OP* block); | |
2201 | #else | |
1d7c1841 | 2202 | PERL_CALLCONV void Perl_newFORM(pTHX_ I32 floor, OP* o, OP* block); |
eb8433b7 | 2203 | #endif |
aa924a5a | 2204 | PERL_CALLCONV OP* Perl_newFOROP(pTHX_ I32 flags, char* label, line_t forline, OP* sv, OP* expr, OP* block, OP* cont) |
abb2c242 | 2205 | __attribute__malloc__ |
aa924a5a SH |
2206 | __attribute__warn_unused_result__ |
2207 | __attribute__nonnull__(pTHX_5); | |
7918f24d NC |
2208 | #define PERL_ARGS_ASSERT_NEWFOROP \ |
2209 | assert(expr) | |
f54cb97a | 2210 | |
0d863452 RH |
2211 | PERL_CALLCONV OP* Perl_newGIVENOP(pTHX_ OP* cond, OP* block, PADOFFSET defsv_off) |
2212 | __attribute__malloc__ | |
2213 | __attribute__warn_unused_result__ | |
2214 | __attribute__nonnull__(pTHX_1) | |
2215 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
2216 | #define PERL_ARGS_ASSERT_NEWGIVENOP \ |
2217 | assert(cond); assert(block) | |
0d863452 | 2218 | |
4048f010 | 2219 | PERL_CALLCONV OP* Perl_newLOGOP(pTHX_ I32 optype, I32 flags, OP *first, OP *other) |
abb2c242 | 2220 | __attribute__malloc__ |
aa924a5a SH |
2221 | __attribute__warn_unused_result__ |
2222 | __attribute__nonnull__(pTHX_3) | |
2223 | __attribute__nonnull__(pTHX_4); | |
7918f24d NC |
2224 | #define PERL_ARGS_ASSERT_NEWLOGOP \ |
2225 | assert(first); assert(other) | |
f54cb97a AL |
2226 | |
2227 | PERL_CALLCONV OP* Perl_newLOOPEX(pTHX_ I32 type, OP* label) | |
abb2c242 | 2228 | __attribute__malloc__ |
aa924a5a SH |
2229 | __attribute__warn_unused_result__ |
2230 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
2231 | #define PERL_ARGS_ASSERT_NEWLOOPEX \ |
2232 | assert(label) | |
f54cb97a AL |
2233 | |
2234 | PERL_CALLCONV OP* Perl_newLOOPOP(pTHX_ I32 flags, I32 debuggable, OP* expr, OP* block) | |
abb2c242 JH |
2235 | __attribute__malloc__ |
2236 | __attribute__warn_unused_result__; | |
f54cb97a | 2237 | |
4373e329 | 2238 | PERL_CALLCONV OP* Perl_newNULLLIST(pTHX) |
abb2c242 JH |
2239 | __attribute__malloc__ |
2240 | __attribute__warn_unused_result__; | |
f54cb97a AL |
2241 | |
2242 | PERL_CALLCONV OP* Perl_newOP(pTHX_ I32 optype, I32 flags) | |
abb2c242 JH |
2243 | __attribute__malloc__ |
2244 | __attribute__warn_unused_result__; | |
f54cb97a AL |
2245 | |
2246 | PERL_CALLCONV void Perl_newPROG(pTHX_ OP* o) | |
abb2c242 | 2247 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2248 | #define PERL_ARGS_ASSERT_NEWPROG \ |
2249 | assert(o) | |
f54cb97a AL |
2250 | |
2251 | PERL_CALLCONV OP* Perl_newRANGE(pTHX_ I32 flags, OP* left, OP* right) | |
abb2c242 | 2252 | __attribute__malloc__ |
aa924a5a SH |
2253 | __attribute__warn_unused_result__ |
2254 | __attribute__nonnull__(pTHX_2) | |
2255 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
2256 | #define PERL_ARGS_ASSERT_NEWRANGE \ |
2257 | assert(left); assert(right) | |
f54cb97a AL |
2258 | |
2259 | PERL_CALLCONV OP* Perl_newSLICEOP(pTHX_ I32 flags, OP* subscript, OP* listop) | |
abb2c242 JH |
2260 | __attribute__malloc__ |
2261 | __attribute__warn_unused_result__; | |
f54cb97a AL |
2262 | |
2263 | PERL_CALLCONV OP* Perl_newSTATEOP(pTHX_ I32 flags, char* label, OP* o) | |
abb2c242 JH |
2264 | __attribute__malloc__ |
2265 | __attribute__warn_unused_result__; | |
f54cb97a | 2266 | |
1d7c1841 | 2267 | PERL_CALLCONV CV* Perl_newSUB(pTHX_ I32 floor, OP* o, OP* proto, OP* block); |
77004dee NC |
2268 | PERL_CALLCONV CV * Perl_newXS_flags(pTHX_ const char *name, XSUBADDR_t subaddr, const char *const filename, const char *const proto, U32 flags) |
2269 | __attribute__nonnull__(pTHX_2) | |
2270 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
2271 | #define PERL_ARGS_ASSERT_NEWXS_FLAGS \ |
2272 | assert(subaddr); assert(filename) | |
77004dee | 2273 | |
4048f010 | 2274 | PERL_CALLCONV CV* Perl_newXS(pTHX_ const char *name, XSUBADDR_t subaddr, const char *filename) |
9a957fbc | 2275 | __attribute__nonnull__(pTHX_2) |
abb2c242 | 2276 | __attribute__nonnull__(pTHX_3); |
7918f24d NC |
2277 | #define PERL_ARGS_ASSERT_NEWXS \ |
2278 | assert(subaddr); assert(filename) | |
f54cb97a | 2279 | |
ac572bf4 | 2280 | /* PERL_CALLCONV AV* Perl_newAV(pTHX) |
ac572bf4 | 2281 | __attribute__warn_unused_result__; */ |
f54cb97a | 2282 | |
4373e329 | 2283 | PERL_CALLCONV OP* Perl_newAVREF(pTHX_ OP* o) |
abb2c242 JH |
2284 | __attribute__malloc__ |
2285 | __attribute__warn_unused_result__ | |
2286 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2287 | #define PERL_ARGS_ASSERT_NEWAVREF \ |
2288 | assert(o) | |
f54cb97a AL |
2289 | |
2290 | PERL_CALLCONV OP* Perl_newBINOP(pTHX_ I32 type, I32 flags, OP* first, OP* last) | |
abb2c242 JH |
2291 | __attribute__malloc__ |
2292 | __attribute__warn_unused_result__; | |
f54cb97a AL |
2293 | |
2294 | PERL_CALLCONV OP* Perl_newCVREF(pTHX_ I32 flags, OP* o) | |
abb2c242 JH |
2295 | __attribute__malloc__ |
2296 | __attribute__warn_unused_result__; | |
f54cb97a AL |
2297 | |
2298 | PERL_CALLCONV OP* Perl_newGVOP(pTHX_ I32 type, I32 flags, GV* gv) | |
abb2c242 | 2299 | __attribute__malloc__ |
2d03de9c AL |
2300 | __attribute__warn_unused_result__ |
2301 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
2302 | #define PERL_ARGS_ASSERT_NEWGVOP \ |
2303 | assert(gv) | |
f54cb97a AL |
2304 | |
2305 | PERL_CALLCONV GV* Perl_newGVgen(pTHX_ const char* pack) | |
abb2c242 | 2306 | __attribute__malloc__ |
aa924a5a SH |
2307 | __attribute__warn_unused_result__ |
2308 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2309 | #define PERL_ARGS_ASSERT_NEWGVGEN \ |
2310 | assert(pack) | |
f54cb97a AL |
2311 | |
2312 | PERL_CALLCONV OP* Perl_newGVREF(pTHX_ I32 type, OP* o) | |
abb2c242 JH |
2313 | __attribute__malloc__ |
2314 | __attribute__warn_unused_result__; | |
f54cb97a | 2315 | |
4373e329 | 2316 | PERL_CALLCONV OP* Perl_newHVREF(pTHX_ OP* o) |
abb2c242 JH |
2317 | __attribute__malloc__ |
2318 | __attribute__warn_unused_result__ | |
2319 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2320 | #define PERL_ARGS_ASSERT_NEWHVREF \ |
2321 | assert(o) | |
f54cb97a | 2322 | |
78ac7dd9 | 2323 | /* PERL_CALLCONV HV* Perl_newHV(pTHX) |
78ac7dd9 | 2324 | __attribute__warn_unused_result__; */ |
f54cb97a | 2325 | |
4048f010 | 2326 | PERL_CALLCONV HV* Perl_newHVhv(pTHX_ HV *hv) |
abb2c242 JH |
2327 | __attribute__malloc__ |
2328 | __attribute__warn_unused_result__; | |
f54cb97a | 2329 | |
85dca89a | 2330 | /* PERL_CALLCONV IO* Perl_newIO(pTHX) |
abb2c242 | 2331 | __attribute__malloc__ |
85dca89a | 2332 | __attribute__warn_unused_result__; */ |
f54cb97a AL |
2333 | |
2334 | PERL_CALLCONV OP* Perl_newLISTOP(pTHX_ I32 type, I32 flags, OP* first, OP* last) | |
abb2c242 JH |
2335 | __attribute__malloc__ |
2336 | __attribute__warn_unused_result__; | |
f54cb97a | 2337 | |
392d04bb | 2338 | #ifdef USE_ITHREADS |
f54cb97a | 2339 | PERL_CALLCONV OP* Perl_newPADOP(pTHX_ I32 type, I32 flags, SV* sv) |
abb2c242 | 2340 | __attribute__malloc__ |
58182927 NC |
2341 | __attribute__warn_unused_result__ |
2342 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
2343 | #define PERL_ARGS_ASSERT_NEWPADOP \ |
2344 | assert(sv) | |
f54cb97a | 2345 | |
392d04bb | 2346 | #endif |
f54cb97a | 2347 | PERL_CALLCONV OP* Perl_newPMOP(pTHX_ I32 type, I32 flags) |
abb2c242 JH |
2348 | __attribute__malloc__ |
2349 | __attribute__warn_unused_result__; | |
f54cb97a AL |
2350 | |
2351 | PERL_CALLCONV OP* Perl_newPVOP(pTHX_ I32 type, I32 flags, char* pv) | |
abb2c242 JH |
2352 | __attribute__malloc__ |
2353 | __attribute__warn_unused_result__; | |
f54cb97a | 2354 | |
23f13727 | 2355 | PERL_CALLCONV SV* Perl_newRV(pTHX_ SV *const sv) |
abb2c242 | 2356 | __attribute__malloc__ |
66a1b24b AL |
2357 | __attribute__warn_unused_result__ |
2358 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2359 | #define PERL_ARGS_ASSERT_NEWRV \ |
2360 | assert(sv) | |
f54cb97a | 2361 | |
23f13727 | 2362 | PERL_CALLCONV SV* Perl_newRV_noinc(pTHX_ SV *const sv) |
abb2c242 JH |
2363 | __attribute__malloc__ |
2364 | __attribute__warn_unused_result__ | |
2365 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2366 | #define PERL_ARGS_ASSERT_NEWRV_NOINC \ |
2367 | assert(sv) | |
f54cb97a | 2368 | |
2b021c53 | 2369 | PERL_CALLCONV SV* Perl_newSV(pTHX_ const STRLEN len) |
abb2c242 JH |
2370 | __attribute__malloc__ |
2371 | __attribute__warn_unused_result__; | |
f54cb97a | 2372 | |
4373e329 | 2373 | PERL_CALLCONV OP* Perl_newSVREF(pTHX_ OP* o) |
abb2c242 JH |
2374 | __attribute__malloc__ |
2375 | __attribute__warn_unused_result__ | |
2376 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2377 | #define PERL_ARGS_ASSERT_NEWSVREF \ |
2378 | assert(o) | |
f54cb97a | 2379 | |
4373e329 | 2380 | PERL_CALLCONV OP* Perl_newSVOP(pTHX_ I32 type, I32 flags, SV* sv) |
abb2c242 JH |
2381 | __attribute__malloc__ |
2382 | __attribute__warn_unused_result__ | |
2383 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
2384 | #define PERL_ARGS_ASSERT_NEWSVOP \ |
2385 | assert(sv) | |
f54cb97a | 2386 | |
23f13727 | 2387 | PERL_CALLCONV SV* Perl_newSViv(pTHX_ const IV i) |
abb2c242 JH |
2388 | __attribute__malloc__ |
2389 | __attribute__warn_unused_result__; | |
f54cb97a | 2390 | |
23f13727 | 2391 | PERL_CALLCONV SV* Perl_newSVuv(pTHX_ const UV u) |
abb2c242 JH |
2392 | __attribute__malloc__ |
2393 | __attribute__warn_unused_result__; | |
f54cb97a | 2394 | |
23f13727 | 2395 | PERL_CALLCONV SV* Perl_newSVnv(pTHX_ const NV n) |
abb2c242 JH |
2396 | __attribute__malloc__ |
2397 | __attribute__warn_unused_result__; | |
f54cb97a | 2398 | |
23f13727 | 2399 | PERL_CALLCONV SV* Perl_newSVpv(pTHX_ const char *const s, const STRLEN len) |
abb2c242 JH |
2400 | __attribute__malloc__ |
2401 | __attribute__warn_unused_result__; | |
f54cb97a | 2402 | |
23f13727 | 2403 | PERL_CALLCONV SV* Perl_newSVpvn(pTHX_ const char *const s, const STRLEN len) |
abb2c242 JH |
2404 | __attribute__malloc__ |
2405 | __attribute__warn_unused_result__; | |
f54cb97a | 2406 | |
23f13727 | 2407 | PERL_CALLCONV SV* Perl_newSVpvn_flags(pTHX_ const char *const s, const STRLEN len, const U32 flags) |
740cce10 NC |
2408 | __attribute__malloc__ |
2409 | __attribute__warn_unused_result__; | |
2410 | ||
23f13727 | 2411 | PERL_CALLCONV SV* Perl_newSVhek(pTHX_ const HEK *const hek) |
c1b02ed8 NC |
2412 | __attribute__malloc__ |
2413 | __attribute__warn_unused_result__; | |
2414 | ||
f54cb97a | 2415 | PERL_CALLCONV SV* Perl_newSVpvn_share(pTHX_ const char* s, I32 len, U32 hash) |
abb2c242 JH |
2416 | __attribute__malloc__ |
2417 | __attribute__warn_unused_result__; | |
f54cb97a | 2418 | |
23f13727 | 2419 | PERL_CALLCONV SV* Perl_newSVpvf(pTHX_ const char *const pat, ...) |
abb2c242 JH |
2420 | __attribute__malloc__ |
2421 | __attribute__warn_unused_result__ | |
aec46f14 AL |
2422 | __attribute__format__(__printf__,pTHX_1,pTHX_2) |
2423 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2424 | #define PERL_ARGS_ASSERT_NEWSVPVF \ |
2425 | assert(pat) | |
aec46f14 | 2426 | |
23f13727 | 2427 | PERL_CALLCONV SV* Perl_vnewSVpvf(pTHX_ const char *const pat, va_list *const args) |
aec46f14 AL |
2428 | __attribute__malloc__ |
2429 | __attribute__warn_unused_result__ | |
2430 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2431 | #define PERL_ARGS_ASSERT_VNEWSVPVF \ |
2432 | assert(pat) | |
f54cb97a | 2433 | |
12964ddd | 2434 | PERL_CALLCONV SV* Perl_newSVrv(pTHX_ SV *const rv, const char *const classname) |
1b6737cc | 2435 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2436 | #define PERL_ARGS_ASSERT_NEWSVRV \ |
2437 | assert(rv) | |
f54cb97a | 2438 | |
23f13727 | 2439 | PERL_CALLCONV SV* Perl_newSVsv(pTHX_ SV *const old) |
abb2c242 JH |
2440 | __attribute__malloc__ |
2441 | __attribute__warn_unused_result__; | |
f54cb97a | 2442 | |
fe9845cc | 2443 | PERL_CALLCONV SV* Perl_newSV_type(pTHX_ const svtype type) |
b9f83d2f NC |
2444 | __attribute__malloc__ |
2445 | __attribute__warn_unused_result__; | |
2446 | ||
f54cb97a | 2447 | PERL_CALLCONV OP* Perl_newUNOP(pTHX_ I32 type, I32 flags, OP* first) |
abb2c242 JH |
2448 | __attribute__malloc__ |
2449 | __attribute__warn_unused_result__; | |
f54cb97a | 2450 | |
0d863452 RH |
2451 | PERL_CALLCONV OP* Perl_newWHENOP(pTHX_ OP* cond, OP* block) |
2452 | __attribute__malloc__ | |
2453 | __attribute__warn_unused_result__ | |
2454 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
2455 | #define PERL_ARGS_ASSERT_NEWWHENOP \ |
2456 | assert(block) | |
0d863452 | 2457 | |
f54cb97a | 2458 | PERL_CALLCONV OP* Perl_newWHILEOP(pTHX_ I32 flags, I32 debuggable, LOOP* loop, I32 whileline, OP* expr, OP* block, OP* cont, I32 has_my) |
abb2c242 JH |
2459 | __attribute__malloc__ |
2460 | __attribute__warn_unused_result__; | |
f54cb97a AL |
2461 | |
2462 | PERL_CALLCONV PERL_SI* Perl_new_stackinfo(pTHX_ I32 stitems, I32 cxitems) | |
abb2c242 JH |
2463 | __attribute__malloc__ |
2464 | __attribute__warn_unused_result__; | |
f54cb97a | 2465 | |
4048f010 | 2466 | PERL_CALLCONV char* Perl_scan_vstring(pTHX_ const char *s, const char *const e, SV *sv) |
abb2c242 | 2467 | __attribute__nonnull__(pTHX_1) |
65b06e02 DM |
2468 | __attribute__nonnull__(pTHX_2) |
2469 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
2470 | #define PERL_ARGS_ASSERT_SCAN_VSTRING \ |
2471 | assert(s); assert(e); assert(sv) | |
f54cb97a | 2472 | |
9f6cc744 | 2473 | PERL_CALLCONV const char* Perl_scan_version(pTHX_ const char *s, SV *rv, bool qv) |
abb2c242 JH |
2474 | __attribute__nonnull__(pTHX_1) |
2475 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
2476 | #define PERL_ARGS_ASSERT_SCAN_VERSION \ |
2477 | assert(s); assert(rv) | |
f54cb97a | 2478 | |
5747a2f6 | 2479 | PERL_CALLCONV const char* Perl_prescan_version(pTHX_ const char *s, bool strict, const char** errstr, bool *sqv, int *ssaw_decimal, int *swidth, bool *salpha) |
91152fc1 DG |
2480 | __attribute__nonnull__(pTHX_1); |
2481 | #define PERL_ARGS_ASSERT_PRESCAN_VERSION \ | |
2482 | assert(s) | |
2483 | ||
2d03de9c AL |
2484 | PERL_CALLCONV SV* Perl_new_version(pTHX_ SV *ver) |
2485 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2486 | #define PERL_ARGS_ASSERT_NEW_VERSION \ |
2487 | assert(ver) | |
2d03de9c | 2488 | |
ac0e6a2f | 2489 | PERL_CALLCONV SV* Perl_upg_version(pTHX_ SV *ver, bool qv) |
2d03de9c | 2490 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2491 | #define PERL_ARGS_ASSERT_UPG_VERSION \ |
2492 | assert(ver) | |
2d03de9c | 2493 | |
e0218a61 JP |
2494 | PERL_CALLCONV bool Perl_vverify(pTHX_ SV *vs) |
2495 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2496 | #define PERL_ARGS_ASSERT_VVERIFY \ |
2497 | assert(vs) | |
e0218a61 | 2498 | |
2d03de9c AL |
2499 | PERL_CALLCONV SV* Perl_vnumify(pTHX_ SV *vs) |
2500 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2501 | #define PERL_ARGS_ASSERT_VNUMIFY \ |
2502 | assert(vs) | |
2d03de9c AL |
2503 | |
2504 | PERL_CALLCONV SV* Perl_vnormal(pTHX_ SV *vs) | |
2505 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2506 | #define PERL_ARGS_ASSERT_VNORMAL \ |
2507 | assert(vs) | |
2d03de9c AL |
2508 | |
2509 | PERL_CALLCONV SV* Perl_vstringify(pTHX_ SV *vs) | |
2510 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2511 | #define PERL_ARGS_ASSERT_VSTRINGIFY \ |
2512 | assert(vs) | |
2d03de9c | 2513 | |
9f6cc744 | 2514 | PERL_CALLCONV int Perl_vcmp(pTHX_ SV *lhv, SV *rhv) |
abb2c242 JH |
2515 | __attribute__nonnull__(pTHX_1) |
2516 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
2517 | #define PERL_ARGS_ASSERT_VCMP \ |
2518 | assert(lhv); assert(rhv) | |
f54cb97a | 2519 | |
2d03de9c AL |
2520 | PERL_CALLCONV PerlIO* Perl_nextargv(pTHX_ GV* gv) |
2521 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2522 | #define PERL_ARGS_ASSERT_NEXTARGV \ |
2523 | assert(gv) | |
2d03de9c | 2524 | |
04c9e624 | 2525 | PERL_CALLCONV char* Perl_ninstr(const char* big, const char* bigend, const char* little, const char* lend) |
2d03de9c | 2526 | __attribute__pure__ |
04c9e624 VP |
2527 | __attribute__nonnull__(1) |
2528 | __attribute__nonnull__(2) | |
2529 | __attribute__nonnull__(3) | |
2530 | __attribute__nonnull__(4); | |
7918f24d NC |
2531 | #define PERL_ARGS_ASSERT_NINSTR \ |
2532 | assert(big); assert(bigend); assert(little); assert(lend) | |
f54cb97a | 2533 | |
6472dca1 | 2534 | PERL_CALLCONV void Perl_op_free(pTHX_ OP* arg); |
eb8433b7 NC |
2535 | #ifdef PERL_MAD |
2536 | PERL_CALLCONV OP* Perl_package(pTHX_ OP* o) | |
2537 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2538 | #define PERL_ARGS_ASSERT_PACKAGE \ |
2539 | assert(o) | |
eb8433b7 NC |
2540 | |
2541 | #else | |
2d03de9c AL |
2542 | PERL_CALLCONV void Perl_package(pTHX_ OP* o) |
2543 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2544 | #define PERL_ARGS_ASSERT_PACKAGE \ |
2545 | assert(o) | |
f54cb97a | 2546 | |
eb8433b7 | 2547 | #endif |
6fa4d285 DG |
2548 | PERL_CALLCONV void Perl_package_version(pTHX_ OP* v) |
2549 | __attribute__nonnull__(pTHX_1); | |
2550 | #define PERL_ARGS_ASSERT_PACKAGE_VERSION \ | |
2551 | assert(v) | |
2552 | ||
1d7c1841 | 2553 | PERL_CALLCONV PADOFFSET Perl_pad_alloc(pTHX_ I32 optype, U32 tmptype); |
d6447115 | 2554 | PERL_CALLCONV PADOFFSET Perl_allocmy(pTHX_ const char *const name, const STRLEN len, const U32 flags) |
abb2c242 | 2555 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2556 | #define PERL_ARGS_ASSERT_ALLOCMY \ |
2557 | assert(name) | |
f54cb97a | 2558 | |
f8f98e0a | 2559 | PERL_CALLCONV PADOFFSET Perl_pad_findmy(pTHX_ const char* name, STRLEN len, U32 flags) |
255164ba | 2560 | __attribute__warn_unused_result__ |
abb2c242 | 2561 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2562 | #define PERL_ARGS_ASSERT_PAD_FINDMY \ |
2563 | assert(name) | |
f54cb97a | 2564 | |
03d5bcf8 VP |
2565 | PERL_CALLCONV PADOFFSET Perl_find_rundefsvoffset(pTHX) |
2566 | __attribute__deprecated__; | |
2567 | ||
789bd863 | 2568 | PERL_CALLCONV SV* Perl_find_rundefsv(pTHX); |
4373e329 | 2569 | PERL_CALLCONV OP* Perl_oopsAV(pTHX_ OP* o) |
1df70142 | 2570 | __attribute__warn_unused_result__ |
abb2c242 | 2571 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2572 | #define PERL_ARGS_ASSERT_OOPSAV \ |
2573 | assert(o) | |
f54cb97a | 2574 | |
4373e329 | 2575 | PERL_CALLCONV OP* Perl_oopsHV(pTHX_ OP* o) |
1df70142 | 2576 | __attribute__warn_unused_result__ |
abb2c242 | 2577 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2578 | #define PERL_ARGS_ASSERT_OOPSHV \ |
2579 | assert(o) | |
f54cb97a | 2580 | |
dd2155a4 | 2581 | PERL_CALLCONV void Perl_pad_leavemy(pTHX); |
c3507693 | 2582 | #ifdef DEBUGGING |
1d7c1841 | 2583 | PERL_CALLCONV SV* Perl_pad_sv(pTHX_ PADOFFSET po); |
c3507693 | 2584 | #endif |
1d7c1841 | 2585 | PERL_CALLCONV void Perl_pad_free(pTHX_ PADOFFSET po); |
43869a0c | 2586 | #if defined(PERL_IN_PAD_C) |
82af08ae NC |
2587 | STATIC void S_pad_reset(pTHX); |
2588 | #endif | |
dd2155a4 | 2589 | PERL_CALLCONV void Perl_pad_swipe(pTHX_ PADOFFSET po, bool refadjust); |
666e7765 | 2590 | PERL_CALLCONV void Perl_peep(pTHX_ OP* o); |
1a0a2ba9 | 2591 | PERL_CALLCONV void Perl_rpeep(pTHX_ OP* o); |
4048f010 | 2592 | PERL_CALLCONV PerlIO* Perl_start_glob(pTHX_ SV *tmpglob, IO *io) |
2d03de9c AL |
2593 | __attribute__nonnull__(pTHX_1) |
2594 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
2595 | #define PERL_ARGS_ASSERT_START_GLOB \ |
2596 | assert(tmpglob); assert(io) | |
2d03de9c | 2597 | |
59bd0823 | 2598 | #if defined(USE_REENTRANT_API) |
10bc17b6 | 2599 | PERL_CALLCONV void Perl_reentrant_size(pTHX); |
59bd0823 | 2600 | PERL_CALLCONV void Perl_reentrant_init(pTHX); |
10bc17b6 | 2601 | PERL_CALLCONV void Perl_reentrant_free(pTHX); |
4048f010 | 2602 | PERL_CALLCONV void* Perl_reentrant_retry(const char *f, ...) |
fb9bf107 | 2603 | __attribute__nonnull__(1); |
7918f24d NC |
2604 | #define PERL_ARGS_ASSERT_REENTRANT_RETRY \ |
2605 | assert(f) | |
fb9bf107 | 2606 | |
59bd0823 | 2607 | #endif |
1d7c1841 | 2608 | PERL_CALLCONV void Perl_call_atexit(pTHX_ ATEXIT_t fn, void *ptr); |
4373e329 | 2609 | PERL_CALLCONV I32 Perl_call_argv(pTHX_ const char* sub_name, I32 flags, char** argv) |
abb2c242 JH |
2610 | __attribute__nonnull__(pTHX_1) |
2611 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
2612 | #define PERL_ARGS_ASSERT_CALL_ARGV \ |
2613 | assert(sub_name); assert(argv) | |
f54cb97a | 2614 | |
4373e329 | 2615 | PERL_CALLCONV I32 Perl_call_method(pTHX_ const char* methname, I32 flags) |
abb2c242 | 2616 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2617 | #define PERL_ARGS_ASSERT_CALL_METHOD \ |
2618 | assert(methname) | |
f54cb97a | 2619 | |
4373e329 | 2620 | PERL_CALLCONV I32 Perl_call_pv(pTHX_ const char* sub_name, I32 flags) |
abb2c242 | 2621 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2622 | #define PERL_ARGS_ASSERT_CALL_PV \ |
2623 | assert(sub_name) | |
f54cb97a | 2624 | |
8c54174d | 2625 | PERL_CALLCONV I32 Perl_call_sv(pTHX_ SV* sv, VOL I32 flags) |
aec46f14 | 2626 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2627 | #define PERL_ARGS_ASSERT_CALL_SV \ |
2628 | assert(sv) | |
aec46f14 | 2629 | |
ce08f86c | 2630 | PERL_CALLCONV void Perl_despatch_signals(pTHX); |
e4c5ccf3 RH |
2631 | PERL_CALLCONV OP * Perl_doref(pTHX_ OP *o, I32 type, bool set_op_ref) |
2632 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2633 | #define PERL_ARGS_ASSERT_DOREF \ |
2634 | assert(o) | |
e4c5ccf3 | 2635 | |
4373e329 | 2636 | PERL_CALLCONV SV* Perl_eval_pv(pTHX_ const char* p, I32 croak_on_error) |
abb2c242 | 2637 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2638 | #define PERL_ARGS_ASSERT_EVAL_PV \ |
2639 | assert(p) | |
f54cb97a | 2640 | |
4373e329 | 2641 | PERL_CALLCONV I32 Perl_eval_sv(pTHX_ SV* sv, I32 flags) |
abb2c242 | 2642 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2643 | #define PERL_ARGS_ASSERT_EVAL_SV \ |
2644 | assert(sv) | |
f54cb97a | 2645 | |
64ace3f8 | 2646 | PERL_CALLCONV SV* Perl_get_sv(pTHX_ const char *name, I32 flags) |
abb2c242 | 2647 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2648 | #define PERL_ARGS_ASSERT_GET_SV \ |
2649 | assert(name) | |
f54cb97a | 2650 | |
cbfd0a87 | 2651 | PERL_CALLCONV AV* Perl_get_av(pTHX_ const char *name, I32 flags) |
255164ba | 2652 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2653 | #define PERL_ARGS_ASSERT_GET_AV \ |
2654 | assert(name) | |
255164ba | 2655 | |
6673a63c | 2656 | PERL_CALLCONV HV* Perl_get_hv(pTHX_ const char *name, I32 flags) |
255164ba | 2657 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2658 | #define PERL_ARGS_ASSERT_GET_HV \ |
2659 | assert(name) | |
255164ba | 2660 | |
780a5241 NC |
2661 | PERL_CALLCONV CV* Perl_get_cv(pTHX_ const char* name, I32 flags) |
2662 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2663 | #define PERL_ARGS_ASSERT_GET_CV \ |
2664 | assert(name) | |
780a5241 NC |
2665 | |
2666 | PERL_CALLCONV CV* Perl_get_cvn_flags(pTHX_ const char* name, STRLEN len, I32 flags) | |
abb2c242 | 2667 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2668 | #define PERL_ARGS_ASSERT_GET_CVN_FLAGS \ |
2669 | assert(name) | |
f54cb97a | 2670 | |
1d7c1841 GS |
2671 | PERL_CALLCONV int Perl_init_i18nl10n(pTHX_ int printwarn); |
2672 | PERL_CALLCONV int Perl_init_i18nl14n(pTHX_ int printwarn); | |
8772537c AL |
2673 | PERL_CALLCONV void Perl_new_collate(pTHX_ const char* newcoll); |
2674 | PERL_CALLCONV void Perl_new_ctype(pTHX_ const char* newctype) | |
abb2c242 | 2675 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2676 | #define PERL_ARGS_ASSERT_NEW_CTYPE \ |
2677 | assert(newctype) | |
f54cb97a | 2678 | |
8772537c | 2679 | PERL_CALLCONV void Perl_new_numeric(pTHX_ const char* newcoll); |
1d7c1841 GS |
2680 | PERL_CALLCONV void Perl_set_numeric_local(pTHX); |
2681 | PERL_CALLCONV void Perl_set_numeric_radix(pTHX); | |
2682 | PERL_CALLCONV void Perl_set_numeric_standard(pTHX); | |
4373e329 | 2683 | PERL_CALLCONV void Perl_require_pv(pTHX_ const char* pv) |
abb2c242 | 2684 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2685 | #define PERL_ARGS_ASSERT_REQUIRE_PV \ |
2686 | assert(pv) | |
f54cb97a | 2687 | |
2d03de9c AL |
2688 | PERL_CALLCONV void Perl_pack_cat(pTHX_ SV *cat, const char *pat, const char *patend, SV **beglist, SV **endlist, SV ***next_in_list, U32 flags) |
2689 | __attribute__nonnull__(pTHX_1) | |
2690 | __attribute__nonnull__(pTHX_2) | |
2691 | __attribute__nonnull__(pTHX_3) | |
2692 | __attribute__nonnull__(pTHX_4) | |
2693 | __attribute__nonnull__(pTHX_5) | |
2694 | __attribute__nonnull__(pTHX_6); | |
7918f24d NC |
2695 | #define PERL_ARGS_ASSERT_PACK_CAT \ |
2696 | assert(cat); assert(pat); assert(patend); assert(beglist); assert(endlist); assert(next_in_list) | |
2d03de9c AL |
2697 | |
2698 | PERL_CALLCONV void Perl_packlist(pTHX_ SV *cat, const char *pat, const char *patend, SV **beglist, SV **endlist) | |
2699 | __attribute__nonnull__(pTHX_1) | |
2700 | __attribute__nonnull__(pTHX_2) | |
2701 | __attribute__nonnull__(pTHX_3) | |
2702 | __attribute__nonnull__(pTHX_4) | |
2703 | __attribute__nonnull__(pTHX_5); | |
7918f24d NC |
2704 | #define PERL_ARGS_ASSERT_PACKLIST \ |
2705 | assert(cat); assert(pat); assert(patend); assert(beglist); assert(endlist) | |
2d03de9c | 2706 | |
ed4173ef NC |
2707 | #if defined(PERL_USES_PL_PIDSTATUS) && defined(PERL_IN_UTIL_C) |
2708 | STATIC void S_pidgone(pTHX_ Pid_t pid, int status); | |
e3790a26 | 2709 | #endif |
4048f010 | 2710 | PERL_CALLCONV OP* Perl_pmruntime(pTHX_ OP *o, OP *expr, bool isreg) |
abb2c242 JH |
2711 | __attribute__nonnull__(pTHX_1) |
2712 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
2713 | #define PERL_ARGS_ASSERT_PMRUNTIME \ |
2714 | assert(o); assert(expr) | |
f54cb97a | 2715 | |
43869a0c | 2716 | #if defined(PERL_IN_OP_C) |
0d86688d | 2717 | STATIC OP* S_pmtrans(pTHX_ OP* o, OP* expr, OP* repl) |
abb2c242 | 2718 | __attribute__nonnull__(pTHX_1) |
2d03de9c AL |
2719 | __attribute__nonnull__(pTHX_2) |
2720 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
2721 | #define PERL_ARGS_ASSERT_PMTRANS \ |
2722 | assert(o); assert(expr); assert(repl) | |
f54cb97a | 2723 | |
0d86688d | 2724 | #endif |
1d7c1841 GS |
2725 | PERL_CALLCONV void Perl_pop_scope(pTHX); |
2726 | PERL_CALLCONV OP* Perl_prepend_elem(pTHX_ I32 optype, OP* head, OP* tail); | |
1d7c1841 | 2727 | PERL_CALLCONV void Perl_push_scope(pTHX); |
25b0f989 | 2728 | /* PERL_CALLCONV OP* Perl_ref(pTHX_ OP* o, I32 type); */ |
43869a0c | 2729 | #if defined(PERL_IN_OP_C) |
0d86688d NC |
2730 | STATIC OP* S_refkids(pTHX_ OP* o, I32 type); |
2731 | #endif | |
097eb12c | 2732 | PERL_CALLCONV void Perl_regdump(pTHX_ const regexp* r) |
abb2c242 | 2733 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2734 | #define PERL_ARGS_ASSERT_REGDUMP \ |
2735 | assert(r) | |
f54cb97a | 2736 | |
f7819f85 A |
2737 | PERL_CALLCONV void Perl_regdump(pTHX_ const regexp* r) |
2738 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2739 | #define PERL_ARGS_ASSERT_REGDUMP \ |
2740 | assert(r) | |
f7819f85 | 2741 | |
4048f010 | 2742 | PERL_CALLCONV SV* Perl_regclass_swash(pTHX_ const regexp *prog, const struct regnode *node, bool doinit, SV **listsvp, SV **altsvp) |
32fc9b6a | 2743 | __attribute__nonnull__(pTHX_2); |
7918f24d NC |
2744 | #define PERL_ARGS_ASSERT_REGCLASS_SWASH \ |
2745 | assert(node) | |
2d03de9c | 2746 | |
49d7dfbc | 2747 | PERL_CALLCONV I32 Perl_pregexec(pTHX_ REGEXP * const prog, char* stringarg, char* strend, char* strbeg, I32 minend, SV* screamer, U32 nosave) |
abb2c242 JH |
2748 | __attribute__nonnull__(pTHX_1) |
2749 | __attribute__nonnull__(pTHX_2) | |
2750 | __attribute__nonnull__(pTHX_3) | |
2751 | __attribute__nonnull__(pTHX_4) | |
2752 | __attribute__nonnull__(pTHX_6); | |
7918f24d NC |
2753 | #define PERL_ARGS_ASSERT_PREGEXEC \ |
2754 | assert(prog); assert(stringarg); assert(strend); assert(strbeg); assert(screamer) | |
f54cb97a | 2755 | |
84679df5 | 2756 | PERL_CALLCONV void Perl_pregfree(pTHX_ REGEXP* r); |
4048f010 | 2757 | PERL_CALLCONV void Perl_pregfree2(pTHX_ REGEXP *rx) |
288b8c02 | 2758 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2759 | #define PERL_ARGS_ASSERT_PREGFREE2 \ |
2760 | assert(rx) | |
288b8c02 | 2761 | |
f0826785 BM |
2762 | PERL_CALLCONV REGEXP* Perl_reg_temp_copy(pTHX_ REGEXP* ret_x, REGEXP* rx) |
2763 | __attribute__nonnull__(pTHX_2); | |
7918f24d | 2764 | #define PERL_ARGS_ASSERT_REG_TEMP_COPY \ |
f0826785 | 2765 | assert(rx) |
28d8d7f4 | 2766 | |
4048f010 | 2767 | PERL_CALLCONV void Perl_regfree_internal(pTHX_ REGEXP *const rx) |
8074533a | 2768 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2769 | #define PERL_ARGS_ASSERT_REGFREE_INTERNAL \ |
2770 | assert(rx) | |
8074533a | 2771 | |
a3c0e9ca | 2772 | #if defined(USE_ITHREADS) |
49d7dfbc | 2773 | PERL_CALLCONV void* Perl_regdupe_internal(pTHX_ REGEXP * const r, CLONE_PARAMS* param) |
84da74a7 YO |
2774 | __attribute__nonnull__(pTHX_1) |
2775 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
2776 | #define PERL_ARGS_ASSERT_REGDUPE_INTERNAL \ |
2777 | assert(r); assert(param) | |
84da74a7 | 2778 | |
a3c0e9ca | 2779 | #endif |
1593ad57 | 2780 | PERL_CALLCONV REGEXP* Perl_pregcomp(pTHX_ SV * const pattern, const U32 flags) |
3ab4a224 | 2781 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2782 | #define PERL_ARGS_ASSERT_PREGCOMP \ |
2783 | assert(pattern) | |
f54cb97a | 2784 | |
1593ad57 | 2785 | PERL_CALLCONV REGEXP* Perl_re_compile(pTHX_ SV * const pattern, U32 flags) |
3ab4a224 | 2786 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2787 | #define PERL_ARGS_ASSERT_RE_COMPILE \ |
2788 | assert(pattern) | |
2a5d9b1d | 2789 | |
9f61653a | 2790 | PERL_CALLCONV char* Perl_re_intuit_start(pTHX_ REGEXP * const rx, SV* sv, char* strpos, char* strend, const U32 flags, re_scream_pos_data *data) |
2d03de9c AL |
2791 | __attribute__nonnull__(pTHX_1) |
2792 | __attribute__nonnull__(pTHX_3) | |
2793 | __attribute__nonnull__(pTHX_4); | |
7918f24d NC |
2794 | #define PERL_ARGS_ASSERT_RE_INTUIT_START \ |
2795 | assert(rx); assert(strpos); assert(strend) | |
2d03de9c | 2796 | |
4048f010 | 2797 | PERL_CALLCONV SV* Perl_re_intuit_string(pTHX_ REGEXP *const r) |
2d03de9c | 2798 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2799 | #define PERL_ARGS_ASSERT_RE_INTUIT_STRING \ |
2800 | assert(r) | |
2d03de9c | 2801 | |
4048f010 | 2802 | PERL_CALLCONV I32 Perl_regexec_flags(pTHX_ REGEXP *const rx, char *stringarg, char *strend, char *strbeg, I32 minend, SV *sv, void *data, U32 flags) |
abb2c242 JH |
2803 | __attribute__nonnull__(pTHX_1) |
2804 | __attribute__nonnull__(pTHX_2) | |
2805 | __attribute__nonnull__(pTHX_3) | |
fb9bf107 NC |
2806 | __attribute__nonnull__(pTHX_4) |
2807 | __attribute__nonnull__(pTHX_6); | |
7918f24d NC |
2808 | #define PERL_ARGS_ASSERT_REGEXEC_FLAGS \ |
2809 | assert(rx); assert(stringarg); assert(strend); assert(strbeg); assert(sv) | |
a3b680e6 | 2810 | |
1df70142 | 2811 | PERL_CALLCONV regnode* Perl_regnext(pTHX_ regnode* p) |
8074533a | 2812 | __attribute__warn_unused_result__; |
1df70142 | 2813 | |
81714fb9 | 2814 | |
192b9cd1 AB |
2815 | PERL_CALLCONV SV* Perl_reg_named_buff(pTHX_ REGEXP * const rx, SV * const key, SV * const value, const U32 flags) |
2816 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2817 | #define PERL_ARGS_ASSERT_REG_NAMED_BUFF \ |
2818 | assert(rx) | |
192b9cd1 AB |
2819 | |
2820 | PERL_CALLCONV SV* Perl_reg_named_buff_iter(pTHX_ REGEXP * const rx, const SV * const lastkey, const U32 flags) | |
2821 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2822 | #define PERL_ARGS_ASSERT_REG_NAMED_BUFF_ITER \ |
2823 | assert(rx) | |
192b9cd1 AB |
2824 | |
2825 | PERL_CALLCONV SV* Perl_reg_named_buff_fetch(pTHX_ REGEXP * const rx, SV * const namesv, const U32 flags) | |
93b32b6d | 2826 | __attribute__nonnull__(pTHX_1) |
44a2ac75 | 2827 | __attribute__nonnull__(pTHX_2); |
7918f24d NC |
2828 | #define PERL_ARGS_ASSERT_REG_NAMED_BUFF_FETCH \ |
2829 | assert(rx); assert(namesv) | |
44a2ac75 | 2830 | |
192b9cd1 AB |
2831 | PERL_CALLCONV bool Perl_reg_named_buff_exists(pTHX_ REGEXP * const rx, SV * const key, const U32 flags) |
2832 | __attribute__nonnull__(pTHX_1) | |
2833 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
2834 | #define PERL_ARGS_ASSERT_REG_NAMED_BUFF_EXISTS \ |
2835 | assert(rx); assert(key) | |
192b9cd1 AB |
2836 | |
2837 | PERL_CALLCONV SV* Perl_reg_named_buff_firstkey(pTHX_ REGEXP * const rx, const U32 flags) | |
2838 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2839 | #define PERL_ARGS_ASSERT_REG_NAMED_BUFF_FIRSTKEY \ |
2840 | assert(rx) | |
192b9cd1 AB |
2841 | |
2842 | PERL_CALLCONV SV* Perl_reg_named_buff_nextkey(pTHX_ REGEXP * const rx, const U32 flags) | |
2843 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2844 | #define PERL_ARGS_ASSERT_REG_NAMED_BUFF_NEXTKEY \ |
2845 | assert(rx) | |
192b9cd1 AB |
2846 | |
2847 | PERL_CALLCONV SV* Perl_reg_named_buff_scalar(pTHX_ REGEXP * const rx, const U32 flags) | |
2848 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2849 | #define PERL_ARGS_ASSERT_REG_NAMED_BUFF_SCALAR \ |
2850 | assert(rx) | |
192b9cd1 AB |
2851 | |
2852 | PERL_CALLCONV SV* Perl_reg_named_buff_all(pTHX_ REGEXP * const rx, const U32 flags) | |
2853 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2854 | #define PERL_ARGS_ASSERT_REG_NAMED_BUFF_ALL \ |
2855 | assert(rx) | |
192b9cd1 | 2856 | |
2fdbfb4d AB |
2857 | |
2858 | PERL_CALLCONV void Perl_reg_numbered_buff_fetch(pTHX_ REGEXP * const rx, const I32 paren, SV * const sv) | |
2859 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2860 | #define PERL_ARGS_ASSERT_REG_NUMBERED_BUFF_FETCH \ |
2861 | assert(rx) | |
2fdbfb4d AB |
2862 | |
2863 | PERL_CALLCONV void Perl_reg_numbered_buff_store(pTHX_ REGEXP * const rx, const I32 paren, SV const * const value) | |
93b32b6d | 2864 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2865 | #define PERL_ARGS_ASSERT_REG_NUMBERED_BUFF_STORE \ |
2866 | assert(rx) | |
93b32b6d | 2867 | |
2fdbfb4d AB |
2868 | PERL_CALLCONV I32 Perl_reg_numbered_buff_length(pTHX_ REGEXP * const rx, const SV * const sv, const I32 paren) |
2869 | __attribute__nonnull__(pTHX_1) | |
2870 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
2871 | #define PERL_ARGS_ASSERT_REG_NUMBERED_BUFF_LENGTH \ |
2872 | assert(rx); assert(sv) | |
2fdbfb4d AB |
2873 | |
2874 | ||
49d7dfbc | 2875 | PERL_CALLCONV SV* Perl_reg_qr_package(pTHX_ REGEXP * const rx) |
fe578d7f | 2876 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2877 | #define PERL_ARGS_ASSERT_REG_QR_PACKAGE \ |
2878 | assert(rx) | |
fe578d7f | 2879 | |
93b32b6d | 2880 | |
32fc9b6a DM |
2881 | PERL_CALLCONV void Perl_regprop(pTHX_ const regexp *prog, SV* sv, const regnode* o) |
2882 | __attribute__nonnull__(pTHX_2) | |
2883 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
2884 | #define PERL_ARGS_ASSERT_REGPROP \ |
2885 | assert(sv); assert(o) | |
2d03de9c | 2886 | |
16fa5c11 VP |
2887 | PERL_CALLCONV void Perl_repeatcpy(char* to, const char* from, I32 len, I32 count) |
2888 | __attribute__nonnull__(1) | |
2889 | __attribute__nonnull__(2); | |
7918f24d NC |
2890 | #define PERL_ARGS_ASSERT_REPEATCPY \ |
2891 | assert(to); assert(from) | |
f54cb97a | 2892 | |
04c9e624 | 2893 | PERL_CALLCONV char* Perl_rninstr(const char* big, const char* bigend, const char* little, const char* lend) |
abb2c242 | 2894 | __attribute__pure__ |
04c9e624 VP |
2895 | __attribute__nonnull__(1) |
2896 | __attribute__nonnull__(2) | |
2897 | __attribute__nonnull__(3) | |
2898 | __attribute__nonnull__(4); | |
7918f24d NC |
2899 | #define PERL_ARGS_ASSERT_RNINSTR \ |
2900 | assert(big); assert(bigend); assert(little); assert(lend) | |
f54cb97a | 2901 | |
1d7c1841 GS |
2902 | PERL_CALLCONV Sighandler_t Perl_rsignal(pTHX_ int i, Sighandler_t t); |
2903 | PERL_CALLCONV int Perl_rsignal_restore(pTHX_ int i, Sigsave_t* t); | |
9f6cc744 | 2904 | PERL_CALLCONV int Perl_rsignal_save(pTHX_ int i, Sighandler_t t1, Sigsave_t* save) |
9a957fbc | 2905 | __attribute__nonnull__(pTHX_3); |
7918f24d NC |
2906 | #define PERL_ARGS_ASSERT_RSIGNAL_SAVE \ |
2907 | assert(save) | |
9a957fbc | 2908 | |
1d7c1841 | 2909 | PERL_CALLCONV Sighandler_t Perl_rsignal_state(pTHX_ int i); |
43869a0c | 2910 | #if defined(PERL_IN_PP_CTL_C) |
9c105995 | 2911 | STATIC void S_rxres_free(pTHX_ void** rsp) |
abb2c242 | 2912 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
2913 | #define PERL_ARGS_ASSERT_RXRES_FREE \ |
2914 | assert(rsp) | |
a3b680e6 | 2915 | |
9c105995 | 2916 | STATIC void S_rxres_restore(pTHX_ void **rsp, REGEXP *rx) |
abb2c242 JH |
2917 | __attribute__nonnull__(pTHX_1) |
2918 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
2919 | #define PERL_ARGS_ASSERT_RXRES_RESTORE \ |
2920 | assert(rsp); assert(rx) | |
a3b680e6 | 2921 | |
9c105995 | 2922 | #endif |
4048f010 | 2923 | PERL_CALLCONV void Perl_rxres_save(pTHX_ void **rsp, REGEXP *rx) |
abb2c242 JH |
2924 | __attribute__nonnull__(pTHX_1) |
2925 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
2926 | #define PERL_ARGS_ASSERT_RXRES_SAVE \ |
2927 | assert(rsp); assert(rx) | |
a3b680e6 | 2928 | |
cea2e8a9 | 2929 | #if !defined(HAS_RENAME) |
4373e329 | 2930 | PERL_CALLCONV I32 Perl_same_dirent(pTHX_ const char* a, const char* b) |
abb2c242 JH |
2931 | __attribute__nonnull__(pTHX_1) |
2932 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
2933 | #define PERL_ARGS_ASSERT_SAME_DIRENT \ |
2934 | assert(a); assert(b) | |
f54cb97a | 2935 | |
0cb96387 | 2936 | #endif |
53c1dcc0 AL |
2937 | PERL_CALLCONV char* Perl_savepv(pTHX_ const char* pv) |
2938 | __attribute__malloc__ | |
639f6c3d | 2939 | __attribute__warn_unused_result__; |
53c1dcc0 AL |
2940 | |
2941 | PERL_CALLCONV char* Perl_savepvn(pTHX_ const char* pv, I32 len) | |
2942 | __attribute__malloc__ | |
639f6c3d | 2943 | __attribute__warn_unused_result__; |
53c1dcc0 AL |
2944 | |
2945 | PERL_CALLCONV char* Perl_savesharedpv(pTHX_ const char* pv) | |
2946 | __attribute__malloc__ | |
2947 | __attribute__warn_unused_result__; | |
2948 | ||
d9095cec NC |
2949 | PERL_CALLCONV char* Perl_savesharedpvn(pTHX_ const char *const pv, const STRLEN len) |
2950 | __attribute__malloc__ | |
2951 | __attribute__warn_unused_result__ | |
2952 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2953 | #define PERL_ARGS_ASSERT_SAVESHAREDPVN \ |
2954 | assert(pv) | |
d9095cec | 2955 | |
53c1dcc0 AL |
2956 | PERL_CALLCONV char* Perl_savesvpv(pTHX_ SV* sv) |
2957 | __attribute__malloc__ | |
2958 | __attribute__warn_unused_result__ | |
2959 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2960 | #define PERL_ARGS_ASSERT_SAVESVPV \ |
2961 | assert(sv) | |
53c1dcc0 | 2962 | |
1d7c1841 | 2963 | PERL_CALLCONV void Perl_savestack_grow(pTHX); |
4b3c1a47 | 2964 | PERL_CALLCONV void Perl_savestack_grow_cnt(pTHX_ I32 need); |
91d1c79f VP |
2965 | /* PERL_CALLCONV void Perl_save_aelem(pTHX_ AV* av, I32 idx, SV **sptr) |
2966 | __attribute__nonnull__(pTHX_1) | |
2967 | __attribute__nonnull__(pTHX_3); */ | |
2968 | ||
2969 | PERL_CALLCONV void Perl_save_aelem_flags(pTHX_ AV* av, I32 idx, SV **sptr, const U32 flags) | |
9a957fbc AL |
2970 | __attribute__nonnull__(pTHX_1) |
2971 | __attribute__nonnull__(pTHX_3); | |
91d1c79f | 2972 | #define PERL_ARGS_ASSERT_SAVE_AELEM_FLAGS \ |
7918f24d | 2973 | assert(av); assert(sptr) |
9a957fbc | 2974 | |
1d7c1841 | 2975 | PERL_CALLCONV I32 Perl_save_alloc(pTHX_ I32 size, I32 pad); |
9a957fbc AL |
2976 | PERL_CALLCONV void Perl_save_aptr(pTHX_ AV** aptr) |
2977 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2978 | #define PERL_ARGS_ASSERT_SAVE_APTR \ |
2979 | assert(aptr) | |
9a957fbc AL |
2980 | |
2981 | PERL_CALLCONV AV* Perl_save_ary(pTHX_ GV* gv) | |
2982 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2983 | #define PERL_ARGS_ASSERT_SAVE_ARY \ |
2984 | assert(gv) | |
9a957fbc AL |
2985 | |
2986 | PERL_CALLCONV void Perl_save_bool(pTHX_ bool* boolp) | |
2987 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2988 | #define PERL_ARGS_ASSERT_SAVE_BOOL \ |
2989 | assert(boolp) | |
9a957fbc AL |
2990 | |
2991 | PERL_CALLCONV void Perl_save_clearsv(pTHX_ SV** svp) | |
2992 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
2993 | #define PERL_ARGS_ASSERT_SAVE_CLEARSV \ |
2994 | assert(svp) | |
9a957fbc | 2995 | |
4048f010 | 2996 | PERL_CALLCONV void Perl_save_delete(pTHX_ HV *hv, char *key, I32 klen) |
9a957fbc AL |
2997 | __attribute__nonnull__(pTHX_1) |
2998 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
2999 | #define PERL_ARGS_ASSERT_SAVE_DELETE \ |
3000 | assert(hv); assert(key) | |
9a957fbc | 3001 | |
af097752 VP |
3002 | PERL_CALLCONV void Perl_save_hdelete(pTHX_ HV *hv, SV *keysv) |
3003 | __attribute__nonnull__(pTHX_1) | |
3004 | __attribute__nonnull__(pTHX_2); | |
3005 | #define PERL_ARGS_ASSERT_SAVE_HDELETE \ | |
3006 | assert(hv); assert(keysv) | |
3007 | ||
c68ec7a9 VP |
3008 | PERL_CALLCONV void Perl_save_adelete(pTHX_ AV *av, I32 key) |
3009 | __attribute__nonnull__(pTHX_1); | |
3010 | #define PERL_ARGS_ASSERT_SAVE_ADELETE \ | |
3011 | assert(av) | |
3012 | ||
fb9bf107 NC |
3013 | PERL_CALLCONV void Perl_save_destructor(pTHX_ DESTRUCTORFUNC_NOCONTEXT_t f, void* p) |
3014 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3015 | #define PERL_ARGS_ASSERT_SAVE_DESTRUCTOR \ |
3016 | assert(p) | |
fb9bf107 | 3017 | |
55968144 | 3018 | PERL_CALLCONV void Perl_save_destructor_x(pTHX_ DESTRUCTORFUNC_t f, void* p); |
2fd8beea NC |
3019 | /* PERL_CALLCONV void Perl_save_freesv(pTHX_ SV* sv); */ |
3020 | /* PERL_CALLCONV void Perl_save_freeop(pTHX_ OP* o); */ | |
3021 | /* PERL_CALLCONV void Perl_save_freepv(pTHX_ char* pv); */ | |
9a957fbc AL |
3022 | PERL_CALLCONV void Perl_save_generic_svref(pTHX_ SV** sptr) |
3023 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3024 | #define PERL_ARGS_ASSERT_SAVE_GENERIC_SVREF \ |
3025 | assert(sptr) | |
9a957fbc AL |
3026 | |
3027 | PERL_CALLCONV void Perl_save_generic_pvref(pTHX_ char** str) | |
3028 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3029 | #define PERL_ARGS_ASSERT_SAVE_GENERIC_PVREF \ |
3030 | assert(str) | |
9a957fbc AL |
3031 | |
3032 | PERL_CALLCONV void Perl_save_shared_pvref(pTHX_ char** str) | |
3033 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3034 | #define PERL_ARGS_ASSERT_SAVE_SHARED_PVREF \ |
3035 | assert(str) | |
9a957fbc | 3036 | |
aec46f14 AL |
3037 | PERL_CALLCONV void Perl_save_gp(pTHX_ GV* gv, I32 empty) |
3038 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3039 | #define PERL_ARGS_ASSERT_SAVE_GP \ |
3040 | assert(gv) | |
aec46f14 AL |
3041 | |
3042 | PERL_CALLCONV HV* Perl_save_hash(pTHX_ GV* gv) | |
3043 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3044 | #define PERL_ARGS_ASSERT_SAVE_HASH \ |
3045 | assert(gv) | |
aec46f14 | 3046 | |
da8315f8 | 3047 | PERL_CALLCONV void Perl_save_hints(pTHX); |
af7df257 | 3048 | /* PERL_CALLCONV void Perl_save_helem(pTHX_ HV *hv, SV *key, SV **sptr) |
9a957fbc AL |
3049 | __attribute__nonnull__(pTHX_1) |
3050 | __attribute__nonnull__(pTHX_2) | |
af7df257 | 3051 | __attribute__nonnull__(pTHX_3); */ |
9a957fbc | 3052 | |
af7df257 CS |
3053 | PERL_CALLCONV void Perl_save_helem_flags(pTHX_ HV *hv, SV *key, SV **sptr, const U32 flags) |
3054 | __attribute__nonnull__(pTHX_1) | |
3055 | __attribute__nonnull__(pTHX_2) | |
3056 | __attribute__nonnull__(pTHX_3); | |
3057 | #define PERL_ARGS_ASSERT_SAVE_HELEM_FLAGS \ | |
3058 | assert(hv); assert(key); assert(sptr) | |
3059 | ||
aec46f14 AL |
3060 | PERL_CALLCONV void Perl_save_hptr(pTHX_ HV** hptr) |
3061 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3062 | #define PERL_ARGS_ASSERT_SAVE_HPTR \ |
3063 | assert(hptr) | |
aec46f14 AL |
3064 | |
3065 | PERL_CALLCONV void Perl_save_I16(pTHX_ I16* intp) | |
3066 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3067 | #define PERL_ARGS_ASSERT_SAVE_I16 \ |
3068 | assert(intp) | |
aec46f14 AL |
3069 | |
3070 | PERL_CALLCONV void Perl_save_I32(pTHX_ I32* intp) | |
3071 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3072 | #define PERL_ARGS_ASSERT_SAVE_I32 \ |
3073 | assert(intp) | |
aec46f14 AL |
3074 | |
3075 | PERL_CALLCONV void Perl_save_I8(pTHX_ I8* bytep) | |
3076 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3077 | #define PERL_ARGS_ASSERT_SAVE_I8 \ |
3078 | assert(bytep) | |
aec46f14 AL |
3079 | |
3080 | PERL_CALLCONV void Perl_save_int(pTHX_ int* intp) | |
3081 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3082 | #define PERL_ARGS_ASSERT_SAVE_INT \ |
3083 | assert(intp) | |
aec46f14 AL |
3084 | |
3085 | PERL_CALLCONV void Perl_save_item(pTHX_ SV* item) | |
3086 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3087 | #define PERL_ARGS_ASSERT_SAVE_ITEM \ |
3088 | assert(item) | |
aec46f14 | 3089 | |
4048f010 | 3090 | PERL_CALLCONV void Perl_save_iv(pTHX_ IV *ivp) |
aec46f14 | 3091 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3092 | #define PERL_ARGS_ASSERT_SAVE_IV \ |
3093 | assert(ivp) | |
aec46f14 AL |
3094 | |
3095 | PERL_CALLCONV void Perl_save_list(pTHX_ SV** sarg, I32 maxsarg) | |
3096 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3097 | #define PERL_ARGS_ASSERT_SAVE_LIST \ |
3098 | assert(sarg) | |
aec46f14 AL |
3099 | |
3100 | PERL_CALLCONV void Perl_save_long(pTHX_ long* longp) | |
3101 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3102 | #define PERL_ARGS_ASSERT_SAVE_LONG \ |
3103 | assert(longp) | |
aec46f14 | 3104 | |
2fd8beea NC |
3105 | /* PERL_CALLCONV void Perl_save_mortalizesv(pTHX_ SV* sv) |
3106 | __attribute__nonnull__(pTHX_1); */ | |
7918f24d NC |
3107 | #define PERL_ARGS_ASSERT_SAVE_MORTALIZESV \ |
3108 | assert(sv) | |
aec46f14 | 3109 | |
3d4dd4c7 NC |
3110 | PERL_CALLCONV void Perl_save_nogv(pTHX_ GV* gv) |
3111 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3112 | #define PERL_ARGS_ASSERT_SAVE_NOGV \ |
3113 | assert(gv) | |
3d4dd4c7 | 3114 | |
2fd8beea | 3115 | /* PERL_CALLCONV void Perl_save_op(pTHX); */ |
aec46f14 AL |
3116 | PERL_CALLCONV SV* Perl_save_scalar(pTHX_ GV* gv) |
3117 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3118 | #define PERL_ARGS_ASSERT_SAVE_SCALAR \ |
3119 | assert(gv) | |
aec46f14 AL |
3120 | |
3121 | PERL_CALLCONV void Perl_save_pptr(pTHX_ char** pptr) | |
3122 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3123 | #define PERL_ARGS_ASSERT_SAVE_PPTR \ |
3124 | assert(pptr) | |
aec46f14 | 3125 | |
4048f010 | 3126 | PERL_CALLCONV void Perl_save_vptr(pTHX_ void *ptr) |
aec46f14 | 3127 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3128 | #define PERL_ARGS_ASSERT_SAVE_VPTR \ |
3129 | assert(ptr) | |
aec46f14 | 3130 | |
1d7c1841 | 3131 | PERL_CALLCONV void Perl_save_re_context(pTHX); |
09edbca0 | 3132 | PERL_CALLCONV void Perl_save_padsv_and_mortalize(pTHX_ PADOFFSET off); |
aec46f14 AL |
3133 | PERL_CALLCONV void Perl_save_sptr(pTHX_ SV** sptr) |
3134 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3135 | #define PERL_ARGS_ASSERT_SAVE_SPTR \ |
3136 | assert(sptr) | |
aec46f14 AL |
3137 | |
3138 | PERL_CALLCONV SV* Perl_save_svref(pTHX_ SV** sptr) | |
3139 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3140 | #define PERL_ARGS_ASSERT_SAVE_SVREF \ |
3141 | assert(sptr) | |
aec46f14 | 3142 | |
2fd8beea | 3143 | PERL_CALLCONV void Perl_save_pushptr(pTHX_ void *const ptr, const int type); |
4f5084fa | 3144 | PERL_CALLCONV void Perl_save_pushi32ptr(pTHX_ const I32 i, void *const ptr, const int type); |
dfcd3de5 | 3145 | PERL_CALLCONV void Perl_save_pushptrptr(pTHX_ void *const ptr1, void *const ptr2, const int type); |
43869a0c | 3146 | #if defined(PERL_IN_SCOPE_C) |
be84297e NC |
3147 | STATIC void S_save_pushptri32ptr(pTHX_ void *const ptr1, const I32 i, void *const ptr2, const int type); |
3148 | #endif | |
1d7c1841 GS |
3149 | PERL_CALLCONV OP* Perl_sawparens(pTHX_ OP* o); |
3150 | PERL_CALLCONV OP* Perl_scalar(pTHX_ OP* o); | |
43869a0c | 3151 | #if defined(PERL_IN_OP_C) |
2dd5337b NC |
3152 | STATIC OP* S_scalarkids(pTHX_ OP* o); |
3153 | STATIC OP* S_scalarseq(pTHX_ OP* o); | |
3154 | #endif | |
aec46f14 AL |
3155 | PERL_CALLCONV OP* Perl_scalarvoid(pTHX_ OP* o) |
3156 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3157 | #define PERL_ARGS_ASSERT_SCALARVOID \ |
3158 | assert(o) | |
aec46f14 AL |
3159 | |
3160 | PERL_CALLCONV NV Perl_scan_bin(pTHX_ const char* start, STRLEN len, STRLEN* retlen) | |
3161 | __attribute__nonnull__(pTHX_1) | |
3162 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
3163 | #define PERL_ARGS_ASSERT_SCAN_BIN \ |
3164 | assert(start); assert(retlen) | |
aec46f14 AL |
3165 | |
3166 | PERL_CALLCONV NV Perl_scan_hex(pTHX_ const char* start, STRLEN len, STRLEN* retlen) | |
3167 | __attribute__nonnull__(pTHX_1) | |
3168 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
3169 | #define PERL_ARGS_ASSERT_SCAN_HEX \ |
3170 | assert(start); assert(retlen) | |
aec46f14 AL |
3171 | |
3172 | PERL_CALLCONV char* Perl_scan_num(pTHX_ const char* s, YYSTYPE *lvalp) | |
3173 | __attribute__nonnull__(pTHX_1) | |
3174 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3175 | #define PERL_ARGS_ASSERT_SCAN_NUM \ |
3176 | assert(s); assert(lvalp) | |
aec46f14 AL |
3177 | |
3178 | PERL_CALLCONV NV Perl_scan_oct(pTHX_ const char* start, STRLEN len, STRLEN* retlen) | |
3179 | __attribute__nonnull__(pTHX_1) | |
3180 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
3181 | #define PERL_ARGS_ASSERT_SCAN_OCT \ |
3182 | assert(start); assert(retlen) | |
aec46f14 | 3183 | |
1d7c1841 | 3184 | PERL_CALLCONV OP* Perl_scope(pTHX_ OP* o); |
9f6cc744 | 3185 | PERL_CALLCONV char* Perl_screaminstr(pTHX_ SV *bigstr, SV *littlestr, I32 start_shift, I32 end_shift, I32 *old_posp, I32 last) |
aec46f14 AL |
3186 | __attribute__nonnull__(pTHX_1) |
3187 | __attribute__nonnull__(pTHX_2) | |
3188 | __attribute__nonnull__(pTHX_5); | |
7918f24d NC |
3189 | #define PERL_ARGS_ASSERT_SCREAMINSTR \ |
3190 | assert(bigstr); assert(littlestr); assert(old_posp) | |
aec46f14 | 3191 | |
1d7c1841 | 3192 | PERL_CALLCONV void Perl_setdefout(pTHX_ GV* gv); |
aec46f14 AL |
3193 | PERL_CALLCONV HEK* Perl_share_hek(pTHX_ const char* str, I32 len, U32 hash) |
3194 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3195 | #define PERL_ARGS_ASSERT_SHARE_HEK \ |
3196 | assert(str) | |
aec46f14 | 3197 | |
8aad04aa | 3198 | #if defined(HAS_SIGACTION) && defined(SA_SIGINFO) |
b6455c53 SR |
3199 | PERL_CALLCONV Signal_t Perl_sighandler(int sig, siginfo_t *info, void *uap); |
3200 | PERL_CALLCONV Signal_t Perl_csighandler(int sig, siginfo_t *info, void *uap); | |
8aad04aa | 3201 | #else |
1d7c1841 | 3202 | PERL_CALLCONV Signal_t Perl_sighandler(int sig); |
d36b6582 | 3203 | PERL_CALLCONV Signal_t Perl_csighandler(int sig); |
8aad04aa | 3204 | #endif |
c48640ec | 3205 | PERL_CALLCONV SV** Perl_stack_grow(pTHX_ SV** sp, SV** p, int n) |
abb2c242 JH |
3206 | __attribute__nonnull__(pTHX_1) |
3207 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3208 | #define PERL_ARGS_ASSERT_STACK_GROW \ |
3209 | assert(sp); assert(p) | |
f54cb97a | 3210 | |
0b1558d1 | 3211 | PERL_CALLCONV I32 Perl_start_subparse(pTHX_ I32 is_format, U32 flags); |
aec46f14 AL |
3212 | PERL_CALLCONV void Perl_sub_crush_depth(pTHX_ CV* cv) |
3213 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3214 | #define PERL_ARGS_ASSERT_SUB_CRUSH_DEPTH \ |
3215 | assert(cv) | |
aec46f14 | 3216 | |
06c841cf FC |
3217 | /* PERL_CALLCONV bool sv_2bool(pTHX_ SV *const sv) |
3218 | __attribute__nonnull__(pTHX_1); */ | |
3219 | ||
3220 | PERL_CALLCONV bool Perl_sv_2bool_flags(pTHX_ SV *const sv, const I32 flags) | |
abb2c242 | 3221 | __attribute__nonnull__(pTHX_1); |
06c841cf | 3222 | #define PERL_ARGS_ASSERT_SV_2BOOL_FLAGS \ |
7918f24d | 3223 | assert(sv) |
f54cb97a | 3224 | |
23f13727 | 3225 | PERL_CALLCONV CV* Perl_sv_2cv(pTHX_ SV* sv, HV **const st, GV **const gvp, const I32 lref) |
aec46f14 AL |
3226 | __attribute__nonnull__(pTHX_2) |
3227 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
3228 | #define PERL_ARGS_ASSERT_SV_2CV \ |
3229 | assert(st); assert(gvp) | |
f54cb97a | 3230 | |
23f13727 | 3231 | PERL_CALLCONV IO* Perl_sv_2io(pTHX_ SV *const sv) |
abb2c242 | 3232 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3233 | #define PERL_ARGS_ASSERT_SV_2IO \ |
3234 | assert(sv) | |
f54cb97a | 3235 | |
43869a0c | 3236 | #if defined(PERL_IN_SV_C) |
19f6321d | 3237 | STATIC bool S_glob_2number(pTHX_ GV* const gv) |
180488f8 | 3238 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3239 | #define PERL_ARGS_ASSERT_GLOB_2NUMBER \ |
3240 | assert(gv) | |
180488f8 NC |
3241 | |
3242 | #endif | |
53e85712 NC |
3243 | /* PERL_CALLCONV IV Perl_sv_2iv(pTHX_ SV *sv); */ |
3244 | PERL_CALLCONV IV Perl_sv_2iv_flags(pTHX_ SV *const sv, const I32 flags); | |
23f13727 | 3245 | PERL_CALLCONV SV* Perl_sv_2mortal(pTHX_ SV *const sv); |
39d5de13 | 3246 | PERL_CALLCONV NV Perl_sv_2nv_flags(pTHX_ SV *const sv, const I32 flags); |
5de3775c | 3247 | PERL_CALLCONV SV* Perl_sv_2num(pTHX_ SV *const sv) |
800401ee | 3248 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3249 | #define PERL_ARGS_ASSERT_SV_2NUM \ |
3250 | assert(sv) | |
800401ee | 3251 | |
53e85712 NC |
3252 | /* PERL_CALLCONV char* Perl_sv_2pv(pTHX_ SV *sv, STRLEN *lp); */ |
3253 | PERL_CALLCONV char* Perl_sv_2pv_flags(pTHX_ SV *const sv, STRLEN *const lp, const I32 flags); | |
7bc54cea | 3254 | PERL_CALLCONV char* Perl_sv_2pvutf8(pTHX_ SV *const sv, STRLEN *const lp) |
f49ed1da | 3255 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3256 | #define PERL_ARGS_ASSERT_SV_2PVUTF8 \ |
3257 | assert(sv) | |
f54cb97a | 3258 | |
5de3775c | 3259 | PERL_CALLCONV char* Perl_sv_2pvbyte(pTHX_ SV *const sv, STRLEN *const lp) |
f49ed1da | 3260 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3261 | #define PERL_ARGS_ASSERT_SV_2PVBYTE \ |
3262 | assert(sv) | |
f54cb97a | 3263 | |
4373e329 | 3264 | PERL_CALLCONV char* Perl_sv_pvn_nomg(pTHX_ SV* sv, STRLEN* lp) |
f49ed1da | 3265 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3266 | #define PERL_ARGS_ASSERT_SV_PVN_NOMG \ |
3267 | assert(sv) | |
f54cb97a | 3268 | |
53e85712 NC |
3269 | /* PERL_CALLCONV UV Perl_sv_2uv(pTHX_ SV *sv); */ |
3270 | PERL_CALLCONV UV Perl_sv_2uv_flags(pTHX_ SV *const sv, const I32 flags); | |
4373e329 | 3271 | PERL_CALLCONV IV Perl_sv_iv(pTHX_ SV* sv) |
abb2c242 | 3272 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3273 | #define PERL_ARGS_ASSERT_SV_IV \ |
3274 | assert(sv) | |
f54cb97a | 3275 | |
4373e329 | 3276 | PERL_CALLCONV UV Perl_sv_uv(pTHX_ SV* sv) |
abb2c242 | 3277 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3278 | #define PERL_ARGS_ASSERT_SV_UV \ |
3279 | assert(sv) | |
f54cb97a | 3280 | |
4373e329 | 3281 | PERL_CALLCONV NV Perl_sv_nv(pTHX_ SV* sv) |
abb2c242 | 3282 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3283 | #define PERL_ARGS_ASSERT_SV_NV \ |
3284 | assert(sv) | |
f54cb97a | 3285 | |
4048f010 | 3286 | PERL_CALLCONV char* Perl_sv_pvn(pTHX_ SV *sv, STRLEN *lp) |
abb2c242 JH |
3287 | __attribute__nonnull__(pTHX_1) |
3288 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3289 | #define PERL_ARGS_ASSERT_SV_PVN \ |
3290 | assert(sv); assert(lp) | |
f54cb97a | 3291 | |
4048f010 | 3292 | PERL_CALLCONV char* Perl_sv_pvutf8n(pTHX_ SV *sv, STRLEN *lp) |
abb2c242 JH |
3293 | __attribute__nonnull__(pTHX_1) |
3294 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3295 | #define PERL_ARGS_ASSERT_SV_PVUTF8N \ |
3296 | assert(sv); assert(lp) | |
f54cb97a | 3297 | |
4048f010 | 3298 | PERL_CALLCONV char* Perl_sv_pvbyten(pTHX_ SV *sv, STRLEN *lp) |
abb2c242 JH |
3299 | __attribute__nonnull__(pTHX_1) |
3300 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3301 | #define PERL_ARGS_ASSERT_SV_PVBYTEN \ |
3302 | assert(sv); assert(lp) | |
f54cb97a | 3303 | |
23f13727 | 3304 | PERL_CALLCONV I32 Perl_sv_true(pTHX_ SV *const sv); |
43869a0c | 3305 | #if defined(PERL_IN_SV_C) |
d2bd4e7f | 3306 | STATIC void S_sv_add_arena(pTHX_ char *const ptr, const U32 size, const U32 flags) |
abb2c242 | 3307 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3308 | #define PERL_ARGS_ASSERT_SV_ADD_ARENA \ |
3309 | assert(ptr) | |
f54cb97a | 3310 | |
d2bd4e7f | 3311 | #endif |
aad570aa | 3312 | PERL_CALLCONV int Perl_sv_backoff(pTHX_ SV *const sv) |
abb2c242 | 3313 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3314 | #define PERL_ARGS_ASSERT_SV_BACKOFF \ |
3315 | assert(sv) | |
f54cb97a | 3316 | |
12964ddd | 3317 | PERL_CALLCONV SV* Perl_sv_bless(pTHX_ SV *const sv, HV *const stash) |
abb2c242 JH |
3318 | __attribute__nonnull__(pTHX_1) |
3319 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3320 | #define PERL_ARGS_ASSERT_SV_BLESS \ |
3321 | assert(sv); assert(stash) | |
f54cb97a | 3322 | |
66ceb532 | 3323 | PERL_CALLCONV void Perl_sv_catpvf(pTHX_ SV *const sv, const char *const pat, ...) |
f54cb97a | 3324 | __attribute__format__(__printf__,pTHX_2,pTHX_3) |
aec46f14 AL |
3325 | __attribute__nonnull__(pTHX_1) |
3326 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3327 | #define PERL_ARGS_ASSERT_SV_CATPVF \ |
3328 | assert(sv); assert(pat) | |
f54cb97a | 3329 | |
66ceb532 | 3330 | PERL_CALLCONV void Perl_sv_vcatpvf(pTHX_ SV *const sv, const char *const pat, va_list *const args) |
aec46f14 AL |
3331 | __attribute__nonnull__(pTHX_1) |
3332 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3333 | #define PERL_ARGS_ASSERT_SV_VCATPVF \ |
3334 | assert(sv); assert(pat) | |
f54cb97a | 3335 | |
2b021c53 | 3336 | PERL_CALLCONV void Perl_sv_catpv(pTHX_ SV *const sv, const char* ptr) |
cf684db6 | 3337 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3338 | #define PERL_ARGS_ASSERT_SV_CATPV \ |
3339 | assert(sv) | |
f54cb97a | 3340 | |
4048f010 | 3341 | /* PERL_CALLCONV void Perl_sv_catpvn(pTHX_ SV *dsv, const char *sstr, STRLEN len) |
aec46f14 AL |
3342 | __attribute__nonnull__(pTHX_1) |
3343 | __attribute__nonnull__(pTHX_2); */ | |
7918f24d NC |
3344 | #define PERL_ARGS_ASSERT_SV_CATPVN \ |
3345 | assert(dsv); assert(sstr) | |
f54cb97a | 3346 | |
4048f010 | 3347 | /* PERL_CALLCONV void Perl_sv_catsv(pTHX_ SV *dstr, SV *sstr) |
abb2c242 | 3348 | __attribute__nonnull__(pTHX_1); */ |
7918f24d NC |
3349 | #define PERL_ARGS_ASSERT_SV_CATSV \ |
3350 | assert(dstr) | |
f54cb97a | 3351 | |
2e000ff2 | 3352 | PERL_CALLCONV void Perl_sv_chop(pTHX_ SV *const sv, const char *const ptr) |
abb2c242 | 3353 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3354 | #define PERL_ARGS_ASSERT_SV_CHOP \ |
3355 | assert(sv) | |
f54cb97a | 3356 | |
5226ed68 | 3357 | PERL_CALLCONV I32 Perl_sv_clean_all(pTHX); |
1d7c1841 | 3358 | PERL_CALLCONV void Perl_sv_clean_objs(pTHX); |
af828c01 | 3359 | PERL_CALLCONV void Perl_sv_clear(pTHX_ SV *const sv) |
abb2c242 | 3360 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3361 | #define PERL_ARGS_ASSERT_SV_CLEAR \ |
3362 | assert(sv) | |
f54cb97a | 3363 | |
ac1e9476 | 3364 | PERL_CALLCONV I32 Perl_sv_cmp(pTHX_ SV *const sv1, SV *const sv2); |
078504b2 | 3365 | PERL_CALLCONV I32 Perl_sv_cmp_flags(pTHX_ SV *const sv1, SV *const sv2, const I32 flags); |
ac1e9476 | 3366 | PERL_CALLCONV I32 Perl_sv_cmp_locale(pTHX_ SV *const sv1, SV *const sv2); |
078504b2 | 3367 | PERL_CALLCONV I32 Perl_sv_cmp_locale_flags(pTHX_ SV *const sv1, SV *const sv2, const I32 flags); |
864dbfa3 | 3368 | #if defined(USE_LOCALE_COLLATE) |
078504b2 FC |
3369 | /* PERL_CALLCONV char* sv_collxfrm(pTHX_ SV *const sv, STRLEN *const nxp) |
3370 | __attribute__nonnull__(pTHX_1) | |
3371 | __attribute__nonnull__(pTHX_2); */ | |
3372 | ||
3373 | PERL_CALLCONV char* Perl_sv_collxfrm_flags(pTHX_ SV *const sv, STRLEN *const nxp, I32 const flags) | |
1df70142 AL |
3374 | __attribute__nonnull__(pTHX_1) |
3375 | __attribute__nonnull__(pTHX_2); | |
078504b2 | 3376 | #define PERL_ARGS_ASSERT_SV_COLLXFRM_FLAGS \ |
7918f24d | 3377 | assert(sv); assert(nxp) |
f54cb97a | 3378 | |
0cb96387 | 3379 | #endif |
4048f010 | 3380 | PERL_CALLCONV OP* Perl_sv_compile_2op(pTHX_ SV *sv, OP **startop, const char *code, PAD **padp) |
abb2c242 JH |
3381 | __attribute__nonnull__(pTHX_1) |
3382 | __attribute__nonnull__(pTHX_2) | |
3383 | __attribute__nonnull__(pTHX_3) | |
3384 | __attribute__nonnull__(pTHX_4); | |
7918f24d NC |
3385 | #define PERL_ARGS_ASSERT_SV_COMPILE_2OP \ |
3386 | assert(sv); assert(startop); assert(code); assert(padp) | |
f54cb97a | 3387 | |
4373e329 | 3388 | PERL_CALLCONV int Perl_getcwd_sv(pTHX_ SV* sv) |
abb2c242 | 3389 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3390 | #define PERL_ARGS_ASSERT_GETCWD_SV \ |
3391 | assert(sv) | |
f54cb97a | 3392 | |
ac1e9476 | 3393 | PERL_CALLCONV void Perl_sv_dec(pTHX_ SV *const sv); |
6f1401dc | 3394 | PERL_CALLCONV void Perl_sv_dec_nomg(pTHX_ SV *const sv); |
f54cb97a | 3395 | PERL_CALLCONV void Perl_sv_dump(pTHX_ SV* sv) |
abb2c242 | 3396 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3397 | #define PERL_ARGS_ASSERT_SV_DUMP \ |
3398 | assert(sv) | |
f54cb97a | 3399 | |
15f169a1 | 3400 | PERL_CALLCONV bool Perl_sv_derived_from(pTHX_ SV* sv, const char *const name) |
abb2c242 JH |
3401 | __attribute__warn_unused_result__ |
3402 | __attribute__nonnull__(pTHX_1) | |
3403 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3404 | #define PERL_ARGS_ASSERT_SV_DERIVED_FROM \ |
3405 | assert(sv); assert(name) | |
f54cb97a | 3406 | |
15f169a1 | 3407 | PERL_CALLCONV bool Perl_sv_does(pTHX_ SV* sv, const char *const name) |
cbc021f9 | 3408 | __attribute__warn_unused_result__ |
3409 | __attribute__nonnull__(pTHX_1) | |
3410 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3411 | #define PERL_ARGS_ASSERT_SV_DOES \ |
3412 | assert(sv); assert(name) | |
cbc021f9 | 3413 | |
078504b2 FC |
3414 | /* PERL_CALLCONV I32 sv_eq(pTHX_ SV* sv1, SV* sv2); */ |
3415 | PERL_CALLCONV I32 Perl_sv_eq_flags(pTHX_ SV* sv1, SV* sv2, const I32 flags); | |
af828c01 SS |
3416 | PERL_CALLCONV void Perl_sv_free(pTHX_ SV *const sv); |
3417 | PERL_CALLCONV void Perl_sv_free2(pTHX_ SV *const sv) | |
abb2c242 | 3418 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3419 | #define PERL_ARGS_ASSERT_SV_FREE2 \ |
3420 | assert(sv) | |
f54cb97a | 3421 | |
1d7c1841 | 3422 | PERL_CALLCONV void Perl_sv_free_arenas(pTHX); |
ac1e9476 | 3423 | PERL_CALLCONV char* Perl_sv_gets(pTHX_ SV *const sv, PerlIO *const fp, I32 append) |
abb2c242 JH |
3424 | __attribute__nonnull__(pTHX_1) |
3425 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3426 | #define PERL_ARGS_ASSERT_SV_GETS \ |
3427 | assert(sv); assert(fp) | |
f54cb97a | 3428 | |
aad570aa | 3429 | PERL_CALLCONV char* Perl_sv_grow(pTHX_ SV *const sv, STRLEN newlen) |
abb2c242 | 3430 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3431 | #define PERL_ARGS_ASSERT_SV_GROW \ |
3432 | assert(sv) | |
f54cb97a | 3433 | |
ac1e9476 | 3434 | PERL_CALLCONV void Perl_sv_inc(pTHX_ SV *const sv); |
6f1401dc | 3435 | PERL_CALLCONV void Perl_sv_inc_nomg(pTHX_ SV *const sv); |
84335ee9 | 3436 | /* PERL_CALLCONV void Perl_sv_insert(pTHX_ SV *const bigstr, const STRLEN offset, const STRLEN len, const char *const little, const STRLEN littlelen) |
abb2c242 | 3437 | __attribute__nonnull__(pTHX_1) |
84335ee9 | 3438 | __attribute__nonnull__(pTHX_4); */ |
7918f24d NC |
3439 | #define PERL_ARGS_ASSERT_SV_INSERT \ |
3440 | assert(bigstr); assert(little) | |
f54cb97a | 3441 | |
c0dd94a0 VP |
3442 | PERL_CALLCONV void Perl_sv_insert_flags(pTHX_ SV *const bigstr, const STRLEN offset, const STRLEN len, const char *const little, const STRLEN littlelen, const U32 flags) |
3443 | __attribute__nonnull__(pTHX_1) | |
3444 | __attribute__nonnull__(pTHX_4); | |
3445 | #define PERL_ARGS_ASSERT_SV_INSERT_FLAGS \ | |
3446 | assert(bigstr); assert(little) | |
3447 | ||
12964ddd | 3448 | PERL_CALLCONV int Perl_sv_isa(pTHX_ SV* sv, const char *const name) |
aec46f14 | 3449 | __attribute__nonnull__(pTHX_2); |
7918f24d NC |
3450 | #define PERL_ARGS_ASSERT_SV_ISA \ |
3451 | assert(name) | |
f54cb97a | 3452 | |
aec46f14 | 3453 | PERL_CALLCONV int Perl_sv_isobject(pTHX_ SV* sv); |
af828c01 SS |
3454 | PERL_CALLCONV STRLEN Perl_sv_len(pTHX_ SV *const sv); |
3455 | PERL_CALLCONV STRLEN Perl_sv_len_utf8(pTHX_ SV *const sv); | |
ac1e9476 | 3456 | PERL_CALLCONV void Perl_sv_magic(pTHX_ SV *const sv, SV *const obj, const int how, const char *const name, const I32 namlen) |
abb2c242 | 3457 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3458 | #define PERL_ARGS_ASSERT_SV_MAGIC \ |
3459 | assert(sv) | |
f54cb97a | 3460 | |
2b021c53 | 3461 | PERL_CALLCONV MAGIC * Perl_sv_magicext(pTHX_ SV *const sv, SV *const obj, const int how, const MGVTBL *const vtbl, const char *const name, const I32 namlen) |
abb2c242 | 3462 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3463 | #define PERL_ARGS_ASSERT_SV_MAGICEXT \ |
3464 | assert(sv) | |
f54cb97a | 3465 | |
ac1e9476 | 3466 | PERL_CALLCONV SV* Perl_sv_mortalcopy(pTHX_ SV *const oldsv) |
1b6737cc AL |
3467 | __attribute__malloc__ |
3468 | __attribute__warn_unused_result__; | |
f54cb97a AL |
3469 | |
3470 | PERL_CALLCONV SV* Perl_sv_newmortal(pTHX) | |
abb2c242 | 3471 | __attribute__warn_unused_result__; |
f54cb97a | 3472 | |
af828c01 | 3473 | PERL_CALLCONV SV* Perl_sv_newref(pTHX_ SV *const sv); |
1d7c1841 | 3474 | PERL_CALLCONV char* Perl_sv_peek(pTHX_ SV* sv); |
af828c01 | 3475 | PERL_CALLCONV void Perl_sv_pos_u2b(pTHX_ SV *const sv, I32 *const offsetp, I32 *const lenp) |
b464bac0 | 3476 | __attribute__nonnull__(pTHX_2); |
7918f24d NC |
3477 | #define PERL_ARGS_ASSERT_SV_POS_U2B \ |
3478 | assert(offsetp) | |
b464bac0 | 3479 | |
d931b1be NC |
3480 | PERL_CALLCONV STRLEN Perl_sv_pos_u2b_flags(pTHX_ SV *const sv, STRLEN uoffset, STRLEN *const lenp, U32 flags) |
3481 | __attribute__nonnull__(pTHX_1); | |
3482 | #define PERL_ARGS_ASSERT_SV_POS_U2B_FLAGS \ | |
3483 | assert(sv) | |
777f7c56 | 3484 | |
ac1e9476 | 3485 | PERL_CALLCONV void Perl_sv_pos_b2u(pTHX_ SV *const sv, I32 *const offsetp) |
b464bac0 | 3486 | __attribute__nonnull__(pTHX_2); |
7918f24d NC |
3487 | #define PERL_ARGS_ASSERT_SV_POS_B2U \ |
3488 | assert(offsetp) | |
b464bac0 | 3489 | |
25b0f989 | 3490 | /* PERL_CALLCONV char* Perl_sv_pvn_force(pTHX_ SV* sv, STRLEN* lp) |
aec46f14 | 3491 | __attribute__nonnull__(pTHX_1); */ |
7918f24d NC |
3492 | #define PERL_ARGS_ASSERT_SV_PVN_FORCE \ |
3493 | assert(sv) | |
aec46f14 | 3494 | |
12964ddd | 3495 | PERL_CALLCONV char* Perl_sv_pvutf8n_force(pTHX_ SV *const sv, STRLEN *const lp) |
aec46f14 | 3496 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3497 | #define PERL_ARGS_ASSERT_SV_PVUTF8N_FORCE \ |
3498 | assert(sv) | |
aec46f14 | 3499 | |
12964ddd | 3500 | PERL_CALLCONV char* Perl_sv_pvbyten_force(pTHX_ SV *const sv, STRLEN *const lp) |
aec46f14 | 3501 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3502 | #define PERL_ARGS_ASSERT_SV_PVBYTEN_FORCE \ |
3503 | assert(sv) | |
aec46f14 AL |
3504 | |
3505 | PERL_CALLCONV char* Perl_sv_recode_to_utf8(pTHX_ SV* sv, SV *encoding) | |
3506 | __attribute__nonnull__(pTHX_1) | |
3507 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3508 | #define PERL_ARGS_ASSERT_SV_RECODE_TO_UTF8 \ |
3509 | assert(sv); assert(encoding) | |
aec46f14 AL |
3510 | |
3511 | PERL_CALLCONV bool Perl_sv_cat_decode(pTHX_ SV* dsv, SV *encoding, SV *ssv, int *offset, char* tstr, int tlen) | |
3512 | __attribute__nonnull__(pTHX_1) | |
3513 | __attribute__nonnull__(pTHX_2) | |
3514 | __attribute__nonnull__(pTHX_3) | |
3515 | __attribute__nonnull__(pTHX_4) | |
3516 | __attribute__nonnull__(pTHX_5); | |
7918f24d NC |
3517 | #define PERL_ARGS_ASSERT_SV_CAT_DECODE \ |
3518 | assert(dsv); assert(encoding); assert(ssv); assert(offset); assert(tstr) | |
aec46f14 | 3519 | |
12964ddd | 3520 | PERL_CALLCONV const char* Perl_sv_reftype(pTHX_ const SV *const sv, const int ob) |
abb2c242 JH |
3521 | __attribute__warn_unused_result__ |
3522 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3523 | #define PERL_ARGS_ASSERT_SV_REFTYPE \ |
3524 | assert(sv) | |
a3b680e6 | 3525 | |
af828c01 | 3526 | PERL_CALLCONV void Perl_sv_replace(pTHX_ SV *const sv, SV *const nsv) |
abb2c242 JH |
3527 | __attribute__nonnull__(pTHX_1) |
3528 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3529 | #define PERL_ARGS_ASSERT_SV_REPLACE \ |
3530 | assert(sv); assert(nsv) | |
a3b680e6 | 3531 | |
1d7c1841 | 3532 | PERL_CALLCONV void Perl_sv_report_used(pTHX); |
23f13727 | 3533 | PERL_CALLCONV void Perl_sv_reset(pTHX_ const char* s, HV *const stash) |
504618e9 | 3534 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3535 | #define PERL_ARGS_ASSERT_SV_RESET \ |
3536 | assert(s) | |
504618e9 | 3537 | |
89e38212 | 3538 | PERL_CALLCONV void Perl_sv_setpvf(pTHX_ SV *const sv, const char *const pat, ...) |
aec46f14 AL |
3539 | __attribute__format__(__printf__,pTHX_2,pTHX_3) |
3540 | __attribute__nonnull__(pTHX_1) | |
3541 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3542 | #define PERL_ARGS_ASSERT_SV_SETPVF \ |
3543 | assert(sv); assert(pat) | |
aec46f14 | 3544 | |
89e38212 | 3545 | PERL_CALLCONV void Perl_sv_vsetpvf(pTHX_ SV *const sv, const char *const pat, va_list *const args) |
aec46f14 AL |
3546 | __attribute__nonnull__(pTHX_1) |
3547 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3548 | #define PERL_ARGS_ASSERT_SV_VSETPVF \ |
3549 | assert(sv); assert(pat) | |
aec46f14 | 3550 | |
aad570aa | 3551 | PERL_CALLCONV void Perl_sv_setiv(pTHX_ SV *const sv, const IV num) |
aec46f14 | 3552 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3553 | #define PERL_ARGS_ASSERT_SV_SETIV \ |
3554 | assert(sv) | |
f54cb97a | 3555 | |
89e38212 | 3556 | PERL_CALLCONV void Perl_sv_setpviv(pTHX_ SV *const sv, const IV num) |
504618e9 | 3557 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3558 | #define PERL_ARGS_ASSERT_SV_SETPVIV \ |
3559 | assert(sv) | |
504618e9 | 3560 | |
aad570aa | 3561 | PERL_CALLCONV void Perl_sv_setuv(pTHX_ SV *const sv, const UV num) |
aec46f14 | 3562 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3563 | #define PERL_ARGS_ASSERT_SV_SETUV \ |
3564 | assert(sv) | |
aec46f14 | 3565 | |
aad570aa | 3566 | PERL_CALLCONV void Perl_sv_setnv(pTHX_ SV *const sv, const NV num) |
aec46f14 | 3567 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3568 | #define PERL_ARGS_ASSERT_SV_SETNV \ |
3569 | assert(sv) | |
aec46f14 | 3570 | |
12964ddd | 3571 | PERL_CALLCONV SV* Perl_sv_setref_iv(pTHX_ SV *const rv, const char *const classname, const IV iv) |
aec46f14 | 3572 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3573 | #define PERL_ARGS_ASSERT_SV_SETREF_IV \ |
3574 | assert(rv) | |
aec46f14 | 3575 | |
12964ddd | 3576 | PERL_CALLCONV SV* Perl_sv_setref_uv(pTHX_ SV *const rv, const char *const classname, const UV uv) |
aec46f14 | 3577 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3578 | #define PERL_ARGS_ASSERT_SV_SETREF_UV \ |
3579 | assert(rv) | |
aec46f14 | 3580 | |
12964ddd | 3581 | PERL_CALLCONV SV* Perl_sv_setref_nv(pTHX_ SV *const rv, const char *const classname, const NV nv) |
aec46f14 | 3582 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3583 | #define PERL_ARGS_ASSERT_SV_SETREF_NV \ |
3584 | assert(rv) | |
aec46f14 | 3585 | |
12964ddd | 3586 | PERL_CALLCONV SV* Perl_sv_setref_pv(pTHX_ SV *const rv, const char *const classname, void *const pv) |
aec46f14 | 3587 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3588 | #define PERL_ARGS_ASSERT_SV_SETREF_PV \ |
3589 | assert(rv) | |
aec46f14 | 3590 | |
12964ddd | 3591 | PERL_CALLCONV SV* Perl_sv_setref_pvn(pTHX_ SV *const rv, const char *const classname, const char *const pv, const STRLEN n) |
aec46f14 | 3592 | __attribute__nonnull__(pTHX_1) |
1b6737cc | 3593 | __attribute__nonnull__(pTHX_3); |
7918f24d NC |
3594 | #define PERL_ARGS_ASSERT_SV_SETREF_PVN \ |
3595 | assert(rv); assert(pv) | |
1b6737cc | 3596 | |
2e000ff2 | 3597 | PERL_CALLCONV void Perl_sv_setpv(pTHX_ SV *const sv, const char *const ptr) |
aec46f14 | 3598 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3599 | #define PERL_ARGS_ASSERT_SV_SETPV \ |
3600 | assert(sv) | |
aec46f14 | 3601 | |
2e000ff2 | 3602 | PERL_CALLCONV void Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len) |
abb2c242 | 3603 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3604 | #define PERL_ARGS_ASSERT_SV_SETPVN \ |
3605 | assert(sv) | |
f54cb97a | 3606 | |
4048f010 | 3607 | /* PERL_CALLCONV void Perl_sv_setsv(pTHX_ SV *dstr, SV *sstr) |
aec46f14 | 3608 | __attribute__nonnull__(pTHX_1); */ |
7918f24d NC |
3609 | #define PERL_ARGS_ASSERT_SV_SETSV \ |
3610 | assert(dstr) | |
aec46f14 | 3611 | |
25b0f989 | 3612 | /* PERL_CALLCONV void Perl_sv_taint(pTHX_ SV* sv) |
aae9cea0 | 3613 | __attribute__nonnull__(pTHX_1); */ |
7918f24d NC |
3614 | #define PERL_ARGS_ASSERT_SV_TAINT \ |
3615 | assert(sv) | |
aec46f14 | 3616 | |
89e38212 | 3617 | PERL_CALLCONV bool Perl_sv_tainted(pTHX_ SV *const sv) |
aec46f14 AL |
3618 | __attribute__warn_unused_result__ |
3619 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3620 | #define PERL_ARGS_ASSERT_SV_TAINTED \ |
3621 | assert(sv) | |
a28509cc | 3622 | |
2b021c53 | 3623 | PERL_CALLCONV int Perl_sv_unmagic(pTHX_ SV *const sv, const int type) |
abb2c242 | 3624 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3625 | #define PERL_ARGS_ASSERT_SV_UNMAGIC \ |
3626 | assert(sv) | |
f54cb97a | 3627 | |
174c73e3 NC |
3628 | /* PERL_CALLCONV void Perl_sv_unref(pTHX_ SV* sv) |
3629 | __attribute__nonnull__(pTHX_1); */ | |
7918f24d NC |
3630 | #define PERL_ARGS_ASSERT_SV_UNREF \ |
3631 | assert(sv) | |
f54cb97a | 3632 | |
89e38212 | 3633 | PERL_CALLCONV void Perl_sv_unref_flags(pTHX_ SV *const ref, const U32 flags) |
abb2c242 | 3634 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3635 | #define PERL_ARGS_ASSERT_SV_UNREF_FLAGS \ |
3636 | assert(ref) | |
f54cb97a | 3637 | |
89e38212 | 3638 | PERL_CALLCONV void Perl_sv_untaint(pTHX_ SV *const sv) |
abb2c242 | 3639 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3640 | #define PERL_ARGS_ASSERT_SV_UNTAINT \ |
3641 | assert(sv) | |
f54cb97a | 3642 | |
aad570aa | 3643 | PERL_CALLCONV void Perl_sv_upgrade(pTHX_ SV *const sv, svtype new_type) |
abb2c242 | 3644 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3645 | #define PERL_ARGS_ASSERT_SV_UPGRADE \ |
3646 | assert(sv) | |
f54cb97a | 3647 | |
47518d95 NC |
3648 | /* PERL_CALLCONV void Perl_sv_usepvn(pTHX_ SV* sv, char* ptr, STRLEN len) |
3649 | __attribute__nonnull__(pTHX_1); */ | |
7918f24d NC |
3650 | #define PERL_ARGS_ASSERT_SV_USEPVN \ |
3651 | assert(sv) | |
47518d95 | 3652 | |
2e000ff2 | 3653 | PERL_CALLCONV void Perl_sv_usepvn_flags(pTHX_ SV *const sv, char* ptr, const STRLEN len, const U32 flags) |
abb2c242 | 3654 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3655 | #define PERL_ARGS_ASSERT_SV_USEPVN_FLAGS \ |
3656 | assert(sv) | |
f54cb97a | 3657 | |
66ceb532 | 3658 | PERL_CALLCONV void Perl_sv_vcatpvfn(pTHX_ SV *const sv, const char *const pat, const STRLEN patlen, va_list *const args, SV **const svargs, const I32 svmax, bool *const maybe_tainted) |
abb2c242 JH |
3659 | __attribute__nonnull__(pTHX_1) |
3660 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3661 | #define PERL_ARGS_ASSERT_SV_VCATPVFN \ |
3662 | assert(sv); assert(pat) | |
f54cb97a | 3663 | |
66ceb532 | 3664 | PERL_CALLCONV void Perl_sv_vsetpvfn(pTHX_ SV *const sv, const char *const pat, const STRLEN patlen, va_list *const args, SV **const svargs, const I32 svmax, bool *const maybe_tainted) |
abb2c242 JH |
3665 | __attribute__nonnull__(pTHX_1) |
3666 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3667 | #define PERL_ARGS_ASSERT_SV_VSETPVFN \ |
3668 | assert(sv); assert(pat) | |
f54cb97a | 3669 | |
aec46f14 AL |
3670 | PERL_CALLCONV NV Perl_str_to_version(pTHX_ SV *sv) |
3671 | __attribute__warn_unused_result__ | |
3672 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3673 | #define PERL_ARGS_ASSERT_STR_TO_VERSION \ |
3674 | assert(sv) | |
aec46f14 AL |
3675 | |
3676 | PERL_CALLCONV SV* Perl_swash_init(pTHX_ const char* pkg, const char* name, SV* listsv, I32 minbits, I32 none) | |
3677 | __attribute__nonnull__(pTHX_1) | |
3678 | __attribute__nonnull__(pTHX_2) | |
3679 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
3680 | #define PERL_ARGS_ASSERT_SWASH_INIT \ |
3681 | assert(pkg); assert(name); assert(listsv) | |
aec46f14 | 3682 | |
680c470c | 3683 | PERL_CALLCONV UV Perl_swash_fetch(pTHX_ SV *swash, const U8 *ptr, bool do_utf8) |
aec46f14 AL |
3684 | __attribute__nonnull__(pTHX_1) |
3685 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3686 | #define PERL_ARGS_ASSERT_SWASH_FETCH \ |
3687 | assert(swash); assert(ptr) | |
aec46f14 | 3688 | |
1d7c1841 | 3689 | PERL_CALLCONV void Perl_taint_env(pTHX); |
e1c41806 | 3690 | PERL_CALLCONV void Perl_taint_proper(pTHX_ const char* f, const char *const s) |
8772537c | 3691 | __attribute__nonnull__(pTHX_2); |
7918f24d NC |
3692 | #define PERL_ARGS_ASSERT_TAINT_PROPER \ |
3693 | assert(s) | |
8772537c | 3694 | |
9a957fbc | 3695 | PERL_CALLCONV UV Perl_to_utf8_case(pTHX_ const U8 *p, U8* ustrp, STRLEN *lenp, SV **swashp, const char *normal, const char *special) |
abb2c242 | 3696 | __attribute__nonnull__(pTHX_1) |
9a957fbc | 3697 | __attribute__nonnull__(pTHX_2) |
fb9bf107 NC |
3698 | __attribute__nonnull__(pTHX_4) |
3699 | __attribute__nonnull__(pTHX_5) | |
3700 | __attribute__nonnull__(pTHX_6); | |
7918f24d NC |
3701 | #define PERL_ARGS_ASSERT_TO_UTF8_CASE \ |
3702 | assert(p); assert(ustrp); assert(swashp); assert(normal); assert(special) | |
f54cb97a AL |
3703 | |
3704 | PERL_CALLCONV UV Perl_to_utf8_lower(pTHX_ const U8 *p, U8* ustrp, STRLEN *lenp) | |
abb2c242 JH |
3705 | __attribute__nonnull__(pTHX_1) |
3706 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3707 | #define PERL_ARGS_ASSERT_TO_UTF8_LOWER \ |
3708 | assert(p); assert(ustrp) | |
f54cb97a AL |
3709 | |
3710 | PERL_CALLCONV UV Perl_to_utf8_upper(pTHX_ const U8 *p, U8* ustrp, STRLEN *lenp) | |
abb2c242 JH |
3711 | __attribute__nonnull__(pTHX_1) |
3712 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3713 | #define PERL_ARGS_ASSERT_TO_UTF8_UPPER \ |
3714 | assert(p); assert(ustrp) | |
f54cb97a AL |
3715 | |
3716 | PERL_CALLCONV UV Perl_to_utf8_title(pTHX_ const U8 *p, U8* ustrp, STRLEN *lenp) | |
abb2c242 JH |
3717 | __attribute__nonnull__(pTHX_1) |
3718 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3719 | #define PERL_ARGS_ASSERT_TO_UTF8_TITLE \ |
3720 | assert(p); assert(ustrp) | |
f54cb97a AL |
3721 | |
3722 | PERL_CALLCONV UV Perl_to_utf8_fold(pTHX_ const U8 *p, U8* ustrp, STRLEN *lenp) | |
abb2c242 JH |
3723 | __attribute__nonnull__(pTHX_1) |
3724 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3725 | #define PERL_ARGS_ASSERT_TO_UTF8_FOLD \ |
3726 | assert(p); assert(ustrp) | |
f54cb97a | 3727 | |
864dbfa3 | 3728 | #if defined(UNLINK_ALL_VERSIONS) |
6e732051 | 3729 | PERL_CALLCONV I32 Perl_unlnk(pTHX_ const char* f) |
aec46f14 | 3730 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3731 | #define PERL_ARGS_ASSERT_UNLNK \ |
3732 | assert(f) | |
aec46f14 | 3733 | |
864dbfa3 | 3734 | #endif |
aec46f14 AL |
3735 | PERL_CALLCONV I32 Perl_unpack_str(pTHX_ const char *pat, const char *patend, const char *s, const char *strbeg, const char *strend, char **new_s, I32 ocnt, U32 flags) |
3736 | __attribute__nonnull__(pTHX_1) | |
3737 | __attribute__nonnull__(pTHX_2) | |
3738 | __attribute__nonnull__(pTHX_3) | |
3739 | __attribute__nonnull__(pTHX_5); | |
7918f24d NC |
3740 | #define PERL_ARGS_ASSERT_UNPACK_STR \ |
3741 | assert(pat); assert(patend); assert(s); assert(strend) | |
aec46f14 AL |
3742 | |
3743 | PERL_CALLCONV I32 Perl_unpackstring(pTHX_ const char *pat, const char *patend, const char *s, const char *strend, U32 flags) | |
3744 | __attribute__nonnull__(pTHX_1) | |
3745 | __attribute__nonnull__(pTHX_2) | |
3746 | __attribute__nonnull__(pTHX_3) | |
3747 | __attribute__nonnull__(pTHX_4); | |
7918f24d NC |
3748 | #define PERL_ARGS_ASSERT_UNPACKSTRING \ |
3749 | assert(pat); assert(patend); assert(s); assert(strend) | |
aec46f14 | 3750 | |
1d7c1841 GS |
3751 | PERL_CALLCONV void Perl_unsharepvn(pTHX_ const char* sv, I32 len, U32 hash); |
3752 | PERL_CALLCONV void Perl_unshare_hek(pTHX_ HEK* hek); | |
eb8433b7 NC |
3753 | #ifdef PERL_MAD |
3754 | PERL_CALLCONV OP * Perl_utilize(pTHX_ int aver, I32 floor, OP* version, OP* idop, OP* arg) | |
3755 | __attribute__nonnull__(pTHX_4); | |
7918f24d NC |
3756 | #define PERL_ARGS_ASSERT_UTILIZE \ |
3757 | assert(idop) | |
eb8433b7 NC |
3758 | |
3759 | #else | |
aec46f14 AL |
3760 | PERL_CALLCONV void Perl_utilize(pTHX_ int aver, I32 floor, OP* version, OP* idop, OP* arg) |
3761 | __attribute__nonnull__(pTHX_4); | |
7918f24d NC |
3762 | #define PERL_ARGS_ASSERT_UTILIZE \ |
3763 | assert(idop) | |
aec46f14 | 3764 | |
eb8433b7 | 3765 | #endif |
aec46f14 AL |
3766 | PERL_CALLCONV U8* Perl_utf16_to_utf8(pTHX_ U8* p, U8 *d, I32 bytelen, I32 *newlen) |
3767 | __attribute__nonnull__(pTHX_1) | |
3768 | __attribute__nonnull__(pTHX_2) | |
3769 | __attribute__nonnull__(pTHX_4); | |
7918f24d NC |
3770 | #define PERL_ARGS_ASSERT_UTF16_TO_UTF8 \ |
3771 | assert(p); assert(d); assert(newlen) | |
aec46f14 AL |
3772 | |
3773 | PERL_CALLCONV U8* Perl_utf16_to_utf8_reversed(pTHX_ U8* p, U8 *d, I32 bytelen, I32 *newlen) | |
3774 | __attribute__nonnull__(pTHX_1) | |
3775 | __attribute__nonnull__(pTHX_2) | |
3776 | __attribute__nonnull__(pTHX_4); | |
7918f24d NC |
3777 | #define PERL_ARGS_ASSERT_UTF16_TO_UTF8_REVERSED \ |
3778 | assert(p); assert(d); assert(newlen) | |
aec46f14 | 3779 | |
4373e329 | 3780 | PERL_CALLCONV STRLEN Perl_utf8_length(pTHX_ const U8* s, const U8 *e) |
abb2c242 JH |
3781 | __attribute__warn_unused_result__ |
3782 | __attribute__pure__ | |
3783 | __attribute__nonnull__(pTHX_1) | |
3784 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3785 | #define PERL_ARGS_ASSERT_UTF8_LENGTH \ |
3786 | assert(s); assert(e) | |
f54cb97a | 3787 | |
4373e329 | 3788 | PERL_CALLCONV IV Perl_utf8_distance(pTHX_ const U8 *a, const U8 *b) |
abb2c242 JH |
3789 | __attribute__warn_unused_result__ |
3790 | __attribute__pure__ | |
3791 | __attribute__nonnull__(pTHX_1) | |
3792 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3793 | #define PERL_ARGS_ASSERT_UTF8_DISTANCE \ |
3794 | assert(a); assert(b) | |
f54cb97a | 3795 | |
4373e329 | 3796 | PERL_CALLCONV U8* Perl_utf8_hop(pTHX_ const U8 *s, I32 off) |
abb2c242 JH |
3797 | __attribute__warn_unused_result__ |
3798 | __attribute__pure__ | |
3799 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3800 | #define PERL_ARGS_ASSERT_UTF8_HOP \ |
3801 | assert(s) | |
f54cb97a | 3802 | |
4373e329 | 3803 | PERL_CALLCONV U8* Perl_utf8_to_bytes(pTHX_ U8 *s, STRLEN *len) |
abb2c242 JH |
3804 | __attribute__nonnull__(pTHX_1) |
3805 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3806 | #define PERL_ARGS_ASSERT_UTF8_TO_BYTES \ |
3807 | assert(s); assert(len) | |
f54cb97a | 3808 | |
aec46f14 AL |
3809 | PERL_CALLCONV U8* Perl_bytes_from_utf8(pTHX_ const U8 *s, STRLEN *len, bool *is_utf8) |
3810 | __attribute__nonnull__(pTHX_1) | |
3811 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3812 | #define PERL_ARGS_ASSERT_BYTES_FROM_UTF8 \ |
3813 | assert(s); assert(len) | |
aec46f14 AL |
3814 | |
3815 | PERL_CALLCONV U8* Perl_bytes_to_utf8(pTHX_ const U8 *s, STRLEN *len) | |
3816 | __attribute__nonnull__(pTHX_1) | |
3817 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3818 | #define PERL_ARGS_ASSERT_BYTES_TO_UTF8 \ |
3819 | assert(s); assert(len) | |
aec46f14 AL |
3820 | |
3821 | PERL_CALLCONV UV Perl_utf8_to_uvchr(pTHX_ const U8 *s, STRLEN *retlen) | |
3822 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3823 | #define PERL_ARGS_ASSERT_UTF8_TO_UVCHR \ |
3824 | assert(s) | |
aec46f14 AL |
3825 | |
3826 | PERL_CALLCONV UV Perl_utf8_to_uvuni(pTHX_ const U8 *s, STRLEN *retlen) | |
3827 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3828 | #define PERL_ARGS_ASSERT_UTF8_TO_UVUNI \ |
3829 | assert(s) | |
aec46f14 | 3830 | |
1754c1a1 NC |
3831 | |
3832 | #ifdef EBCDIC | |
aec46f14 AL |
3833 | PERL_CALLCONV UV Perl_utf8n_to_uvchr(pTHX_ const U8 *s, STRLEN curlen, STRLEN *retlen, U32 flags) |
3834 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3835 | #define PERL_ARGS_ASSERT_UTF8N_TO_UVCHR \ |
3836 | assert(s) | |
aec46f14 | 3837 | |
1754c1a1 NC |
3838 | #else |
3839 | /* PERL_CALLCONV UV Perl_utf8n_to_uvchr(pTHX_ const U8 *s, STRLEN curlen, STRLEN *retlen, U32 flags) | |
3840 | __attribute__nonnull__(pTHX_1); */ | |
7918f24d NC |
3841 | #define PERL_ARGS_ASSERT_UTF8N_TO_UVCHR \ |
3842 | assert(s) | |
1754c1a1 NC |
3843 | |
3844 | #endif | |
3845 | ||
aec46f14 AL |
3846 | PERL_CALLCONV UV Perl_utf8n_to_uvuni(pTHX_ const U8 *s, STRLEN curlen, STRLEN *retlen, U32 flags) |
3847 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3848 | #define PERL_ARGS_ASSERT_UTF8N_TO_UVUNI \ |
3849 | assert(s) | |
aec46f14 | 3850 | |
1754c1a1 NC |
3851 | |
3852 | #ifdef EBCDIC | |
4373e329 | 3853 | PERL_CALLCONV U8* Perl_uvchr_to_utf8(pTHX_ U8 *d, UV uv) |
abb2c242 | 3854 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3855 | #define PERL_ARGS_ASSERT_UVCHR_TO_UTF8 \ |
3856 | assert(d) | |
f54cb97a | 3857 | |
1754c1a1 NC |
3858 | #else |
3859 | /* PERL_CALLCONV U8* Perl_uvchr_to_utf8(pTHX_ U8 *d, UV uv) | |
3860 | __attribute__nonnull__(pTHX_1); */ | |
7918f24d NC |
3861 | #define PERL_ARGS_ASSERT_UVCHR_TO_UTF8 \ |
3862 | assert(d) | |
1754c1a1 NC |
3863 | |
3864 | #endif | |
3865 | ||
038e8d3c NC |
3866 | /* PERL_CALLCONV U8* Perl_uvuni_to_utf8(pTHX_ U8 *d, UV uv) |
3867 | __attribute__nonnull__(pTHX_1); */ | |
7918f24d NC |
3868 | #define PERL_ARGS_ASSERT_UVUNI_TO_UTF8 \ |
3869 | assert(d) | |
f54cb97a | 3870 | |
4373e329 | 3871 | PERL_CALLCONV U8* Perl_uvchr_to_utf8_flags(pTHX_ U8 *d, UV uv, UV flags) |
abb2c242 | 3872 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3873 | #define PERL_ARGS_ASSERT_UVCHR_TO_UTF8_FLAGS \ |
3874 | assert(d) | |
f54cb97a | 3875 | |
4373e329 | 3876 | PERL_CALLCONV U8* Perl_uvuni_to_utf8_flags(pTHX_ U8 *d, UV uv, UV flags) |
abb2c242 | 3877 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3878 | #define PERL_ARGS_ASSERT_UVUNI_TO_UTF8_FLAGS \ |
3879 | assert(d) | |
f54cb97a | 3880 | |
fb9bf107 NC |
3881 | PERL_CALLCONV char* Perl_pv_uni_display(pTHX_ SV *dsv, const U8 *spv, STRLEN len, STRLEN pvlim, UV flags) |
3882 | __attribute__nonnull__(pTHX_1) | |
3883 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3884 | #define PERL_ARGS_ASSERT_PV_UNI_DISPLAY \ |
3885 | assert(dsv); assert(spv) | |
fb9bf107 | 3886 | |
a3b680e6 | 3887 | PERL_CALLCONV char* Perl_sv_uni_display(pTHX_ SV *dsv, SV *ssv, STRLEN pvlim, UV flags) |
fb9bf107 NC |
3888 | __attribute__warn_unused_result__ |
3889 | __attribute__nonnull__(pTHX_1) | |
3890 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3891 | #define PERL_ARGS_ASSERT_SV_UNI_DISPLAY \ |
3892 | assert(dsv); assert(ssv) | |
a3b680e6 | 3893 | |
aec46f14 AL |
3894 | PERL_CALLCONV void Perl_vivify_defelem(pTHX_ SV* sv) |
3895 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3896 | #define PERL_ARGS_ASSERT_VIVIFY_DEFELEM \ |
3897 | assert(sv) | |
aec46f14 AL |
3898 | |
3899 | PERL_CALLCONV void Perl_vivify_ref(pTHX_ SV* sv, U32 to_what) | |
3900 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3901 | #define PERL_ARGS_ASSERT_VIVIFY_REF \ |
3902 | assert(sv) | |
aec46f14 AL |
3903 | |
3904 | PERL_CALLCONV I32 Perl_wait4pid(pTHX_ Pid_t pid, int* statusp, int flags) | |
3905 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3906 | #define PERL_ARGS_ASSERT_WAIT4PID \ |
3907 | assert(statusp) | |
aec46f14 | 3908 | |
fb9bf107 NC |
3909 | PERL_CALLCONV U32 Perl_parse_unicode_opts(pTHX_ const char **popt) |
3910 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3911 | #define PERL_ARGS_ASSERT_PARSE_UNICODE_OPTS \ |
3912 | assert(popt) | |
fb9bf107 | 3913 | |
132efe8b | 3914 | PERL_CALLCONV U32 Perl_seed(pTHX); |
255164ba DM |
3915 | PERL_CALLCONV UV Perl_get_hash_seed(pTHX) |
3916 | __attribute__warn_unused_result__; | |
3917 | ||
e1ec3a88 | 3918 | PERL_CALLCONV void Perl_report_evil_fh(pTHX_ const GV *gv, const IO *io, I32 op); |
b3dbd76e | 3919 | PERL_CALLCONV void Perl_report_uninit(pTHX_ const SV *uninit_sv); |
c5df3096 Z |
3920 | PERL_CALLCONV void Perl_warn_sv(pTHX_ SV *baseex) |
3921 | __attribute__nonnull__(pTHX_1); | |
3922 | #define PERL_ARGS_ASSERT_WARN_SV \ | |
3923 | assert(baseex) | |
3924 | ||
894356b3 | 3925 | PERL_CALLCONV void Perl_warn(pTHX_ const char* pat, ...) |
aec46f14 AL |
3926 | __attribute__format__(__printf__,pTHX_1,pTHX_2) |
3927 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3928 | #define PERL_ARGS_ASSERT_WARN \ |
3929 | assert(pat) | |
aec46f14 AL |
3930 | |
3931 | PERL_CALLCONV void Perl_vwarn(pTHX_ const char* pat, va_list* args) | |
3932 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3933 | #define PERL_ARGS_ASSERT_VWARN \ |
3934 | assert(pat) | |
f54cb97a | 3935 | |
894356b3 | 3936 | PERL_CALLCONV void Perl_warner(pTHX_ U32 err, const char* pat, ...) |
aec46f14 AL |
3937 | __attribute__format__(__printf__,pTHX_2,pTHX_3) |
3938 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3939 | #define PERL_ARGS_ASSERT_WARNER \ |
3940 | assert(pat) | |
aec46f14 | 3941 | |
a2a5de95 NC |
3942 | PERL_CALLCONV void Perl_ck_warner(pTHX_ U32 err, const char* pat, ...) |
3943 | __attribute__format__(__printf__,pTHX_2,pTHX_3) | |
3944 | __attribute__nonnull__(pTHX_2); | |
3945 | #define PERL_ARGS_ASSERT_CK_WARNER \ | |
3946 | assert(pat) | |
3947 | ||
9b387841 NC |
3948 | PERL_CALLCONV void Perl_ck_warner_d(pTHX_ U32 err, const char* pat, ...) |
3949 | __attribute__format__(__printf__,pTHX_2,pTHX_3) | |
3950 | __attribute__nonnull__(pTHX_2); | |
3951 | #define PERL_ARGS_ASSERT_CK_WARNER_D \ | |
3952 | assert(pat) | |
3953 | ||
aec46f14 AL |
3954 | PERL_CALLCONV void Perl_vwarner(pTHX_ U32 err, const char* pat, va_list* args) |
3955 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
3956 | #define PERL_ARGS_ASSERT_VWARNER \ |
3957 | assert(pat) | |
aec46f14 AL |
3958 | |
3959 | PERL_CALLCONV void Perl_watch(pTHX_ char** addr) | |
3960 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3961 | #define PERL_ARGS_ASSERT_WATCH \ |
3962 | assert(addr) | |
aec46f14 AL |
3963 | |
3964 | PERL_CALLCONV I32 Perl_whichsig(pTHX_ const char* sig) | |
3965 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
3966 | #define PERL_ARGS_ASSERT_WHICHSIG \ |
3967 | assert(sig) | |
aec46f14 | 3968 | |
7d0994e0 | 3969 | PERL_CALLCONV void Perl_write_to_stderr(pTHX_ SV* msv) |
aec46f14 | 3970 | __attribute__nonnull__(pTHX_1); |
7918f24d | 3971 | #define PERL_ARGS_ASSERT_WRITE_TO_STDERR \ |
7d0994e0 | 3972 | assert(msv) |
aec46f14 | 3973 | |
15f169a1 | 3974 | PERL_CALLCONV int Perl_yyerror(pTHX_ const char *const s) |
aec46f14 | 3975 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3976 | #define PERL_ARGS_ASSERT_YYERROR \ |
3977 | assert(s) | |
f54cb97a | 3978 | |
48cf72c8 | 3979 | PERL_CALLCONV int Perl_yylex(pTHX); |
636def1f RGS |
3980 | PERL_CALLCONV void Perl_yyunlex(pTHX); |
3981 | PERL_CALLCONV int Perl_yyparse(pTHX_ int gramtype); | |
734c2451 | 3982 | PERL_CALLCONV void Perl_parser_free(pTHX_ const yy_parser *parser) |
acdf0a21 | 3983 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3984 | #define PERL_ARGS_ASSERT_PARSER_FREE \ |
3985 | assert(parser) | |
acdf0a21 | 3986 | |
43869a0c | 3987 | #if defined(PERL_IN_TOKE_C) |
af41e527 | 3988 | STATIC int S_yywarn(pTHX_ const char *const s) |
aec46f14 | 3989 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3990 | #define PERL_ARGS_ASSERT_YYWARN \ |
3991 | assert(s) | |
aec46f14 | 3992 | |
af41e527 | 3993 | #endif |
cea2e8a9 | 3994 | #if defined(MYMALLOC) |
6e9b0e18 | 3995 | PERL_CALLCONV void Perl_dump_mstats(pTHX_ const char* s) |
aec46f14 | 3996 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
3997 | #define PERL_ARGS_ASSERT_DUMP_MSTATS \ |
3998 | assert(s) | |
aec46f14 | 3999 | |
255164ba | 4000 | PERL_CALLCONV int Perl_get_mstats(pTHX_ perl_mstats_t *buf, int buflen, int level) |
255164ba | 4001 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4002 | #define PERL_ARGS_ASSERT_GET_MSTATS \ |
4003 | assert(buf) | |
255164ba | 4004 | |
0cb96387 | 4005 | #endif |
4373e329 | 4006 | PERL_CALLCONV Malloc_t Perl_safesysmalloc(MEM_SIZE nbytes) |
abb2c242 JH |
4007 | __attribute__malloc__ |
4008 | __attribute__warn_unused_result__; | |
f54cb97a | 4009 | |
4373e329 | 4010 | PERL_CALLCONV Malloc_t Perl_safesyscalloc(MEM_SIZE elements, MEM_SIZE size) |
abb2c242 JH |
4011 | __attribute__malloc__ |
4012 | __attribute__warn_unused_result__; | |
f54cb97a | 4013 | |
4373e329 | 4014 | PERL_CALLCONV Malloc_t Perl_safesysrealloc(Malloc_t where, MEM_SIZE nbytes) |
abb2c242 JH |
4015 | __attribute__malloc__ |
4016 | __attribute__warn_unused_result__; | |
f54cb97a | 4017 | |
1d7c1841 | 4018 | PERL_CALLCONV Free_t Perl_safesysfree(Malloc_t where); |
cea2e8a9 | 4019 | #if defined(PERL_GLOBAL_STRUCT) |
1d7c1841 | 4020 | PERL_CALLCONV struct perl_vars * Perl_GetVars(pTHX); |
77304e85 | 4021 | PERL_CALLCONV struct perl_vars* Perl_init_global_struct(pTHX); |
fb9bf107 NC |
4022 | PERL_CALLCONV void Perl_free_global_struct(pTHX_ struct perl_vars *plvarsp) |
4023 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4024 | #define PERL_ARGS_ASSERT_FREE_GLOBAL_STRUCT \ |
4025 | assert(plvarsp) | |
fb9bf107 | 4026 | |
1d7c1841 GS |
4027 | #endif |
4028 | PERL_CALLCONV int Perl_runops_standard(pTHX); | |
4029 | PERL_CALLCONV int Perl_runops_debug(pTHX); | |
66ceb532 | 4030 | PERL_CALLCONV void Perl_sv_catpvf_mg(pTHX_ SV *const sv, const char *const pat, ...) |
aec46f14 AL |
4031 | __attribute__format__(__printf__,pTHX_2,pTHX_3) |
4032 | __attribute__nonnull__(pTHX_1) | |
4033 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
4034 | #define PERL_ARGS_ASSERT_SV_CATPVF_MG \ |
4035 | assert(sv); assert(pat) | |
aec46f14 | 4036 | |
66ceb532 | 4037 | PERL_CALLCONV void Perl_sv_vcatpvf_mg(pTHX_ SV *const sv, const char *const pat, va_list *const args) |
aec46f14 AL |
4038 | __attribute__nonnull__(pTHX_1) |
4039 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
4040 | #define PERL_ARGS_ASSERT_SV_VCATPVF_MG \ |
4041 | assert(sv); assert(pat) | |
aec46f14 | 4042 | |
2b021c53 | 4043 | PERL_CALLCONV void Perl_sv_catpv_mg(pTHX_ SV *const sv, const char *const ptr) |
cf684db6 | 4044 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4045 | #define PERL_ARGS_ASSERT_SV_CATPV_MG \ |
4046 | assert(sv) | |
aec46f14 | 4047 | |
b347df82 | 4048 | /* PERL_CALLCONV void Perl_sv_catpvn_mg(pTHX_ SV *sv, const char *ptr, STRLEN len) |
aec46f14 | 4049 | __attribute__nonnull__(pTHX_1) |
b347df82 | 4050 | __attribute__nonnull__(pTHX_2); */ |
7918f24d NC |
4051 | #define PERL_ARGS_ASSERT_SV_CATPVN_MG \ |
4052 | assert(sv); assert(ptr) | |
aec46f14 | 4053 | |
4048f010 | 4054 | /* PERL_CALLCONV void Perl_sv_catsv_mg(pTHX_ SV *dsv, SV *ssv) |
b347df82 | 4055 | __attribute__nonnull__(pTHX_1); */ |
7918f24d NC |
4056 | #define PERL_ARGS_ASSERT_SV_CATSV_MG \ |
4057 | assert(dsv) | |
f54cb97a | 4058 | |
89e38212 | 4059 | PERL_CALLCONV void Perl_sv_setpvf_mg(pTHX_ SV *const sv, const char *const pat, ...) |
aec46f14 AL |
4060 | __attribute__format__(__printf__,pTHX_2,pTHX_3) |
4061 | __attribute__nonnull__(pTHX_1) | |
4062 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
4063 | #define PERL_ARGS_ASSERT_SV_SETPVF_MG \ |
4064 | assert(sv); assert(pat) | |
aec46f14 | 4065 | |
89e38212 | 4066 | PERL_CALLCONV void Perl_sv_vsetpvf_mg(pTHX_ SV *const sv, const char *const pat, va_list *const args) |
aec46f14 AL |
4067 | __attribute__nonnull__(pTHX_1) |
4068 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
4069 | #define PERL_ARGS_ASSERT_SV_VSETPVF_MG \ |
4070 | assert(sv); assert(pat) | |
aec46f14 | 4071 | |
aad570aa | 4072 | PERL_CALLCONV void Perl_sv_setiv_mg(pTHX_ SV *const sv, const IV i) |
aec46f14 | 4073 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4074 | #define PERL_ARGS_ASSERT_SV_SETIV_MG \ |
4075 | assert(sv) | |
f54cb97a | 4076 | |
89e38212 | 4077 | PERL_CALLCONV void Perl_sv_setpviv_mg(pTHX_ SV *const sv, const IV iv) |
504618e9 | 4078 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4079 | #define PERL_ARGS_ASSERT_SV_SETPVIV_MG \ |
4080 | assert(sv) | |
504618e9 | 4081 | |
aad570aa | 4082 | PERL_CALLCONV void Perl_sv_setuv_mg(pTHX_ SV *const sv, const UV u) |
aec46f14 | 4083 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4084 | #define PERL_ARGS_ASSERT_SV_SETUV_MG \ |
4085 | assert(sv) | |
aec46f14 | 4086 | |
aad570aa | 4087 | PERL_CALLCONV void Perl_sv_setnv_mg(pTHX_ SV *const sv, const NV num) |
aec46f14 | 4088 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4089 | #define PERL_ARGS_ASSERT_SV_SETNV_MG \ |
4090 | assert(sv) | |
aec46f14 | 4091 | |
2e000ff2 | 4092 | PERL_CALLCONV void Perl_sv_setpv_mg(pTHX_ SV *const sv, const char *const ptr) |
aec46f14 | 4093 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4094 | #define PERL_ARGS_ASSERT_SV_SETPV_MG \ |
4095 | assert(sv) | |
aec46f14 | 4096 | |
2e000ff2 | 4097 | PERL_CALLCONV void Perl_sv_setpvn_mg(pTHX_ SV *const sv, const char *const ptr, const STRLEN len) |
aec46f14 AL |
4098 | __attribute__nonnull__(pTHX_1) |
4099 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
4100 | #define PERL_ARGS_ASSERT_SV_SETPVN_MG \ |
4101 | assert(sv); assert(ptr) | |
aec46f14 | 4102 | |
7bc54cea | 4103 | PERL_CALLCONV void Perl_sv_setsv_mg(pTHX_ SV *const dstr, SV *const sstr) |
aec46f14 | 4104 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4105 | #define PERL_ARGS_ASSERT_SV_SETSV_MG \ |
4106 | assert(dstr) | |
aec46f14 | 4107 | |
47518d95 NC |
4108 | /* PERL_CALLCONV void Perl_sv_usepvn_mg(pTHX_ SV *sv, char *ptr, STRLEN len) |
4109 | __attribute__nonnull__(pTHX_1); */ | |
7918f24d NC |
4110 | #define PERL_ARGS_ASSERT_SV_USEPVN_MG \ |
4111 | assert(sv) | |
aec46f14 AL |
4112 | |
4113 | PERL_CALLCONV MGVTBL* Perl_get_vtbl(pTHX_ int vtbl_id) | |
4114 | __attribute__warn_unused_result__; | |
4115 | ||
4116 | PERL_CALLCONV char* Perl_pv_display(pTHX_ SV *dsv, const char *pv, STRLEN cur, STRLEN len, STRLEN pvlim) | |
4117 | __attribute__nonnull__(pTHX_1) | |
4118 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
4119 | #define PERL_ARGS_ASSERT_PV_DISPLAY \ |
4120 | assert(dsv); assert(pv) | |
aec46f14 | 4121 | |
ddc5bc0f | 4122 | PERL_CALLCONV char* Perl_pv_escape(pTHX_ SV *dsv, char const * const str, const STRLEN count, const STRLEN max, STRLEN * const escaped, const U32 flags) |
5a2bdfd0 DM |
4123 | __attribute__nonnull__(pTHX_1) |
4124 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
4125 | #define PERL_ARGS_ASSERT_PV_ESCAPE \ |
4126 | assert(dsv); assert(str) | |
5a2bdfd0 | 4127 | |
ddc5bc0f | 4128 | PERL_CALLCONV char* Perl_pv_pretty(pTHX_ SV *dsv, char const * const str, const STRLEN count, const STRLEN max, char const * const start_color, char const * const end_color, const U32 flags) |
3df15adc YO |
4129 | __attribute__nonnull__(pTHX_1) |
4130 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
4131 | #define PERL_ARGS_ASSERT_PV_PRETTY \ |
4132 | assert(dsv); assert(str) | |
3df15adc | 4133 | |
894356b3 | 4134 | PERL_CALLCONV void Perl_dump_indent(pTHX_ I32 level, PerlIO *file, const char* pat, ...) |
1b6737cc | 4135 | __attribute__format__(__printf__,pTHX_3,pTHX_4) |
aec46f14 AL |
4136 | __attribute__nonnull__(pTHX_2) |
4137 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
4138 | #define PERL_ARGS_ASSERT_DUMP_INDENT \ |
4139 | assert(file); assert(pat) | |
1b6737cc AL |
4140 | |
4141 | PERL_CALLCONV void Perl_dump_vindent(pTHX_ I32 level, PerlIO *file, const char* pat, va_list *args) | |
aec46f14 AL |
4142 | __attribute__nonnull__(pTHX_2) |
4143 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
4144 | #define PERL_ARGS_ASSERT_DUMP_VINDENT \ |
4145 | assert(file); assert(pat) | |
1b6737cc AL |
4146 | |
4147 | PERL_CALLCONV void Perl_do_gv_dump(pTHX_ I32 level, PerlIO *file, const char *name, GV *sv) | |
aec46f14 | 4148 | __attribute__nonnull__(pTHX_2) |
b4390064 | 4149 | __attribute__nonnull__(pTHX_3); |
7918f24d NC |
4150 | #define PERL_ARGS_ASSERT_DO_GV_DUMP \ |
4151 | assert(file); assert(name) | |
1b6737cc AL |
4152 | |
4153 | PERL_CALLCONV void Perl_do_gvgv_dump(pTHX_ I32 level, PerlIO *file, const char *name, GV *sv) | |
aec46f14 | 4154 | __attribute__nonnull__(pTHX_2) |
b4390064 | 4155 | __attribute__nonnull__(pTHX_3); |
7918f24d NC |
4156 | #define PERL_ARGS_ASSERT_DO_GVGV_DUMP \ |
4157 | assert(file); assert(name) | |
1b6737cc AL |
4158 | |
4159 | PERL_CALLCONV void Perl_do_hv_dump(pTHX_ I32 level, PerlIO *file, const char *name, HV *sv) | |
aec46f14 | 4160 | __attribute__nonnull__(pTHX_2) |
4c31e473 | 4161 | __attribute__nonnull__(pTHX_3); |
7918f24d NC |
4162 | #define PERL_ARGS_ASSERT_DO_HV_DUMP \ |
4163 | assert(file); assert(name) | |
1b6737cc AL |
4164 | |
4165 | PERL_CALLCONV void Perl_do_magic_dump(pTHX_ I32 level, PerlIO *file, const MAGIC *mg, I32 nest, I32 maxnest, bool dumpops, STRLEN pvlim) | |
aec46f14 AL |
4166 | __attribute__nonnull__(pTHX_2) |
4167 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
4168 | #define PERL_ARGS_ASSERT_DO_MAGIC_DUMP \ |
4169 | assert(file); assert(mg) | |
1b6737cc AL |
4170 | |
4171 | PERL_CALLCONV void Perl_do_op_dump(pTHX_ I32 level, PerlIO *file, const OP *o) | |
4172 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
4173 | #define PERL_ARGS_ASSERT_DO_OP_DUMP \ |
4174 | assert(file) | |
1b6737cc AL |
4175 | |
4176 | PERL_CALLCONV void Perl_do_pmop_dump(pTHX_ I32 level, PerlIO *file, const PMOP *pm) | |
4177 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
4178 | #define PERL_ARGS_ASSERT_DO_PMOP_DUMP \ |
4179 | assert(file) | |
1b6737cc AL |
4180 | |
4181 | PERL_CALLCONV void Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bool dumpops, STRLEN pvlim) | |
4182 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
4183 | #define PERL_ARGS_ASSERT_DO_SV_DUMP \ |
4184 | assert(file) | |
1b6737cc | 4185 | |
6867be6d | 4186 | PERL_CALLCONV void Perl_magic_dump(pTHX_ const MAGIC *mg); |
1d7c1841 | 4187 | PERL_CALLCONV void Perl_reginitcolors(pTHX); |
cb2f1b7b | 4188 | /* PERL_CALLCONV char* Perl_sv_2pv_nolen(pTHX_ SV* sv) |
aec46f14 | 4189 | __attribute__warn_unused_result__ |
cb2f1b7b | 4190 | __attribute__nonnull__(pTHX_1); */ |
7918f24d NC |
4191 | #define PERL_ARGS_ASSERT_SV_2PV_NOLEN \ |
4192 | assert(sv) | |
aec46f14 | 4193 | |
cb2f1b7b | 4194 | /* PERL_CALLCONV char* Perl_sv_2pvutf8_nolen(pTHX_ SV* sv) |
aec46f14 | 4195 | __attribute__warn_unused_result__ |
cb2f1b7b | 4196 | __attribute__nonnull__(pTHX_1); */ |
7918f24d NC |
4197 | #define PERL_ARGS_ASSERT_SV_2PVUTF8_NOLEN \ |
4198 | assert(sv) | |
aec46f14 | 4199 | |
cb2f1b7b | 4200 | /* PERL_CALLCONV char* Perl_sv_2pvbyte_nolen(pTHX_ SV* sv) |
aec46f14 | 4201 | __attribute__warn_unused_result__ |
cb2f1b7b | 4202 | __attribute__nonnull__(pTHX_1); */ |
7918f24d NC |
4203 | #define PERL_ARGS_ASSERT_SV_2PVBYTE_NOLEN \ |
4204 | assert(sv) | |
aec46f14 | 4205 | |
25b0f989 | 4206 | /* PERL_CALLCONV char* Perl_sv_pv(pTHX_ SV *sv) |
f75877b5 SH |
4207 | __attribute__warn_unused_result__ |
4208 | __attribute__nonnull__(pTHX_1); */ | |
7918f24d NC |
4209 | #define PERL_ARGS_ASSERT_SV_PV \ |
4210 | assert(sv) | |
f75877b5 | 4211 | |
25b0f989 | 4212 | /* PERL_CALLCONV char* Perl_sv_pvutf8(pTHX_ SV *sv) |
f75877b5 SH |
4213 | __attribute__warn_unused_result__ |
4214 | __attribute__nonnull__(pTHX_1); */ | |
7918f24d NC |
4215 | #define PERL_ARGS_ASSERT_SV_PVUTF8 \ |
4216 | assert(sv) | |
f75877b5 | 4217 | |
25b0f989 | 4218 | /* PERL_CALLCONV char* Perl_sv_pvbyte(pTHX_ SV *sv) |
f75877b5 SH |
4219 | __attribute__warn_unused_result__ |
4220 | __attribute__nonnull__(pTHX_1); */ | |
7918f24d NC |
4221 | #define PERL_ARGS_ASSERT_SV_PVBYTE \ |
4222 | assert(sv) | |
f75877b5 | 4223 | |
25b0f989 | 4224 | /* PERL_CALLCONV STRLEN Perl_sv_utf8_upgrade(pTHX_ SV *sv) |
f75877b5 | 4225 | __attribute__nonnull__(pTHX_1); */ |
7918f24d NC |
4226 | #define PERL_ARGS_ASSERT_SV_UTF8_UPGRADE \ |
4227 | assert(sv) | |
f75877b5 | 4228 | |
6a71721d | 4229 | /* PERL_CALLCONV STRLEN sv_utf8_upgrade_nomg(pTHX_ SV *sv) |
f08e0584 | 4230 | __attribute__nonnull__(pTHX_1); */ |
f08e0584 | 4231 | |
7bc54cea | 4232 | PERL_CALLCONV bool Perl_sv_utf8_downgrade(pTHX_ SV *const sv, const bool fail_ok) |
f75877b5 | 4233 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4234 | #define PERL_ARGS_ASSERT_SV_UTF8_DOWNGRADE \ |
4235 | assert(sv) | |
f75877b5 | 4236 | |
7bc54cea | 4237 | PERL_CALLCONV void Perl_sv_utf8_encode(pTHX_ SV *const sv) |
f75877b5 | 4238 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4239 | #define PERL_ARGS_ASSERT_SV_UTF8_ENCODE \ |
4240 | assert(sv) | |
f75877b5 | 4241 | |
7bc54cea | 4242 | PERL_CALLCONV bool Perl_sv_utf8_decode(pTHX_ SV *const sv) |
f75877b5 | 4243 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4244 | #define PERL_ARGS_ASSERT_SV_UTF8_DECODE \ |
4245 | assert(sv) | |
f75877b5 | 4246 | |
5abc721d NC |
4247 | /* PERL_CALLCONV void Perl_sv_force_normal(pTHX_ SV *sv) |
4248 | __attribute__nonnull__(pTHX_1); */ | |
7918f24d NC |
4249 | #define PERL_ARGS_ASSERT_SV_FORCE_NORMAL \ |
4250 | assert(sv) | |
f75877b5 | 4251 | |
2e000ff2 | 4252 | PERL_CALLCONV void Perl_sv_force_normal_flags(pTHX_ SV *const sv, const U32 flags) |
f75877b5 | 4253 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4254 | #define PERL_ARGS_ASSERT_SV_FORCE_NORMAL_FLAGS \ |
4255 | assert(sv) | |
f75877b5 | 4256 | |
1d7c1841 | 4257 | PERL_CALLCONV void Perl_tmps_grow(pTHX_ I32 n); |
2b021c53 | 4258 | PERL_CALLCONV SV* Perl_sv_rvweaken(pTHX_ SV *const sv) |
f75877b5 | 4259 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4260 | #define PERL_ARGS_ASSERT_SV_RVWEAKEN \ |
4261 | assert(sv) | |
f75877b5 SH |
4262 | |
4263 | PERL_CALLCONV int Perl_magic_killbackrefs(pTHX_ SV *sv, MAGIC *mg) | |
4264 | __attribute__nonnull__(pTHX_1) | |
4265 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
4266 | #define PERL_ARGS_ASSERT_MAGIC_KILLBACKREFS \ |
4267 | assert(sv); assert(mg) | |
f75877b5 | 4268 | |
1d7c1841 GS |
4269 | PERL_CALLCONV OP* Perl_newANONATTRSUB(pTHX_ I32 floor, OP *proto, OP *attrs, OP *block); |
4270 | PERL_CALLCONV CV* Perl_newATTRSUB(pTHX_ I32 floor, OP *o, OP *proto, OP *attrs, OP *block); | |
eb8433b7 NC |
4271 | #ifdef PERL_MAD |
4272 | PERL_CALLCONV OP * Perl_newMYSUB(pTHX_ I32 floor, OP *o, OP *proto, OP *attrs, OP *block) | |
4273 | __attribute__noreturn__; | |
4274 | ||
4275 | #else | |
f54cb97a | 4276 | PERL_CALLCONV void Perl_newMYSUB(pTHX_ I32 floor, OP *o, OP *proto, OP *attrs, OP *block) |
abb2c242 | 4277 | __attribute__noreturn__; |
f54cb97a | 4278 | |
eb8433b7 | 4279 | #endif |
4373e329 | 4280 | PERL_CALLCONV OP * Perl_my_attrs(pTHX_ OP *o, OP *attrs) |
abb2c242 | 4281 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4282 | #define PERL_ARGS_ASSERT_MY_ATTRS \ |
4283 | assert(o) | |
f54cb97a | 4284 | |
1d7c1841 | 4285 | #if defined(USE_ITHREADS) |
53c1dcc0 | 4286 | PERL_CALLCONV PERL_CONTEXT* Perl_cx_dup(pTHX_ PERL_CONTEXT* cx, I32 ix, I32 max, CLONE_PARAMS* param) |
aec46f14 AL |
4287 | __attribute__warn_unused_result__ |
4288 | __attribute__nonnull__(pTHX_4); | |
7918f24d NC |
4289 | #define PERL_ARGS_ASSERT_CX_DUP \ |
4290 | assert(param) | |
53c1dcc0 AL |
4291 | |
4292 | PERL_CALLCONV PERL_SI* Perl_si_dup(pTHX_ PERL_SI* si, CLONE_PARAMS* param) | |
aec46f14 AL |
4293 | __attribute__warn_unused_result__ |
4294 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
4295 | #define PERL_ARGS_ASSERT_SI_DUP \ |
4296 | assert(param) | |
53c1dcc0 AL |
4297 | |
4298 | PERL_CALLCONV ANY* Perl_ss_dup(pTHX_ PerlInterpreter* proto_perl, CLONE_PARAMS* param) | |
4299 | __attribute__malloc__ | |
4300 | __attribute__warn_unused_result__ | |
aec46f14 AL |
4301 | __attribute__nonnull__(pTHX_1) |
4302 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
4303 | #define PERL_ARGS_ASSERT_SS_DUP \ |
4304 | assert(proto_perl); assert(param) | |
53c1dcc0 AL |
4305 | |
4306 | PERL_CALLCONV void* Perl_any_dup(pTHX_ void* v, const PerlInterpreter* proto_perl) | |
53c1dcc0 | 4307 | __attribute__warn_unused_result__ |
abb2c242 | 4308 | __attribute__nonnull__(pTHX_2); |
7918f24d NC |
4309 | #define PERL_ARGS_ASSERT_ANY_DUP \ |
4310 | assert(proto_perl) | |
f54cb97a | 4311 | |
5c4138a0 | 4312 | PERL_CALLCONV HE* Perl_he_dup(pTHX_ const HE* e, bool shared, CLONE_PARAMS* param) |
aec46f14 AL |
4313 | __attribute__warn_unused_result__ |
4314 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
4315 | #define PERL_ARGS_ASSERT_HE_DUP \ |
4316 | assert(param) | |
53c1dcc0 AL |
4317 | |
4318 | PERL_CALLCONV HEK* Perl_hek_dup(pTHX_ HEK* e, CLONE_PARAMS* param) | |
aec46f14 AL |
4319 | __attribute__warn_unused_result__ |
4320 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
4321 | #define PERL_ARGS_ASSERT_HEK_DUP \ |
4322 | assert(param) | |
53c1dcc0 | 4323 | |
288b8c02 NC |
4324 | PERL_CALLCONV void Perl_re_dup_guts(pTHX_ const REGEXP *sstr, REGEXP *dstr, CLONE_PARAMS* param) |
4325 | __attribute__nonnull__(pTHX_1) | |
4326 | __attribute__nonnull__(pTHX_2) | |
4327 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
4328 | #define PERL_ARGS_ASSERT_RE_DUP_GUTS \ |
4329 | assert(sstr); assert(dstr); assert(param) | |
53c1dcc0 | 4330 | |
66ceb532 | 4331 | PERL_CALLCONV PerlIO* Perl_fp_dup(pTHX_ PerlIO *const fp, const char type, CLONE_PARAMS *const param) |
aec46f14 | 4332 | __attribute__nonnull__(pTHX_3); |
7918f24d NC |
4333 | #define PERL_ARGS_ASSERT_FP_DUP \ |
4334 | assert(param) | |
53c1dcc0 | 4335 | |
66ceb532 | 4336 | PERL_CALLCONV DIR* Perl_dirp_dup(pTHX_ DIR *const dp) |
53c1dcc0 AL |
4337 | __attribute__warn_unused_result__; |
4338 | ||
66ceb532 | 4339 | PERL_CALLCONV GP* Perl_gp_dup(pTHX_ GP *const gp, CLONE_PARAMS *const param) |
aec46f14 AL |
4340 | __attribute__warn_unused_result__ |
4341 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
4342 | #define PERL_ARGS_ASSERT_GP_DUP \ |
4343 | assert(param) | |
53c1dcc0 | 4344 | |
b88ec9b8 | 4345 | PERL_CALLCONV MAGIC* Perl_mg_dup(pTHX_ MAGIC *mg, CLONE_PARAMS *const param) |
53c1dcc0 | 4346 | __attribute__warn_unused_result__ |
aec46f14 | 4347 | __attribute__nonnull__(pTHX_2); |
7918f24d NC |
4348 | #define PERL_ARGS_ASSERT_MG_DUP \ |
4349 | assert(param) | |
53c1dcc0 | 4350 | |
43869a0c | 4351 | #if defined(PERL_IN_SV_C) |
538f2e76 NC |
4352 | STATIC SV ** S_sv_dup_inc_multiple(pTHX_ SV *const *source, SV **dest, SSize_t items, CLONE_PARAMS *const param) |
4353 | __attribute__nonnull__(pTHX_1) | |
4354 | __attribute__nonnull__(pTHX_2) | |
4355 | __attribute__nonnull__(pTHX_4); | |
4356 | #define PERL_ARGS_ASSERT_SV_DUP_INC_MULTIPLE \ | |
4357 | assert(source); assert(dest); assert(param) | |
4358 | ||
4359 | #endif | |
43869a0c | 4360 | #if defined(PERL_IN_SV_C) |
d08d57ef NC |
4361 | STATIC SV* S_sv_dup_common(pTHX_ const SV *const sstr, CLONE_PARAMS *const param) |
4362 | __attribute__warn_unused_result__ | |
4363 | __attribute__nonnull__(pTHX_1) | |
4364 | __attribute__nonnull__(pTHX_2); | |
4365 | #define PERL_ARGS_ASSERT_SV_DUP_COMMON \ | |
4366 | assert(sstr); assert(param) | |
4367 | ||
4368 | #endif | |
1eb6e4ca | 4369 | PERL_CALLCONV SV* Perl_sv_dup(pTHX_ const SV *const sstr, CLONE_PARAMS *const param) |
53c1dcc0 | 4370 | __attribute__warn_unused_result__ |
aec46f14 | 4371 | __attribute__nonnull__(pTHX_2); |
7918f24d NC |
4372 | #define PERL_ARGS_ASSERT_SV_DUP \ |
4373 | assert(param) | |
f54cb97a | 4374 | |
a09252eb NC |
4375 | PERL_CALLCONV SV* Perl_sv_dup_inc(pTHX_ const SV *const sstr, CLONE_PARAMS *const param) |
4376 | __attribute__warn_unused_result__ | |
4377 | __attribute__nonnull__(pTHX_2); | |
4378 | #define PERL_ARGS_ASSERT_SV_DUP_INC \ | |
4379 | assert(param) | |
4380 | ||
1eb6e4ca | 4381 | PERL_CALLCONV void Perl_rvpv_dup(pTHX_ SV *const dstr, const SV *const sstr, CLONE_PARAMS *const param) |
53c1dcc0 | 4382 | __attribute__nonnull__(pTHX_1) |
aec46f14 AL |
4383 | __attribute__nonnull__(pTHX_2) |
4384 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
4385 | #define PERL_ARGS_ASSERT_RVPV_DUP \ |
4386 | assert(dstr); assert(sstr); assert(param) | |
53c1dcc0 | 4387 | |
66ceb532 | 4388 | PERL_CALLCONV yy_parser* Perl_parser_dup(pTHX_ const yy_parser *const proto, CLONE_PARAMS *const param) |
780a5241 | 4389 | __attribute__nonnull__(pTHX_2); |
7918f24d NC |
4390 | #define PERL_ARGS_ASSERT_PARSER_DUP \ |
4391 | assert(param) | |
780a5241 | 4392 | |
4674ade5 | 4393 | #endif |
53c1dcc0 AL |
4394 | PERL_CALLCONV PTR_TBL_t* Perl_ptr_table_new(pTHX) |
4395 | __attribute__malloc__ | |
4396 | __attribute__warn_unused_result__; | |
4397 | ||
1eb6e4ca | 4398 | PERL_CALLCONV void* Perl_ptr_table_fetch(pTHX_ PTR_TBL_t *const tbl, const void *const sv) |
53c1dcc0 | 4399 | __attribute__warn_unused_result__ |
3d4dd4c7 | 4400 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4401 | #define PERL_ARGS_ASSERT_PTR_TABLE_FETCH \ |
4402 | assert(tbl) | |
53c1dcc0 | 4403 | |
1eb6e4ca | 4404 | PERL_CALLCONV void Perl_ptr_table_store(pTHX_ PTR_TBL_t *const tbl, const void *const oldsv, void *const newsv) |
53c1dcc0 AL |
4405 | __attribute__nonnull__(pTHX_1) |
4406 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
4407 | #define PERL_ARGS_ASSERT_PTR_TABLE_STORE \ |
4408 | assert(tbl); assert(newsv) | |
53c1dcc0 | 4409 | |
1eb6e4ca | 4410 | PERL_CALLCONV void Perl_ptr_table_split(pTHX_ PTR_TBL_t *const tbl) |
abb2c242 | 4411 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4412 | #define PERL_ARGS_ASSERT_PTR_TABLE_SPLIT \ |
4413 | assert(tbl) | |
f54cb97a | 4414 | |
5c5ade3e NC |
4415 | PERL_CALLCONV void Perl_ptr_table_clear(pTHX_ PTR_TBL_t *const tbl) |
4416 | __attribute__deprecated__; | |
4417 | ||
1eb6e4ca | 4418 | PERL_CALLCONV void Perl_ptr_table_free(pTHX_ PTR_TBL_t *const tbl); |
4674ade5 | 4419 | #if defined(USE_ITHREADS) |
504618e9 AL |
4420 | # if defined(HAVE_INTERP_INTERN) |
4421 | PERL_CALLCONV void Perl_sys_intern_dup(pTHX_ struct interp_intern* src, struct interp_intern* dst) | |
4422 | __attribute__nonnull__(pTHX_1) | |
4423 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
4424 | #define PERL_ARGS_ASSERT_SYS_INTERN_DUP \ |
4425 | assert(src); assert(dst) | |
504618e9 | 4426 | |
ddacffcf SH |
4427 | # endif |
4428 | #endif | |
4429 | #if defined(HAVE_INTERP_INTERN) | |
3dbbd0f5 GS |
4430 | PERL_CALLCONV void Perl_sys_intern_clear(pTHX); |
4431 | PERL_CALLCONV void Perl_sys_intern_init(pTHX); | |
4432 | #endif | |
cae16f1a | 4433 | |
4048f010 | 4434 | PERL_CALLCONV const char * Perl_custom_op_name(pTHX_ const OP *o) |
53c1dcc0 | 4435 | __attribute__warn_unused_result__ |
abb2c242 | 4436 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4437 | #define PERL_ARGS_ASSERT_CUSTOM_OP_NAME \ |
4438 | assert(o) | |
f54cb97a | 4439 | |
4048f010 | 4440 | PERL_CALLCONV const char * Perl_custom_op_desc(pTHX_ const OP *o) |
53c1dcc0 | 4441 | __attribute__warn_unused_result__ |
abb2c242 | 4442 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4443 | #define PERL_ARGS_ASSERT_CUSTOM_OP_DESC \ |
4444 | assert(o) | |
cae16f1a | 4445 | |
f54cb97a | 4446 | |
c48640ec AL |
4447 | PERL_CALLCONV void Perl_sv_nosharing(pTHX_ SV *sv); |
4448 | /* PERL_CALLCONV void Perl_sv_nolocking(pTHX_ SV *sv); */ | |
eba16661 | 4449 | PERL_CALLCONV bool Perl_sv_destroyable(pTHX_ SV *sv); |
d0647d4e | 4450 | #ifdef NO_MATHOMS |
c48640ec | 4451 | /* PERL_CALLCONV void Perl_sv_nounlocking(pTHX_ SV *sv); */ |
d0647d4e NC |
4452 | #else |
4453 | PERL_CALLCONV void Perl_sv_nounlocking(pTHX_ SV *sv); | |
4454 | #endif | |
62375a60 | 4455 | PERL_CALLCONV int Perl_nothreadhook(pTHX); |
1d7c1841 | 4456 | |
1d7c1841 | 4457 | END_EXTERN_C |
1d7c1841 | 4458 | |
43869a0c | 4459 | #if defined(PERL_IN_DOOP_C) |
c395bd6c | 4460 | STATIC I32 S_do_trans_simple(pTHX_ SV * const sv) |
53c1dcc0 | 4461 | __attribute__warn_unused_result__ |
abb2c242 | 4462 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4463 | #define PERL_ARGS_ASSERT_DO_TRANS_SIMPLE \ |
4464 | assert(sv) | |
f54cb97a | 4465 | |
c395bd6c | 4466 | STATIC I32 S_do_trans_count(pTHX_ SV * const sv) |
53c1dcc0 | 4467 | __attribute__warn_unused_result__ |
abb2c242 | 4468 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4469 | #define PERL_ARGS_ASSERT_DO_TRANS_COUNT \ |
4470 | assert(sv) | |
f54cb97a | 4471 | |
c395bd6c | 4472 | STATIC I32 S_do_trans_complex(pTHX_ SV * const sv) |
53c1dcc0 | 4473 | __attribute__warn_unused_result__ |
abb2c242 | 4474 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4475 | #define PERL_ARGS_ASSERT_DO_TRANS_COMPLEX \ |
4476 | assert(sv) | |
f54cb97a | 4477 | |
c395bd6c | 4478 | STATIC I32 S_do_trans_simple_utf8(pTHX_ SV * const sv) |
53c1dcc0 | 4479 | __attribute__warn_unused_result__ |
abb2c242 | 4480 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4481 | #define PERL_ARGS_ASSERT_DO_TRANS_SIMPLE_UTF8 \ |
4482 | assert(sv) | |
f54cb97a | 4483 | |
c395bd6c | 4484 | STATIC I32 S_do_trans_count_utf8(pTHX_ SV * const sv) |
53c1dcc0 | 4485 | __attribute__warn_unused_result__ |
abb2c242 | 4486 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4487 | #define PERL_ARGS_ASSERT_DO_TRANS_COUNT_UTF8 \ |
4488 | assert(sv) | |
f54cb97a | 4489 | |
c395bd6c | 4490 | STATIC I32 S_do_trans_complex_utf8(pTHX_ SV * const sv) |
53c1dcc0 | 4491 | __attribute__warn_unused_result__ |
abb2c242 | 4492 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4493 | #define PERL_ARGS_ASSERT_DO_TRANS_COMPLEX_UTF8 \ |
4494 | assert(sv) | |
f54cb97a | 4495 | |
cea2e8a9 | 4496 | #endif |
1d7c1841 | 4497 | |
43869a0c | 4498 | #if defined(PERL_IN_GV_C) |
fe9845cc | 4499 | STATIC void S_gv_init_sv(pTHX_ GV *gv, const svtype sv_type) |
53c1dcc0 | 4500 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4501 | #define PERL_ARGS_ASSERT_GV_INIT_SV \ |
4502 | assert(gv) | |
53c1dcc0 | 4503 | |
ad7cce9f FR |
4504 | STATIC void S_gv_magicalize_isa(pTHX_ GV *gv, const char *nambeg, I32 add) |
4505 | __attribute__nonnull__(pTHX_1) | |
4506 | __attribute__nonnull__(pTHX_2); | |
4507 | #define PERL_ARGS_ASSERT_GV_MAGICALIZE_ISA \ | |
4508 | assert(gv); assert(nambeg) | |
4509 | ||
4510 | STATIC void S_gv_magicalize_overload(pTHX_ GV *gv) | |
4511 | __attribute__nonnull__(pTHX_1); | |
4512 | #define PERL_ARGS_ASSERT_GV_MAGICALIZE_OVERLOAD \ | |
4513 | assert(gv) | |
4514 | ||
7d3b1f61 BB |
4515 | STATIC HV* S_gv_get_super_pkg(pTHX_ const char* name, I32 namelen) |
4516 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4517 | #define PERL_ARGS_ASSERT_GV_GET_SUPER_PKG \ |
4518 | assert(name) | |
7d3b1f61 | 4519 | |
44a2ac75 YO |
4520 | STATIC HV* S_require_tie_mod(pTHX_ GV *gv, const char *varpv, SV* namesv, const char *methpv, const U32 flags) |
4521 | __attribute__nonnull__(pTHX_1) | |
4522 | __attribute__nonnull__(pTHX_2) | |
4523 | __attribute__nonnull__(pTHX_3) | |
4524 | __attribute__nonnull__(pTHX_4); | |
7918f24d NC |
4525 | #define PERL_ARGS_ASSERT_REQUIRE_TIE_MOD \ |
4526 | assert(gv); assert(varpv); assert(namesv); assert(methpv) | |
a3b680e6 | 4527 | |
864dbfa3 | 4528 | #endif |
1d7c1841 | 4529 | |
43869a0c | 4530 | #if defined(PERL_IN_HV_C) |
53c1dcc0 AL |
4531 | STATIC void S_hsplit(pTHX_ HV *hv) |
4532 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4533 | #define PERL_ARGS_ASSERT_HSPLIT \ |
4534 | assert(hv) | |
53c1dcc0 | 4535 | |
3abe233e AL |
4536 | STATIC void S_hfreeentries(pTHX_ HV *hv) |
4537 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4538 | #define PERL_ARGS_ASSERT_HFREEENTRIES \ |
4539 | assert(hv) | |
3abe233e | 4540 | |
1df70142 | 4541 | STATIC HE* S_new_he(pTHX) |
53c1dcc0 | 4542 | __attribute__malloc__ |
1df70142 AL |
4543 | __attribute__warn_unused_result__; |
4544 | ||
44af46ee | 4545 | STATIC HEK* S_save_hek_flags(const char *str, I32 len, U32 hash, int flags) |
53c1dcc0 | 4546 | __attribute__malloc__ |
1df70142 | 4547 | __attribute__warn_unused_result__ |
44af46ee | 4548 | __attribute__nonnull__(1); |
7918f24d NC |
4549 | #define PERL_ARGS_ASSERT_SAVE_HEK_FLAGS \ |
4550 | assert(str) | |
1df70142 | 4551 | |
b0e6ae5b SH |
4552 | STATIC void S_hv_magic_check(HV *hv, bool *needs_copy, bool *needs_store) |
4553 | __attribute__nonnull__(1) | |
4554 | __attribute__nonnull__(2) | |
4555 | __attribute__nonnull__(3); | |
7918f24d NC |
4556 | #define PERL_ARGS_ASSERT_HV_MAGIC_CHECK \ |
4557 | assert(hv); assert(needs_copy); assert(needs_store) | |
1df70142 | 4558 | |
97ddebaf | 4559 | STATIC void S_unshare_hek_or_pvn(pTHX_ const HEK* hek, const char* str, I32 len, U32 hash); |
4048f010 | 4560 | STATIC HEK* S_share_hek_flags(pTHX_ const char *str, I32 len, U32 hash, int flags) |
1b6737cc AL |
4561 | __attribute__warn_unused_result__ |
4562 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4563 | #define PERL_ARGS_ASSERT_SHARE_HEK_FLAGS \ |
4564 | assert(str) | |
1df70142 | 4565 | |
f54cb97a | 4566 | STATIC void S_hv_notallowed(pTHX_ int flags, const char *key, I32 klen, const char *msg) |
1df70142 AL |
4567 | __attribute__noreturn__ |
4568 | __attribute__nonnull__(pTHX_2) | |
4569 | __attribute__nonnull__(pTHX_4); | |
7918f24d NC |
4570 | #define PERL_ARGS_ASSERT_HV_NOTALLOWED \ |
4571 | assert(key); assert(msg) | |
f54cb97a | 4572 | |
44af46ee | 4573 | STATIC struct xpvhv_aux* S_hv_auxinit(HV *hv) |
44af46ee | 4574 | __attribute__nonnull__(1); |
7918f24d NC |
4575 | #define PERL_ARGS_ASSERT_HV_AUXINIT \ |
4576 | assert(hv) | |
53c1dcc0 | 4577 | |
4048f010 NC |
4578 | STATIC SV* S_hv_delete_common(pTHX_ HV *hv, SV *keysv, const char *key, STRLEN klen, int k_flags, I32 d_flags, U32 hash); |
4579 | STATIC void S_clear_placeholders(pTHX_ HV *hv, U32 items) | |
7b0bddfa | 4580 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4581 | #define PERL_ARGS_ASSERT_CLEAR_PLACEHOLDERS \ |
4582 | assert(hv) | |
7b0bddfa NC |
4583 | |
4584 | STATIC SV * S_refcounted_he_value(pTHX_ const struct refcounted_he *he) | |
b3ca2e83 | 4585 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4586 | #define PERL_ARGS_ASSERT_REFCOUNTED_HE_VALUE \ |
4587 | assert(he) | |
b3ca2e83 | 4588 | |
864dbfa3 | 4589 | #endif |
1d7c1841 | 4590 | |
43869a0c | 4591 | #if defined(PERL_IN_MG_C) |
504618e9 AL |
4592 | STATIC void S_save_magic(pTHX_ I32 mgs_ix, SV *sv) |
4593 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
4594 | #define PERL_ARGS_ASSERT_SAVE_MAGIC \ |
4595 | assert(sv) | |
504618e9 AL |
4596 | |
4597 | STATIC int S_magic_methpack(pTHX_ SV *sv, const MAGIC *mg, const char *meth) | |
4598 | __attribute__nonnull__(pTHX_1) | |
4599 | __attribute__nonnull__(pTHX_2) | |
4600 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
4601 | #define PERL_ARGS_ASSERT_MAGIC_METHPACK \ |
4602 | assert(sv); assert(mg); assert(meth) | |
504618e9 | 4603 | |
c7a0c747 | 4604 | STATIC SV* S_magic_methcall1(pTHX_ SV *sv, const MAGIC *mg, const char *meth, U32 flags, int n, SV *val) |
504618e9 AL |
4605 | __attribute__nonnull__(pTHX_1) |
4606 | __attribute__nonnull__(pTHX_2) | |
4607 | __attribute__nonnull__(pTHX_3); | |
efaf3674 | 4608 | #define PERL_ARGS_ASSERT_MAGIC_METHCALL1 \ |
7918f24d | 4609 | assert(sv); assert(mg); assert(meth) |
504618e9 | 4610 | |
251cc6a6 | 4611 | STATIC void S_restore_magic(pTHX_ const void *p); |
8772537c AL |
4612 | STATIC void S_unwind_handler_stack(pTHX_ const void *p) |
4613 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4614 | #define PERL_ARGS_ASSERT_UNWIND_HANDLER_STACK \ |
4615 | assert(p) | |
8772537c AL |
4616 | |
4617 | ||
864dbfa3 | 4618 | #endif |
1d7c1841 | 4619 | |
43869a0c | 4620 | #if defined(PERL_IN_OP_C) |
504618e9 AL |
4621 | PERL_CALLCONV OP* Perl_ck_anoncode(pTHX_ OP *o) |
4622 | __attribute__warn_unused_result__ | |
4623 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4624 | #define PERL_ARGS_ASSERT_CK_ANONCODE \ |
4625 | assert(o) | |
504618e9 AL |
4626 | |
4627 | PERL_CALLCONV OP* Perl_ck_bitop(pTHX_ OP *o) | |
4628 | __attribute__warn_unused_result__ | |
4629 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4630 | #define PERL_ARGS_ASSERT_CK_BITOP \ |
4631 | assert(o) | |
504618e9 AL |
4632 | |
4633 | PERL_CALLCONV OP* Perl_ck_concat(pTHX_ OP *o) | |
4634 | __attribute__warn_unused_result__ | |
4635 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4636 | #define PERL_ARGS_ASSERT_CK_CONCAT \ |
4637 | assert(o) | |
504618e9 AL |
4638 | |
4639 | PERL_CALLCONV OP* Perl_ck_defined(pTHX_ OP *o) | |
4640 | __attribute__warn_unused_result__ | |
4641 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4642 | #define PERL_ARGS_ASSERT_CK_DEFINED \ |
4643 | assert(o) | |
504618e9 AL |
4644 | |
4645 | PERL_CALLCONV OP* Perl_ck_delete(pTHX_ OP *o) | |
4646 | __attribute__warn_unused_result__ | |
4647 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4648 | #define PERL_ARGS_ASSERT_CK_DELETE \ |
4649 | assert(o) | |
504618e9 AL |
4650 | |
4651 | PERL_CALLCONV OP* Perl_ck_die(pTHX_ OP *o) | |
4652 | __attribute__warn_unused_result__ | |
4653 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4654 | #define PERL_ARGS_ASSERT_CK_DIE \ |
4655 | assert(o) | |
504618e9 AL |
4656 | |
4657 | PERL_CALLCONV OP* Perl_ck_eof(pTHX_ OP *o) | |
4658 | __attribute__warn_unused_result__ | |
4659 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4660 | #define PERL_ARGS_ASSERT_CK_EOF \ |
4661 | assert(o) | |
504618e9 AL |
4662 | |
4663 | PERL_CALLCONV OP* Perl_ck_eval(pTHX_ OP *o) | |
4664 | __attribute__warn_unused_result__ | |
4665 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4666 | #define PERL_ARGS_ASSERT_CK_EVAL \ |
4667 | assert(o) | |
504618e9 AL |
4668 | |
4669 | PERL_CALLCONV OP* Perl_ck_exec(pTHX_ OP *o) | |
4670 | __attribute__warn_unused_result__ | |
4671 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4672 | #define PERL_ARGS_ASSERT_CK_EXEC \ |
4673 | assert(o) | |
504618e9 AL |
4674 | |
4675 | PERL_CALLCONV OP* Perl_ck_exists(pTHX_ OP *o) | |
4676 | __attribute__warn_unused_result__ | |
4677 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4678 | #define PERL_ARGS_ASSERT_CK_EXISTS \ |
4679 | assert(o) | |
504618e9 AL |
4680 | |
4681 | PERL_CALLCONV OP* Perl_ck_exit(pTHX_ OP *o) | |
4682 | __attribute__warn_unused_result__ | |
4683 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4684 | #define PERL_ARGS_ASSERT_CK_EXIT \ |
4685 | assert(o) | |
504618e9 AL |
4686 | |
4687 | PERL_CALLCONV OP* Perl_ck_ftst(pTHX_ OP *o) | |
4688 | __attribute__warn_unused_result__ | |
4689 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4690 | #define PERL_ARGS_ASSERT_CK_FTST \ |
4691 | assert(o) | |
504618e9 AL |
4692 | |
4693 | PERL_CALLCONV OP* Perl_ck_fun(pTHX_ OP *o) | |
4694 | __attribute__warn_unused_result__ | |
4695 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4696 | #define PERL_ARGS_ASSERT_CK_FUN \ |
4697 | assert(o) | |
504618e9 AL |
4698 | |
4699 | PERL_CALLCONV OP* Perl_ck_glob(pTHX_ OP *o) | |
4700 | __attribute__warn_unused_result__ | |
4701 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4702 | #define PERL_ARGS_ASSERT_CK_GLOB \ |
4703 | assert(o) | |
504618e9 AL |
4704 | |
4705 | PERL_CALLCONV OP* Perl_ck_grep(pTHX_ OP *o) | |
4706 | __attribute__warn_unused_result__ | |
4707 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4708 | #define PERL_ARGS_ASSERT_CK_GREP \ |
4709 | assert(o) | |
504618e9 AL |
4710 | |
4711 | PERL_CALLCONV OP* Perl_ck_index(pTHX_ OP *o) | |
4712 | __attribute__warn_unused_result__ | |
4713 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4714 | #define PERL_ARGS_ASSERT_CK_INDEX \ |
4715 | assert(o) | |
504618e9 AL |
4716 | |
4717 | PERL_CALLCONV OP* Perl_ck_join(pTHX_ OP *o) | |
4718 | __attribute__warn_unused_result__ | |
4719 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4720 | #define PERL_ARGS_ASSERT_CK_JOIN \ |
4721 | assert(o) | |
504618e9 | 4722 | |
504618e9 AL |
4723 | PERL_CALLCONV OP* Perl_ck_lfun(pTHX_ OP *o) |
4724 | __attribute__warn_unused_result__ | |
4725 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4726 | #define PERL_ARGS_ASSERT_CK_LFUN \ |
4727 | assert(o) | |
504618e9 AL |
4728 | |
4729 | PERL_CALLCONV OP* Perl_ck_listiob(pTHX_ OP *o) | |
4730 | __attribute__warn_unused_result__ | |
4731 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4732 | #define PERL_ARGS_ASSERT_CK_LISTIOB \ |
4733 | assert(o) | |
504618e9 AL |
4734 | |
4735 | PERL_CALLCONV OP* Perl_ck_match(pTHX_ OP *o) | |
4736 | __attribute__warn_unused_result__ | |
4737 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4738 | #define PERL_ARGS_ASSERT_CK_MATCH \ |
4739 | assert(o) | |
504618e9 AL |
4740 | |
4741 | PERL_CALLCONV OP* Perl_ck_method(pTHX_ OP *o) | |
4742 | __attribute__warn_unused_result__ | |
4743 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4744 | #define PERL_ARGS_ASSERT_CK_METHOD \ |
4745 | assert(o) | |
504618e9 AL |
4746 | |
4747 | PERL_CALLCONV OP* Perl_ck_null(pTHX_ OP *o) | |
4748 | __attribute__warn_unused_result__ | |
4749 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4750 | #define PERL_ARGS_ASSERT_CK_NULL \ |
4751 | assert(o) | |
504618e9 AL |
4752 | |
4753 | PERL_CALLCONV OP* Perl_ck_open(pTHX_ OP *o) | |
4754 | __attribute__warn_unused_result__ | |
4755 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4756 | #define PERL_ARGS_ASSERT_CK_OPEN \ |
4757 | assert(o) | |
504618e9 | 4758 | |
e4b7ebf3 RGS |
4759 | PERL_CALLCONV OP* Perl_ck_readline(pTHX_ OP *o) |
4760 | __attribute__warn_unused_result__ | |
4761 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4762 | #define PERL_ARGS_ASSERT_CK_READLINE \ |
4763 | assert(o) | |
e4b7ebf3 | 4764 | |
504618e9 AL |
4765 | PERL_CALLCONV OP* Perl_ck_repeat(pTHX_ OP *o) |
4766 | __attribute__warn_unused_result__ | |
4767 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4768 | #define PERL_ARGS_ASSERT_CK_REPEAT \ |
4769 | assert(o) | |
504618e9 AL |
4770 | |
4771 | PERL_CALLCONV OP* Perl_ck_require(pTHX_ OP *o) | |
4772 | __attribute__warn_unused_result__ | |
4773 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4774 | #define PERL_ARGS_ASSERT_CK_REQUIRE \ |
4775 | assert(o) | |
504618e9 | 4776 | |
504618e9 AL |
4777 | PERL_CALLCONV OP* Perl_ck_return(pTHX_ OP *o) |
4778 | __attribute__warn_unused_result__ | |
4779 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4780 | #define PERL_ARGS_ASSERT_CK_RETURN \ |
4781 | assert(o) | |
504618e9 AL |
4782 | |
4783 | PERL_CALLCONV OP* Perl_ck_rfun(pTHX_ OP *o) | |
4784 | __attribute__warn_unused_result__ | |
4785 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4786 | #define PERL_ARGS_ASSERT_CK_RFUN \ |
4787 | assert(o) | |
504618e9 AL |
4788 | |
4789 | PERL_CALLCONV OP* Perl_ck_rvconst(pTHX_ OP *o) | |
4790 | __attribute__warn_unused_result__ | |
4791 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4792 | #define PERL_ARGS_ASSERT_CK_RVCONST \ |
4793 | assert(o) | |
504618e9 AL |
4794 | |
4795 | PERL_CALLCONV OP* Perl_ck_sassign(pTHX_ OP *o) | |
4796 | __attribute__warn_unused_result__ | |
4797 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4798 | #define PERL_ARGS_ASSERT_CK_SASSIGN \ |
4799 | assert(o) | |
504618e9 AL |
4800 | |
4801 | PERL_CALLCONV OP* Perl_ck_select(pTHX_ OP *o) | |
4802 | __attribute__warn_unused_result__ | |
4803 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4804 | #define PERL_ARGS_ASSERT_CK_SELECT \ |
4805 | assert(o) | |
504618e9 AL |
4806 | |
4807 | PERL_CALLCONV OP* Perl_ck_shift(pTHX_ OP *o) | |
4808 | __attribute__warn_unused_result__ | |
4809 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4810 | #define PERL_ARGS_ASSERT_CK_SHIFT \ |
4811 | assert(o) | |
504618e9 AL |
4812 | |
4813 | PERL_CALLCONV OP* Perl_ck_sort(pTHX_ OP *o) | |
4814 | __attribute__warn_unused_result__ | |
4815 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4816 | #define PERL_ARGS_ASSERT_CK_SORT \ |
4817 | assert(o) | |
504618e9 AL |
4818 | |
4819 | PERL_CALLCONV OP* Perl_ck_spair(pTHX_ OP *o) | |
4820 | __attribute__warn_unused_result__ | |
4821 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4822 | #define PERL_ARGS_ASSERT_CK_SPAIR \ |
4823 | assert(o) | |
504618e9 AL |
4824 | |
4825 | PERL_CALLCONV OP* Perl_ck_split(pTHX_ OP *o) | |
4826 | __attribute__warn_unused_result__ | |
4827 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4828 | #define PERL_ARGS_ASSERT_CK_SPLIT \ |
4829 | assert(o) | |
504618e9 AL |
4830 | |
4831 | PERL_CALLCONV OP* Perl_ck_subr(pTHX_ OP *o) | |
4832 | __attribute__warn_unused_result__ | |
4833 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4834 | #define PERL_ARGS_ASSERT_CK_SUBR \ |
4835 | assert(o) | |
504618e9 AL |
4836 | |
4837 | PERL_CALLCONV OP* Perl_ck_substr(pTHX_ OP *o) | |
4838 | __attribute__warn_unused_result__ | |
4839 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4840 | #define PERL_ARGS_ASSERT_CK_SUBSTR \ |
4841 | assert(o) | |
504618e9 AL |
4842 | |
4843 | PERL_CALLCONV OP* Perl_ck_svconst(pTHX_ OP *o) | |
4844 | __attribute__warn_unused_result__ | |
4845 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4846 | #define PERL_ARGS_ASSERT_CK_SVCONST \ |
4847 | assert(o) | |
504618e9 AL |
4848 | |
4849 | PERL_CALLCONV OP* Perl_ck_trunc(pTHX_ OP *o) | |
4850 | __attribute__warn_unused_result__ | |
4851 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4852 | #define PERL_ARGS_ASSERT_CK_TRUNC \ |
4853 | assert(o) | |
504618e9 AL |
4854 | |
4855 | PERL_CALLCONV OP* Perl_ck_unpack(pTHX_ OP *o) | |
4856 | __attribute__warn_unused_result__ | |
4857 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4858 | #define PERL_ARGS_ASSERT_CK_UNPACK \ |
4859 | assert(o) | |
504618e9 | 4860 | |
878d132a NC |
4861 | PERL_CALLCONV OP* Perl_ck_each(pTHX_ OP *o) |
4862 | __attribute__warn_unused_result__ | |
4863 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4864 | #define PERL_ARGS_ASSERT_CK_EACH \ |
4865 | assert(o) | |
878d132a | 4866 | |
44af46ee | 4867 | STATIC bool S_is_handle_constructor(const OP *o, I32 numargs) |
504618e9 | 4868 | __attribute__warn_unused_result__ |
44af46ee | 4869 | __attribute__nonnull__(1); |
7918f24d NC |
4870 | #define PERL_ARGS_ASSERT_IS_HANDLE_CONSTRUCTOR \ |
4871 | assert(o) | |
504618e9 AL |
4872 | |
4873 | STATIC I32 S_is_list_assignment(pTHX_ const OP *o) | |
4874 | __attribute__warn_unused_result__; | |
4875 | ||
c4bd3ae5 | 4876 | # ifdef USE_ITHREADS |
aec42b5d NC |
4877 | STATIC void S_forget_pmop(pTHX_ PMOP *const o, U32 flags) |
4878 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4879 | #define PERL_ARGS_ASSERT_FORGET_PMOP \ |
4880 | assert(o) | |
aec42b5d | 4881 | |
c4bd3ae5 NC |
4882 | # else |
4883 | STATIC void S_forget_pmop(pTHX_ PMOP *const o) | |
4884 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4885 | #define PERL_ARGS_ASSERT_FORGET_PMOP \ |
4886 | assert(o) | |
c4bd3ae5 NC |
4887 | |
4888 | # endif | |
bfd0ff22 NC |
4889 | STATIC void S_find_and_forget_pmops(pTHX_ OP *o) |
4890 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4891 | #define PERL_ARGS_ASSERT_FIND_AND_FORGET_PMOPS \ |
4892 | assert(o) | |
bfd0ff22 | 4893 | |
504618e9 AL |
4894 | STATIC void S_cop_free(pTHX_ COP *cop) |
4895 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4896 | #define PERL_ARGS_ASSERT_COP_FREE \ |
4897 | assert(cop) | |
504618e9 | 4898 | |
cea2e8a9 | 4899 | STATIC OP* S_modkids(pTHX_ OP *o, I32 type); |
504618e9 AL |
4900 | STATIC OP* S_scalarboolean(pTHX_ OP *o) |
4901 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4902 | #define PERL_ARGS_ASSERT_SCALARBOOLEAN \ |
4903 | assert(o) | |
504618e9 AL |
4904 | |
4905 | STATIC OP* S_newDEFSVOP(pTHX) | |
4906 | __attribute__warn_unused_result__; | |
4907 | ||
71c4dbc3 VP |
4908 | STATIC OP* S_search_const(pTHX_ OP *o) |
4909 | __attribute__warn_unused_result__ | |
4910 | __attribute__nonnull__(pTHX_1); | |
4911 | #define PERL_ARGS_ASSERT_SEARCH_CONST \ | |
4912 | assert(o) | |
4913 | ||
504618e9 AL |
4914 | STATIC OP* S_new_logop(pTHX_ I32 type, I32 flags, OP **firstp, OP **otherp) |
4915 | __attribute__warn_unused_result__ | |
4916 | __attribute__nonnull__(pTHX_3) | |
4917 | __attribute__nonnull__(pTHX_4); | |
7918f24d NC |
4918 | #define PERL_ARGS_ASSERT_NEW_LOGOP \ |
4919 | assert(firstp); assert(otherp) | |
504618e9 AL |
4920 | |
4921 | STATIC void S_simplify_sort(pTHX_ OP *o) | |
4922 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4923 | #define PERL_ARGS_ASSERT_SIMPLIFY_SORT \ |
4924 | assert(o) | |
504618e9 | 4925 | |
aec46f14 AL |
4926 | STATIC const char* S_gv_ename(pTHX_ GV *gv) |
4927 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4928 | #define PERL_ARGS_ASSERT_GV_ENAME \ |
4929 | assert(gv) | |
aec46f14 | 4930 | |
44af46ee RGS |
4931 | STATIC bool S_scalar_mod_type(const OP *o, I32 type) |
4932 | __attribute__warn_unused_result__ | |
4933 | __attribute__nonnull__(1); | |
7918f24d NC |
4934 | #define PERL_ARGS_ASSERT_SCALAR_MOD_TYPE \ |
4935 | assert(o) | |
aec46f14 AL |
4936 | |
4937 | STATIC OP * S_my_kid(pTHX_ OP *o, OP *attrs, OP **imopsp) | |
4938 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
4939 | #define PERL_ARGS_ASSERT_MY_KID \ |
4940 | assert(imopsp) | |
aec46f14 AL |
4941 | |
4942 | STATIC OP * S_dup_attrlist(pTHX_ OP *o) | |
4943 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4944 | #define PERL_ARGS_ASSERT_DUP_ATTRLIST \ |
4945 | assert(o) | |
aec46f14 AL |
4946 | |
4947 | STATIC void S_apply_attrs(pTHX_ HV *stash, SV *target, OP *attrs, bool for_my) | |
4948 | __attribute__nonnull__(pTHX_1) | |
4949 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
4950 | #define PERL_ARGS_ASSERT_APPLY_ATTRS \ |
4951 | assert(stash); assert(target) | |
aec46f14 AL |
4952 | |
4953 | STATIC void S_apply_attrs_my(pTHX_ HV *stash, OP *target, OP *attrs, OP **imopsp) | |
4954 | __attribute__nonnull__(pTHX_1) | |
4955 | __attribute__nonnull__(pTHX_2) | |
4956 | __attribute__nonnull__(pTHX_4); | |
7918f24d NC |
4957 | #define PERL_ARGS_ASSERT_APPLY_ATTRS_MY \ |
4958 | assert(stash); assert(target); assert(imopsp) | |
aec46f14 | 4959 | |
504618e9 AL |
4960 | STATIC void S_bad_type(pTHX_ I32 n, const char *t, const char *name, const OP *kid) |
4961 | __attribute__nonnull__(pTHX_2) | |
4962 | __attribute__nonnull__(pTHX_3) | |
4963 | __attribute__nonnull__(pTHX_4); | |
7918f24d NC |
4964 | #define PERL_ARGS_ASSERT_BAD_TYPE \ |
4965 | assert(t); assert(name); assert(kid) | |
504618e9 AL |
4966 | |
4967 | STATIC void S_no_bareword_allowed(pTHX_ const OP *o) | |
4968 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4969 | #define PERL_ARGS_ASSERT_NO_BAREWORD_ALLOWED \ |
4970 | assert(o) | |
504618e9 AL |
4971 | |
4972 | STATIC OP* S_no_fh_allowed(pTHX_ OP *o) | |
4973 | __attribute__warn_unused_result__ | |
4974 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
4975 | #define PERL_ARGS_ASSERT_NO_FH_ALLOWED \ |
4976 | assert(o) | |
504618e9 AL |
4977 | |
4978 | STATIC OP* S_too_few_arguments(pTHX_ OP *o, const char* name) | |
4979 | __attribute__warn_unused_result__ | |
4980 | __attribute__nonnull__(pTHX_1) | |
4981 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
4982 | #define PERL_ARGS_ASSERT_TOO_FEW_ARGUMENTS \ |
4983 | assert(o); assert(name) | |
504618e9 AL |
4984 | |
4985 | STATIC OP* S_too_many_arguments(pTHX_ OP *o, const char* name) | |
4986 | __attribute__warn_unused_result__ | |
4987 | __attribute__nonnull__(pTHX_1) | |
4988 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
4989 | #define PERL_ARGS_ASSERT_TOO_MANY_ARGUMENTS \ |
4990 | assert(o); assert(name) | |
504618e9 | 4991 | |
ef519e13 | 4992 | STATIC bool S_looks_like_bool(pTHX_ const OP* o) |
0d863452 | 4993 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
4994 | #define PERL_ARGS_ASSERT_LOOKS_LIKE_BOOL \ |
4995 | assert(o) | |
0d863452 RH |
4996 | |
4997 | STATIC OP* S_newGIVWHENOP(pTHX_ OP* cond, OP *block, I32 enter_opcode, I32 leave_opcode, PADOFFSET entertarg) | |
4998 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
4999 | #define PERL_ARGS_ASSERT_NEWGIVWHENOP \ |
5000 | assert(block) | |
0d863452 RH |
5001 | |
5002 | STATIC OP* S_ref_array_or_hash(pTHX_ OP* cond); | |
33fb7a6e NC |
5003 | STATIC void S_process_special_blocks(pTHX_ const char *const fullname, GV *const gv, CV *const cv) |
5004 | __attribute__nonnull__(pTHX_1) | |
5005 | __attribute__nonnull__(pTHX_2) | |
5006 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
5007 | #define PERL_ARGS_ASSERT_PROCESS_SPECIAL_BLOCKS \ |
5008 | assert(fullname); assert(gv); assert(cv) | |
33fb7a6e | 5009 | |
c7e45529 AE |
5010 | #endif |
5011 | #if defined(PL_OP_SLAB_ALLOC) | |
e91d68d5 | 5012 | PERL_CALLCONV void* Perl_Slab_Alloc(pTHX_ size_t sz) |
aec46f14 | 5013 | __attribute__malloc__ |
504618e9 AL |
5014 | __attribute__warn_unused_result__; |
5015 | ||
aec46f14 AL |
5016 | PERL_CALLCONV void Perl_Slab_Free(pTHX_ void *op) |
5017 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
5018 | #define PERL_ARGS_ASSERT_SLAB_FREE \ |
5019 | assert(op) | |
aec46f14 | 5020 | |
f1fac472 NC |
5021 | # if defined(PERL_DEBUG_READONLY_OPS) |
5022 | PERL_CALLCONV void Perl_pending_Slabs_to_ro(pTHX); | |
fc97af9c NC |
5023 | PERL_CALLCONV OP * Perl_op_refcnt_inc(pTHX_ OP *o); |
5024 | PERL_CALLCONV PADOFFSET Perl_op_refcnt_dec(pTHX_ OP *o) | |
5025 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
5026 | #define PERL_ARGS_ASSERT_OP_REFCNT_DEC \ |
5027 | assert(o) | |
fc97af9c | 5028 | |
f1fac472 NC |
5029 | # if defined(PERL_IN_OP_C) |
5030 | STATIC void S_Slab_to_rw(pTHX_ void *op) | |
5031 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
5032 | #define PERL_ARGS_ASSERT_SLAB_TO_RW \ |
5033 | assert(op) | |
f1fac472 NC |
5034 | |
5035 | # endif | |
5036 | # endif | |
864dbfa3 | 5037 | #endif |
1d7c1841 | 5038 | |
43869a0c | 5039 | #if defined(PERL_IN_PERL_C) |
2f9285f8 DM |
5040 | STATIC void S_find_beginning(pTHX_ SV* linestr_sv, PerlIO *rsfp) |
5041 | __attribute__nonnull__(pTHX_1) | |
5042 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5043 | #define PERL_ARGS_ASSERT_FIND_BEGINNING \ |
5044 | assert(linestr_sv); assert(rsfp) | |
009d90df | 5045 | |
f20b2998 | 5046 | STATIC void S_forbid_setid(pTHX_ const char flag, const bool suidscript); |
08d0d8ab NC |
5047 | STATIC void S_incpush(pTHX_ const char *const dir, STRLEN len, U32 flags) |
5048 | __attribute__nonnull__(pTHX_1); | |
5049 | #define PERL_ARGS_ASSERT_INCPUSH \ | |
5050 | assert(dir) | |
5051 | ||
50d61629 | 5052 | STATIC void S_incpush_use_sep(pTHX_ const char *p, STRLEN len, U32 flags) |
4705144d NC |
5053 | __attribute__nonnull__(pTHX_1); |
5054 | #define PERL_ARGS_ASSERT_INCPUSH_USE_SEP \ | |
5055 | assert(p) | |
5056 | ||
cea2e8a9 GS |
5057 | STATIC void S_init_interp(pTHX); |
5058 | STATIC void S_init_ids(pTHX); | |
cea2e8a9 | 5059 | STATIC void S_init_main_stash(pTHX); |
2cace6ac | 5060 | STATIC void S_init_perllib(pTHX); |
aec46f14 AL |
5061 | STATIC void S_init_postdump_symbols(pTHX_ int argc, char **argv, char **env) |
5062 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5063 | #define PERL_ARGS_ASSERT_INIT_POSTDUMP_SYMBOLS \ |
5064 | assert(argv) | |
aec46f14 | 5065 | |
cea2e8a9 | 5066 | STATIC void S_init_predump_symbols(pTHX); |
f54cb97a | 5067 | STATIC void S_my_exit_jump(pTHX) |
abb2c242 | 5068 | __attribute__noreturn__; |
f54cb97a | 5069 | |
cea2e8a9 | 5070 | STATIC void S_nuke_stacks(pTHX); |
f20b2998 | 5071 | STATIC int S_open_script(pTHX_ const char *scriptname, bool dosearch, bool *suidscript, PerlIO **rsfpp) |
aec46f14 | 5072 | __attribute__nonnull__(pTHX_1) |
cdd8118e | 5073 | __attribute__nonnull__(pTHX_3) |
2f352907 | 5074 | __attribute__nonnull__(pTHX_4); |
7918f24d NC |
5075 | #define PERL_ARGS_ASSERT_OPEN_SCRIPT \ |
5076 | assert(scriptname); assert(suidscript); assert(rsfpp) | |
aec46f14 AL |
5077 | |
5078 | STATIC void S_usage(pTHX_ const char *name) | |
5079 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
5080 | #define PERL_ARGS_ASSERT_USAGE \ |
5081 | assert(name) | |
aec46f14 | 5082 | |
cc69b689 | 5083 | #ifndef SETUID_SCRIPTS_ARE_SECURE_NOW |
ec2019ad NC |
5084 | STATIC void S_validate_suid(pTHX_ PerlIO *rsfp) |
5085 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
5086 | #define PERL_ARGS_ASSERT_VALIDATE_SUID \ |
5087 | assert(rsfp) | |
ec2019ad | 5088 | |
ec2019ad | 5089 | #endif |
aec46f14 | 5090 | |
14dd3ad8 | 5091 | STATIC void* S_parse_body(pTHX_ char **env, XSINIT_t xsinit); |
f54cb97a | 5092 | STATIC void S_run_body(pTHX_ I32 oldscope) |
abb2c242 | 5093 | __attribute__noreturn__; |
f54cb97a | 5094 | |
7ffdaae6 | 5095 | STATIC SV * S_incpush_if_exists(pTHX_ AV *const av, SV *dir, SV *const stem) |
3a9a9ba7 | 5096 | __attribute__nonnull__(pTHX_1) |
7ffdaae6 NC |
5097 | __attribute__nonnull__(pTHX_2) |
5098 | __attribute__nonnull__(pTHX_3); | |
7918f24d | 5099 | #define PERL_ARGS_ASSERT_INCPUSH_IF_EXISTS \ |
7ffdaae6 | 5100 | assert(av); assert(dir); assert(stem) |
0bd48802 | 5101 | |
864dbfa3 | 5102 | #endif |
1d7c1841 | 5103 | |
43869a0c | 5104 | #if defined(PERL_IN_PP_C) |
7332a6c4 | 5105 | STATIC OP* S_do_delete_local(pTHX); |
901017d6 | 5106 | STATIC SV* S_refto(pTHX_ SV* sv) |
aec46f14 AL |
5107 | __attribute__warn_unused_result__ |
5108 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
5109 | #define PERL_ARGS_ASSERT_REFTO \ |
5110 | assert(sv) | |
901017d6 | 5111 | |
a6ec74c1 | 5112 | #endif |
43869a0c | 5113 | #if defined(PERL_IN_PP_C) || defined(PERL_IN_PP_HOT_C) |
fe9845cc | 5114 | PERL_CALLCONV GV* Perl_softref2xv(pTHX_ SV *const sv, const char *const what, const svtype type, SV ***spp) |
dc3c76f8 NC |
5115 | __attribute__warn_unused_result__ |
5116 | __attribute__nonnull__(pTHX_1) | |
5117 | __attribute__nonnull__(pTHX_2) | |
5118 | __attribute__nonnull__(pTHX_4); | |
7918f24d NC |
5119 | #define PERL_ARGS_ASSERT_SOFTREF2XV \ |
5120 | assert(sv); assert(what); assert(spp) | |
dc3c76f8 NC |
5121 | |
5122 | #endif | |
a6ec74c1 | 5123 | |
43869a0c | 5124 | #if defined(PERL_IN_PP_PACK_C) |
aec46f14 AL |
5125 | STATIC I32 S_unpack_rec(pTHX_ struct tempsym* symptr, const char *s, const char *strbeg, const char *strend, const char **new_s) |
5126 | __attribute__nonnull__(pTHX_1) | |
5127 | __attribute__nonnull__(pTHX_2) | |
5128 | __attribute__nonnull__(pTHX_3) | |
5129 | __attribute__nonnull__(pTHX_4); | |
7918f24d NC |
5130 | #define PERL_ARGS_ASSERT_UNPACK_REC \ |
5131 | assert(symptr); assert(s); assert(strbeg); assert(strend) | |
aec46f14 AL |
5132 | |
5133 | STATIC SV ** S_pack_rec(pTHX_ SV *cat, struct tempsym* symptr, SV **beglist, SV **endlist) | |
5134 | __attribute__nonnull__(pTHX_1) | |
5135 | __attribute__nonnull__(pTHX_2) | |
5136 | __attribute__nonnull__(pTHX_3) | |
5137 | __attribute__nonnull__(pTHX_4); | |
7918f24d NC |
5138 | #define PERL_ARGS_ASSERT_PACK_REC \ |
5139 | assert(cat); assert(symptr); assert(beglist); assert(endlist) | |
aec46f14 | 5140 | |
4373e329 | 5141 | STATIC SV* S_mul128(pTHX_ SV *sv, U8 m) |
abb2c242 | 5142 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5143 | #define PERL_ARGS_ASSERT_MUL128 \ |
5144 | assert(sv) | |
f54cb97a | 5145 | |
4373e329 | 5146 | STATIC I32 S_measure_struct(pTHX_ struct tempsym* symptr) |
abb2c242 | 5147 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5148 | #define PERL_ARGS_ASSERT_MEASURE_STRUCT \ |
5149 | assert(symptr) | |
f54cb97a | 5150 | |
4373e329 | 5151 | STATIC bool S_next_symbol(pTHX_ struct tempsym* symptr) |
abb2c242 | 5152 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5153 | #define PERL_ARGS_ASSERT_NEXT_SYMBOL \ |
5154 | assert(symptr) | |
f54cb97a | 5155 | |
4373e329 | 5156 | STATIC SV* S_is_an_int(pTHX_ const char *s, STRLEN l) |
1df70142 | 5157 | __attribute__warn_unused_result__ |
abb2c242 | 5158 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5159 | #define PERL_ARGS_ASSERT_IS_AN_INT \ |
5160 | assert(s) | |
f54cb97a | 5161 | |
4373e329 | 5162 | STATIC int S_div128(pTHX_ SV *pnum, bool *done) |
abb2c242 JH |
5163 | __attribute__nonnull__(pTHX_1) |
5164 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5165 | #define PERL_ARGS_ASSERT_DIV128 \ |
5166 | assert(pnum); assert(done) | |
f54cb97a | 5167 | |
4048f010 | 5168 | STATIC const char * S_group_end(pTHX_ const char *patptr, const char *patend, char ender) |
abb2c242 JH |
5169 | __attribute__nonnull__(pTHX_1) |
5170 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5171 | #define PERL_ARGS_ASSERT_GROUP_END \ |
5172 | assert(patptr); assert(patend) | |
f54cb97a | 5173 | |
4048f010 | 5174 | STATIC const char * S_get_num(pTHX_ const char *patptr, I32 *lenptr) |
255164ba | 5175 | __attribute__warn_unused_result__ |
abb2c242 JH |
5176 | __attribute__nonnull__(pTHX_1) |
5177 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5178 | #define PERL_ARGS_ASSERT_GET_NUM \ |
5179 | assert(patptr); assert(lenptr) | |
f54cb97a | 5180 | |
aec46f14 AL |
5181 | STATIC bool S_need_utf8(const char *pat, const char *patend) |
5182 | __attribute__nonnull__(1) | |
5183 | __attribute__nonnull__(2); | |
7918f24d NC |
5184 | #define PERL_ARGS_ASSERT_NEED_UTF8 \ |
5185 | assert(pat); assert(patend) | |
aec46f14 AL |
5186 | |
5187 | STATIC char S_first_symbol(const char *pat, const char *patend) | |
5188 | __attribute__nonnull__(1) | |
5189 | __attribute__nonnull__(2); | |
7918f24d NC |
5190 | #define PERL_ARGS_ASSERT_FIRST_SYMBOL \ |
5191 | assert(pat); assert(patend) | |
aec46f14 | 5192 | |
0bd48802 AL |
5193 | STATIC char * S_sv_exp_grow(pTHX_ SV *sv, STRLEN needed) |
5194 | __attribute__warn_unused_result__ | |
5195 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
5196 | #define PERL_ARGS_ASSERT_SV_EXP_GROW \ |
5197 | assert(sv) | |
0bd48802 | 5198 | |
14333449 | 5199 | STATIC char * S_bytes_to_uni(const U8 *start, STRLEN len, char *dest) |
64844641 | 5200 | __attribute__warn_unused_result__ |
14333449 AL |
5201 | __attribute__nonnull__(1) |
5202 | __attribute__nonnull__(3); | |
7918f24d NC |
5203 | #define PERL_ARGS_ASSERT_BYTES_TO_UNI \ |
5204 | assert(start); assert(dest) | |
64844641 | 5205 | |
864dbfa3 | 5206 | #endif |
1d7c1841 | 5207 | |
43869a0c | 5208 | #if defined(PERL_IN_PP_CTL_C) |
901017d6 AL |
5209 | STATIC OP* S_docatch(pTHX_ OP *o) |
5210 | __attribute__warn_unused_result__; | |
5211 | ||
901017d6 | 5212 | STATIC OP* S_dofindlabel(pTHX_ OP *o, const char *label, OP **opstack, OP **oplimit) |
aec46f14 AL |
5213 | __attribute__warn_unused_result__ |
5214 | __attribute__nonnull__(pTHX_1) | |
5215 | __attribute__nonnull__(pTHX_2) | |
5216 | __attribute__nonnull__(pTHX_3) | |
5217 | __attribute__nonnull__(pTHX_4); | |
7918f24d NC |
5218 | #define PERL_ARGS_ASSERT_DOFINDLABEL \ |
5219 | assert(o); assert(label); assert(opstack); assert(oplimit) | |
901017d6 AL |
5220 | |
5221 | STATIC OP* S_doparseform(pTHX_ SV *sv) | |
aec46f14 AL |
5222 | __attribute__warn_unused_result__ |
5223 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
5224 | #define PERL_ARGS_ASSERT_DOPARSEFORM \ |
5225 | assert(sv) | |
901017d6 AL |
5226 | |
5227 | STATIC bool S_num_overflow(NV value, I32 fldsize, I32 frcsize) | |
5228 | __attribute__warn_unused_result__; | |
5229 | ||
5230 | STATIC I32 S_dopoptoeval(pTHX_ I32 startingblock) | |
5231 | __attribute__warn_unused_result__; | |
5232 | ||
0d863452 RH |
5233 | STATIC I32 S_dopoptogiven(pTHX_ I32 startingblock) |
5234 | __attribute__warn_unused_result__; | |
5235 | ||
4373e329 | 5236 | STATIC I32 S_dopoptolabel(pTHX_ const char *label) |
901017d6 | 5237 | __attribute__warn_unused_result__ |
abb2c242 | 5238 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5239 | #define PERL_ARGS_ASSERT_DOPOPTOLABEL \ |
5240 | assert(label) | |
f54cb97a | 5241 | |
901017d6 AL |
5242 | STATIC I32 S_dopoptoloop(pTHX_ I32 startingblock) |
5243 | __attribute__warn_unused_result__; | |
901017d6 AL |
5244 | |
5245 | STATIC I32 S_dopoptosub_at(pTHX_ const PERL_CONTEXT* cxstk, I32 startingblock) | |
aec46f14 AL |
5246 | __attribute__warn_unused_result__ |
5247 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
5248 | #define PERL_ARGS_ASSERT_DOPOPTOSUB_AT \ |
5249 | assert(cxstk) | |
901017d6 | 5250 | |
0d863452 RH |
5251 | STATIC I32 S_dopoptowhen(pTHX_ I32 startingblock) |
5252 | __attribute__warn_unused_result__; | |
5253 | ||
46c461b5 AL |
5254 | STATIC void S_save_lines(pTHX_ AV *array, SV *sv) |
5255 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5256 | #define PERL_ARGS_ASSERT_SAVE_LINES \ |
5257 | assert(sv) | |
46c461b5 | 5258 | |
410be5db | 5259 | STATIC bool S_doeval(pTHX_ int gimme, OP** startop, CV* outside, U32 seq); |
0786552a | 5260 | STATIC PerlIO * S_check_type_and_open(pTHX_ const char *name) |
ce8abf5f | 5261 | __attribute__warn_unused_result__ |
0786552a | 5262 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5263 | #define PERL_ARGS_ASSERT_CHECK_TYPE_AND_OPEN \ |
5264 | assert(name) | |
ce8abf5f | 5265 | |
75c20bac | 5266 | #ifndef PERL_DISABLE_PMC |
0786552a | 5267 | STATIC PerlIO * S_doopen_pm(pTHX_ const char *name, const STRLEN namelen) |
aec46f14 | 5268 | __attribute__warn_unused_result__ |
0786552a | 5269 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5270 | #define PERL_ARGS_ASSERT_DOOPEN_PM \ |
5271 | assert(name) | |
901017d6 | 5272 | |
75c20bac | 5273 | #endif |
44af46ee | 5274 | STATIC bool S_path_is_absolute(const char *name) |
901017d6 | 5275 | __attribute__warn_unused_result__ |
44af46ee | 5276 | __attribute__nonnull__(1); |
7918f24d NC |
5277 | #define PERL_ARGS_ASSERT_PATH_IS_ABSOLUTE \ |
5278 | assert(name) | |
f54cb97a | 5279 | |
0bd48802 AL |
5280 | STATIC I32 S_run_user_filter(pTHX_ int idx, SV *buf_sv, int maxlen) |
5281 | __attribute__warn_unused_result__ | |
5282 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5283 | #define PERL_ARGS_ASSERT_RUN_USER_FILTER \ |
5284 | assert(buf_sv) | |
0bd48802 | 5285 | |
84679df5 | 5286 | STATIC PMOP* S_make_matcher(pTHX_ REGEXP* re) |
0d863452 RH |
5287 | __attribute__warn_unused_result__ |
5288 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
5289 | #define PERL_ARGS_ASSERT_MAKE_MATCHER \ |
5290 | assert(re) | |
0d863452 RH |
5291 | |
5292 | STATIC bool S_matcher_matches_sv(pTHX_ PMOP* matcher, SV* sv) | |
5293 | __attribute__warn_unused_result__ | |
5294 | __attribute__nonnull__(pTHX_1) | |
5295 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5296 | #define PERL_ARGS_ASSERT_MATCHER_MATCHES_SV \ |
5297 | assert(matcher); assert(sv) | |
0d863452 RH |
5298 | |
5299 | STATIC void S_destroy_matcher(pTHX_ PMOP* matcher) | |
5300 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
5301 | #define PERL_ARGS_ASSERT_DESTROY_MATCHER \ |
5302 | assert(matcher) | |
0d863452 RH |
5303 | |
5304 | STATIC OP* S_do_smartmatch(pTHX_ HV* seen_this, HV* seen_other); | |
864dbfa3 | 5305 | #endif |
1d7c1841 | 5306 | |
43869a0c | 5307 | #if defined(PERL_IN_PP_HOT_C) |
a28509cc AL |
5308 | STATIC void S_do_oddball(pTHX_ HV *hash, SV **relem, SV **firstrelem) |
5309 | __attribute__nonnull__(pTHX_1) | |
5310 | __attribute__nonnull__(pTHX_2) | |
5311 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
5312 | #define PERL_ARGS_ASSERT_DO_ODDBALL \ |
5313 | assert(hash); assert(relem); assert(firstrelem) | |
a28509cc | 5314 | |
a28509cc AL |
5315 | STATIC SV* S_method_common(pTHX_ SV* meth, U32* hashp) |
5316 | __attribute__warn_unused_result__ | |
5317 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
5318 | #define PERL_ARGS_ASSERT_METHOD_COMMON \ |
5319 | assert(meth) | |
a28509cc | 5320 | |
864dbfa3 | 5321 | #endif |
1d7c1841 | 5322 | |
43869a0c | 5323 | #if defined(PERL_IN_PP_SORT_C) |
31e9e0a3 | 5324 | STATIC I32 S_sv_ncmp(pTHX_ SV *const a, SV *const b) |
f0f5dc9d AL |
5325 | __attribute__nonnull__(pTHX_1) |
5326 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5327 | #define PERL_ARGS_ASSERT_SV_NCMP \ |
5328 | assert(a); assert(b) | |
f0f5dc9d | 5329 | |
31e9e0a3 | 5330 | STATIC I32 S_sv_i_ncmp(pTHX_ SV *const a, SV *const b) |
f0f5dc9d AL |
5331 | __attribute__nonnull__(pTHX_1) |
5332 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5333 | #define PERL_ARGS_ASSERT_SV_I_NCMP \ |
5334 | assert(a); assert(b) | |
f0f5dc9d | 5335 | |
31e9e0a3 | 5336 | STATIC I32 S_amagic_ncmp(pTHX_ SV *const a, SV *const b) |
f0f5dc9d AL |
5337 | __attribute__nonnull__(pTHX_1) |
5338 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5339 | #define PERL_ARGS_ASSERT_AMAGIC_NCMP \ |
5340 | assert(a); assert(b) | |
f0f5dc9d | 5341 | |
31e9e0a3 | 5342 | STATIC I32 S_amagic_i_ncmp(pTHX_ SV *const a, SV *const b) |
f0f5dc9d AL |
5343 | __attribute__nonnull__(pTHX_1) |
5344 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5345 | #define PERL_ARGS_ASSERT_AMAGIC_I_NCMP \ |
5346 | assert(a); assert(b) | |
f0f5dc9d | 5347 | |
31e9e0a3 | 5348 | STATIC I32 S_amagic_cmp(pTHX_ SV *const str1, SV *const str2) |
f0f5dc9d AL |
5349 | __attribute__nonnull__(pTHX_1) |
5350 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5351 | #define PERL_ARGS_ASSERT_AMAGIC_CMP \ |
5352 | assert(str1); assert(str2) | |
f0f5dc9d | 5353 | |
31e9e0a3 | 5354 | STATIC I32 S_amagic_cmp_locale(pTHX_ SV *const str1, SV *const str2) |
f0f5dc9d AL |
5355 | __attribute__nonnull__(pTHX_1) |
5356 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5357 | #define PERL_ARGS_ASSERT_AMAGIC_CMP_LOCALE \ |
5358 | assert(str1); assert(str2) | |
f0f5dc9d | 5359 | |
31e9e0a3 | 5360 | STATIC I32 S_sortcv(pTHX_ SV *const a, SV *const b) |
f0f5dc9d AL |
5361 | __attribute__nonnull__(pTHX_1) |
5362 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5363 | #define PERL_ARGS_ASSERT_SORTCV \ |
5364 | assert(a); assert(b) | |
f0f5dc9d | 5365 | |
31e9e0a3 | 5366 | STATIC I32 S_sortcv_xsub(pTHX_ SV *const a, SV *const b) |
f0f5dc9d AL |
5367 | __attribute__nonnull__(pTHX_1) |
5368 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5369 | #define PERL_ARGS_ASSERT_SORTCV_XSUB \ |
5370 | assert(a); assert(b) | |
f0f5dc9d | 5371 | |
31e9e0a3 | 5372 | STATIC I32 S_sortcv_stacked(pTHX_ SV *const a, SV *const b) |
f0f5dc9d AL |
5373 | __attribute__nonnull__(pTHX_1) |
5374 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5375 | #define PERL_ARGS_ASSERT_SORTCV_STACKED \ |
5376 | assert(a); assert(b) | |
f0f5dc9d | 5377 | |
fe2ae508 | 5378 | STATIC void S_qsortsvu(pTHX_ SV** array, size_t num_elts, SVCOMPARE_t compare) |
fe2ae508 | 5379 | __attribute__nonnull__(pTHX_3); |
7918f24d NC |
5380 | #define PERL_ARGS_ASSERT_QSORTSVU \ |
5381 | assert(compare) | |
fe2ae508 | 5382 | |
f0f5dc9d AL |
5383 | #endif |
5384 | ||
43869a0c | 5385 | #if defined(PERL_IN_PP_SYS_C) |
b464bac0 AL |
5386 | STATIC OP* S_doform(pTHX_ CV *cv, GV *gv, OP *retop) |
5387 | __attribute__nonnull__(pTHX_1) | |
5388 | __attribute__nonnull__(pTHX_2) | |
5389 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
5390 | #define PERL_ARGS_ASSERT_DOFORM \ |
5391 | assert(cv); assert(gv); assert(retop) | |
b464bac0 | 5392 | |
cea2e8a9 | 5393 | # if !defined(HAS_MKDIR) || !defined(HAS_RMDIR) |
b464bac0 AL |
5394 | STATIC int S_dooneliner(pTHX_ const char *cmd, const char *filename) |
5395 | __attribute__warn_unused_result__ | |
5396 | __attribute__nonnull__(pTHX_1) | |
5397 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5398 | #define PERL_ARGS_ASSERT_DOONELINER \ |
5399 | assert(cmd); assert(filename) | |
b464bac0 | 5400 | |
cea2e8a9 | 5401 | # endif |
5cdc4e88 NC |
5402 | STATIC SV * S_space_join_names_mortal(pTHX_ char *const *array) |
5403 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
5404 | #define PERL_ARGS_ASSERT_SPACE_JOIN_NAMES_MORTAL \ |
5405 | assert(array) | |
5cdc4e88 | 5406 | |
f4adce6b | 5407 | STATIC OP * S_tied_handle_method(pTHX_ const char *const methname, SV **sp, IO *const io, MAGIC *const mg, const U32 flags, ...) |
ebc1fde6 NC |
5408 | __attribute__nonnull__(pTHX_1) |
5409 | __attribute__nonnull__(pTHX_2) | |
5410 | __attribute__nonnull__(pTHX_3) | |
5411 | __attribute__nonnull__(pTHX_4); | |
5412 | #define PERL_ARGS_ASSERT_TIED_HANDLE_METHOD \ | |
5413 | assert(methname); assert(sp); assert(io); assert(mg) | |
5414 | ||
864dbfa3 | 5415 | #endif |
1d7c1841 | 5416 | |
43869a0c | 5417 | #if defined(PERL_IN_REGCOMP_C) |
4048f010 | 5418 | STATIC regnode* S_reg(pTHX_ struct RExC_state_t *pRExC_state, I32 paren, I32 *flagp, U32 depth) |
a28509cc AL |
5419 | __attribute__nonnull__(pTHX_1) |
5420 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
5421 | #define PERL_ARGS_ASSERT_REG \ |
5422 | assert(pRExC_state); assert(flagp) | |
a28509cc | 5423 | |
4048f010 | 5424 | STATIC regnode* S_reganode(pTHX_ struct RExC_state_t *pRExC_state, U8 op, U32 arg) |
a28509cc | 5425 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5426 | #define PERL_ARGS_ASSERT_REGANODE \ |
5427 | assert(pRExC_state) | |
a28509cc | 5428 | |
4048f010 | 5429 | STATIC regnode* S_regatom(pTHX_ struct RExC_state_t *pRExC_state, I32 *flagp, U32 depth) |
a28509cc AL |
5430 | __attribute__nonnull__(pTHX_1) |
5431 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5432 | #define PERL_ARGS_ASSERT_REGATOM \ |
5433 | assert(pRExC_state); assert(flagp) | |
a28509cc | 5434 | |
4048f010 | 5435 | STATIC regnode* S_regbranch(pTHX_ struct RExC_state_t *pRExC_state, I32 *flagp, I32 first, U32 depth) |
a28509cc AL |
5436 | __attribute__nonnull__(pTHX_1) |
5437 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5438 | #define PERL_ARGS_ASSERT_REGBRANCH \ |
5439 | assert(pRExC_state); assert(flagp) | |
a28509cc | 5440 | |
4048f010 | 5441 | STATIC STRLEN S_reguni(pTHX_ const struct RExC_state_t *pRExC_state, UV uv, char *s) |
a28509cc | 5442 | __attribute__nonnull__(pTHX_1) |
71207a34 | 5443 | __attribute__nonnull__(pTHX_3); |
7918f24d NC |
5444 | #define PERL_ARGS_ASSERT_REGUNI \ |
5445 | assert(pRExC_state); assert(s) | |
a28509cc | 5446 | |
4048f010 | 5447 | STATIC regnode* S_regclass(pTHX_ struct RExC_state_t *pRExC_state, U32 depth) |
a28509cc | 5448 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5449 | #define PERL_ARGS_ASSERT_REGCLASS \ |
5450 | assert(pRExC_state) | |
a28509cc | 5451 | |
4048f010 | 5452 | STATIC regnode* S_reg_node(pTHX_ struct RExC_state_t *pRExC_state, U8 op) |
a28509cc | 5453 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5454 | #define PERL_ARGS_ASSERT_REG_NODE \ |
5455 | assert(pRExC_state) | |
a28509cc | 5456 | |
c86f7df5 AL |
5457 | STATIC UV S_reg_recode(pTHX_ const char value, SV **encp) |
5458 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5459 | #define PERL_ARGS_ASSERT_REG_RECODE \ |
5460 | assert(encp) | |
c86f7df5 | 5461 | |
4048f010 | 5462 | STATIC regnode* S_regpiece(pTHX_ struct RExC_state_t *pRExC_state, I32 *flagp, U32 depth) |
a28509cc AL |
5463 | __attribute__nonnull__(pTHX_1) |
5464 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5465 | #define PERL_ARGS_ASSERT_REGPIECE \ |
5466 | assert(pRExC_state); assert(flagp) | |
a28509cc | 5467 | |
afefe6bf | 5468 | STATIC regnode* S_reg_namedseq(pTHX_ struct RExC_state_t *pRExC_state, UV *valuep, I32 *flagp) |
fc8cd66c | 5469 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5470 | #define PERL_ARGS_ASSERT_REG_NAMEDSEQ \ |
5471 | assert(pRExC_state) | |
fc8cd66c | 5472 | |
4048f010 | 5473 | STATIC void S_reginsert(pTHX_ struct RExC_state_t *pRExC_state, U8 op, regnode *opnd, U32 depth) |
a28509cc AL |
5474 | __attribute__nonnull__(pTHX_1) |
5475 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
5476 | #define PERL_ARGS_ASSERT_REGINSERT \ |
5477 | assert(pRExC_state); assert(opnd) | |
a28509cc | 5478 | |
4048f010 | 5479 | STATIC void S_regtail(pTHX_ struct RExC_state_t *pRExC_state, regnode *p, const regnode *val, U32 depth) |
8e11feef RGS |
5480 | __attribute__nonnull__(pTHX_1) |
5481 | __attribute__nonnull__(pTHX_2) | |
5482 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
5483 | #define PERL_ARGS_ASSERT_REGTAIL \ |
5484 | assert(pRExC_state); assert(p); assert(val) | |
8e11feef | 5485 | |
4048f010 | 5486 | STATIC SV * S_reg_scan_name(pTHX_ struct RExC_state_t *pRExC_state, U32 flags) |
894be9b7 | 5487 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5488 | #define PERL_ARGS_ASSERT_REG_SCAN_NAME \ |
5489 | assert(pRExC_state) | |
894be9b7 | 5490 | |
4048f010 | 5491 | STATIC U32 S_join_exact(pTHX_ struct RExC_state_t *pRExC_state, regnode *scan, I32 *min, U32 flags, regnode *val, U32 depth) |
a28509cc AL |
5492 | __attribute__nonnull__(pTHX_1) |
5493 | __attribute__nonnull__(pTHX_2) | |
5494 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
5495 | #define PERL_ARGS_ASSERT_JOIN_EXACT \ |
5496 | assert(pRExC_state); assert(scan); assert(min) | |
a28509cc | 5497 | |
4048f010 | 5498 | STATIC char * S_regwhite(struct RExC_state_t *pRExC_state, char *p) |
44af46ee RGS |
5499 | __attribute__warn_unused_result__ |
5500 | __attribute__nonnull__(1) | |
5501 | __attribute__nonnull__(2); | |
7918f24d NC |
5502 | #define PERL_ARGS_ASSERT_REGWHITE \ |
5503 | assert(pRExC_state); assert(p) | |
a28509cc | 5504 | |
4048f010 | 5505 | STATIC char * S_nextchar(pTHX_ struct RExC_state_t *pRExC_state) |
bcdf7404 | 5506 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5507 | #define PERL_ARGS_ASSERT_NEXTCHAR \ |
5508 | assert(pRExC_state) | |
bcdf7404 | 5509 | |
4048f010 | 5510 | STATIC bool S_reg_skipcomment(pTHX_ struct RExC_state_t *pRExC_state) |
a28509cc | 5511 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5512 | #define PERL_ARGS_ASSERT_REG_SKIPCOMMENT \ |
5513 | assert(pRExC_state) | |
a28509cc | 5514 | |
4048f010 | 5515 | STATIC void S_scan_commit(pTHX_ const struct RExC_state_t *pRExC_state, struct scan_data_t *data, I32 *minlenp, int is_inf) |
aec46f14 | 5516 | __attribute__nonnull__(pTHX_1) |
1de06328 YO |
5517 | __attribute__nonnull__(pTHX_2) |
5518 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
5519 | #define PERL_ARGS_ASSERT_SCAN_COMMIT \ |
5520 | assert(pRExC_state); assert(data); assert(minlenp) | |
aec46f14 | 5521 | |
4048f010 | 5522 | STATIC void S_cl_anything(const struct RExC_state_t *pRExC_state, struct regnode_charclass_class *cl) |
44af46ee RGS |
5523 | __attribute__nonnull__(1) |
5524 | __attribute__nonnull__(2); | |
7918f24d NC |
5525 | #define PERL_ARGS_ASSERT_CL_ANYTHING \ |
5526 | assert(pRExC_state); assert(cl) | |
a28509cc | 5527 | |
44af46ee RGS |
5528 | STATIC int S_cl_is_anything(const struct regnode_charclass_class *cl) |
5529 | __attribute__warn_unused_result__ | |
5530 | __attribute__nonnull__(1); | |
7918f24d NC |
5531 | #define PERL_ARGS_ASSERT_CL_IS_ANYTHING \ |
5532 | assert(cl) | |
a28509cc | 5533 | |
4048f010 | 5534 | STATIC void S_cl_init(const struct RExC_state_t *pRExC_state, struct regnode_charclass_class *cl) |
44af46ee RGS |
5535 | __attribute__nonnull__(1) |
5536 | __attribute__nonnull__(2); | |
7918f24d NC |
5537 | #define PERL_ARGS_ASSERT_CL_INIT \ |
5538 | assert(pRExC_state); assert(cl) | |
a28509cc | 5539 | |
4048f010 | 5540 | STATIC void S_cl_init_zero(const struct RExC_state_t *pRExC_state, struct regnode_charclass_class *cl) |
44af46ee RGS |
5541 | __attribute__nonnull__(1) |
5542 | __attribute__nonnull__(2); | |
7918f24d NC |
5543 | #define PERL_ARGS_ASSERT_CL_INIT_ZERO \ |
5544 | assert(pRExC_state); assert(cl) | |
a28509cc | 5545 | |
44af46ee RGS |
5546 | STATIC void S_cl_and(struct regnode_charclass_class *cl, const struct regnode_charclass_class *and_with) |
5547 | __attribute__nonnull__(1) | |
5548 | __attribute__nonnull__(2); | |
7918f24d NC |
5549 | #define PERL_ARGS_ASSERT_CL_AND \ |
5550 | assert(cl); assert(and_with) | |
a28509cc | 5551 | |
4048f010 | 5552 | STATIC void S_cl_or(const struct RExC_state_t *pRExC_state, struct regnode_charclass_class *cl, const struct regnode_charclass_class *or_with) |
44af46ee RGS |
5553 | __attribute__nonnull__(1) |
5554 | __attribute__nonnull__(2) | |
5555 | __attribute__nonnull__(3); | |
7918f24d NC |
5556 | #define PERL_ARGS_ASSERT_CL_OR \ |
5557 | assert(pRExC_state); assert(cl); assert(or_with) | |
a28509cc | 5558 | |
4048f010 | 5559 | STATIC I32 S_study_chunk(pTHX_ struct RExC_state_t *pRExC_state, regnode **scanp, I32 *minlenp, I32 *deltap, regnode *last, struct scan_data_t *data, I32 stopparen, U8* recursed, struct regnode_charclass_class *and_withp, U32 flags, U32 depth) |
aec46f14 AL |
5560 | __attribute__nonnull__(pTHX_1) |
5561 | __attribute__nonnull__(pTHX_2) | |
5562 | __attribute__nonnull__(pTHX_3) | |
1de06328 YO |
5563 | __attribute__nonnull__(pTHX_4) |
5564 | __attribute__nonnull__(pTHX_5); | |
7918f24d NC |
5565 | #define PERL_ARGS_ASSERT_STUDY_CHUNK \ |
5566 | assert(pRExC_state); assert(scanp); assert(minlenp); assert(deltap); assert(last) | |
aec46f14 | 5567 | |
4048f010 | 5568 | STATIC U32 S_add_data(struct RExC_state_t *pRExC_state, U32 n, const char *s) |
44af46ee RGS |
5569 | __attribute__warn_unused_result__ |
5570 | __attribute__nonnull__(1) | |
5571 | __attribute__nonnull__(3); | |
7918f24d NC |
5572 | #define PERL_ARGS_ASSERT_ADD_DATA \ |
5573 | assert(pRExC_state); assert(s) | |
aec46f14 | 5574 | |
f54cb97a | 5575 | STATIC void S_re_croak2(pTHX_ const char* pat1, const char* pat2, ...) |
46c461b5 AL |
5576 | __attribute__noreturn__ |
5577 | __attribute__nonnull__(pTHX_1) | |
5578 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5579 | #define PERL_ARGS_ASSERT_RE_CROAK2 \ |
5580 | assert(pat1); assert(pat2) | |
f54cb97a | 5581 | |
4048f010 | 5582 | STATIC I32 S_regpposixcc(pTHX_ struct RExC_state_t *pRExC_state, I32 value) |
aec46f14 | 5583 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5584 | #define PERL_ARGS_ASSERT_REGPPOSIXCC \ |
5585 | assert(pRExC_state) | |
aec46f14 | 5586 | |
4048f010 | 5587 | STATIC void S_checkposixcc(pTHX_ struct RExC_state_t *pRExC_state) |
aec46f14 | 5588 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5589 | #define PERL_ARGS_ASSERT_CHECKPOSIXCC \ |
5590 | assert(pRExC_state) | |
aec46f14 | 5591 | |
4048f010 | 5592 | STATIC I32 S_make_trie(pTHX_ struct RExC_state_t *pRExC_state, regnode *startbranch, regnode *first, regnode *last, regnode *tail, U32 word_count, U32 flags, U32 depth) |
aec46f14 AL |
5593 | __attribute__nonnull__(pTHX_1) |
5594 | __attribute__nonnull__(pTHX_2) | |
5595 | __attribute__nonnull__(pTHX_3) | |
5596 | __attribute__nonnull__(pTHX_4) | |
5597 | __attribute__nonnull__(pTHX_5); | |
7918f24d NC |
5598 | #define PERL_ARGS_ASSERT_MAKE_TRIE \ |
5599 | assert(pRExC_state); assert(startbranch); assert(first); assert(last); assert(tail) | |
a3621e74 | 5600 | |
4048f010 | 5601 | STATIC void S_make_trie_failtable(pTHX_ struct RExC_state_t *pRExC_state, regnode *source, regnode *stclass, U32 depth) |
07be1b83 YO |
5602 | __attribute__nonnull__(pTHX_1) |
5603 | __attribute__nonnull__(pTHX_2) | |
5604 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
5605 | #define PERL_ARGS_ASSERT_MAKE_TRIE_FAILTABLE \ |
5606 | assert(pRExC_state); assert(source); assert(stclass) | |
07be1b83 | 5607 | |
8e11feef | 5608 | # ifdef DEBUGGING |
f7819f85 | 5609 | STATIC void S_regdump_extflags(pTHX_ const char *lead, const U32 flags); |
786e8c11 | 5610 | STATIC const regnode* S_dumpuntil(pTHX_ const regexp *r, const regnode *start, const regnode *node, const regnode *last, const regnode *plast, SV* sv, I32 indent, U32 depth) |
8e11feef RGS |
5611 | __attribute__nonnull__(pTHX_1) |
5612 | __attribute__nonnull__(pTHX_2) | |
5613 | __attribute__nonnull__(pTHX_3) | |
786e8c11 | 5614 | __attribute__nonnull__(pTHX_6); |
7918f24d NC |
5615 | #define PERL_ARGS_ASSERT_DUMPUNTIL \ |
5616 | assert(r); assert(start); assert(node); assert(sv) | |
8e11feef RGS |
5617 | |
5618 | STATIC void S_put_byte(pTHX_ SV* sv, int c) | |
5619 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
5620 | #define PERL_ARGS_ASSERT_PUT_BYTE \ |
5621 | assert(sv) | |
8e11feef | 5622 | |
2b8b4781 NC |
5623 | STATIC void S_dump_trie(pTHX_ const struct _reg_trie_data *trie, HV* widecharmap, AV *revcharmap, U32 depth) |
5624 | __attribute__nonnull__(pTHX_1) | |
5625 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
5626 | #define PERL_ARGS_ASSERT_DUMP_TRIE \ |
5627 | assert(trie); assert(revcharmap) | |
8e11feef | 5628 | |
2b8b4781 NC |
5629 | STATIC void S_dump_trie_interim_list(pTHX_ const struct _reg_trie_data *trie, HV* widecharmap, AV *revcharmap, U32 next_alloc, U32 depth) |
5630 | __attribute__nonnull__(pTHX_1) | |
5631 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
5632 | #define PERL_ARGS_ASSERT_DUMP_TRIE_INTERIM_LIST \ |
5633 | assert(trie); assert(revcharmap) | |
8e11feef | 5634 | |
2b8b4781 NC |
5635 | STATIC void S_dump_trie_interim_table(pTHX_ const struct _reg_trie_data *trie, HV* widecharmap, AV *revcharmap, U32 next_alloc, U32 depth) |
5636 | __attribute__nonnull__(pTHX_1) | |
5637 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
5638 | #define PERL_ARGS_ASSERT_DUMP_TRIE_INTERIM_TABLE \ |
5639 | assert(trie); assert(revcharmap) | |
8e11feef | 5640 | |
4048f010 | 5641 | STATIC U8 S_regtail_study(pTHX_ struct RExC_state_t *pRExC_state, regnode *p, const regnode *val, U32 depth) |
07be1b83 YO |
5642 | __attribute__nonnull__(pTHX_1) |
5643 | __attribute__nonnull__(pTHX_2) | |
5644 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
5645 | #define PERL_ARGS_ASSERT_REGTAIL_STUDY \ |
5646 | assert(pRExC_state); assert(p); assert(val) | |
07be1b83 | 5647 | |
8e11feef | 5648 | # endif |
864dbfa3 | 5649 | #endif |
1d7c1841 | 5650 | |
43869a0c | 5651 | #if defined(PERL_IN_REGEXEC_C) |
24b23f37 | 5652 | STATIC I32 S_regmatch(pTHX_ regmatch_info *reginfo, regnode *prog) |
abb2c242 | 5653 | __attribute__warn_unused_result__ |
4f639d21 DM |
5654 | __attribute__nonnull__(pTHX_1) |
5655 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5656 | #define PERL_ARGS_ASSERT_REGMATCH \ |
5657 | assert(reginfo); assert(prog) | |
a3b680e6 | 5658 | |
e2e6a0f1 | 5659 | STATIC I32 S_regrepeat(pTHX_ const regexp *prog, const regnode *p, I32 max, int depth) |
abb2c242 | 5660 | __attribute__warn_unused_result__ |
32fc9b6a DM |
5661 | __attribute__nonnull__(pTHX_1) |
5662 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5663 | #define PERL_ARGS_ASSERT_REGREPEAT \ |
5664 | assert(prog); assert(p) | |
a3b680e6 | 5665 | |
24b23f37 | 5666 | STATIC I32 S_regtry(pTHX_ regmatch_info *reginfo, char **startpos) |
46c461b5 AL |
5667 | __attribute__warn_unused_result__ |
5668 | __attribute__nonnull__(pTHX_1) | |
5669 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5670 | #define PERL_ARGS_ASSERT_REGTRY \ |
5671 | assert(reginfo); assert(startpos) | |
a3b680e6 | 5672 | |
32fc9b6a | 5673 | STATIC bool S_reginclass(pTHX_ const regexp *prog, const regnode *n, const U8 *p, STRLEN *lenp, bool do_utf8sv_is_utf8) |
abb2c242 | 5674 | __attribute__warn_unused_result__ |
32fc9b6a DM |
5675 | __attribute__nonnull__(pTHX_2) |
5676 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
5677 | #define PERL_ARGS_ASSERT_REGINCLASS \ |
5678 | assert(n); assert(p) | |
a3b680e6 | 5679 | |
cea2e8a9 | 5680 | STATIC CHECKPOINT S_regcppush(pTHX_ I32 parenfloor); |
097eb12c | 5681 | STATIC char* S_regcppop(pTHX_ const regexp *rex) |
46c461b5 | 5682 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5683 | #define PERL_ARGS_ASSERT_REGCPPOP \ |
5684 | assert(rex) | |
46c461b5 | 5685 | |
4048f010 | 5686 | STATIC U8* S_reghop3(U8 *s, I32 off, const U8 *lim) |
aec46f14 | 5687 | __attribute__warn_unused_result__ |
44af46ee RGS |
5688 | __attribute__nonnull__(1) |
5689 | __attribute__nonnull__(3); | |
7918f24d NC |
5690 | #define PERL_ARGS_ASSERT_REGHOP3 \ |
5691 | assert(s); assert(lim) | |
a3b680e6 | 5692 | |
f9f4320a | 5693 | #ifdef XXX_dmq |
4048f010 | 5694 | STATIC U8* S_reghop4(U8 *s, I32 off, const U8 *llim, const U8 *rlim) |
1de06328 YO |
5695 | __attribute__warn_unused_result__ |
5696 | __attribute__nonnull__(1) | |
5697 | __attribute__nonnull__(3) | |
5698 | __attribute__nonnull__(4); | |
7918f24d NC |
5699 | #define PERL_ARGS_ASSERT_REGHOP4 \ |
5700 | assert(s); assert(llim); assert(rlim) | |
1de06328 | 5701 | |
f9f4320a | 5702 | #endif |
4048f010 | 5703 | STATIC U8* S_reghopmaybe3(U8 *s, I32 off, const U8 *lim) |
abb2c242 | 5704 | __attribute__warn_unused_result__ |
44af46ee RGS |
5705 | __attribute__nonnull__(1) |
5706 | __attribute__nonnull__(3); | |
7918f24d NC |
5707 | #define PERL_ARGS_ASSERT_REGHOPMAYBE3 \ |
5708 | assert(s); assert(lim) | |
a3b680e6 | 5709 | |
24b23f37 | 5710 | STATIC char* S_find_byclass(pTHX_ regexp * prog, const regnode *c, char *s, const char *strend, regmatch_info *reginfo) |
abb2c242 JH |
5711 | __attribute__warn_unused_result__ |
5712 | __attribute__nonnull__(pTHX_1) | |
5713 | __attribute__nonnull__(pTHX_2) | |
5714 | __attribute__nonnull__(pTHX_3) | |
5715 | __attribute__nonnull__(pTHX_4); | |
7918f24d NC |
5716 | #define PERL_ARGS_ASSERT_FIND_BYCLASS \ |
5717 | assert(prog); assert(c); assert(s); assert(strend) | |
a3b680e6 AL |
5718 | |
5719 | STATIC void S_to_utf8_substr(pTHX_ regexp * prog) | |
abb2c242 | 5720 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5721 | #define PERL_ARGS_ASSERT_TO_UTF8_SUBSTR \ |
5722 | assert(prog) | |
a3b680e6 AL |
5723 | |
5724 | STATIC void S_to_byte_substr(pTHX_ regexp * prog) | |
abb2c242 | 5725 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5726 | #define PERL_ARGS_ASSERT_TO_BYTE_SUBSTR \ |
5727 | assert(prog) | |
a3b680e6 | 5728 | |
4048f010 | 5729 | STATIC I32 S_reg_check_named_buff_matched(pTHX_ const regexp *rex, const regnode *scan) |
0a4db386 YO |
5730 | __attribute__warn_unused_result__ |
5731 | __attribute__nonnull__(pTHX_1) | |
5732 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5733 | #define PERL_ARGS_ASSERT_REG_CHECK_NAMED_BUFF_MATCHED \ |
5734 | assert(rex); assert(scan) | |
0a4db386 | 5735 | |
07be1b83 | 5736 | # ifdef DEBUGGING |
786e8c11 | 5737 | STATIC void S_dump_exec_pos(pTHX_ const char *locinput, const regnode *scan, const char *loc_regeol, const char *loc_bostr, const char *loc_reg_starttry, const bool do_utf8) |
07be1b83 | 5738 | __attribute__nonnull__(pTHX_1) |
786e8c11 YO |
5739 | __attribute__nonnull__(pTHX_2) |
5740 | __attribute__nonnull__(pTHX_3) | |
5741 | __attribute__nonnull__(pTHX_4) | |
5742 | __attribute__nonnull__(pTHX_5); | |
7918f24d NC |
5743 | #define PERL_ARGS_ASSERT_DUMP_EXEC_POS \ |
5744 | assert(locinput); assert(scan); assert(loc_regeol); assert(loc_bostr); assert(loc_reg_starttry) | |
07be1b83 | 5745 | |
efd26800 | 5746 | STATIC void S_debug_start_match(pTHX_ const REGEXP *prog, const bool do_utf8, const char *start, const char *end, const char *blurb) |
5a2bdfd0 DM |
5747 | __attribute__nonnull__(pTHX_1) |
5748 | __attribute__nonnull__(pTHX_3) | |
5749 | __attribute__nonnull__(pTHX_4) | |
5750 | __attribute__nonnull__(pTHX_5); | |
7918f24d NC |
5751 | #define PERL_ARGS_ASSERT_DEBUG_START_MATCH \ |
5752 | assert(prog); assert(start); assert(end); assert(blurb) | |
5a2bdfd0 | 5753 | |
07be1b83 | 5754 | # endif |
864dbfa3 | 5755 | #endif |
1d7c1841 | 5756 | |
43869a0c | 5757 | #if defined(PERL_IN_DUMP_C) |
2cedf74c | 5758 | STATIC CV* S_deb_curcv(pTHX_ const I32 ix); |
46c461b5 AL |
5759 | STATIC void S_debprof(pTHX_ const OP *o) |
5760 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
5761 | #define PERL_ARGS_ASSERT_DEBPROF \ |
5762 | assert(o) | |
46c461b5 | 5763 | |
0bd48802 | 5764 | STATIC void S_sequence(pTHX_ const OP *o); |
294b3b39 | 5765 | STATIC void S_sequence_tail(pTHX_ const OP *o); |
0bd48802 | 5766 | STATIC UV S_sequence_num(pTHX_ const OP *o); |
4199688e AL |
5767 | STATIC SV* S_pm_description(pTHX_ const PMOP *pm) |
5768 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
5769 | #define PERL_ARGS_ASSERT_PM_DESCRIPTION \ |
5770 | assert(pm) | |
4199688e | 5771 | |
864dbfa3 | 5772 | #endif |
1d7c1841 | 5773 | |
43869a0c | 5774 | #if defined(PERL_IN_SCOPE_C) |
af7df257 | 5775 | STATIC SV* S_save_scalar_at(pTHX_ SV **sptr, const U32 flags) |
46c461b5 | 5776 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5777 | #define PERL_ARGS_ASSERT_SAVE_SCALAR_AT \ |
5778 | assert(sptr) | |
46c461b5 | 5779 | |
864dbfa3 | 5780 | #endif |
1d7c1841 | 5781 | |
4c74a7df | 5782 | #if defined(PERL_IN_GV_C) || defined(PERL_IN_SV_C) || defined(PERL_IN_PAD_C) || defined(PERL_IN_OP_C) |
2b021c53 | 5783 | PERL_CALLCONV void Perl_sv_add_backref(pTHX_ SV *const tsv, SV *const sv) |
e15faf7d NC |
5784 | __attribute__nonnull__(pTHX_1) |
5785 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5786 | #define PERL_ARGS_ASSERT_SV_ADD_BACKREF \ |
5787 | assert(tsv); assert(sv) | |
e15faf7d NC |
5788 | |
5789 | #endif | |
5790 | ||
43869a0c | 5791 | #if defined(PERL_IN_HV_C) || defined(PERL_IN_MG_C) || defined(PERL_IN_SV_C) |
5648c0ae DM |
5792 | PERL_CALLCONV void Perl_sv_kill_backrefs(pTHX_ SV *const sv, AV *const av) |
5793 | __attribute__nonnull__(pTHX_1); | |
7918f24d | 5794 | #define PERL_ARGS_ASSERT_SV_KILL_BACKREFS \ |
5648c0ae | 5795 | assert(sv) |
86f55936 NC |
5796 | |
5797 | #endif | |
5798 | ||
4c74a7df DM |
5799 | PERL_CALLCONV void Perl_sv_del_backref(pTHX_ SV *const tsv, SV *const sv) |
5800 | __attribute__nonnull__(pTHX_1) | |
5801 | __attribute__nonnull__(pTHX_2); | |
5802 | #define PERL_ARGS_ASSERT_SV_DEL_BACKREF \ | |
5803 | assert(tsv); assert(sv) | |
5804 | ||
43869a0c | 5805 | #if defined(PERL_IN_SV_C) |
5de3775c | 5806 | STATIC char * S_uiv_2buf(char *const buf, const IV iv, UV uv, const int is_uv, char **const peob) |
aec46f14 AL |
5807 | __attribute__warn_unused_result__ |
5808 | __attribute__nonnull__(1) | |
5809 | __attribute__nonnull__(5); | |
7918f24d NC |
5810 | #define PERL_ARGS_ASSERT_UIV_2BUF \ |
5811 | assert(buf); assert(peob) | |
aec46f14 | 5812 | |
89e38212 | 5813 | STATIC void S_sv_unglob(pTHX_ SV *const sv) |
1b6737cc | 5814 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5815 | #define PERL_ARGS_ASSERT_SV_UNGLOB \ |
5816 | assert(sv) | |
1b6737cc | 5817 | |
aad570aa | 5818 | STATIC void S_not_a_number(pTHX_ SV *const sv) |
1b6737cc | 5819 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5820 | #define PERL_ARGS_ASSERT_NOT_A_NUMBER \ |
5821 | assert(sv) | |
1b6737cc | 5822 | |
de37a194 | 5823 | STATIC I32 S_visit(pTHX_ SVFUNC_t f, const U32 flags, const U32 mask) |
1b6737cc | 5824 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5825 | #define PERL_ARGS_ASSERT_VISIT \ |
5826 | assert(f) | |
1b6737cc | 5827 | |
6c1b357c | 5828 | STATIC SV * S_varname(pTHX_ const GV *const gv, const char gvtype, PADOFFSET targ, const SV *const keyname, I32 aindex, int subscript_type) |
be2ef075 | 5829 | __attribute__warn_unused_result__; |
a3b680e6 | 5830 | |
8fa7f367 | 5831 | # ifdef DEBUGGING |
46c461b5 AL |
5832 | STATIC void S_del_sv(pTHX_ SV *p) |
5833 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
5834 | #define PERL_ARGS_ASSERT_DEL_SV \ |
5835 | assert(p) | |
46c461b5 | 5836 | |
cea2e8a9 | 5837 | # endif |
28e5dec8 | 5838 | # if !defined(NV_PRESERVES_UV) |
47031da6 | 5839 | # ifdef DEBUGGING |
5de3775c | 5840 | STATIC int S_sv_2iuv_non_preserve(pTHX_ SV *const sv, I32 numtype) |
46c461b5 | 5841 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5842 | #define PERL_ARGS_ASSERT_SV_2IUV_NON_PRESERVE \ |
5843 | assert(sv) | |
46c461b5 | 5844 | |
47031da6 | 5845 | # else |
5de3775c | 5846 | STATIC int S_sv_2iuv_non_preserve(pTHX_ SV *const sv) |
47031da6 | 5847 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5848 | #define PERL_ARGS_ASSERT_SV_2IUV_NON_PRESERVE \ |
5849 | assert(sv) | |
47031da6 NC |
5850 | |
5851 | # endif | |
28e5dec8 | 5852 | # endif |
66ceb532 | 5853 | STATIC I32 S_expect_number(pTHX_ char **const pattern) |
abb2c242 JH |
5854 | __attribute__warn_unused_result__ |
5855 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
5856 | #define PERL_ARGS_ASSERT_EXPECT_NUMBER \ |
5857 | assert(pattern) | |
a3b680e6 | 5858 | |
9cbac4c7 | 5859 | # |
79d2d448 | 5860 | STATIC STRLEN S_sv_pos_u2b_forwards(const U8 *const start, const U8 *const send, STRLEN *const uoffset, bool *const at_end) |
721e86b6 | 5861 | __attribute__nonnull__(1) |
3e2d3818 | 5862 | __attribute__nonnull__(2) |
79d2d448 NC |
5863 | __attribute__nonnull__(3) |
5864 | __attribute__nonnull__(4); | |
7918f24d | 5865 | #define PERL_ARGS_ASSERT_SV_POS_U2B_FORWARDS \ |
79d2d448 | 5866 | assert(start); assert(send); assert(uoffset); assert(at_end) |
25a8a4ef | 5867 | |
503752a1 | 5868 | STATIC STRLEN S_sv_pos_u2b_midway(const U8 *const start, const U8 *send, STRLEN uoffset, const STRLEN uend) |
721e86b6 AL |
5869 | __attribute__nonnull__(1) |
5870 | __attribute__nonnull__(2); | |
7918f24d NC |
5871 | #define PERL_ARGS_ASSERT_SV_POS_U2B_MIDWAY \ |
5872 | assert(start); assert(send) | |
25a8a4ef | 5873 | |
3e2d3818 | 5874 | STATIC STRLEN S_sv_pos_u2b_cached(pTHX_ SV *const sv, MAGIC **const mgp, const U8 *const start, const U8 *const send, STRLEN uoffset, STRLEN uoffset0, STRLEN boffset0) |
abb2c242 JH |
5875 | __attribute__nonnull__(pTHX_1) |
5876 | __attribute__nonnull__(pTHX_2) | |
5877 | __attribute__nonnull__(pTHX_3) | |
25a8a4ef | 5878 | __attribute__nonnull__(pTHX_4); |
7918f24d NC |
5879 | #define PERL_ARGS_ASSERT_SV_POS_U2B_CACHED \ |
5880 | assert(sv); assert(mgp); assert(start); assert(send) | |
a3b680e6 | 5881 | |
ec49a12c NC |
5882 | STATIC void S_utf8_mg_len_cache_update(pTHX_ SV *const sv, MAGIC **const mgp, const STRLEN ulen) |
5883 | __attribute__nonnull__(pTHX_1) | |
5884 | __attribute__nonnull__(pTHX_2); | |
5885 | #define PERL_ARGS_ASSERT_UTF8_MG_LEN_CACHE_UPDATE \ | |
5886 | assert(sv); assert(mgp) | |
5887 | ||
ac1e9476 | 5888 | STATIC void S_utf8_mg_pos_cache_update(pTHX_ SV *const sv, MAGIC **const mgp, const STRLEN byte, const STRLEN utf8, const STRLEN blen) |
25a8a4ef NC |
5889 | __attribute__nonnull__(pTHX_1) |
5890 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5891 | #define PERL_ARGS_ASSERT_UTF8_MG_POS_CACHE_UPDATE \ |
5892 | assert(sv); assert(mgp) | |
25a8a4ef | 5893 | |
ac1e9476 | 5894 | STATIC STRLEN S_sv_pos_b2u_midway(pTHX_ const U8 *const s, const U8 *const target, const U8 *end, STRLEN endu) |
abb2c242 JH |
5895 | __attribute__nonnull__(pTHX_1) |
5896 | __attribute__nonnull__(pTHX_2) | |
25a8a4ef | 5897 | __attribute__nonnull__(pTHX_3); |
7918f24d NC |
5898 | #define PERL_ARGS_ASSERT_SV_POS_B2U_MIDWAY \ |
5899 | assert(s); assert(target); assert(end) | |
a3b680e6 | 5900 | |
9df83ffd NC |
5901 | STATIC void S_assert_uft8_cache_coherent(pTHX_ const char *const func, STRLEN from_cache, STRLEN real, SV *const sv) |
5902 | __attribute__nonnull__(pTHX_1) | |
5903 | __attribute__nonnull__(pTHX_4); | |
5904 | #define PERL_ARGS_ASSERT_ASSERT_UFT8_CACHE_COHERENT \ | |
5905 | assert(func); assert(sv) | |
5906 | ||
66ceb532 | 5907 | STATIC char * S_F0convert(NV nv, char *const endbuf, STRLEN *const len) |
c445ea15 AL |
5908 | __attribute__nonnull__(2) |
5909 | __attribute__nonnull__(3); | |
7918f24d NC |
5910 | #define PERL_ARGS_ASSERT_F0CONVERT \ |
5911 | assert(endbuf); assert(len) | |
c445ea15 | 5912 | |
44af46ee | 5913 | # if defined(PERL_OLD_COPY_ON_WRITE) |
5302ffd4 | 5914 | STATIC void S_sv_release_COW(pTHX_ SV *sv, const char *pvx, SV *after) |
aec46f14 AL |
5915 | __attribute__nonnull__(pTHX_1) |
5916 | __attribute__nonnull__(pTHX_2) | |
5302ffd4 | 5917 | __attribute__nonnull__(pTHX_3); |
7918f24d NC |
5918 | #define PERL_ARGS_ASSERT_SV_RELEASE_COW \ |
5919 | assert(sv); assert(pvx); assert(after) | |
aec46f14 | 5920 | |
44af46ee RGS |
5921 | # endif |
5922 | STATIC SV * S_more_sv(pTHX); | |
5de3775c | 5923 | STATIC bool S_sv_2iuv_common(pTHX_ SV *const sv) |
44af46ee | 5924 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5925 | #define PERL_ARGS_ASSERT_SV_2IUV_COMMON \ |
5926 | assert(sv) | |
44af46ee | 5927 | |
7bc54cea | 5928 | STATIC void S_glob_assign_glob(pTHX_ SV *const dstr, SV *const sstr, const int dtype) |
44af46ee RGS |
5929 | __attribute__nonnull__(pTHX_1) |
5930 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5931 | #define PERL_ARGS_ASSERT_GLOB_ASSIGN_GLOB \ |
5932 | assert(dstr); assert(sstr) | |
44af46ee | 5933 | |
7bc54cea | 5934 | STATIC void S_glob_assign_ref(pTHX_ SV *const dstr, SV *const sstr) |
44af46ee RGS |
5935 | __attribute__nonnull__(pTHX_1) |
5936 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
5937 | #define PERL_ARGS_ASSERT_GLOB_ASSIGN_REF \ |
5938 | assert(dstr); assert(sstr) | |
44af46ee | 5939 | |
1eb6e4ca | 5940 | STATIC PTR_TBL_ENT_t * S_ptr_table_find(PTR_TBL_t *const tbl, const void *const sv) |
44af46ee | 5941 | __attribute__warn_unused_result__ |
cf684db6 | 5942 | __attribute__nonnull__(1); |
7918f24d NC |
5943 | #define PERL_ARGS_ASSERT_PTR_TABLE_FIND \ |
5944 | assert(tbl) | |
44af46ee | 5945 | |
803f2748 DM |
5946 | STATIC void S_anonymise_cv_maybe(pTHX_ GV *gv, CV *cv) |
5947 | __attribute__nonnull__(pTHX_1) | |
5948 | __attribute__nonnull__(pTHX_2); | |
5949 | #define PERL_ARGS_ASSERT_ANONYMISE_CV_MAYBE \ | |
5950 | assert(gv); assert(cv) | |
5951 | ||
cea2e8a9 | 5952 | #endif |
1d7c1841 | 5953 | |
ecf9cdab NC |
5954 | PERL_CALLCONV void * Perl_more_bodies(pTHX_ const svtype sv_type, const size_t body_size, const size_t arena_size); |
5955 | ||
43869a0c | 5956 | #if defined(PERL_IN_TOKE_C) |
cea2e8a9 GS |
5957 | STATIC void S_check_uni(pTHX); |
5958 | STATIC void S_force_next(pTHX_ I32 type); | |
4048f010 | 5959 | STATIC char* S_force_version(pTHX_ char *s, int guessing) |
46c461b5 | 5960 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5961 | #define PERL_ARGS_ASSERT_FORCE_VERSION \ |
5962 | assert(s) | |
46c461b5 | 5963 | |
91152fc1 DG |
5964 | STATIC char* S_force_strict_version(pTHX_ char *s) |
5965 | __attribute__nonnull__(pTHX_1); | |
5966 | #define PERL_ARGS_ASSERT_FORCE_STRICT_VERSION \ | |
5967 | assert(s) | |
5968 | ||
46c461b5 AL |
5969 | STATIC char* S_force_word(pTHX_ char *start, int token, int check_keyword, int allow_pack, int allow_tick) |
5970 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
5971 | #define PERL_ARGS_ASSERT_FORCE_WORD \ |
5972 | assert(start) | |
46c461b5 AL |
5973 | |
5974 | STATIC SV* S_tokeq(pTHX_ SV *sv) | |
5975 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
5976 | #define PERL_ARGS_ASSERT_TOKEQ \ |
5977 | assert(sv) | |
46c461b5 | 5978 | |
1d51329b | 5979 | STATIC void S_readpipe_override(pTHX); |
f54cb97a | 5980 | STATIC char* S_scan_const(pTHX_ char *start) |
46c461b5 | 5981 | __attribute__warn_unused_result__ |
abb2c242 | 5982 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5983 | #define PERL_ARGS_ASSERT_SCAN_CONST \ |
5984 | assert(start) | |
f54cb97a AL |
5985 | |
5986 | STATIC char* S_scan_formline(pTHX_ char *s) | |
46c461b5 | 5987 | __attribute__warn_unused_result__ |
abb2c242 | 5988 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5989 | #define PERL_ARGS_ASSERT_SCAN_FORMLINE \ |
5990 | assert(s) | |
f54cb97a AL |
5991 | |
5992 | STATIC char* S_scan_heredoc(pTHX_ char *s) | |
46c461b5 | 5993 | __attribute__warn_unused_result__ |
abb2c242 | 5994 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
5995 | #define PERL_ARGS_ASSERT_SCAN_HEREDOC \ |
5996 | assert(s) | |
f54cb97a AL |
5997 | |
5998 | STATIC char* S_scan_ident(pTHX_ char *s, const char *send, char *dest, STRLEN destlen, I32 ck_uni) | |
abb2c242 JH |
5999 | __attribute__nonnull__(pTHX_1) |
6000 | __attribute__nonnull__(pTHX_2) | |
6001 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
6002 | #define PERL_ARGS_ASSERT_SCAN_IDENT \ |
6003 | assert(s); assert(send); assert(dest) | |
f54cb97a | 6004 | |
46c461b5 AL |
6005 | STATIC char* S_scan_inputsymbol(pTHX_ char *start) |
6006 | __attribute__warn_unused_result__ | |
6007 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6008 | #define PERL_ARGS_ASSERT_SCAN_INPUTSYMBOL \ |
6009 | assert(start) | |
46c461b5 AL |
6010 | |
6011 | STATIC char* S_scan_pat(pTHX_ char *start, I32 type) | |
6012 | __attribute__warn_unused_result__ | |
6013 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6014 | #define PERL_ARGS_ASSERT_SCAN_PAT \ |
6015 | assert(start) | |
46c461b5 AL |
6016 | |
6017 | STATIC char* S_scan_str(pTHX_ char *start, int keep_quoted, int keep_delims) | |
6018 | __attribute__warn_unused_result__ | |
6019 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6020 | #define PERL_ARGS_ASSERT_SCAN_STR \ |
6021 | assert(start) | |
46c461b5 AL |
6022 | |
6023 | STATIC char* S_scan_subst(pTHX_ char *start) | |
6024 | __attribute__warn_unused_result__ | |
6025 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6026 | #define PERL_ARGS_ASSERT_SCAN_SUBST \ |
6027 | assert(start) | |
46c461b5 AL |
6028 | |
6029 | STATIC char* S_scan_trans(pTHX_ char *start) | |
6030 | __attribute__warn_unused_result__ | |
6031 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6032 | #define PERL_ARGS_ASSERT_SCAN_TRANS \ |
6033 | assert(start) | |
46c461b5 AL |
6034 | |
6035 | STATIC char* S_scan_word(pTHX_ char *s, char *dest, STRLEN destlen, int allow_package, STRLEN *slp) | |
6036 | __attribute__nonnull__(pTHX_1) | |
6037 | __attribute__nonnull__(pTHX_2) | |
6038 | __attribute__nonnull__(pTHX_5); | |
7918f24d NC |
6039 | #define PERL_ARGS_ASSERT_SCAN_WORD \ |
6040 | assert(s); assert(dest); assert(slp) | |
46c461b5 | 6041 | |
15f169a1 | 6042 | STATIC void S_update_debugger_info(pTHX_ SV *orig_sv, const char *const buf, STRLEN len); |
46c461b5 AL |
6043 | STATIC char* S_skipspace(pTHX_ char *s) |
6044 | __attribute__warn_unused_result__ | |
6045 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6046 | #define PERL_ARGS_ASSERT_SKIPSPACE \ |
6047 | assert(s) | |
46c461b5 AL |
6048 | |
6049 | STATIC char* S_swallow_bom(pTHX_ U8 *s) | |
6050 | __attribute__warn_unused_result__ | |
6051 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6052 | #define PERL_ARGS_ASSERT_SWALLOW_BOM \ |
6053 | assert(s) | |
46c461b5 | 6054 | |
a28af015 NC |
6055 | #ifndef PERL_NO_UTF16_FILTER |
6056 | STATIC I32 S_utf16_textfilter(pTHX_ int idx, SV *sv, int maxlen) | |
6057 | __attribute__nonnull__(pTHX_2); | |
6058 | #define PERL_ARGS_ASSERT_UTF16_TEXTFILTER \ | |
6059 | assert(sv) | |
6060 | ||
81a923f4 NC |
6061 | STATIC U8* S_add_utf16_textfilter(pTHX_ U8 *const s, bool reversed) |
6062 | __attribute__nonnull__(pTHX_1); | |
6063 | #define PERL_ARGS_ASSERT_ADD_UTF16_TEXTFILTER \ | |
6064 | assert(s) | |
6065 | ||
a28af015 | 6066 | #endif |
c94115d8 | 6067 | STATIC void S_checkcomma(pTHX_ const char *s, const char *name, const char *what) |
abb2c242 JH |
6068 | __attribute__nonnull__(pTHX_1) |
6069 | __attribute__nonnull__(pTHX_2) | |
6070 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
6071 | #define PERL_ARGS_ASSERT_CHECKCOMMA \ |
6072 | assert(s); assert(name); assert(what) | |
f54cb97a | 6073 | |
15f169a1 | 6074 | STATIC bool S_feature_is_enabled(pTHX_ const char *const name, STRLEN namelen) |
0d863452 | 6075 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
6076 | #define PERL_ARGS_ASSERT_FEATURE_IS_ENABLED \ |
6077 | assert(name) | |
0d863452 | 6078 | |
46c461b5 AL |
6079 | STATIC void S_force_ident(pTHX_ const char *s, int kind) |
6080 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6081 | #define PERL_ARGS_ASSERT_FORCE_IDENT \ |
6082 | assert(s) | |
46c461b5 | 6083 | |
d9095cec | 6084 | STATIC void S_incline(pTHX_ const char *s) |
46c461b5 | 6085 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
6086 | #define PERL_ARGS_ASSERT_INCLINE \ |
6087 | assert(s) | |
46c461b5 | 6088 | |
62d55b22 | 6089 | STATIC int S_intuit_method(pTHX_ char *s, GV *gv, CV *cv) |
6472dca1 | 6090 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
6091 | #define PERL_ARGS_ASSERT_INTUIT_METHOD \ |
6092 | assert(s) | |
46c461b5 AL |
6093 | |
6094 | STATIC int S_intuit_more(pTHX_ char *s) | |
6095 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6096 | #define PERL_ARGS_ASSERT_INTUIT_MORE \ |
6097 | assert(s) | |
46c461b5 AL |
6098 | |
6099 | STATIC I32 S_lop(pTHX_ I32 f, int x, char *s) | |
6100 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
6101 | #define PERL_ARGS_ASSERT_LOP \ |
6102 | assert(s) | |
46c461b5 | 6103 | |
f54cb97a | 6104 | STATIC void S_missingterm(pTHX_ char *s) |
abb2c242 | 6105 | __attribute__noreturn__; |
f54cb97a | 6106 | |
15f169a1 | 6107 | STATIC void S_no_op(pTHX_ const char *const what, char *s) |
46c461b5 | 6108 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
6109 | #define PERL_ARGS_ASSERT_NO_OP \ |
6110 | assert(what) | |
46c461b5 | 6111 | |
46c461b5 AL |
6112 | STATIC I32 S_sublex_done(pTHX) |
6113 | __attribute__warn_unused_result__; | |
6114 | ||
6115 | STATIC I32 S_sublex_push(pTHX) | |
6116 | __attribute__warn_unused_result__; | |
6117 | ||
6118 | STATIC I32 S_sublex_start(pTHX) | |
6119 | __attribute__warn_unused_result__; | |
6120 | ||
5cc814fd | 6121 | STATIC char * S_filter_gets(pTHX_ SV *sv, STRLEN append) |
255164ba | 6122 | __attribute__warn_unused_result__ |
5cc814fd | 6123 | __attribute__nonnull__(pTHX_1); |
7918f24d | 6124 | #define PERL_ARGS_ASSERT_FILTER_GETS \ |
5cc814fd | 6125 | assert(sv) |
255164ba | 6126 | |
9bde8eb0 | 6127 | STATIC HV * S_find_in_my_stash(pTHX_ const char *pkgname, STRLEN len) |
255164ba DM |
6128 | __attribute__warn_unused_result__ |
6129 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6130 | #define PERL_ARGS_ASSERT_FIND_IN_MY_STASH \ |
6131 | assert(pkgname) | |
255164ba | 6132 | |
c48640ec | 6133 | STATIC char * S_tokenize_use(pTHX_ int is_use, char *s) |
468aa647 RGS |
6134 | __attribute__warn_unused_result__ |
6135 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
6136 | #define PERL_ARGS_ASSERT_TOKENIZE_USE \ |
6137 | assert(s) | |
468aa647 | 6138 | |
eb0d8d16 | 6139 | STATIC SV* S_new_constant(pTHX_ const char *s, STRLEN len, const char *key, STRLEN keylen, SV *sv, SV *pv, const char *type, STRLEN typelen) |
aec46f14 | 6140 | __attribute__nonnull__(pTHX_3) |
eb0d8d16 | 6141 | __attribute__nonnull__(pTHX_5); |
7918f24d NC |
6142 | #define PERL_ARGS_ASSERT_NEW_CONSTANT \ |
6143 | assert(key); assert(sv) | |
aec46f14 | 6144 | |
8290c323 | 6145 | STATIC int S_deprecate_commaless_var_list(pTHX); |
cea2e8a9 | 6146 | STATIC int S_ao(pTHX_ int toketype); |
c39cd008 GS |
6147 | # if defined(PERL_CR_FILTER) |
6148 | STATIC I32 S_cr_textfilter(pTHX_ int idx, SV *sv, int maxlen); | |
0bd48802 AL |
6149 | STATIC void S_strip_return(pTHX_ SV *sv) |
6150 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6151 | #define PERL_ARGS_ASSERT_STRIP_RETURN \ |
6152 | assert(sv) | |
0bd48802 | 6153 | |
cea2e8a9 | 6154 | # endif |
c445ea15 | 6155 | # if defined(DEBUGGING) |
704d4215 GG |
6156 | STATIC int S_tokereport(pTHX_ I32 rv, const YYSTYPE* lvalp) |
6157 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
6158 | #define PERL_ARGS_ASSERT_TOKEREPORT \ |
6159 | assert(lvalp) | |
704d4215 | 6160 | |
83f99444 | 6161 | STATIC void S_printbuf(pTHX_ const char *const fmt, const char *const s) |
931e0695 AL |
6162 | __attribute__nonnull__(pTHX_1) |
6163 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
6164 | #define PERL_ARGS_ASSERT_PRINTBUF \ |
6165 | assert(fmt); assert(s) | |
931e0695 | 6166 | |
c445ea15 | 6167 | # endif |
864dbfa3 | 6168 | #endif |
1d7c1841 | 6169 | |
43869a0c | 6170 | #if defined(PERL_IN_UNIVERSAL_C) |
515a4f72 | 6171 | STATIC bool S_isa_lookup(pTHX_ HV *stash, const char * const name) |
d43aa7f9 | 6172 | __attribute__nonnull__(pTHX_1) |
46c461b5 | 6173 | __attribute__nonnull__(pTHX_2); |
7918f24d | 6174 | #define PERL_ARGS_ASSERT_ISA_LOOKUP \ |
d43aa7f9 | 6175 | assert(stash); assert(name) |
46c461b5 | 6176 | |
4ba0c762 NC |
6177 | STATIC HV * S_get_isa_hash(pTHX_ HV *const stash) |
6178 | __attribute__nonnull__(pTHX_1); | |
6179 | #define PERL_ARGS_ASSERT_GET_ISA_HASH \ | |
6180 | assert(stash) | |
6181 | ||
864dbfa3 | 6182 | #endif |
1d7c1841 | 6183 | |
43869a0c | 6184 | #if defined(PERL_IN_LOCALE_C) |
27da23d5 | 6185 | #if defined(USE_LOCALE_NUMERIC) || defined(USE_LOCALE_COLLATE) |
8772537c AL |
6186 | STATIC char* S_stdize_locale(pTHX_ char* locs) |
6187 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6188 | #define PERL_ARGS_ASSERT_STDIZE_LOCALE \ |
6189 | assert(locs) | |
8772537c | 6190 | |
2d31dd6a | 6191 | #endif |
27da23d5 | 6192 | #endif |
2d31dd6a | 6193 | |
43869a0c | 6194 | #if defined(PERL_IN_UTIL_C) |
44af46ee | 6195 | STATIC const COP* S_closest_cop(pTHX_ const COP *cop, const OP *o) |
8772537c | 6196 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
6197 | #define PERL_ARGS_ASSERT_CLOSEST_COP \ |
6198 | assert(cop) | |
8772537c | 6199 | |
cea2e8a9 | 6200 | STATIC SV* S_mess_alloc(pTHX); |
c5df3096 Z |
6201 | STATIC SV * S_with_queued_errors(pTHX_ SV *ex) |
6202 | __attribute__nonnull__(pTHX_1); | |
6203 | #define PERL_ARGS_ASSERT_WITH_QUEUED_ERRORS \ | |
6204 | assert(ex) | |
6205 | ||
6206 | STATIC bool S_invoke_exception_hook(pTHX_ SV *ex, bool warn); | |
0bd48802 AL |
6207 | STATIC char * S_write_no_mem(pTHX) |
6208 | __attribute__noreturn__; | |
6209 | ||
fd5aa6c3 | 6210 | #if defined(PERL_MEM_LOG) && !defined(PERL_MEM_LOG_NOIMPL) |
bef8a128 | 6211 | STATIC void S_mem_log_common(enum mem_log_type mlt, const UV n, const UV typesize, const char *type_name, const SV *sv, Malloc_t oldalloc, Malloc_t newalloc, const char *filename, const int linenumber, const char *funcname) |
56b5603e MHM |
6212 | __attribute__nonnull__(4) |
6213 | __attribute__nonnull__(8) | |
6214 | __attribute__nonnull__(10); | |
6215 | #define PERL_ARGS_ASSERT_MEM_LOG_COMMON \ | |
bef8a128 | 6216 | assert(type_name); assert(filename); assert(funcname) |
56b5603e MHM |
6217 | |
6218 | #endif | |
864dbfa3 | 6219 | #endif |
1d7c1841 | 6220 | |
43869a0c | 6221 | #if defined(PERL_IN_NUMERIC_C) |
4801ca72 JH |
6222 | STATIC NV S_mulexp10(NV value, I32 exponent); |
6223 | #endif | |
6224 | ||
43869a0c | 6225 | #if defined(PERL_IN_UTF8_C) |
44af46ee RGS |
6226 | STATIC STRLEN S_is_utf8_char_slow(const U8 *s, const STRLEN len) |
6227 | __attribute__warn_unused_result__ | |
6228 | __attribute__nonnull__(1); | |
7918f24d NC |
6229 | #define PERL_ARGS_ASSERT_IS_UTF8_CHAR_SLOW \ |
6230 | assert(s) | |
646ca15d | 6231 | |
7452cf6a AL |
6232 | STATIC bool S_is_utf8_common(pTHX_ const U8 *const p, SV **swash, const char * const swashname) |
6233 | __attribute__warn_unused_result__ | |
6234 | __attribute__nonnull__(pTHX_1) | |
6235 | __attribute__nonnull__(pTHX_2) | |
6236 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
6237 | #define PERL_ARGS_ASSERT_IS_UTF8_COMMON \ |
6238 | assert(p); assert(swash); assert(swashname) | |
7452cf6a | 6239 | |
979f2922 TS |
6240 | STATIC SV* S_swash_get(pTHX_ SV* swash, UV start, UV span) |
6241 | __attribute__warn_unused_result__ | |
6242 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6243 | #define PERL_ARGS_ASSERT_SWASH_GET \ |
6244 | assert(swash) | |
979f2922 | 6245 | |
646ca15d JH |
6246 | #endif |
6247 | ||
902f5b58 JH |
6248 | START_EXTERN_C |
6249 | ||
7bc54cea | 6250 | PERL_CALLCONV void Perl_sv_setsv_flags(pTHX_ SV *dstr, SV *sstr, const I32 flags) |
abb2c242 | 6251 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
6252 | #define PERL_ARGS_ASSERT_SV_SETSV_FLAGS \ |
6253 | assert(dstr) | |
f54cb97a | 6254 | |
2e000ff2 | 6255 | PERL_CALLCONV void Perl_sv_catpvn_flags(pTHX_ SV *const dstr, const char *sstr, const STRLEN len, const I32 flags) |
abb2c242 JH |
6256 | __attribute__nonnull__(pTHX_1) |
6257 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
6258 | #define PERL_ARGS_ASSERT_SV_CATPVN_FLAGS \ |
6259 | assert(dstr); assert(sstr) | |
f54cb97a | 6260 | |
2e000ff2 | 6261 | PERL_CALLCONV void Perl_sv_catsv_flags(pTHX_ SV *const dsv, SV *const ssv, const I32 flags) |
abb2c242 | 6262 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
6263 | #define PERL_ARGS_ASSERT_SV_CATSV_FLAGS \ |
6264 | assert(dsv) | |
f54cb97a | 6265 | |
b3ab6785 KW |
6266 | /* PERL_CALLCONV STRLEN Perl_sv_utf8_upgrade_flags(pTHX_ SV *const sv, const I32 flags) |
6267 | __attribute__nonnull__(pTHX_1); */ | |
f54cb97a | 6268 | |
b3ab6785 KW |
6269 | PERL_CALLCONV STRLEN Perl_sv_utf8_upgrade_flags_grow(pTHX_ SV *const sv, const I32 flags, STRLEN extra) |
6270 | __attribute__nonnull__(pTHX_1); | |
6271 | #define PERL_ARGS_ASSERT_SV_UTF8_UPGRADE_FLAGS_GROW \ | |
6272 | assert(sv) | |
6273 | ||
12964ddd | 6274 | PERL_CALLCONV char* Perl_sv_pvn_force_flags(pTHX_ SV *const sv, STRLEN *const lp, const I32 flags) |
46c461b5 | 6275 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
6276 | #define PERL_ARGS_ASSERT_SV_PVN_FORCE_FLAGS \ |
6277 | assert(sv) | |
46c461b5 | 6278 | |
5de3775c | 6279 | PERL_CALLCONV void Perl_sv_copypv(pTHX_ SV *const dsv, SV *const ssv) |
abb2c242 JH |
6280 | __attribute__nonnull__(pTHX_1) |
6281 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
6282 | #define PERL_ARGS_ASSERT_SV_COPYPV \ |
6283 | assert(dsv); assert(ssv) | |
f54cb97a | 6284 | |
4373e329 | 6285 | PERL_CALLCONV char* Perl_my_atof2(pTHX_ const char *s, NV* value) |
abb2c242 JH |
6286 | __attribute__nonnull__(pTHX_1) |
6287 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
6288 | #define PERL_ARGS_ASSERT_MY_ATOF2 \ |
6289 | assert(s); assert(value) | |
f54cb97a | 6290 | |
706e3e0f | 6291 | PERL_CALLCONV int Perl_my_socketpair(int family, int type, int protocol, int fd[2]); |
08ea85eb | 6292 | PERL_CALLCONV int Perl_my_dirfd(pTHX_ DIR* dir); |
f8c7b90f | 6293 | #ifdef PERL_OLD_COPY_ON_WRITE |
bcfe2509 | 6294 | PERL_CALLCONV SV* Perl_sv_setsv_cow(pTHX_ SV* dstr, SV* sstr) |
46c461b5 | 6295 | __attribute__nonnull__(pTHX_2); |
7918f24d | 6296 | #define PERL_ARGS_ASSERT_SV_SETSV_COW \ |
7536ed57 | 6297 | assert(sstr) |
46c461b5 | 6298 | |
ed252734 | 6299 | #endif |
902f5b58 | 6300 | |
11bcd5da NC |
6301 | PERL_CALLCONV const char * Perl_PerlIO_context_layers(pTHX_ const char *mode); |
6302 | ||
e87a358a | 6303 | #if defined(USE_PERLIO) && !defined(USE_SFIO) |
66a1b24b AL |
6304 | PERL_CALLCONV int Perl_PerlIO_close(pTHX_ PerlIO *f); |
6305 | PERL_CALLCONV int Perl_PerlIO_fill(pTHX_ PerlIO *f); | |
6306 | PERL_CALLCONV int Perl_PerlIO_fileno(pTHX_ PerlIO *f); | |
6307 | PERL_CALLCONV int Perl_PerlIO_eof(pTHX_ PerlIO *f); | |
6308 | PERL_CALLCONV int Perl_PerlIO_error(pTHX_ PerlIO *f); | |
6309 | PERL_CALLCONV int Perl_PerlIO_flush(pTHX_ PerlIO *f); | |
6310 | PERL_CALLCONV void Perl_PerlIO_clearerr(pTHX_ PerlIO *f); | |
6311 | PERL_CALLCONV void Perl_PerlIO_set_cnt(pTHX_ PerlIO *f, int cnt); | |
3d4dd4c7 | 6312 | PERL_CALLCONV void Perl_PerlIO_set_ptrcnt(pTHX_ PerlIO *f, STDCHAR *ptr, int cnt); |
66a1b24b | 6313 | PERL_CALLCONV void Perl_PerlIO_setlinebuf(pTHX_ PerlIO *f); |
4048f010 | 6314 | PERL_CALLCONV SSize_t Perl_PerlIO_read(pTHX_ PerlIO *f, void *vbuf, Size_t count) |
66a1b24b | 6315 | __attribute__nonnull__(pTHX_2); |
7918f24d NC |
6316 | #define PERL_ARGS_ASSERT_PERLIO_READ \ |
6317 | assert(vbuf) | |
66a1b24b | 6318 | |
4048f010 | 6319 | PERL_CALLCONV SSize_t Perl_PerlIO_write(pTHX_ PerlIO *f, const void *vbuf, Size_t count) |
66a1b24b | 6320 | __attribute__nonnull__(pTHX_2); |
7918f24d NC |
6321 | #define PERL_ARGS_ASSERT_PERLIO_WRITE \ |
6322 | assert(vbuf) | |
66a1b24b | 6323 | |
4048f010 | 6324 | PERL_CALLCONV SSize_t Perl_PerlIO_unread(pTHX_ PerlIO *f, const void *vbuf, Size_t count) |
66a1b24b | 6325 | __attribute__nonnull__(pTHX_2); |
7918f24d NC |
6326 | #define PERL_ARGS_ASSERT_PERLIO_UNREAD \ |
6327 | assert(vbuf) | |
66a1b24b AL |
6328 | |
6329 | PERL_CALLCONV Off_t Perl_PerlIO_tell(pTHX_ PerlIO *f); | |
6330 | PERL_CALLCONV int Perl_PerlIO_seek(pTHX_ PerlIO *f, Off_t offset, int whence); | |
6331 | ||
6332 | PERL_CALLCONV STDCHAR * Perl_PerlIO_get_base(pTHX_ PerlIO *f); | |
6333 | PERL_CALLCONV STDCHAR * Perl_PerlIO_get_ptr(pTHX_ PerlIO *f); | |
255164ba DM |
6334 | PERL_CALLCONV int Perl_PerlIO_get_bufsiz(pTHX_ PerlIO *f) |
6335 | __attribute__warn_unused_result__; | |
6336 | ||
6337 | PERL_CALLCONV int Perl_PerlIO_get_cnt(pTHX_ PerlIO *f) | |
6338 | __attribute__warn_unused_result__; | |
6339 | ||
e87a358a | 6340 | |
46c461b5 AL |
6341 | PERL_CALLCONV PerlIO * Perl_PerlIO_stdin(pTHX) |
6342 | __attribute__warn_unused_result__; | |
6343 | ||
6344 | PERL_CALLCONV PerlIO * Perl_PerlIO_stdout(pTHX) | |
6345 | __attribute__warn_unused_result__; | |
6346 | ||
6347 | PERL_CALLCONV PerlIO * Perl_PerlIO_stderr(pTHX) | |
6348 | __attribute__warn_unused_result__; | |
6349 | ||
e87a358a | 6350 | #endif /* PERLIO_LAYERS */ |
582ed04c | 6351 | |
d6721266 | 6352 | PERL_CALLCONV void Perl_deb_stack_all(pTHX); |
43869a0c | 6353 | #if defined(PERL_IN_DEB_C) |
f75877b5 SH |
6354 | STATIC void S_deb_stack_n(pTHX_ SV** stack_base, I32 stack_min, I32 stack_max, I32 mark_min, I32 mark_max) |
6355 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6356 | #define PERL_ARGS_ASSERT_DEB_STACK_N \ |
6357 | assert(stack_base) | |
f75877b5 | 6358 | |
d6721266 DM |
6359 | #endif |
6360 | ||
66a1b24b AL |
6361 | PERL_CALLCONV PADLIST* Perl_pad_new(pTHX_ int flags) |
6362 | __attribute__malloc__ | |
6363 | __attribute__warn_unused_result__; | |
6364 | ||
f75877b5 SH |
6365 | PERL_CALLCONV void Perl_pad_undef(pTHX_ CV* cv) |
6366 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6367 | #define PERL_ARGS_ASSERT_PAD_UNDEF \ |
6368 | assert(cv) | |
f75877b5 | 6369 | |
cca43f78 | 6370 | PERL_CALLCONV PADOFFSET Perl_pad_add_name(pTHX_ const char *name, const STRLEN len, const U32 flags, HV *typestash, HV *ourstash) |
abb2c242 | 6371 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
6372 | #define PERL_ARGS_ASSERT_PAD_ADD_NAME \ |
6373 | assert(name) | |
f54cb97a | 6374 | |
f75877b5 SH |
6375 | PERL_CALLCONV PADOFFSET Perl_pad_add_anon(pTHX_ SV* sv, OPCODE op_type) |
6376 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6377 | #define PERL_ARGS_ASSERT_PAD_ADD_ANON \ |
6378 | assert(sv) | |
f75877b5 | 6379 | |
43869a0c | 6380 | #if defined(PERL_IN_PAD_C) |
2d12d04f | 6381 | STATIC void S_pad_check_dup(pTHX_ SV *name, const U32 flags, const HV *ourstash) |
73b81b14 | 6382 | __attribute__nonnull__(pTHX_1); |
7918f24d | 6383 | #define PERL_ARGS_ASSERT_PAD_CHECK_DUP \ |
73b81b14 | 6384 | assert(name) |
66a1b24b | 6385 | |
73b81b14 | 6386 | #endif |
dd2155a4 | 6387 | #ifdef DEBUGGING |
66a1b24b AL |
6388 | PERL_CALLCONV void Perl_pad_setsv(pTHX_ PADOFFSET po, SV* sv) |
6389 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
6390 | #define PERL_ARGS_ASSERT_PAD_SETSV \ |
6391 | assert(sv) | |
66a1b24b | 6392 | |
dd2155a4 DM |
6393 | #endif |
6394 | PERL_CALLCONV void Perl_pad_block_start(pTHX_ int full); | |
6395 | PERL_CALLCONV void Perl_pad_tidy(pTHX_ padtidy_type type); | |
66a1b24b AL |
6396 | PERL_CALLCONV void Perl_do_dump_pad(pTHX_ I32 level, PerlIO *file, PADLIST *padlist, int full) |
6397 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
6398 | #define PERL_ARGS_ASSERT_DO_DUMP_PAD \ |
6399 | assert(file) | |
66a1b24b AL |
6400 | |
6401 | PERL_CALLCONV void Perl_pad_fixup_inner_anons(pTHX_ PADLIST *padlist, CV *old_cv, CV *new_cv) | |
46c461b5 AL |
6402 | __attribute__nonnull__(pTHX_1) |
6403 | __attribute__nonnull__(pTHX_2) | |
6404 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
6405 | #define PERL_ARGS_ASSERT_PAD_FIXUP_INNER_ANONS \ |
6406 | assert(padlist); assert(old_cv); assert(new_cv) | |
66a1b24b AL |
6407 | |
6408 | ||
6409 | PERL_CALLCONV void Perl_pad_push(pTHX_ PADLIST *padlist, int depth) | |
6410 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6411 | #define PERL_ARGS_ASSERT_PAD_PUSH \ |
6412 | assert(padlist) | |
dd2155a4 | 6413 | |
901017d6 AL |
6414 | PERL_CALLCONV HV* Perl_pad_compname_type(pTHX_ const PADOFFSET po) |
6415 | __attribute__warn_unused_result__; | |
6416 | ||
d5b1589c NC |
6417 | #if defined(USE_ITHREADS) |
6418 | PERL_CALLCONV AV* Perl_padlist_dup(pTHX_ AV *const srcpad, CLONE_PARAMS *const param) | |
6419 | __attribute__warn_unused_result__ | |
6420 | __attribute__nonnull__(pTHX_2); | |
6421 | #define PERL_ARGS_ASSERT_PADLIST_DUP \ | |
6422 | assert(param) | |
6423 | ||
6424 | #endif | |
dd2155a4 | 6425 | |
43869a0c | 6426 | #if defined(PERL_IN_PAD_C) |
f75877b5 SH |
6427 | STATIC PADOFFSET S_pad_findlex(pTHX_ const char *name, const CV* cv, U32 seq, int warn, SV** out_capture, SV** out_name_sv, int *out_flags) |
6428 | __attribute__nonnull__(pTHX_1) | |
6429 | __attribute__nonnull__(pTHX_2) | |
6430 | __attribute__nonnull__(pTHX_6) | |
6431 | __attribute__nonnull__(pTHX_7); | |
7918f24d NC |
6432 | #define PERL_ARGS_ASSERT_PAD_FINDLEX \ |
6433 | assert(name); assert(cv); assert(out_name_sv); assert(out_flags) | |
f75877b5 | 6434 | |
3291825f NC |
6435 | STATIC PADOFFSET S_pad_add_name_sv(pTHX_ SV *namesv, const U32 flags, HV *typestash, HV *ourstash) |
6436 | __attribute__nonnull__(pTHX_1); | |
6437 | #define PERL_ARGS_ASSERT_PAD_ADD_NAME_SV \ | |
6438 | assert(namesv) | |
6439 | ||
dd2155a4 | 6440 | # if defined(DEBUGGING) |
66a1b24b AL |
6441 | STATIC void S_cv_dump(pTHX_ const CV *cv, const char *title) |
6442 | __attribute__nonnull__(pTHX_1) | |
6443 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
6444 | #define PERL_ARGS_ASSERT_CV_DUMP \ |
6445 | assert(cv); assert(title) | |
66a1b24b | 6446 | |
dd2155a4 | 6447 | # endif |
dd2155a4 | 6448 | #endif |
a3b680e6 | 6449 | PERL_CALLCONV CV* Perl_find_runcv(pTHX_ U32 *db_seqp) |
abb2c242 | 6450 | __attribute__warn_unused_result__; |
a3b680e6 | 6451 | |
dd28f7bb | 6452 | PERL_CALLCONV void Perl_free_tied_hv_pool(pTHX); |
b4ab917c | 6453 | #if defined(DEBUGGING) |
255164ba | 6454 | PERL_CALLCONV int Perl_get_debug_opts(pTHX_ const char **s, bool givehelp) |
46c461b5 AL |
6455 | __attribute__warn_unused_result__ |
6456 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6457 | #define PERL_ARGS_ASSERT_GET_DEBUG_OPTS \ |
6458 | assert(s) | |
255164ba | 6459 | |
b4ab917c | 6460 | #endif |
4048f010 | 6461 | PERL_CALLCONV void Perl_save_set_svflags(pTHX_ SV *sv, U32 mask, U32 val) |
cf684db6 | 6462 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
6463 | #define PERL_ARGS_ASSERT_SAVE_SET_SVFLAGS \ |
6464 | assert(sv) | |
cf684db6 | 6465 | |
c3507693 | 6466 | #ifdef DEBUGGING |
4048f010 | 6467 | PERL_CALLCONV void Perl_hv_assert(pTHX_ HV *hv) |
66a1b24b | 6468 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
6469 | #define PERL_ARGS_ASSERT_HV_ASSERT \ |
6470 | assert(hv) | |
66a1b24b | 6471 | |
ed760897 | 6472 | #endif |
d6721266 | 6473 | |
4048f010 | 6474 | PERL_CALLCONV SV* Perl_hv_scalar(pTHX_ HV *hv) |
b464bac0 AL |
6475 | __attribute__warn_unused_result__ |
6476 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6477 | #define PERL_ARGS_ASSERT_HV_SCALAR \ |
6478 | assert(hv) | |
b464bac0 | 6479 | |
4048f010 | 6480 | PERL_CALLCONV I32* Perl_hv_riter_p(pTHX_ HV *hv) |
b464bac0 AL |
6481 | __attribute__warn_unused_result__ |
6482 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6483 | #define PERL_ARGS_ASSERT_HV_RITER_P \ |
6484 | assert(hv) | |
b464bac0 | 6485 | |
4048f010 | 6486 | PERL_CALLCONV HE** Perl_hv_eiter_p(pTHX_ HV *hv) |
b464bac0 AL |
6487 | __attribute__warn_unused_result__ |
6488 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6489 | #define PERL_ARGS_ASSERT_HV_EITER_P \ |
6490 | assert(hv) | |
b464bac0 | 6491 | |
4048f010 | 6492 | PERL_CALLCONV void Perl_hv_riter_set(pTHX_ HV *hv, I32 riter) |
b464bac0 | 6493 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
6494 | #define PERL_ARGS_ASSERT_HV_RITER_SET \ |
6495 | assert(hv) | |
b464bac0 | 6496 | |
4048f010 | 6497 | PERL_CALLCONV void Perl_hv_eiter_set(pTHX_ HV *hv, HE *eiter) |
66a1b24b | 6498 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
6499 | #define PERL_ARGS_ASSERT_HV_EITER_SET \ |
6500 | assert(hv) | |
b464bac0 | 6501 | |
4048f010 | 6502 | PERL_CALLCONV void Perl_hv_name_set(pTHX_ HV *hv, const char *name, U32 len, U32 flags) |
b464bac0 | 6503 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
6504 | #define PERL_ARGS_ASSERT_HV_NAME_SET \ |
6505 | assert(hv) | |
b464bac0 | 6506 | |
4048f010 | 6507 | PERL_CALLCONV AV** Perl_hv_backreferences_p(pTHX_ HV *hv) |
86f55936 | 6508 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
6509 | #define PERL_ARGS_ASSERT_HV_BACKREFERENCES_P \ |
6510 | assert(hv) | |
86f55936 | 6511 | |
09aad8f0 DM |
6512 | #if defined(PERL_IN_DUMP_C) || defined(PERL_IN_HV_C) || defined(PERL_IN_SV_C) |
6513 | PERL_CALLCONV void Perl_hv_kill_backrefs(pTHX_ HV *hv) | |
6514 | __attribute__nonnull__(pTHX_1); | |
6515 | #define PERL_ARGS_ASSERT_HV_KILL_BACKREFS \ | |
6516 | assert(hv) | |
6517 | ||
6518 | #endif | |
4048f010 | 6519 | PERL_CALLCONV void Perl_hv_clear_placeholders(pTHX_ HV *hv) |
b464bac0 | 6520 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
6521 | #define PERL_ARGS_ASSERT_HV_CLEAR_PLACEHOLDERS \ |
6522 | assert(hv) | |
b464bac0 | 6523 | |
4048f010 | 6524 | PERL_CALLCONV I32* Perl_hv_placeholders_p(pTHX_ HV *hv) |
b464bac0 AL |
6525 | __attribute__warn_unused_result__ |
6526 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6527 | #define PERL_ARGS_ASSERT_HV_PLACEHOLDERS_P \ |
6528 | assert(hv) | |
b464bac0 | 6529 | |
0c289d13 | 6530 | PERL_CALLCONV I32 Perl_hv_placeholders_get(pTHX_ const HV *hv) |
b464bac0 AL |
6531 | __attribute__warn_unused_result__ |
6532 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6533 | #define PERL_ARGS_ASSERT_HV_PLACEHOLDERS_GET \ |
6534 | assert(hv) | |
b464bac0 | 6535 | |
4048f010 | 6536 | PERL_CALLCONV void Perl_hv_placeholders_set(pTHX_ HV *hv, I32 ph) |
b464bac0 | 6537 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
6538 | #define PERL_ARGS_ASSERT_HV_PLACEHOLDERS_SET \ |
6539 | assert(hv) | |
b464bac0 | 6540 | |
ca732855 | 6541 | |
4048f010 | 6542 | PERL_CALLCONV SV* Perl_magic_scalarpack(pTHX_ HV *hv, MAGIC *mg) |
66a1b24b AL |
6543 | __attribute__nonnull__(pTHX_1) |
6544 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
6545 | #define PERL_ARGS_ASSERT_MAGIC_SCALARPACK \ |
6546 | assert(hv); assert(mg) | |
66a1b24b | 6547 | |
10edeb5d | 6548 | |
43869a0c | 6549 | #if defined(PERL_IN_SV_C) |
6c1b357c | 6550 | STATIC SV * S_find_hash_subscript(pTHX_ const HV *const hv, const SV *const val) |
10edeb5d | 6551 | __attribute__nonnull__(pTHX_2); |
7918f24d NC |
6552 | #define PERL_ARGS_ASSERT_FIND_HASH_SUBSCRIPT \ |
6553 | assert(val) | |
10edeb5d | 6554 | |
6c1b357c | 6555 | STATIC I32 S_find_array_subscript(pTHX_ const AV *const av, const SV *const val) |
10edeb5d | 6556 | __attribute__nonnull__(pTHX_2); |
7918f24d NC |
6557 | #define PERL_ARGS_ASSERT_FIND_ARRAY_SUBSCRIPT \ |
6558 | assert(val) | |
10edeb5d | 6559 | |
6c1b357c | 6560 | STATIC SV* S_find_uninit_var(pTHX_ const OP *const obase, const SV *const uninit_sv, bool top); |
29489e7c | 6561 | #endif |
96adfaa1 | 6562 | |
1109a392 MHM |
6563 | #ifdef PERL_NEED_MY_HTOLE16 |
6564 | PERL_CALLCONV U16 Perl_my_htole16(U16 n); | |
6565 | #endif | |
6566 | #ifdef PERL_NEED_MY_LETOH16 | |
6567 | PERL_CALLCONV U16 Perl_my_letoh16(U16 n); | |
6568 | #endif | |
6569 | #ifdef PERL_NEED_MY_HTOBE16 | |
6570 | PERL_CALLCONV U16 Perl_my_htobe16(U16 n); | |
6571 | #endif | |
6572 | #ifdef PERL_NEED_MY_BETOH16 | |
6573 | PERL_CALLCONV U16 Perl_my_betoh16(U16 n); | |
6574 | #endif | |
6575 | #ifdef PERL_NEED_MY_HTOLE32 | |
6576 | PERL_CALLCONV U32 Perl_my_htole32(U32 n); | |
6577 | #endif | |
6578 | #ifdef PERL_NEED_MY_LETOH32 | |
6579 | PERL_CALLCONV U32 Perl_my_letoh32(U32 n); | |
6580 | #endif | |
6581 | #ifdef PERL_NEED_MY_HTOBE32 | |
6582 | PERL_CALLCONV U32 Perl_my_htobe32(U32 n); | |
6583 | #endif | |
6584 | #ifdef PERL_NEED_MY_BETOH32 | |
6585 | PERL_CALLCONV U32 Perl_my_betoh32(U32 n); | |
6586 | #endif | |
6587 | #ifdef PERL_NEED_MY_HTOLE64 | |
6588 | PERL_CALLCONV U64 Perl_my_htole64(U64 n); | |
6589 | #endif | |
6590 | #ifdef PERL_NEED_MY_LETOH64 | |
6591 | PERL_CALLCONV U64 Perl_my_letoh64(U64 n); | |
6592 | #endif | |
6593 | #ifdef PERL_NEED_MY_HTOBE64 | |
6594 | PERL_CALLCONV U64 Perl_my_htobe64(U64 n); | |
6595 | #endif | |
6596 | #ifdef PERL_NEED_MY_BETOH64 | |
6597 | PERL_CALLCONV U64 Perl_my_betoh64(U64 n); | |
6598 | #endif | |
6599 | ||
6600 | #ifdef PERL_NEED_MY_HTOLES | |
6601 | PERL_CALLCONV short Perl_my_htoles(short n); | |
6602 | #endif | |
6603 | #ifdef PERL_NEED_MY_LETOHS | |
6604 | PERL_CALLCONV short Perl_my_letohs(short n); | |
6605 | #endif | |
6606 | #ifdef PERL_NEED_MY_HTOBES | |
6607 | PERL_CALLCONV short Perl_my_htobes(short n); | |
6608 | #endif | |
6609 | #ifdef PERL_NEED_MY_BETOHS | |
6610 | PERL_CALLCONV short Perl_my_betohs(short n); | |
6611 | #endif | |
6612 | #ifdef PERL_NEED_MY_HTOLEI | |
6613 | PERL_CALLCONV int Perl_my_htolei(int n); | |
6614 | #endif | |
6615 | #ifdef PERL_NEED_MY_LETOHI | |
6616 | PERL_CALLCONV int Perl_my_letohi(int n); | |
6617 | #endif | |
6618 | #ifdef PERL_NEED_MY_HTOBEI | |
6619 | PERL_CALLCONV int Perl_my_htobei(int n); | |
6620 | #endif | |
6621 | #ifdef PERL_NEED_MY_BETOHI | |
6622 | PERL_CALLCONV int Perl_my_betohi(int n); | |
6623 | #endif | |
6624 | #ifdef PERL_NEED_MY_HTOLEL | |
6625 | PERL_CALLCONV long Perl_my_htolel(long n); | |
6626 | #endif | |
6627 | #ifdef PERL_NEED_MY_LETOHL | |
6628 | PERL_CALLCONV long Perl_my_letohl(long n); | |
6629 | #endif | |
6630 | #ifdef PERL_NEED_MY_HTOBEL | |
6631 | PERL_CALLCONV long Perl_my_htobel(long n); | |
6632 | #endif | |
6633 | #ifdef PERL_NEED_MY_BETOHL | |
6634 | PERL_CALLCONV long Perl_my_betohl(long n); | |
6635 | #endif | |
6636 | ||
f75877b5 SH |
6637 | PERL_CALLCONV void Perl_my_swabn(void* ptr, int n) |
6638 | __attribute__nonnull__(1); | |
7918f24d NC |
6639 | #define PERL_ARGS_ASSERT_MY_SWABN \ |
6640 | assert(ptr) | |
f75877b5 SH |
6641 | |
6642 | ||
fe9845cc | 6643 | PERL_CALLCONV GV* Perl_gv_fetchpvn_flags(pTHX_ const char* name, STRLEN len, I32 flags, const svtype sv_type) |
f75877b5 | 6644 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
6645 | #define PERL_ARGS_ASSERT_GV_FETCHPVN_FLAGS \ |
6646 | assert(name) | |
f75877b5 | 6647 | |
fe9845cc | 6648 | PERL_CALLCONV GV* Perl_gv_fetchsv(pTHX_ SV *name, I32 flags, const svtype sv_type) |
f75877b5 | 6649 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
6650 | #define PERL_ARGS_ASSERT_GV_FETCHSV \ |
6651 | assert(name) | |
1109a392 | 6652 | |
9d8f40c4 | 6653 | PERL_CALLCONV bool Perl_is_gv_magical_sv(pTHX_ SV *const name_sv, U32 flags) |
9d4ba2ae AL |
6654 | __attribute__warn_unused_result__ |
6655 | __attribute__nonnull__(pTHX_1); | |
7918f24d | 6656 | #define PERL_ARGS_ASSERT_IS_GV_MAGICAL_SV \ |
9d8f40c4 | 6657 | assert(name_sv) |
1df70142 | 6658 | |
7a5fd60d | 6659 | |
9f6cc744 | 6660 | PERL_CALLCONV bool Perl_stashpv_hvname_match(pTHX_ const COP *c, const HV *hv) |
ed221c57 AL |
6661 | __attribute__warn_unused_result__ |
6662 | __attribute__nonnull__(pTHX_1) | |
6663 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
6664 | #define PERL_ARGS_ASSERT_STASHPV_HVNAME_MATCH \ |
6665 | assert(c); assert(hv) | |
ed221c57 | 6666 | |
2e0de35c | 6667 | |
41e4abd8 | 6668 | #ifdef DEBUG_LEAKING_SCALARS_FORK_DUMP |
46c461b5 AL |
6669 | PERL_CALLCONV void Perl_dump_sv_child(pTHX_ SV *sv) |
6670 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6671 | #define PERL_ARGS_ASSERT_DUMP_SV_CHILD \ |
6672 | assert(sv) | |
46c461b5 | 6673 | |
41e4abd8 NC |
6674 | #endif |
6675 | ||
c69033f2 | 6676 | #ifdef PERL_DONT_CREATE_GVSV |
bb85b28a | 6677 | /* PERL_CALLCONV GV* Perl_gv_SVadd(pTHX_ GV *gv); */ |
c69033f2 | 6678 | #endif |
43869a0c | 6679 | #if defined(PERL_IN_UTIL_C) |
26c7b074 NC |
6680 | STATIC bool S_ckwarn_common(pTHX_ U32 w); |
6681 | #endif | |
f54ba1c2 DM |
6682 | PERL_CALLCONV bool Perl_ckwarn(pTHX_ U32 w); |
6683 | PERL_CALLCONV bool Perl_ckwarn_d(pTHX_ U32 w); | |
8ee4cf24 | 6684 | PERL_CALLCONV STRLEN * Perl_new_warnings_bitfield(pTHX_ STRLEN *buffer, const char *const bits, STRLEN size) |
72dc9ed5 NC |
6685 | __attribute__malloc__ |
6686 | __attribute__warn_unused_result__ | |
8ee4cf24 | 6687 | __attribute__nonnull__(pTHX_2); |
7918f24d NC |
6688 | #define PERL_ARGS_ASSERT_NEW_WARNINGS_BITFIELD \ |
6689 | assert(bits) | |
72dc9ed5 | 6690 | |
c69033f2 | 6691 | |
ce582cee NC |
6692 | #ifndef SPRINTF_RETURNS_STRLEN |
6693 | PERL_CALLCONV int Perl_my_sprintf(char *buffer, const char *pat, ...) | |
6694 | __attribute__nonnull__(1) | |
6695 | __attribute__nonnull__(2); | |
7918f24d NC |
6696 | #define PERL_ARGS_ASSERT_MY_SPRINTF \ |
6697 | assert(buffer); assert(pat) | |
ce582cee NC |
6698 | |
6699 | #endif | |
6700 | ||
d9fad198 | 6701 | PERL_CALLCONV int Perl_my_snprintf(char *buffer, const Size_t len, const char *format, ...) |
f8f4df2c | 6702 | __attribute__format__(__printf__,3,4) |
d9fad198 JH |
6703 | __attribute__nonnull__(1) |
6704 | __attribute__nonnull__(3); | |
7918f24d NC |
6705 | #define PERL_ARGS_ASSERT_MY_SNPRINTF \ |
6706 | assert(buffer); assert(format) | |
d9fad198 JH |
6707 | |
6708 | PERL_CALLCONV int Perl_my_vsnprintf(char *buffer, const Size_t len, const char *format, va_list ap) | |
6709 | __attribute__nonnull__(1) | |
6710 | __attribute__nonnull__(3); | |
7918f24d NC |
6711 | #define PERL_ARGS_ASSERT_MY_VSNPRINTF \ |
6712 | assert(buffer); assert(format) | |
d9fad198 JH |
6713 | |
6714 | ||
b0269e46 AB |
6715 | PERL_CALLCONV void Perl_my_clearenv(pTHX); |
6716 | ||
f16dd614 | 6717 | #ifdef PERL_IMPLICIT_CONTEXT |
53d44271 JH |
6718 | #ifdef PERL_GLOBAL_STRUCT_PRIVATE |
6719 | PERL_CALLCONV void* Perl_my_cxt_init(pTHX_ const char *my_cxt_key, size_t size) | |
6720 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6721 | #define PERL_ARGS_ASSERT_MY_CXT_INIT \ |
6722 | assert(my_cxt_key) | |
53d44271 JH |
6723 | |
6724 | PERL_CALLCONV int Perl_my_cxt_index(pTHX_ const char *my_cxt_key) | |
6725 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6726 | #define PERL_ARGS_ASSERT_MY_CXT_INDEX \ |
6727 | assert(my_cxt_key) | |
53d44271 JH |
6728 | |
6729 | #else | |
f16dd614 DM |
6730 | PERL_CALLCONV void* Perl_my_cxt_init(pTHX_ int *index, size_t size) |
6731 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6732 | #define PERL_ARGS_ASSERT_MY_CXT_INIT \ |
6733 | assert(index) | |
f16dd614 DM |
6734 | |
6735 | #endif | |
53d44271 | 6736 | #endif |
f16dd614 | 6737 | |
a6cc4119 SP |
6738 | #ifndef HAS_STRLCAT |
6739 | PERL_CALLCONV Size_t Perl_my_strlcat(char *dst, const char *src, Size_t size); | |
6740 | #endif | |
6741 | ||
6742 | #ifndef HAS_STRLCPY | |
6743 | PERL_CALLCONV Size_t Perl_my_strlcpy(char *dst, const char *src, Size_t size); | |
6744 | #endif | |
6745 | ||
1dba731d NC |
6746 | #ifdef PERL_MAD |
6747 | PERL_CALLCONV void Perl_pad_peg(const char* s) | |
6748 | __attribute__nonnull__(1); | |
7918f24d NC |
6749 | #define PERL_ARGS_ASSERT_PAD_PEG \ |
6750 | assert(s) | |
1dba731d | 6751 | |
43869a0c | 6752 | #if defined(PERL_IN_DUMP_C) |
3b721df9 NC |
6753 | STATIC void S_xmldump_attr(pTHX_ I32 level, PerlIO *file, const char* pat, ...) |
6754 | __attribute__format__(__printf__,pTHX_3,pTHX_4) | |
6755 | __attribute__nonnull__(pTHX_2) | |
6756 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
6757 | #define PERL_ARGS_ASSERT_XMLDUMP_ATTR \ |
6758 | assert(file); assert(pat) | |
3b721df9 NC |
6759 | |
6760 | #endif | |
6761 | PERL_CALLCONV void Perl_xmldump_indent(pTHX_ I32 level, PerlIO *file, const char* pat, ...) | |
6762 | __attribute__format__(__printf__,pTHX_3,pTHX_4) | |
6763 | __attribute__nonnull__(pTHX_2) | |
6764 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
6765 | #define PERL_ARGS_ASSERT_XMLDUMP_INDENT \ |
6766 | assert(file); assert(pat) | |
3b721df9 NC |
6767 | |
6768 | PERL_CALLCONV void Perl_xmldump_vindent(pTHX_ I32 level, PerlIO *file, const char* pat, va_list *args) | |
6769 | __attribute__nonnull__(pTHX_2) | |
6770 | __attribute__nonnull__(pTHX_3); | |
7918f24d NC |
6771 | #define PERL_ARGS_ASSERT_XMLDUMP_VINDENT \ |
6772 | assert(file); assert(pat) | |
3b721df9 NC |
6773 | |
6774 | PERL_CALLCONV void Perl_xmldump_all(pTHX); | |
f0e3f042 | 6775 | PERL_CALLCONV void Perl_xmldump_all_perl(pTHX_ bool justperl); |
3b721df9 NC |
6776 | PERL_CALLCONV void Perl_xmldump_packsubs(pTHX_ const HV* stash) |
6777 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6778 | #define PERL_ARGS_ASSERT_XMLDUMP_PACKSUBS \ |
6779 | assert(stash) | |
3b721df9 | 6780 | |
f0e3f042 CS |
6781 | PERL_CALLCONV void Perl_xmldump_packsubs_perl(pTHX_ const HV* stash, bool justperl) |
6782 | __attribute__nonnull__(pTHX_1); | |
6783 | #define PERL_ARGS_ASSERT_XMLDUMP_PACKSUBS_PERL \ | |
6784 | assert(stash) | |
6785 | ||
3b721df9 NC |
6786 | PERL_CALLCONV void Perl_xmldump_sub(pTHX_ const GV* gv) |
6787 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6788 | #define PERL_ARGS_ASSERT_XMLDUMP_SUB \ |
6789 | assert(gv) | |
3b721df9 | 6790 | |
3ab0c9fa | 6791 | PERL_CALLCONV void Perl_xmldump_sub_perl(pTHX_ const GV* gv, bool justperl) |
f0e3f042 CS |
6792 | __attribute__nonnull__(pTHX_1); |
6793 | #define PERL_ARGS_ASSERT_XMLDUMP_SUB_PERL \ | |
6794 | assert(gv) | |
6795 | ||
3b721df9 NC |
6796 | PERL_CALLCONV void Perl_xmldump_form(pTHX_ const GV* gv) |
6797 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6798 | #define PERL_ARGS_ASSERT_XMLDUMP_FORM \ |
6799 | assert(gv) | |
3b721df9 NC |
6800 | |
6801 | PERL_CALLCONV void Perl_xmldump_eval(pTHX); | |
6802 | PERL_CALLCONV char* Perl_sv_catxmlsv(pTHX_ SV *dsv, SV *ssv) | |
6803 | __attribute__nonnull__(pTHX_1) | |
6804 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
6805 | #define PERL_ARGS_ASSERT_SV_CATXMLSV \ |
6806 | assert(dsv); assert(ssv) | |
3b721df9 | 6807 | |
20f84293 | 6808 | PERL_CALLCONV char* Perl_sv_catxmlpvn(pTHX_ SV *dsv, const char *pv, STRLEN len, int utf8) |
3b721df9 NC |
6809 | __attribute__nonnull__(pTHX_1) |
6810 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
6811 | #define PERL_ARGS_ASSERT_SV_CATXMLPVN \ |
6812 | assert(dsv); assert(pv) | |
3b721df9 NC |
6813 | |
6814 | PERL_CALLCONV char* Perl_sv_xmlpeek(pTHX_ SV* sv) | |
6815 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6816 | #define PERL_ARGS_ASSERT_SV_XMLPEEK \ |
6817 | assert(sv) | |
3b721df9 NC |
6818 | |
6819 | PERL_CALLCONV void Perl_do_pmop_xmldump(pTHX_ I32 level, PerlIO *file, const PMOP *pm) | |
6820 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
6821 | #define PERL_ARGS_ASSERT_DO_PMOP_XMLDUMP \ |
6822 | assert(file) | |
3b721df9 NC |
6823 | |
6824 | PERL_CALLCONV void Perl_pmop_xmldump(pTHX_ const PMOP* pm); | |
6825 | PERL_CALLCONV void Perl_do_op_xmldump(pTHX_ I32 level, PerlIO *file, const OP *o) | |
6826 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
6827 | #define PERL_ARGS_ASSERT_DO_OP_XMLDUMP \ |
6828 | assert(file) | |
3b721df9 | 6829 | |
9f10164a | 6830 | PERL_CALLCONV void Perl_op_xmldump(pTHX_ const OP *o) |
3b721df9 | 6831 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
6832 | #define PERL_ARGS_ASSERT_OP_XMLDUMP \ |
6833 | assert(o) | |
3b721df9 | 6834 | |
eb8433b7 NC |
6835 | |
6836 | PERL_CALLCONV TOKEN* Perl_newTOKEN(pTHX_ I32 optype, YYSTYPE lval, MADPROP* madprop); | |
4048f010 | 6837 | PERL_CALLCONV void Perl_token_free(pTHX_ TOKEN *tk) |
ca7a6974 | 6838 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
6839 | #define PERL_ARGS_ASSERT_TOKEN_FREE \ |
6840 | assert(tk) | |
ca7a6974 | 6841 | |
4048f010 | 6842 | PERL_CALLCONV void Perl_token_getmad(pTHX_ TOKEN *tk, OP *o, char slot) |
ca7a6974 | 6843 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
6844 | #define PERL_ARGS_ASSERT_TOKEN_GETMAD \ |
6845 | assert(tk) | |
ca7a6974 | 6846 | |
eb8433b7 NC |
6847 | PERL_CALLCONV void Perl_op_getmad_weak(pTHX_ OP* from, OP* o, char slot); |
6848 | PERL_CALLCONV void Perl_op_getmad(pTHX_ OP* from, OP* o, char slot); | |
6849 | PERL_CALLCONV void Perl_prepend_madprops(pTHX_ MADPROP* mp, OP* o, char slot); | |
6850 | PERL_CALLCONV void Perl_append_madprops(pTHX_ MADPROP* tm, OP* o, char slot); | |
6851 | PERL_CALLCONV void Perl_addmad(pTHX_ MADPROP* tm, MADPROP** root, char slot); | |
ca7a6974 NC |
6852 | PERL_CALLCONV MADPROP* Perl_newMADsv(pTHX_ char key, SV* sv) |
6853 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
6854 | #define PERL_ARGS_ASSERT_NEWMADSV \ |
6855 | assert(sv) | |
ca7a6974 | 6856 | |
d503a9ba | 6857 | PERL_CALLCONV MADPROP* Perl_newMADPROP(pTHX_ char key, char type, void* val, I32 vlen); |
eb8433b7 | 6858 | PERL_CALLCONV void Perl_mad_free(pTHX_ MADPROP* mp); |
29595ff2 | 6859 | |
43869a0c | 6860 | # if defined(PERL_IN_TOKE_C) |
29595ff2 NC |
6861 | STATIC char* S_skipspace0(pTHX_ char *s) |
6862 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6863 | #define PERL_ARGS_ASSERT_SKIPSPACE0 \ |
6864 | assert(s) | |
29595ff2 NC |
6865 | |
6866 | STATIC char* S_skipspace1(pTHX_ char *s) | |
6867 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6868 | #define PERL_ARGS_ASSERT_SKIPSPACE1 \ |
6869 | assert(s) | |
29595ff2 NC |
6870 | |
6871 | STATIC char* S_skipspace2(pTHX_ char *s, SV **sv) | |
6872 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6873 | #define PERL_ARGS_ASSERT_SKIPSPACE2 \ |
6874 | assert(s) | |
29595ff2 | 6875 | |
af5683d1 NC |
6876 | STATIC void S_start_force(pTHX_ int where); |
6877 | STATIC void S_curmad(pTHX_ char slot, SV *sv); | |
29595ff2 | 6878 | # endif |
af5683d1 | 6879 | PERL_CALLCONV int Perl_madlex(pTHX); |
636def1f | 6880 | PERL_CALLCONV int Perl_madparse(pTHX_ int gramtype); |
1dba731d | 6881 | #endif |
ed140128 AD |
6882 | #if !defined(HAS_SIGNBIT) |
6883 | PERL_CALLCONV int Perl_signbit(NV f) | |
6884 | __attribute__pure__; | |
6885 | ||
6886 | #endif | |
f16dd614 | 6887 | |
8b850bd5 NC |
6888 | PERL_CALLCONV void Perl_emulate_cop_io(pTHX_ const COP *const c, SV *const sv) |
6889 | __attribute__nonnull__(pTHX_1) | |
6890 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
6891 | #define PERL_ARGS_ASSERT_EMULATE_COP_IO \ |
6892 | assert(c); assert(sv) | |
8b850bd5 | 6893 | |
f7e71195 | 6894 | PERL_CALLCONV REGEXP * Perl_get_re_arg(pTHX_ SV *sv); |
8b850bd5 | 6895 | |
fa60396f NC |
6896 | PERL_CALLCONV SV* Perl_mro_get_private_data(pTHX_ struct mro_meta *const smeta, const struct mro_alg *const which) |
6897 | __attribute__nonnull__(pTHX_1) | |
6898 | __attribute__nonnull__(pTHX_2); | |
6899 | #define PERL_ARGS_ASSERT_MRO_GET_PRIVATE_DATA \ | |
6900 | assert(smeta); assert(which) | |
6901 | ||
6902 | PERL_CALLCONV SV* Perl_mro_set_private_data(pTHX_ struct mro_meta *const smeta, const struct mro_alg *const which, SV *const data) | |
6903 | __attribute__nonnull__(pTHX_1) | |
6904 | __attribute__nonnull__(pTHX_2) | |
6905 | __attribute__nonnull__(pTHX_3); | |
6906 | #define PERL_ARGS_ASSERT_MRO_SET_PRIVATE_DATA \ | |
6907 | assert(smeta); assert(which); assert(data) | |
6908 | ||
a3e6e81e NC |
6909 | PERL_CALLCONV const struct mro_alg * Perl_mro_get_from_name(pTHX_ SV *name) |
6910 | __attribute__nonnull__(pTHX_1); | |
6911 | #define PERL_ARGS_ASSERT_MRO_GET_FROM_NAME \ | |
6912 | assert(name) | |
6913 | ||
6914 | PERL_CALLCONV void Perl_mro_register(pTHX_ const struct mro_alg *mro) | |
6915 | __attribute__nonnull__(pTHX_1); | |
6916 | #define PERL_ARGS_ASSERT_MRO_REGISTER \ | |
6917 | assert(mro) | |
6918 | ||
31b9005d NC |
6919 | PERL_CALLCONV void Perl_mro_set_mro(pTHX_ struct mro_meta *const meta, SV *const name) |
6920 | __attribute__nonnull__(pTHX_1) | |
6921 | __attribute__nonnull__(pTHX_2); | |
6922 | #define PERL_ARGS_ASSERT_MRO_SET_MRO \ | |
6923 | assert(meta); assert(name) | |
6924 | ||
47c9dd14 BB |
6925 | PERL_CALLCONV struct mro_meta* Perl_mro_meta_init(pTHX_ HV* stash) |
6926 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6927 | #define PERL_ARGS_ASSERT_MRO_META_INIT \ |
6928 | assert(stash) | |
47c9dd14 BB |
6929 | |
6930 | #if defined(USE_ITHREADS) | |
6931 | PERL_CALLCONV struct mro_meta* Perl_mro_meta_dup(pTHX_ struct mro_meta* smeta, CLONE_PARAMS* param) | |
6932 | __attribute__nonnull__(pTHX_1) | |
6933 | __attribute__nonnull__(pTHX_2); | |
7918f24d NC |
6934 | #define PERL_ARGS_ASSERT_MRO_META_DUP \ |
6935 | assert(smeta); assert(param) | |
47c9dd14 BB |
6936 | |
6937 | #endif | |
6938 | PERL_CALLCONV AV* Perl_mro_get_linear_isa(pTHX_ HV* stash) | |
6939 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6940 | #define PERL_ARGS_ASSERT_MRO_GET_LINEAR_ISA \ |
6941 | assert(stash) | |
47c9dd14 | 6942 | |
43869a0c | 6943 | #if defined(PERL_IN_MRO_C) |
94d1e706 | 6944 | STATIC AV* S_mro_get_linear_isa_dfs(pTHX_ HV* stash, U32 level) |
47c9dd14 | 6945 | __attribute__nonnull__(pTHX_1); |
7918f24d NC |
6946 | #define PERL_ARGS_ASSERT_MRO_GET_LINEAR_ISA_DFS \ |
6947 | assert(stash) | |
47c9dd14 | 6948 | |
4befac30 | 6949 | #endif |
47c9dd14 BB |
6950 | PERL_CALLCONV void Perl_mro_isa_changed_in(pTHX_ HV* stash) |
6951 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6952 | #define PERL_ARGS_ASSERT_MRO_ISA_CHANGED_IN \ |
6953 | assert(stash) | |
47c9dd14 BB |
6954 | |
6955 | PERL_CALLCONV void Perl_mro_method_changed_in(pTHX_ HV* stash) | |
6956 | __attribute__nonnull__(pTHX_1); | |
7918f24d NC |
6957 | #define PERL_ARGS_ASSERT_MRO_METHOD_CHANGED_IN \ |
6958 | assert(stash) | |
47c9dd14 BB |
6959 | |
6960 | PERL_CALLCONV void Perl_boot_core_mro(pTHX); | |
cbec8ebe DM |
6961 | PERL_CALLCONV void Perl_sys_init(int* argc, char*** argv) |
6962 | __attribute__nonnull__(1) | |
6963 | __attribute__nonnull__(2); | |
7918f24d NC |
6964 | #define PERL_ARGS_ASSERT_SYS_INIT \ |
6965 | assert(argc); assert(argv) | |
cbec8ebe DM |
6966 | |
6967 | PERL_CALLCONV void Perl_sys_init3(int* argc, char*** argv, char*** env) | |
6968 | __attribute__nonnull__(1) | |
6969 | __attribute__nonnull__(2) | |
6970 | __attribute__nonnull__(3); | |
7918f24d NC |
6971 | #define PERL_ARGS_ASSERT_SYS_INIT3 \ |
6972 | assert(argc); assert(argv); assert(env) | |
cbec8ebe | 6973 | |
d0820ef1 | 6974 | PERL_CALLCONV void Perl_sys_term(void); |
d6747b7a NC |
6975 | PERL_CALLCONV const char * Perl_fetch_cop_label(pTHX_ COP *const cop, STRLEN *len, U32 *flags) |
6976 | __attribute__nonnull__(pTHX_1); | |
6977 | #define PERL_ARGS_ASSERT_FETCH_COP_LABEL \ | |
6978 | assert(cop) | |
6979 | ||
ce42d03d | 6980 | PERL_CALLCONV void Perl_store_cop_label(pTHX_ COP *const cop, const char *label, STRLEN len, U32 flags) |
a77ac40c | 6981 | __attribute__nonnull__(pTHX_1) |
012da8e5 NC |
6982 | __attribute__nonnull__(pTHX_2); |
6983 | #define PERL_ARGS_ASSERT_STORE_COP_LABEL \ | |
a77ac40c | 6984 | assert(cop); assert(label) |
012da8e5 | 6985 | |
47c9dd14 | 6986 | |
4098b6bb JV |
6987 | PERL_CALLCONV int Perl_keyword_plugin_standard(pTHX_ char* keyword_ptr, STRLEN keyword_len, OP** op_ptr) |
6988 | __attribute__nonnull__(pTHX_1) | |
6989 | __attribute__nonnull__(pTHX_3); | |
6990 | #define PERL_ARGS_ASSERT_KEYWORD_PLUGIN_STANDARD \ | |
6991 | assert(keyword_ptr); assert(op_ptr) | |
6992 | ||
f7e3d326 | 6993 | PERL_CALLCONV void Perl_munge_qwlist_to_paren_list(pTHX_ OP* qwlist) |
ea25a9b2 | 6994 | __attribute__nonnull__(pTHX_1); |
f7e3d326 | 6995 | #define PERL_ARGS_ASSERT_MUNGE_QWLIST_TO_PAREN_LIST \ |
ea25a9b2 Z |
6996 | assert(qwlist) |
6997 | ||
4098b6bb | 6998 | |
f7abe70b | 6999 | #if defined(USE_ITHREADS) |
43869a0c | 7000 | # if defined(PERL_IN_SV_C) |
e4295668 NC |
7001 | STATIC void S_unreferenced_to_tmp_stack(pTHX_ AV *const unreferenced) |
7002 | __attribute__nonnull__(pTHX_1); | |
7003 | #define PERL_ARGS_ASSERT_UNREFERENCED_TO_TMP_STACK \ | |
7004 | assert(unreferenced) | |
7005 | ||
7006 | # endif | |
f7abe70b NC |
7007 | PERL_CALLCONV CLONE_PARAMS * Perl_clone_params_new(PerlInterpreter *const from, PerlInterpreter *const to) |
7008 | __attribute__malloc__ | |
7009 | __attribute__warn_unused_result__ | |
7010 | __attribute__nonnull__(1) | |
7011 | __attribute__nonnull__(2); | |
7012 | #define PERL_ARGS_ASSERT_CLONE_PARAMS_NEW \ | |
7013 | assert(from); assert(to) | |
7014 | ||
7015 | PERL_CALLCONV void Perl_clone_params_del(CLONE_PARAMS *param) | |
7016 | __attribute__nonnull__(1); | |
7017 | #define PERL_ARGS_ASSERT_CLONE_PARAMS_DEL \ | |
7018 | assert(param) | |
7019 | ||
7020 | #endif | |
3540d4ce | 7021 | END_EXTERN_C |
1df70142 AL |
7022 | /* |
7023 | * ex: set ts=8 sts=4 sw=4 noet: | |
7024 | */ | |
37442d52 | 7025 | /* ex: set ro: */ |