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