| File: | obj/gnu/usr.bin/perl/ext/XS-APItest/APItest.c |
| Warning: | line 10154, column 13 Value stored to 'e' is never read |
Press '?' to see keyboard shortcuts
Keyboard shortcuts:
| 1 | /* |
| 2 | * This file was generated automatically by ExtUtils::ParseXS version 3.40 from the |
| 3 | * contents of APItest.xs. Do not edit this file, edit APItest.xs instead. |
| 4 | * |
| 5 | * ANY CHANGES MADE HERE WILL BE LOST! |
| 6 | * |
| 7 | */ |
| 8 | |
| 9 | #line 1 "APItest.xs" |
| 10 | #define PERL_IN_XS_APITEST |
| 11 | |
| 12 | /* We want to be able to test things that aren't API yet. */ |
| 13 | #define PERL_EXT |
| 14 | |
| 15 | /* Do *not* define PERL_NO_GET_CONTEXT. This is the one place where we get |
| 16 | to test implicit Perl_get_context(). */ |
| 17 | |
| 18 | #include "EXTERN.h" |
| 19 | #include "perl.h" |
| 20 | #include "XSUB.h" |
| 21 | |
| 22 | typedef FILENativeFile NativeFile; |
| 23 | |
| 24 | #include "fakesdio.h" /* Causes us to use PerlIO below */ |
| 25 | |
| 26 | typedef SV *SVREF; |
| 27 | typedef PTR_TBL_t *XS__APItest__PtrTable; |
| 28 | typedef PerlIOPerlIO * InputStream; |
| 29 | typedef PerlIOPerlIO * OutputStream; |
| 30 | |
| 31 | #define croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 22) croakPerl_croak("fail at " __FILE__"APItest.xs" " line %d", __LINE__22) |
| 32 | #define croak_fail_nep(h, w)Perl_croak("fail %p!=%p at " "APItest.xs" " line %d", (h), (w ), 23) croakPerl_croak("fail %p!=%p at " __FILE__"APItest.xs" " line %d", (h), (w), __LINE__23) |
| 33 | #define croak_fail_nei(h, w)Perl_croak("fail %d!=%d at " "APItest.xs" " line %d", (int)(h ), (int)(w), 24) croakPerl_croak("fail %d!=%d at " __FILE__"APItest.xs" " line %d", (int)(h), (int)(w), __LINE__24) |
| 34 | |
| 35 | #if IVSIZE8 == 8 |
| 36 | # define TEST_64BIT1 1 |
| 37 | #else |
| 38 | # define TEST_64BIT1 0 |
| 39 | #endif |
| 40 | |
| 41 | #ifdef EBCDIC |
| 42 | |
| 43 | void |
| 44 | cat_utf8a2n(SV* sv, const char * const ascii_utf8, STRLEN len) |
| 45 | { |
| 46 | /* Converts variant UTF-8 text pointed to by 'ascii_utf8' of length 'len', |
| 47 | * to UTF-EBCDIC, appending that text to the text already in 'sv'. |
| 48 | * Currently doesn't work on invariants, as that is unneeded here, and we |
| 49 | * could get double translations if we did. |
| 50 | * |
| 51 | * It has the algorithm for strict UTF-8 hard-coded in to find the code |
| 52 | * point it represents, then calls uvchr_to_utf8() to convert to |
| 53 | * UTF-EBCDIC). |
| 54 | * |
| 55 | * Note that this uses code points, not characters. Thus if the input is |
| 56 | * the UTF-8 for the code point 0xFF, the output will be the UTF-EBCDIC for |
| 57 | * 0xFF, even though that code point represents different characters on |
| 58 | * ASCII vs EBCDIC platforms. */ |
| 59 | |
| 60 | dTHXstruct Perl___notused_struct; |
| 61 | char * p = (char *) ascii_utf8; |
| 62 | const char * const e = p + len; |
| 63 | |
| 64 | while (p < e) { |
| 65 | UV code_point; |
| 66 | U8 native_utf8[UTF8_MAXBYTES13 + 1]; |
| 67 | U8 * char_end; |
| 68 | U8 start = (U8) *p; |
| 69 | |
| 70 | /* Start bytes are the same in both UTF-8 and I8, therefore we can |
| 71 | * treat this ASCII UTF-8 byte as an I8 byte. But PL_utf8skip[] is |
| 72 | * indexed by NATIVE_UTF8 bytes, so transform to that */ |
| 73 | STRLEN char_bytes_len = PL_utf8skip[I8_TO_NATIVE_UTF8(start)( ((U8) ((start) | 0)))]; |
| 74 | |
| 75 | if (start < 0xc2) { |
| 76 | croakPerl_croak("fail: Expecting start byte, instead got 0x%X at %s line %d", |
| 77 | (U8) *p, __FILE__"APItest.xs", __LINE__68); |
| 78 | } |
| 79 | code_point = (start & (((char_bytes_len) >= 7) |
| 80 | ? 0x00 |
| 81 | : (0x1F >> ((char_bytes_len)-2)))); |
| 82 | p++; |
| 83 | while (p < e && ((( (U8) *p) & 0xC0) == 0x80)) { |
| 84 | |
| 85 | code_point = (code_point << 6) | (( (U8) *p) & 0x3F); |
| 86 | p++; |
| 87 | } |
| 88 | |
| 89 | char_end = uvchr_to_utf8(native_utf8, code_point)Perl_uvoffuni_to_utf8_flags_msgs( native_utf8,((UV) ((code_point ) | 0)),0,0); |
| 90 | sv_catpvn(sv, (char *) native_utf8, char_end - native_utf8)Perl_sv_catpvn_flags( sv,(char *) native_utf8,char_end - native_utf8 ,2); |
| 91 | } |
| 92 | } |
| 93 | |
| 94 | #endif |
| 95 | |
| 96 | /* for my_cxt tests */ |
| 97 | |
| 98 | #define MY_CXT_KEY"XS::APItest::_guts" "1.09" "XS::APItest::_guts" XS_VERSION"1.09" |
| 99 | |
| 100 | typedef struct { |
| 101 | int i; |
| 102 | SV *sv; |
| 103 | GV *cscgv; |
| 104 | AV *cscav; |
| 105 | AV *bhkav; |
| 106 | bool_Bool bhk_record; |
| 107 | peep_t orig_peep; |
| 108 | peep_t orig_rpeep; |
| 109 | int peep_recording; |
| 110 | AV *peep_recorder; |
| 111 | AV *rpeep_recorder; |
| 112 | AV *xop_record; |
| 113 | } my_cxt_t; |
| 114 | |
| 115 | START_MY_CXTstatic my_cxt_t my_cxt; |
| 116 | |
| 117 | int |
| 118 | S_myset_set(pTHX_ SV* sv, MAGIC* mg) |
| 119 | { |
| 120 | SV *isv = (SV*)mg->mg_ptr; |
| 121 | |
| 122 | PERL_UNUSED_ARG(sv)((void)sizeof(sv)); |
| 123 | SvIVX(isv)((XPVIV*) (isv)->sv_any)->xiv_u.xivu_iv++; |
| 124 | return 0; |
| 125 | } |
| 126 | |
| 127 | MGVTBL vtbl_foo, vtbl_bar; |
| 128 | MGVTBL vtbl_myset = { 0, S_myset_set, 0, 0, 0, 0, 0, 0 }; |
| 129 | |
| 130 | |
| 131 | /* indirect functions to test the [pa]MY_CXT macros */ |
| 132 | |
| 133 | int |
| 134 | my_cxt_getint_p(pMY_CXTvoid) |
| 135 | { |
| 136 | return MY_CXTmy_cxt.i; |
| 137 | } |
| 138 | |
| 139 | void |
| 140 | my_cxt_setint_p(pMY_CXT_ int i) |
| 141 | { |
| 142 | MY_CXTmy_cxt.i = i; |
| 143 | } |
| 144 | |
| 145 | SV* |
| 146 | my_cxt_getsv_interp_context(void) |
| 147 | { |
| 148 | dTHXstruct Perl___notused_struct; |
| 149 | dMY_CXT_INTERP(my_perl)struct Perl___notused_struct; |
| 150 | return MY_CXTmy_cxt.sv; |
| 151 | } |
| 152 | |
| 153 | SV* |
| 154 | my_cxt_getsv_interp(void) |
| 155 | { |
| 156 | dMY_CXTstruct Perl___notused_struct; |
| 157 | return MY_CXTmy_cxt.sv; |
| 158 | } |
| 159 | |
| 160 | void |
| 161 | my_cxt_setsv_p(SV* sv _pMY_CXT) |
| 162 | { |
| 163 | MY_CXTmy_cxt.sv = sv; |
| 164 | } |
| 165 | |
| 166 | |
| 167 | /* from exception.c */ |
| 168 | int apitest_exception(int); |
| 169 | |
| 170 | /* from core_or_not.inc */ |
| 171 | bool_Bool sv_setsv_cow_hashkey_core(void); |
| 172 | bool_Bool sv_setsv_cow_hashkey_notcore(void); |
| 173 | |
| 174 | /* A routine to test hv_delayfree_ent |
| 175 | (which itself is tested by testing on hv_free_ent */ |
| 176 | |
| 177 | typedef void (freeent_function)(pTHX_ HV *, HE *); |
| 178 | |
| 179 | void |
| 180 | test_freeent(freeent_function *f) { |
| 181 | dSPSV **sp = PL_stack_sp; |
| 182 | HV *test_hash = newHV()((HV *)({ void *_p = (Perl_newSV_type( SVt_PVHV)); _p; })); |
| 183 | HE *victim; |
| 184 | SV *test_scalar; |
| 185 | U32 results[4]; |
| 186 | int i; |
| 187 | |
| 188 | #ifdef PURIFY |
| 189 | victim = (HE*)safemallocPerl_safesysmalloc(sizeof(HE)); |
| 190 | #else |
| 191 | /* Storing then deleting something should ensure that a hash entry is |
| 192 | available. */ |
| 193 | (void) hv_stores(test_hash, "", &PL_sv_yes)((SV**) Perl_hv_common_key_len( ((test_hash)),(("" "" "")),(( sizeof("")-1)),(0x04|0x20),((&(PL_sv_immortals[0]))),(0)) ); |
| 194 | (void) hv_deletes(test_hash, "", 0)(((SV *)({ void *_p = (Perl_hv_common_key_len( ((test_hash)), (("" "" "")),((sizeof("")-1)),((0)) | 0x40,((void*)0),0)); _p ; }))); |
| 195 | |
| 196 | /* We need to "inline" new_he here as it's static, and the functions we |
| 197 | test expect to be able to call del_HE on the HE */ |
| 198 | if (!PL_body_roots[HE_SVSLOTSVt_NULL]) |
| 199 | croakPerl_croak("PL_he_root is 0"); |
| 200 | victim = (HE*) PL_body_roots[HE_SVSLOTSVt_NULL]; |
| 201 | PL_body_roots[HE_SVSLOTSVt_NULL] = HeNEXT(victim)(victim)->hent_next; |
| 202 | #endif |
| 203 | |
| 204 | victim->hent_hek = Perl_share_hek(aTHX_ "", 0, 0); |
| 205 | |
| 206 | test_scalar = newSV(0)Perl_newSV( 0); |
| 207 | SvREFCNT_inc(test_scalar)Perl_SvREFCNT_inc(((SV *)({ void *_p = (test_scalar); _p; })) ); |
| 208 | HeVAL(victim)(victim)->he_valu.hent_val = test_scalar; |
| 209 | |
| 210 | /* Need this little game else we free the temps on the return stack. */ |
| 211 | results[0] = SvREFCNT(test_scalar)(test_scalar)->sv_refcnt; |
| 212 | SAVETMPSPerl_savetmps(); |
| 213 | results[1] = SvREFCNT(test_scalar)(test_scalar)->sv_refcnt; |
| 214 | f(aTHX_ test_hash, victim); |
| 215 | results[2] = SvREFCNT(test_scalar)(test_scalar)->sv_refcnt; |
| 216 | FREETMPSif (PL_tmps_ix > PL_tmps_floor) Perl_free_tmps(); |
| 217 | results[3] = SvREFCNT(test_scalar)(test_scalar)->sv_refcnt; |
| 218 | |
| 219 | i = 0; |
| 220 | do { |
| 221 | mXPUSHu(results[i])do { do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); Perl_sv_setuv ( (*++sp = (Perl_sv_newmortal())),(UV)(results[i])); } while ( 0); |
| 222 | } while (++i < (int)(sizeof(results)/sizeof(results[0]))); |
| 223 | |
| 224 | /* Goodbye to our extra reference. */ |
| 225 | SvREFCNT_dec(test_scalar)Perl_SvREFCNT_dec( ((SV *)({ void *_p = (test_scalar); _p; }) )); |
| 226 | } |
| 227 | |
| 228 | /* Not that it matters much, but it's handy for the flipped character to just |
| 229 | * be the opposite case (at least for ASCII-range and most Latin1 as well). */ |
| 230 | #define FLIP_BIT('A' ^ 'a') ('A' ^ 'a') |
| 231 | |
| 232 | static I32 |
| 233 | bitflip_key(pTHX_ IV action, SV *field) { |
| 234 | MAGIC *mg = mg_findPerl_mg_find(field, PERL_MAGIC_uvar'U'); |
| 235 | SV *keysv; |
| 236 | PERL_UNUSED_ARG(action)((void)sizeof(action)); |
| 237 | if (mg && (keysv = mg->mg_obj)) { |
| 238 | STRLEN len; |
| 239 | const char *p = SvPV(keysv, len)((((keysv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (keysv)->sv_any)->xpv_cur), ((keysv )->sv_u.svu_pv)) : Perl_sv_2pv_flags( keysv,&len,2)); |
| 240 | |
| 241 | if (len) { |
| 242 | /* Allow for the flipped val to be longer than the original. This |
| 243 | * is just for testing, so can afford to have some slop */ |
| 244 | const STRLEN newlen = len * 2; |
| 245 | |
| 246 | SV *newkey = newSV(newlen)Perl_newSV( newlen); |
| 247 | const char * const new_p_orig = SvPVX(newkey)((newkey)->sv_u.svu_pv); |
| 248 | char *new_p = (char *) new_p_orig; |
| 249 | |
| 250 | if (SvUTF8(keysv)((keysv)->sv_flags & 0x20000000)) { |
| 251 | const char *const end = p + len; |
| 252 | while (p < end) { |
| 253 | STRLEN curlen; |
| 254 | UV chr = utf8_to_uvchr_buf((U8 *)p, (U8 *) end, &curlen)Perl_utf8_to_uvchr_buf_helper( (const U8 *) ((U8 *)p),(const U8 *) (U8 *) end,&curlen); |
| 255 | |
| 256 | /* Make sure don't exceed bounds */ |
| 257 | assert(new_p - new_p_orig + curlen < newlen)((void)0); |
| 258 | |
| 259 | new_p = (char *)uvchr_to_utf8((U8 *)new_p, chr ^ FLIP_BIT)Perl_uvoffuni_to_utf8_flags_msgs( (U8 *)new_p,((UV) ((chr ^ ( 'A' ^ 'a')) | 0)),0,0); |
| 260 | p += curlen; |
| 261 | } |
| 262 | SvUTF8_on(newkey)((newkey)->sv_flags |= (0x20000000)); |
| 263 | } else { |
| 264 | while (len--) |
| 265 | *new_p++ = *p++ ^ FLIP_BIT('A' ^ 'a'); |
| 266 | } |
| 267 | *new_p = '\0'; |
| 268 | SvCUR_set(newkey, new_p - new_p_orig)do { ((void)0); ((void)0); ((void)0); (((XPV*) (newkey)->sv_any )->xpv_cur = (new_p - new_p_orig)); } while (0); |
| 269 | SvPOK_on(newkey)( (newkey)->sv_flags |= (0x00000400|0x00004000)); |
| 270 | |
| 271 | mg->mg_obj = newkey; |
| 272 | } |
| 273 | } |
| 274 | return 0; |
| 275 | } |
| 276 | |
| 277 | static I32 |
| 278 | rot13_key(pTHX_ IV action, SV *field) { |
| 279 | MAGIC *mg = mg_findPerl_mg_find(field, PERL_MAGIC_uvar'U'); |
| 280 | SV *keysv; |
| 281 | PERL_UNUSED_ARG(action)((void)sizeof(action)); |
| 282 | if (mg && (keysv = mg->mg_obj)) { |
| 283 | STRLEN len; |
| 284 | const char *p = SvPV(keysv, len)((((keysv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (keysv)->sv_any)->xpv_cur), ((keysv )->sv_u.svu_pv)) : Perl_sv_2pv_flags( keysv,&len,2)); |
| 285 | |
| 286 | if (len) { |
| 287 | SV *newkey = newSV(len)Perl_newSV( len); |
| 288 | char *new_p = SvPVX(newkey)((newkey)->sv_u.svu_pv); |
| 289 | |
| 290 | /* There's a deliberate fencepost error here to loop len + 1 times |
| 291 | to copy the trailing \0 */ |
| 292 | do { |
| 293 | char new_c = *p++; |
| 294 | /* Try doing this cleanly and clearly in EBCDIC another way: */ |
| 295 | switch (new_c) { |
| 296 | case 'A': new_c = 'N'; break; |
| 297 | case 'B': new_c = 'O'; break; |
| 298 | case 'C': new_c = 'P'; break; |
| 299 | case 'D': new_c = 'Q'; break; |
| 300 | case 'E': new_c = 'R'; break; |
| 301 | case 'F': new_c = 'S'; break; |
| 302 | case 'G': new_c = 'T'; break; |
| 303 | case 'H': new_c = 'U'; break; |
| 304 | case 'I': new_c = 'V'; break; |
| 305 | case 'J': new_c = 'W'; break; |
| 306 | case 'K': new_c = 'X'; break; |
| 307 | case 'L': new_c = 'Y'; break; |
| 308 | case 'M': new_c = 'Z'; break; |
| 309 | case 'N': new_c = 'A'; break; |
| 310 | case 'O': new_c = 'B'; break; |
| 311 | case 'P': new_c = 'C'; break; |
| 312 | case 'Q': new_c = 'D'; break; |
| 313 | case 'R': new_c = 'E'; break; |
| 314 | case 'S': new_c = 'F'; break; |
| 315 | case 'T': new_c = 'G'; break; |
| 316 | case 'U': new_c = 'H'; break; |
| 317 | case 'V': new_c = 'I'; break; |
| 318 | case 'W': new_c = 'J'; break; |
| 319 | case 'X': new_c = 'K'; break; |
| 320 | case 'Y': new_c = 'L'; break; |
| 321 | case 'Z': new_c = 'M'; break; |
| 322 | case 'a': new_c = 'n'; break; |
| 323 | case 'b': new_c = 'o'; break; |
| 324 | case 'c': new_c = 'p'; break; |
| 325 | case 'd': new_c = 'q'; break; |
| 326 | case 'e': new_c = 'r'; break; |
| 327 | case 'f': new_c = 's'; break; |
| 328 | case 'g': new_c = 't'; break; |
| 329 | case 'h': new_c = 'u'; break; |
| 330 | case 'i': new_c = 'v'; break; |
| 331 | case 'j': new_c = 'w'; break; |
| 332 | case 'k': new_c = 'x'; break; |
| 333 | case 'l': new_c = 'y'; break; |
| 334 | case 'm': new_c = 'z'; break; |
| 335 | case 'n': new_c = 'a'; break; |
| 336 | case 'o': new_c = 'b'; break; |
| 337 | case 'p': new_c = 'c'; break; |
| 338 | case 'q': new_c = 'd'; break; |
| 339 | case 'r': new_c = 'e'; break; |
| 340 | case 's': new_c = 'f'; break; |
| 341 | case 't': new_c = 'g'; break; |
| 342 | case 'u': new_c = 'h'; break; |
| 343 | case 'v': new_c = 'i'; break; |
| 344 | case 'w': new_c = 'j'; break; |
| 345 | case 'x': new_c = 'k'; break; |
| 346 | case 'y': new_c = 'l'; break; |
| 347 | case 'z': new_c = 'm'; break; |
| 348 | } |
| 349 | *new_p++ = new_c; |
| 350 | } while (len--); |
| 351 | SvCUR_set(newkey, SvCUR(keysv))do { ((void)0); ((void)0); ((void)0); (((XPV*) (newkey)->sv_any )->xpv_cur = (((XPV*) (keysv)->sv_any)->xpv_cur)); } while (0); |
| 352 | SvPOK_on(newkey)( (newkey)->sv_flags |= (0x00000400|0x00004000)); |
| 353 | if (SvUTF8(keysv)((keysv)->sv_flags & 0x20000000)) |
| 354 | SvUTF8_on(newkey)((newkey)->sv_flags |= (0x20000000)); |
| 355 | |
| 356 | mg->mg_obj = newkey; |
| 357 | } |
| 358 | } |
| 359 | return 0; |
| 360 | } |
| 361 | |
| 362 | STATICstatic I32 |
| 363 | rmagical_a_dummy(pTHX_ IV idx, SV *sv) { |
| 364 | PERL_UNUSED_ARG(idx)((void)sizeof(idx)); |
| 365 | PERL_UNUSED_ARG(sv)((void)sizeof(sv)); |
| 366 | return 0; |
| 367 | } |
| 368 | |
| 369 | /* We could do "= { 0 };" but some versions of gcc do warn |
| 370 | * (with -Wextra) about missing initializer, this is probably gcc |
| 371 | * being a bit too paranoid. But since this is file-static, we can |
| 372 | * just have it without initializer, since it should get |
| 373 | * zero-initialized. */ |
| 374 | STATICstatic MGVTBL rmagical_b; |
| 375 | |
| 376 | STATICstatic void |
| 377 | blockhook_csc_start(pTHX_ int full) |
| 378 | { |
| 379 | dMY_CXTstruct Perl___notused_struct; |
| 380 | AV *const cur = GvAV(MY_CXT.cscgv)((0+(my_cxt.cscgv)->sv_u.svu_gp)->gp_av); |
| 381 | |
| 382 | PERL_UNUSED_ARG(full)((void)sizeof(full)); |
| 383 | SAVEGENERICSV(GvAV(MY_CXT.cscgv))Perl_save_generic_svref( (SV**)&(((0+(my_cxt.cscgv)->sv_u .svu_gp)->gp_av))); |
| 384 | |
| 385 | if (cur) { |
| 386 | I32 i; |
| 387 | AV *const new_av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 388 | |
| 389 | for (i = 0; i <= av_tindex(cur)Perl_av_top_index( cur); i++) { |
| 390 | av_store(new_av, i, newSVsv(*av_fetch(cur, i, 0)))Perl_av_store( new_av,i,Perl_newSVsv_flags( (*Perl_av_fetch( cur ,i,0)),2|16)); |
| 391 | } |
| 392 | |
| 393 | GvAV(MY_CXT.cscgv)((0+(my_cxt.cscgv)->sv_u.svu_gp)->gp_av) = new_av; |
| 394 | } |
| 395 | } |
| 396 | |
| 397 | STATICstatic void |
| 398 | blockhook_csc_pre_end(pTHX_ OP **o) |
| 399 | { |
| 400 | dMY_CXTstruct Perl___notused_struct; |
| 401 | |
| 402 | PERL_UNUSED_ARG(o)((void)sizeof(o)); |
| 403 | /* if we hit the end of a scope we missed the start of, we need to |
| 404 | * unconditionally clear @CSC */ |
| 405 | if (GvAV(MY_CXT.cscgv)((0+(my_cxt.cscgv)->sv_u.svu_gp)->gp_av) == MY_CXTmy_cxt.cscav && MY_CXTmy_cxt.cscav) { |
| 406 | av_clear(MY_CXT.cscav)Perl_av_clear( my_cxt.cscav); |
| 407 | } |
| 408 | |
| 409 | } |
| 410 | |
| 411 | STATICstatic void |
| 412 | blockhook_test_start(pTHX_ int full) |
| 413 | { |
| 414 | dMY_CXTstruct Perl___notused_struct; |
| 415 | AV *av; |
| 416 | |
| 417 | if (MY_CXTmy_cxt.bhk_record) { |
| 418 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 419 | av_push(av, newSVpvs("start"))Perl_av_push( av,Perl_newSVpvn( ("" "start" ""), (sizeof("start" )-1))); |
| 420 | av_push(av, newSViv(full))Perl_av_push( av,Perl_newSViv( full)); |
| 421 | av_push(MY_CXT.bhkav, newRV_noinc(MUTABLE_SV(av)))Perl_av_push( my_cxt.bhkav,Perl_newRV_noinc( ((SV *)({ void * _p = (av); _p; })))); |
| 422 | } |
| 423 | } |
| 424 | |
| 425 | STATICstatic void |
| 426 | blockhook_test_pre_end(pTHX_ OP **o) |
| 427 | { |
| 428 | dMY_CXTstruct Perl___notused_struct; |
| 429 | |
| 430 | PERL_UNUSED_ARG(o)((void)sizeof(o)); |
| 431 | if (MY_CXTmy_cxt.bhk_record) |
| 432 | av_push(MY_CXT.bhkav, newSVpvs("pre_end"))Perl_av_push( my_cxt.bhkav,Perl_newSVpvn( ("" "pre_end" ""), ( sizeof("pre_end")-1))); |
| 433 | } |
| 434 | |
| 435 | STATICstatic void |
| 436 | blockhook_test_post_end(pTHX_ OP **o) |
| 437 | { |
| 438 | dMY_CXTstruct Perl___notused_struct; |
| 439 | |
| 440 | PERL_UNUSED_ARG(o)((void)sizeof(o)); |
| 441 | if (MY_CXTmy_cxt.bhk_record) |
| 442 | av_push(MY_CXT.bhkav, newSVpvs("post_end"))Perl_av_push( my_cxt.bhkav,Perl_newSVpvn( ("" "post_end" ""), (sizeof("post_end")-1))); |
| 443 | } |
| 444 | |
| 445 | STATICstatic void |
| 446 | blockhook_test_eval(pTHX_ OP *const o) |
| 447 | { |
| 448 | dMY_CXTstruct Perl___notused_struct; |
| 449 | AV *av; |
| 450 | |
| 451 | if (MY_CXTmy_cxt.bhk_record) { |
| 452 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 453 | av_push(av, newSVpvs("eval"))Perl_av_push( av,Perl_newSVpvn( ("" "eval" ""), (sizeof("eval" )-1))); |
| 454 | av_push(av, newSVpv(OP_NAME(o), 0))Perl_av_push( av,Perl_newSVpv( ((o)->op_type == OP_CUSTOM ? (Perl_custom_op_get_field( o, XOPe_xop_name).xop_name) : PL_op_name [(o)->op_type]),0)); |
| 455 | av_push(MY_CXT.bhkav, newRV_noinc(MUTABLE_SV(av)))Perl_av_push( my_cxt.bhkav,Perl_newRV_noinc( ((SV *)({ void * _p = (av); _p; })))); |
| 456 | } |
| 457 | } |
| 458 | |
| 459 | STATICstatic BHK bhk_csc, bhk_test; |
| 460 | |
| 461 | STATICstatic void |
| 462 | my_peep (pTHX_ OP *o) |
| 463 | { |
| 464 | dMY_CXTstruct Perl___notused_struct; |
| 465 | |
| 466 | if (!o) |
| 467 | return; |
| 468 | |
| 469 | MY_CXTmy_cxt.orig_peep(aTHX_ o); |
| 470 | |
| 471 | if (!MY_CXTmy_cxt.peep_recording) |
| 472 | return; |
| 473 | |
| 474 | for (; o; o = o->op_next) { |
| 475 | if (o->op_type == OP_CONST && cSVOPx_sv(o)(((SVOP*)(o))->op_sv) && SvPOK(cSVOPx_sv(o))(((((SVOP*)(o))->op_sv))->sv_flags & 0x00000400)) { |
| 476 | av_push(MY_CXT.peep_recorder, newSVsv(cSVOPx_sv(o)))Perl_av_push( my_cxt.peep_recorder,Perl_newSVsv_flags( ((((SVOP *)(o))->op_sv)),2|16)); |
| 477 | } |
| 478 | } |
| 479 | } |
| 480 | |
| 481 | STATICstatic void |
| 482 | my_rpeep (pTHX_ OP *o) |
| 483 | { |
| 484 | dMY_CXTstruct Perl___notused_struct; |
| 485 | |
| 486 | if (!o) |
| 487 | return; |
| 488 | |
| 489 | MY_CXTmy_cxt.orig_rpeep(aTHX_ o); |
| 490 | |
| 491 | if (!MY_CXTmy_cxt.peep_recording) |
| 492 | return; |
| 493 | |
| 494 | for (; o; o = o->op_next) { |
| 495 | if (o->op_type == OP_CONST && cSVOPx_sv(o)(((SVOP*)(o))->op_sv) && SvPOK(cSVOPx_sv(o))(((((SVOP*)(o))->op_sv))->sv_flags & 0x00000400)) { |
| 496 | av_push(MY_CXT.rpeep_recorder, newSVsv(cSVOPx_sv(o)))Perl_av_push( my_cxt.rpeep_recorder,Perl_newSVsv_flags( ((((SVOP *)(o))->op_sv)),2|16)); |
| 497 | } |
| 498 | } |
| 499 | } |
| 500 | |
| 501 | STATICstatic OP * |
| 502 | THX_ck_entersub_args_lists(pTHX_ OP *entersubop, GV *namegv, SV *ckobj) |
| 503 | { |
| 504 | PERL_UNUSED_ARG(namegv)((void)sizeof(namegv)); |
| 505 | PERL_UNUSED_ARG(ckobj)((void)sizeof(ckobj)); |
| 506 | return ck_entersub_args_list(entersubop)Perl_ck_entersub_args_list( entersubop); |
| 507 | } |
| 508 | |
| 509 | STATICstatic OP * |
| 510 | THX_ck_entersub_args_scalars(pTHX_ OP *entersubop, GV *namegv, SV *ckobj) |
| 511 | { |
| 512 | OP *aop = cUNOPx(entersubop)((UNOP*)(entersubop))->op_first; |
| 513 | PERL_UNUSED_ARG(namegv)((void)sizeof(namegv)); |
| 514 | PERL_UNUSED_ARG(ckobj)((void)sizeof(ckobj)); |
| 515 | if (!OpHAS_SIBLING(aop)((((aop)->op_moresib) ? (_Bool)1 : (_Bool)0))) |
| 516 | aop = cUNOPx(aop)((UNOP*)(aop))->op_first; |
| 517 | for (aop = OpSIBLING(aop)(0 + (aop)->op_moresib ? (aop)->op_sibparent : ((void*) 0)); OpHAS_SIBLING(aop)((((aop)->op_moresib) ? (_Bool)1 : (_Bool)0)); aop = OpSIBLING(aop)(0 + (aop)->op_moresib ? (aop)->op_sibparent : ((void*) 0))) { |
| 518 | op_contextualize(aop, G_SCALAR)Perl_op_contextualize( aop,2); |
| 519 | } |
| 520 | return entersubop; |
| 521 | } |
| 522 | |
| 523 | STATICstatic OP * |
| 524 | THX_ck_entersub_multi_sum(pTHX_ OP *entersubop, GV *namegv, SV *ckobj) |
| 525 | { |
| 526 | OP *sumop = NULL((void*)0); |
| 527 | OP *parent = entersubop; |
| 528 | OP *pushop = cUNOPx(entersubop)((UNOP*)(entersubop))->op_first; |
| 529 | PERL_UNUSED_ARG(namegv)((void)sizeof(namegv)); |
| 530 | PERL_UNUSED_ARG(ckobj)((void)sizeof(ckobj)); |
| 531 | if (!OpHAS_SIBLING(pushop)((((pushop)->op_moresib) ? (_Bool)1 : (_Bool)0))) { |
| 532 | parent = pushop; |
| 533 | pushop = cUNOPx(pushop)((UNOP*)(pushop))->op_first; |
| 534 | } |
| 535 | while (1) { |
| 536 | OP *aop = OpSIBLING(pushop)(0 + (pushop)->op_moresib ? (pushop)->op_sibparent : (( void*)0)); |
| 537 | if (!OpHAS_SIBLING(aop)((((aop)->op_moresib) ? (_Bool)1 : (_Bool)0))) |
| 538 | break; |
| 539 | /* cut out first arg */ |
| 540 | op_sibling_splicePerl_op_sibling_splice(parent, pushop, 1, NULL((void*)0)); |
| 541 | op_contextualize(aop, G_SCALAR)Perl_op_contextualize( aop,2); |
| 542 | if (sumop) { |
| 543 | sumop = newBINOP(OP_ADD, 0, sumop, aop)Perl_newBINOP( OP_ADD,0,sumop,aop); |
| 544 | } else { |
| 545 | sumop = aop; |
| 546 | } |
| 547 | } |
| 548 | if (!sumop) |
| 549 | sumop = newSVOP(OP_CONST, 0, newSViv(0))Perl_newSVOP( OP_CONST,0,Perl_newSViv( 0)); |
| 550 | op_free(entersubop)Perl_op_free( entersubop); |
| 551 | return sumop; |
| 552 | } |
| 553 | |
| 554 | STATICstatic void test_op_list_describe_part(SV *res, OP *o); |
| 555 | STATICstatic void |
| 556 | test_op_list_describe_part(SV *res, OP *o) |
| 557 | { |
| 558 | sv_catpv(res, PL_op_name[o->op_type])Perl_sv_catpv( res,PL_op_name[o->op_type]); |
| 559 | switch (o->op_type) { |
| 560 | case OP_CONST: { |
| 561 | sv_catpvfPerl_sv_catpvf(res, "(%d)", (int)SvIV(cSVOPx(o)->op_sv)((((((SVOP*)(o))->op_sv)->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (((SVOP*)(o))->op_sv)->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( ((SVOP*)(o))->op_sv ,2))); |
| 562 | } break; |
| 563 | } |
| 564 | if (o->op_flags & OPf_KIDS4) { |
| 565 | OP *k; |
| 566 | sv_catpvs(res, "[")Perl_sv_catpvn_flags( res, ("" "[" ""), (sizeof("[")-1), 2); |
| 567 | for (k = cUNOPx(o)((UNOP*)(o))->op_first; k; k = OpSIBLING(k)(0 + (k)->op_moresib ? (k)->op_sibparent : ((void*)0))) |
| 568 | test_op_list_describe_part(res, k); |
| 569 | sv_catpvs(res, "]")Perl_sv_catpvn_flags( res, ("" "]" ""), (sizeof("]")-1), 2); |
| 570 | } else { |
| 571 | sv_catpvs(res, ".")Perl_sv_catpvn_flags( res, ("" "." ""), (sizeof(".")-1), 2); |
| 572 | } |
| 573 | } |
| 574 | |
| 575 | STATICstatic char * |
| 576 | test_op_list_describe(OP *o) |
| 577 | { |
| 578 | SV *res = sv_2mortal(newSVpvs(""))Perl_sv_2mortal( Perl_newSVpvn( ("" "" ""), (sizeof("")-1))); |
| 579 | if (o) |
| 580 | test_op_list_describe_part(res, o); |
| 581 | return SvPVX(res)((res)->sv_u.svu_pv); |
| 582 | } |
| 583 | |
| 584 | /* the real new*OP functions have a tendency to call fold_constants, and |
| 585 | * other such unhelpful things, so we need our own versions for testing */ |
| 586 | |
| 587 | #define mkUNOP(t, f)THX_mkUNOP( (t), (f)) THX_mkUNOP(aTHX_ (t), (f)) |
| 588 | static OP * |
| 589 | THX_mkUNOP(pTHX_ U32 type, OP *first) |
| 590 | { |
| 591 | UNOP *unop; |
| 592 | NewOp(1103, unop, 1, UNOP)(unop = (UNOP *) Perl_Slab_Alloc( 1*sizeof(UNOP))); |
| 593 | unop->op_type = (OPCODEU16)type; |
| 594 | op_sibling_splicePerl_op_sibling_splice((OP*)unop, NULL((void*)0), 0, first); |
| 595 | return (OP *)unop; |
| 596 | } |
| 597 | |
| 598 | #define mkBINOP(t, f, l)THX_mkBINOP( (t), (f), (l)) THX_mkBINOP(aTHX_ (t), (f), (l)) |
| 599 | static OP * |
| 600 | THX_mkBINOP(pTHX_ U32 type, OP *first, OP *last) |
| 601 | { |
| 602 | BINOP *binop; |
| 603 | NewOp(1103, binop, 1, BINOP)(binop = (BINOP *) Perl_Slab_Alloc( 1*sizeof(BINOP))); |
| 604 | binop->op_type = (OPCODEU16)type; |
| 605 | op_sibling_splicePerl_op_sibling_splice((OP*)binop, NULL((void*)0), 0, last); |
| 606 | op_sibling_splicePerl_op_sibling_splice((OP*)binop, NULL((void*)0), 0, first); |
| 607 | return (OP *)binop; |
| 608 | } |
| 609 | |
| 610 | #define mkLISTOP(t, f, s, l)THX_mkLISTOP( (t), (f), (s), (l)) THX_mkLISTOP(aTHX_ (t), (f), (s), (l)) |
| 611 | static OP * |
| 612 | THX_mkLISTOP(pTHX_ U32 type, OP *first, OP *sib, OP *last) |
| 613 | { |
| 614 | LISTOP *listop; |
| 615 | NewOp(1103, listop, 1, LISTOP)(listop = (LISTOP *) Perl_Slab_Alloc( 1*sizeof(LISTOP))); |
| 616 | listop->op_type = (OPCODEU16)type; |
| 617 | op_sibling_splicePerl_op_sibling_splice((OP*)listop, NULL((void*)0), 0, last); |
| 618 | op_sibling_splicePerl_op_sibling_splice((OP*)listop, NULL((void*)0), 0, sib); |
| 619 | op_sibling_splicePerl_op_sibling_splice((OP*)listop, NULL((void*)0), 0, first); |
| 620 | return (OP *)listop; |
| 621 | } |
| 622 | |
| 623 | static char * |
| 624 | test_op_linklist_describe(OP *start) |
| 625 | { |
| 626 | SV *rv = sv_2mortal(newSVpvs(""))Perl_sv_2mortal( Perl_newSVpvn( ("" "" ""), (sizeof("")-1))); |
| 627 | OP *o; |
| 628 | o = start = LINKLIST(start)((start)->op_next ? (start)->op_next : Perl_op_linklist ( (OP*)start)); |
| 629 | do { |
| 630 | sv_catpvs(rv, ".")Perl_sv_catpvn_flags( rv, ("" "." ""), (sizeof(".")-1), 2); |
| 631 | sv_catpv(rv, OP_NAME(o))Perl_sv_catpv( rv,((o)->op_type == OP_CUSTOM ? (Perl_custom_op_get_field ( o, XOPe_xop_name).xop_name) : PL_op_name[(o)->op_type])); |
| 632 | if (o->op_type == OP_CONST) |
| 633 | sv_catsv(rv, cSVOPo->op_sv)Perl_sv_catsv_flags( rv,((SVOP*)(o))->op_sv,2); |
| 634 | o = o->op_next; |
| 635 | } while (o && o != start); |
| 636 | return SvPVX(rv)((rv)->sv_u.svu_pv); |
| 637 | } |
| 638 | |
| 639 | /** establish_cleanup operator, ripped off from Scope::Cleanup **/ |
| 640 | |
| 641 | STATICstatic void |
| 642 | THX_run_cleanup(pTHX_ void *cleanup_code_ref) |
| 643 | { |
| 644 | dSPSV **sp = PL_stack_sp; |
| 645 | PUSHSTACKdo { PERL_SI *next = PL_curstackinfo->si_next; if (!next) { next = Perl_new_stackinfo( 32,2048/sizeof(PERL_CONTEXT) - 1) ; next->si_prev = PL_curstackinfo; PL_curstackinfo->si_next = next; } next->si_type = -1; next->si_cxix = -1; next ->si_cxsubix = -1; (void)0; ((XPVAV*) (next->si_stack)-> sv_any)->xav_fill = 0; do { ((XPVAV*) (PL_curstack)->sv_any )->xav_fill = sp - PL_stack_base; PL_stack_base = ((next-> si_stack)->sv_u.svu_array); PL_stack_max = PL_stack_base + ((XPVAV*) (next->si_stack)->sv_any)->xav_max; sp = PL_stack_sp = PL_stack_base + ((XPVAV*) (next->si_stack)->sv_any)-> xav_fill; PL_curstack = next->si_stack; } while (0); PL_curstackinfo = next; (void)0; } while (0); |
| 646 | ENTERPerl_push_scope(); |
| 647 | SAVETMPSPerl_savetmps(); |
| 648 | PUSHMARK(SP)do { I32 * mark_stack_entry; if (__builtin_expect((((mark_stack_entry = ++PL_markstack_ptr) == PL_markstack_max) ? (_Bool)1 : (_Bool )0),(0))) mark_stack_entry = Perl_markstack_grow(); *mark_stack_entry = (I32)((sp) - PL_stack_base); ; } while (0); |
| 649 | call_sv((SV*)cleanup_code_ref, G_VOID|G_DISCARD)Perl_call_sv( (SV*)cleanup_code_ref,1|0x4); |
| 650 | FREETMPSif (PL_tmps_ix > PL_tmps_floor) Perl_free_tmps(); |
| 651 | LEAVEPerl_pop_scope(); |
| 652 | POPSTACKdo { SV **sp = PL_stack_sp; PERL_SI * const prev = PL_curstackinfo ->si_prev; if (!prev) { Perl_croak_popstack(); } do { ((XPVAV *) (PL_curstack)->sv_any)->xav_fill = sp - PL_stack_base ; PL_stack_base = ((prev->si_stack)->sv_u.svu_array); PL_stack_max = PL_stack_base + ((XPVAV*) (prev->si_stack)->sv_any)-> xav_max; sp = PL_stack_sp = PL_stack_base + ((XPVAV*) (prev-> si_stack)->sv_any)->xav_fill; PL_curstack = prev->si_stack ; } while (0); PL_curstackinfo = prev; } while (0); |
| 653 | } |
| 654 | |
| 655 | STATICstatic OP * |
| 656 | THX_pp_establish_cleanup(pTHXvoid) |
| 657 | { |
| 658 | dSPSV **sp = PL_stack_sp; |
| 659 | SV *cleanup_code_ref; |
| 660 | cleanup_code_ref = newSVsv(POPs)Perl_newSVsv_flags( ((*sp--)),2|16); |
| 661 | SAVEFREESV(cleanup_code_ref)Perl_save_pushptr( (void *)(((SV *)({ void *_p = (cleanup_code_ref ); _p; }))),11); |
| 662 | SAVEDESTRUCTOR_X(THX_run_cleanup, cleanup_code_ref)Perl_save_destructor_x( (DESTRUCTORFUNC_t)(THX_run_cleanup),( void*)(cleanup_code_ref)); |
| 663 | if(GIMME_VPerl_gimme_V() != G_VOID1) PUSHs(&PL_sv_undef)(*++sp = (&(PL_sv_immortals[1]))); |
| 664 | RETURNreturn (PL_stack_sp = sp, PL_op->op_next); |
| 665 | } |
| 666 | |
| 667 | STATICstatic OP * |
| 668 | THX_ck_entersub_establish_cleanup(pTHX_ OP *entersubop, GV *namegv, SV *ckobj) |
| 669 | { |
| 670 | OP *parent, *pushop, *argop, *estop; |
| 671 | ck_entersub_args_proto(entersubop, namegv, ckobj)Perl_ck_entersub_args_proto( entersubop,namegv,ckobj); |
| 672 | parent = entersubop; |
| 673 | pushop = cUNOPx(entersubop)((UNOP*)(entersubop))->op_first; |
| 674 | if(!OpHAS_SIBLING(pushop)((((pushop)->op_moresib) ? (_Bool)1 : (_Bool)0))) { |
| 675 | parent = pushop; |
| 676 | pushop = cUNOPx(pushop)((UNOP*)(pushop))->op_first; |
| 677 | } |
| 678 | /* extract out first arg, then delete the rest of the tree */ |
| 679 | argop = OpSIBLING(pushop)(0 + (pushop)->op_moresib ? (pushop)->op_sibparent : (( void*)0)); |
| 680 | op_sibling_splicePerl_op_sibling_splice(parent, pushop, 1, NULL((void*)0)); |
| 681 | op_free(entersubop)Perl_op_free( entersubop); |
| 682 | |
| 683 | estop = mkUNOP(OP_RAND, argop)THX_mkUNOP( (OP_RAND), (argop)); |
| 684 | estop->op_ppaddr = THX_pp_establish_cleanup; |
| 685 | PL_hintsPL_compiling.cop_hints |= HINT_BLOCK_SCOPE0x00000100; |
| 686 | return estop; |
| 687 | } |
| 688 | |
| 689 | STATICstatic OP * |
| 690 | THX_ck_entersub_postinc(pTHX_ OP *entersubop, GV *namegv, SV *ckobj) |
| 691 | { |
| 692 | OP *parent, *pushop, *argop; |
| 693 | ck_entersub_args_proto(entersubop, namegv, ckobj)Perl_ck_entersub_args_proto( entersubop,namegv,ckobj); |
| 694 | parent = entersubop; |
| 695 | pushop = cUNOPx(entersubop)((UNOP*)(entersubop))->op_first; |
| 696 | if(!OpHAS_SIBLING(pushop)((((pushop)->op_moresib) ? (_Bool)1 : (_Bool)0))) { |
| 697 | parent = pushop; |
| 698 | pushop = cUNOPx(pushop)((UNOP*)(pushop))->op_first; |
| 699 | } |
| 700 | argop = OpSIBLING(pushop)(0 + (pushop)->op_moresib ? (pushop)->op_sibparent : (( void*)0)); |
| 701 | op_sibling_splicePerl_op_sibling_splice(parent, pushop, 1, NULL((void*)0)); |
| 702 | op_free(entersubop)Perl_op_free( entersubop); |
| 703 | return newUNOP(OP_POSTINC, 0,Perl_newUNOP( OP_POSTINC,0,Perl_op_lvalue_flags( Perl_op_contextualize ( argop,2),OP_POSTINC,0)) |
| 704 | op_lvalue(op_contextualize(argop, G_SCALAR), OP_POSTINC))Perl_newUNOP( OP_POSTINC,0,Perl_op_lvalue_flags( Perl_op_contextualize ( argop,2),OP_POSTINC,0)); |
| 705 | } |
| 706 | |
| 707 | STATICstatic OP * |
| 708 | THX_ck_entersub_pad_scalar(pTHX_ OP *entersubop, GV *namegv, SV *ckobj) |
| 709 | { |
| 710 | OP *pushop, *argop; |
| 711 | PADOFFSET padoff = NOT_IN_PAD((PADOFFSET) -1); |
| 712 | SV *a0, *a1; |
| 713 | ck_entersub_args_proto(entersubop, namegv, ckobj)Perl_ck_entersub_args_proto( entersubop,namegv,ckobj); |
| 714 | pushop = cUNOPx(entersubop)((UNOP*)(entersubop))->op_first; |
| 715 | if(!OpHAS_SIBLING(pushop)((((pushop)->op_moresib) ? (_Bool)1 : (_Bool)0))) |
| 716 | pushop = cUNOPx(pushop)((UNOP*)(pushop))->op_first; |
| 717 | argop = OpSIBLING(pushop)(0 + (pushop)->op_moresib ? (pushop)->op_sibparent : (( void*)0)); |
| 718 | if(argop->op_type != OP_CONST || OpSIBLING(argop)(0 + (argop)->op_moresib ? (argop)->op_sibparent : ((void *)0))->op_type != OP_CONST) |
| 719 | croakPerl_croak("bad argument expression type for pad_scalar()"); |
| 720 | a0 = cSVOPx_sv(argop)(((SVOP*)(argop))->op_sv); |
| 721 | a1 = cSVOPx_sv(OpSIBLING(argop))(((SVOP*)((0 + (argop)->op_moresib ? (argop)->op_sibparent : ((void*)0))))->op_sv); |
| 722 | switch(SvIV(a0)((((a0)->sv_flags & (0x00000100|0x00200000)) == 0x00000100 ) ? ((XPVIV*) (a0)->sv_any)->xiv_u.xivu_iv : Perl_sv_2iv_flags ( a0,2))) { |
| 723 | case 1: { |
| 724 | SV *namesv = sv_2mortal(newSVpvs("$"))Perl_sv_2mortal( Perl_newSVpvn( ("" "$" ""), (sizeof("$")-1)) ); |
| 725 | sv_catsv(namesv, a1)Perl_sv_catsv_flags( namesv,a1,2); |
| 726 | padoff = pad_findmy_sv(namesv, 0)Perl_pad_findmy_sv( namesv,0); |
| 727 | } break; |
| 728 | case 2: { |
| 729 | char *namepv; |
| 730 | STRLEN namelen; |
| 731 | SV *namesv = sv_2mortal(newSVpvs("$"))Perl_sv_2mortal( Perl_newSVpvn( ("" "$" ""), (sizeof("$")-1)) ); |
| 732 | sv_catsv(namesv, a1)Perl_sv_catsv_flags( namesv,a1,2); |
| 733 | namepv = SvPV(namesv, namelen)((((namesv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((namelen = ((XPV*) (namesv)->sv_any)->xpv_cur), (( namesv)->sv_u.svu_pv)) : Perl_sv_2pv_flags( namesv,&namelen ,2)); |
| 734 | padoff = pad_findmy_pvn(namepv, namelen, SvUTF8(namesv))Perl_pad_findmy_pvn( namepv,namelen,((namesv)->sv_flags & 0x20000000)); |
| 735 | } break; |
| 736 | case 3: { |
| 737 | char *namepv; |
| 738 | SV *namesv = sv_2mortal(newSVpvs("$"))Perl_sv_2mortal( Perl_newSVpvn( ("" "$" ""), (sizeof("$")-1)) ); |
| 739 | sv_catsv(namesv, a1)Perl_sv_catsv_flags( namesv,a1,2); |
| 740 | namepv = SvPV_nolen(namesv)((((namesv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((namesv)->sv_u.svu_pv) : Perl_sv_2pv_flags( namesv,0, 2)); |
| 741 | padoff = pad_findmy_pv(namepv, SvUTF8(namesv))Perl_pad_findmy_pv( namepv,((namesv)->sv_flags & 0x20000000 )); |
| 742 | } break; |
| 743 | case 4: { |
| 744 | padoff = pad_findmy_pvs("$foo", 0)Perl_pad_findmy_pvn( ("" "$foo" ""), (sizeof("$foo")-1), 0); |
| 745 | } break; |
| 746 | default: croakPerl_croak("bad type value for pad_scalar()"); |
| 747 | } |
| 748 | op_free(entersubop)Perl_op_free( entersubop); |
| 749 | if(padoff == NOT_IN_PAD((PADOFFSET) -1)) { |
| 750 | return newSVOP(OP_CONST, 0, newSVpvs("NOT_IN_PAD"))Perl_newSVOP( OP_CONST,0,Perl_newSVpvn( ("" "NOT_IN_PAD" ""), (sizeof("NOT_IN_PAD")-1))); |
| 751 | } else if(PAD_COMPNAME_FLAGS_isOUR(padoff)(!!(((PL_comppad_name)->xpadnl_alloc[(padoff)]))->xpadn_ourstash )) { |
| 752 | return newSVOP(OP_CONST, 0, newSVpvs("NOT_MY"))Perl_newSVOP( OP_CONST,0,Perl_newSVpvn( ("" "NOT_MY" ""), (sizeof ("NOT_MY")-1))); |
| 753 | } else { |
| 754 | OP *padop = newOP(OP_PADSV, 0)Perl_newOP( OP_PADSV,0); |
| 755 | padop->op_targ = padoff; |
| 756 | return padop; |
| 757 | } |
| 758 | } |
| 759 | |
| 760 | /** RPN keyword parser **/ |
| 761 | |
| 762 | #define sv_is_glob(sv)(((svtype)((sv)->sv_flags & 0xff)) == SVt_PVGV) (SvTYPE(sv)((svtype)((sv)->sv_flags & 0xff)) == SVt_PVGV) |
| 763 | #define sv_is_regexp(sv)(((svtype)((sv)->sv_flags & 0xff)) == SVt_REGEXP) (SvTYPE(sv)((svtype)((sv)->sv_flags & 0xff)) == SVt_REGEXP) |
| 764 | #define sv_is_string(sv)(!(((svtype)((sv)->sv_flags & 0xff)) == SVt_PVGV) && !(((svtype)((sv)->sv_flags & 0xff)) == SVt_REGEXP) && ((sv)->sv_flags & (0x00000100|0x00000200|0x00000400|0x00001000 |0x00002000|0x00004000))) \ |
| 765 | (!sv_is_glob(sv)(((svtype)((sv)->sv_flags & 0xff)) == SVt_PVGV) && !sv_is_regexp(sv)(((svtype)((sv)->sv_flags & 0xff)) == SVt_REGEXP) && \ |
| 766 | (SvFLAGS(sv)(sv)->sv_flags & (SVf_IOK0x00000100|SVf_NOK0x00000200|SVf_POK0x00000400|SVp_IOK0x00001000|SVp_NOK0x00002000|SVp_POK0x00004000))) |
| 767 | |
| 768 | static SV *hintkey_rpn_sv, *hintkey_calcrpn_sv, *hintkey_stufftest_sv; |
| 769 | static SV *hintkey_swaptwostmts_sv, *hintkey_looprest_sv; |
| 770 | static SV *hintkey_scopelessblock_sv; |
| 771 | static SV *hintkey_stmtasexpr_sv, *hintkey_stmtsasexpr_sv; |
| 772 | static SV *hintkey_loopblock_sv, *hintkey_blockasexpr_sv; |
| 773 | static SV *hintkey_swaplabel_sv, *hintkey_labelconst_sv; |
| 774 | static SV *hintkey_arrayfullexpr_sv, *hintkey_arraylistexpr_sv; |
| 775 | static SV *hintkey_arraytermexpr_sv, *hintkey_arrayarithexpr_sv; |
| 776 | static SV *hintkey_arrayexprflags_sv; |
| 777 | static SV *hintkey_subsignature_sv; |
| 778 | static SV *hintkey_DEFSV_sv; |
| 779 | static SV *hintkey_with_vars_sv; |
| 780 | static SV *hintkey_join_with_space_sv; |
| 781 | static int (*next_keyword_plugin)(pTHX_ char *, STRLEN, OP **); |
| 782 | |
| 783 | /* low-level parser helpers */ |
| 784 | |
| 785 | #define PL_bufptr(PL_parser->bufptr) (PL_parser->bufptr) |
| 786 | #define PL_bufend(PL_parser->bufend) (PL_parser->bufend) |
| 787 | |
| 788 | /* RPN parser */ |
| 789 | |
| 790 | #define parse_var()THX_parse_var() THX_parse_var(aTHX) |
| 791 | static OP *THX_parse_var(pTHXvoid) |
| 792 | { |
| 793 | char *s = PL_bufptr(PL_parser->bufptr); |
| 794 | char *start = s; |
| 795 | PADOFFSET varpos; |
| 796 | OP *padop; |
| 797 | if(*s != '$') croakPerl_croak("RPN syntax error"); |
| 798 | while(1) { |
| 799 | char c = *++s; |
| 800 | if(!isALNUM(c)(( (sizeof(c) == 1) || !(((U64)((c) | 0)) & ~0xFF)) && ((PL_charclass[(U8) (c)] & ((1U << (0)) | (1U << (14)))) == ((1U << (0)) | (1U << (14)))))) break; |
| 801 | } |
| 802 | if(s-start < 2) croakPerl_croak("RPN syntax error"); |
| 803 | lex_read_to(s)Perl_lex_read_to( s); |
| 804 | varpos = pad_findmy_pvn(start, s-start, 0)Perl_pad_findmy_pvn( start,s-start,0); |
| 805 | if(varpos == NOT_IN_PAD((PADOFFSET) -1) || PAD_COMPNAME_FLAGS_isOUR(varpos)(!!(((PL_comppad_name)->xpadnl_alloc[(varpos)]))->xpadn_ourstash )) |
| 806 | croakPerl_croak("RPN only supports \"my\" variables"); |
| 807 | padop = newOP(OP_PADSV, 0)Perl_newOP( OP_PADSV,0); |
| 808 | padop->op_targ = varpos; |
| 809 | return padop; |
| 810 | } |
| 811 | |
| 812 | #define push_rpn_item(o)Perl_op_sibling_splice(parent, ((void*)0), 0, o); \ |
| 813 | op_sibling_splicePerl_op_sibling_splice(parent, NULL((void*)0), 0, o); |
| 814 | #define pop_rpn_item()( (tmpop = Perl_op_sibling_splice(parent, ((void*)0), 1, ((void *)0))) ? tmpop : (Perl_croak("RPN stack underflow"), (OP*)((void *)0))) ( \ |
| 815 | (tmpop = op_sibling_splicePerl_op_sibling_splice(parent, NULL((void*)0), 1, NULL((void*)0))) \ |
| 816 | ? tmpop : (croakPerl_croak("RPN stack underflow"), (OP*)NULL((void*)0))) |
| 817 | |
| 818 | #define parse_rpn_expr()THX_parse_rpn_expr() THX_parse_rpn_expr(aTHX) |
| 819 | static OP *THX_parse_rpn_expr(pTHXvoid) |
| 820 | { |
| 821 | OP *tmpop; |
| 822 | /* fake parent for splice to mess with */ |
| 823 | OP *parent = mkBINOP(OP_NULL, NULL, NULL)THX_mkBINOP( (OP_NULL), (((void*)0)), (((void*)0))); |
| 824 | |
| 825 | while(1) { |
| 826 | I32 c; |
| 827 | lex_read_space(0)Perl_lex_read_space( 0); |
| 828 | c = lex_peek_unichar(0)Perl_lex_peek_unichar( 0); |
| 829 | switch(c) { |
| 830 | case /*(*/')': case /*{*/'}': { |
| 831 | OP *result = pop_rpn_item()( (tmpop = Perl_op_sibling_splice(parent, ((void*)0), 1, ((void *)0))) ? tmpop : (Perl_croak("RPN stack underflow"), (OP*)((void *)0))); |
| 832 | if(cLISTOPx(parent)((LISTOP*)(parent))->op_first) |
| 833 | croakPerl_croak("RPN expression must return a single value"); |
| 834 | op_free(parent)Perl_op_free( parent); |
| 835 | return result; |
| 836 | } break; |
| 837 | case '0': case '1': case '2': case '3': case '4': |
| 838 | case '5': case '6': case '7': case '8': case '9': { |
| 839 | UV val = 0; |
| 840 | do { |
| 841 | lex_read_unichar(0)Perl_lex_read_unichar( 0); |
| 842 | val = 10*val + (c - '0'); |
| 843 | c = lex_peek_unichar(0)Perl_lex_peek_unichar( 0); |
| 844 | } while(c >= '0' && c <= '9'); |
| 845 | push_rpn_item(newSVOP(OP_CONST, 0, newSVuv(val)))Perl_op_sibling_splice(parent, ((void*)0), 0, Perl_newSVOP( OP_CONST ,0,Perl_newSVuv( val)));; |
| 846 | } break; |
| 847 | case '$': { |
| 848 | push_rpn_item(parse_var())Perl_op_sibling_splice(parent, ((void*)0), 0, THX_parse_var() );; |
| 849 | } break; |
| 850 | case '+': { |
| 851 | OP *b = pop_rpn_item()( (tmpop = Perl_op_sibling_splice(parent, ((void*)0), 1, ((void *)0))) ? tmpop : (Perl_croak("RPN stack underflow"), (OP*)((void *)0))); |
| 852 | OP *a = pop_rpn_item()( (tmpop = Perl_op_sibling_splice(parent, ((void*)0), 1, ((void *)0))) ? tmpop : (Perl_croak("RPN stack underflow"), (OP*)((void *)0))); |
| 853 | lex_read_unichar(0)Perl_lex_read_unichar( 0); |
| 854 | push_rpn_item(newBINOP(OP_I_ADD, 0, a, b))Perl_op_sibling_splice(parent, ((void*)0), 0, Perl_newBINOP( OP_I_ADD ,0,a,b));; |
| 855 | } break; |
| 856 | case '-': { |
| 857 | OP *b = pop_rpn_item()( (tmpop = Perl_op_sibling_splice(parent, ((void*)0), 1, ((void *)0))) ? tmpop : (Perl_croak("RPN stack underflow"), (OP*)((void *)0))); |
| 858 | OP *a = pop_rpn_item()( (tmpop = Perl_op_sibling_splice(parent, ((void*)0), 1, ((void *)0))) ? tmpop : (Perl_croak("RPN stack underflow"), (OP*)((void *)0))); |
| 859 | lex_read_unichar(0)Perl_lex_read_unichar( 0); |
| 860 | push_rpn_item(newBINOP(OP_I_SUBTRACT, 0, a, b))Perl_op_sibling_splice(parent, ((void*)0), 0, Perl_newBINOP( OP_I_SUBTRACT ,0,a,b));; |
| 861 | } break; |
| 862 | case '*': { |
| 863 | OP *b = pop_rpn_item()( (tmpop = Perl_op_sibling_splice(parent, ((void*)0), 1, ((void *)0))) ? tmpop : (Perl_croak("RPN stack underflow"), (OP*)((void *)0))); |
| 864 | OP *a = pop_rpn_item()( (tmpop = Perl_op_sibling_splice(parent, ((void*)0), 1, ((void *)0))) ? tmpop : (Perl_croak("RPN stack underflow"), (OP*)((void *)0))); |
| 865 | lex_read_unichar(0)Perl_lex_read_unichar( 0); |
| 866 | push_rpn_item(newBINOP(OP_I_MULTIPLY, 0, a, b))Perl_op_sibling_splice(parent, ((void*)0), 0, Perl_newBINOP( OP_I_MULTIPLY ,0,a,b));; |
| 867 | } break; |
| 868 | case '/': { |
| 869 | OP *b = pop_rpn_item()( (tmpop = Perl_op_sibling_splice(parent, ((void*)0), 1, ((void *)0))) ? tmpop : (Perl_croak("RPN stack underflow"), (OP*)((void *)0))); |
| 870 | OP *a = pop_rpn_item()( (tmpop = Perl_op_sibling_splice(parent, ((void*)0), 1, ((void *)0))) ? tmpop : (Perl_croak("RPN stack underflow"), (OP*)((void *)0))); |
| 871 | lex_read_unichar(0)Perl_lex_read_unichar( 0); |
| 872 | push_rpn_item(newBINOP(OP_I_DIVIDE, 0, a, b))Perl_op_sibling_splice(parent, ((void*)0), 0, Perl_newBINOP( OP_I_DIVIDE ,0,a,b));; |
| 873 | } break; |
| 874 | case '%': { |
| 875 | OP *b = pop_rpn_item()( (tmpop = Perl_op_sibling_splice(parent, ((void*)0), 1, ((void *)0))) ? tmpop : (Perl_croak("RPN stack underflow"), (OP*)((void *)0))); |
| 876 | OP *a = pop_rpn_item()( (tmpop = Perl_op_sibling_splice(parent, ((void*)0), 1, ((void *)0))) ? tmpop : (Perl_croak("RPN stack underflow"), (OP*)((void *)0))); |
| 877 | lex_read_unichar(0)Perl_lex_read_unichar( 0); |
| 878 | push_rpn_item(newBINOP(OP_I_MODULO, 0, a, b))Perl_op_sibling_splice(parent, ((void*)0), 0, Perl_newBINOP( OP_I_MODULO ,0,a,b));; |
| 879 | } break; |
| 880 | default: { |
| 881 | croakPerl_croak("RPN syntax error"); |
| 882 | } break; |
| 883 | } |
| 884 | } |
| 885 | } |
| 886 | |
| 887 | #define parse_keyword_rpn()THX_parse_keyword_rpn() THX_parse_keyword_rpn(aTHX) |
| 888 | static OP *THX_parse_keyword_rpn(pTHXvoid) |
| 889 | { |
| 890 | OP *op; |
| 891 | lex_read_space(0)Perl_lex_read_space( 0); |
| 892 | if(lex_peek_unichar(0)Perl_lex_peek_unichar( 0) != '('/*)*/) |
| 893 | croakPerl_croak("RPN expression must be parenthesised"); |
| 894 | lex_read_unichar(0)Perl_lex_read_unichar( 0); |
| 895 | op = parse_rpn_expr()THX_parse_rpn_expr(); |
| 896 | if(lex_peek_unichar(0)Perl_lex_peek_unichar( 0) != /*(*/')') |
| 897 | croakPerl_croak("RPN expression must be parenthesised"); |
| 898 | lex_read_unichar(0)Perl_lex_read_unichar( 0); |
| 899 | return op; |
| 900 | } |
| 901 | |
| 902 | #define parse_keyword_calcrpn()THX_parse_keyword_calcrpn() THX_parse_keyword_calcrpn(aTHX) |
| 903 | static OP *THX_parse_keyword_calcrpn(pTHXvoid) |
| 904 | { |
| 905 | OP *varop, *exprop; |
| 906 | lex_read_space(0)Perl_lex_read_space( 0); |
| 907 | varop = parse_var()THX_parse_var(); |
| 908 | lex_read_space(0)Perl_lex_read_space( 0); |
| 909 | if(lex_peek_unichar(0)Perl_lex_peek_unichar( 0) != '{'/*}*/) |
| 910 | croakPerl_croak("RPN expression must be braced"); |
| 911 | lex_read_unichar(0)Perl_lex_read_unichar( 0); |
| 912 | exprop = parse_rpn_expr()THX_parse_rpn_expr(); |
| 913 | if(lex_peek_unichar(0)Perl_lex_peek_unichar( 0) != /*{*/'}') |
| 914 | croakPerl_croak("RPN expression must be braced"); |
| 915 | lex_read_unichar(0)Perl_lex_read_unichar( 0); |
| 916 | return newASSIGNOP(OPf_STACKED, varop, 0, exprop)Perl_newASSIGNOP( 64,varop,0,exprop); |
| 917 | } |
| 918 | |
| 919 | #define parse_keyword_stufftest()THX_parse_keyword_stufftest() THX_parse_keyword_stufftest(aTHX) |
| 920 | static OP *THX_parse_keyword_stufftest(pTHXvoid) |
| 921 | { |
| 922 | I32 c; |
| 923 | bool_Bool do_stuff; |
| 924 | lex_read_space(0)Perl_lex_read_space( 0); |
| 925 | do_stuff = lex_peek_unichar(0)Perl_lex_peek_unichar( 0) == '+'; |
| 926 | if(do_stuff) { |
| 927 | lex_read_unichar(0)Perl_lex_read_unichar( 0); |
| 928 | lex_read_space(0)Perl_lex_read_space( 0); |
| 929 | } |
| 930 | c = lex_peek_unichar(0)Perl_lex_peek_unichar( 0); |
| 931 | if(c == ';') { |
| 932 | lex_read_unichar(0)Perl_lex_read_unichar( 0); |
| 933 | } else if(c != /*{*/'}') { |
| 934 | croakPerl_croak("syntax error"); |
| 935 | } |
| 936 | if(do_stuff) lex_stuff_pvs(" ", 0)Perl_lex_stuff_pvn( ("" " " ""), (sizeof(" ")-1), 0); |
| 937 | return newOP(OP_NULL, 0)Perl_newOP( OP_NULL,0); |
| 938 | } |
| 939 | |
| 940 | #define parse_keyword_swaptwostmts()THX_parse_keyword_swaptwostmts() THX_parse_keyword_swaptwostmts(aTHX) |
| 941 | static OP *THX_parse_keyword_swaptwostmts(pTHXvoid) |
| 942 | { |
| 943 | OP *a, *b; |
| 944 | a = parse_fullstmt(0)Perl_parse_fullstmt( 0); |
| 945 | b = parse_fullstmt(0)Perl_parse_fullstmt( 0); |
| 946 | if(a && b) |
| 947 | PL_hintsPL_compiling.cop_hints |= HINT_BLOCK_SCOPE0x00000100; |
| 948 | return op_append_list(OP_LINESEQ, b, a)Perl_op_append_list( OP_LINESEQ,b,a); |
| 949 | } |
| 950 | |
| 951 | #define parse_keyword_looprest()THX_parse_keyword_looprest() THX_parse_keyword_looprest(aTHX) |
| 952 | static OP *THX_parse_keyword_looprest(pTHXvoid) |
| 953 | { |
| 954 | return newWHILEOP(0, 1, NULL, newSVOP(OP_CONST, 0, &PL_sv_yes),Perl_newWHILEOP( 0,1,((void*)0),Perl_newSVOP( OP_CONST,0,& (PL_sv_immortals[0])),Perl_parse_stmtseq( 0),((void*)0),1) |
| 955 | parse_stmtseq(0), NULL, 1)Perl_newWHILEOP( 0,1,((void*)0),Perl_newSVOP( OP_CONST,0,& (PL_sv_immortals[0])),Perl_parse_stmtseq( 0),((void*)0),1); |
| 956 | } |
| 957 | |
| 958 | #define parse_keyword_scopelessblock()THX_parse_keyword_scopelessblock() THX_parse_keyword_scopelessblock(aTHX) |
| 959 | static OP *THX_parse_keyword_scopelessblock(pTHXvoid) |
| 960 | { |
| 961 | I32 c; |
| 962 | OP *body; |
| 963 | lex_read_space(0)Perl_lex_read_space( 0); |
| 964 | if(lex_peek_unichar(0)Perl_lex_peek_unichar( 0) != '{'/*}*/) croakPerl_croak("syntax error"); |
| 965 | lex_read_unichar(0)Perl_lex_read_unichar( 0); |
| 966 | body = parse_stmtseq(0)Perl_parse_stmtseq( 0); |
| 967 | c = lex_peek_unichar(0)Perl_lex_peek_unichar( 0); |
| 968 | if(c != /*{*/'}' && c != /*[*/']' && c != /*(*/')') croakPerl_croak("syntax error"); |
| 969 | lex_read_unichar(0)Perl_lex_read_unichar( 0); |
| 970 | return body; |
| 971 | } |
| 972 | |
| 973 | #define parse_keyword_stmtasexpr()THX_parse_keyword_stmtasexpr() THX_parse_keyword_stmtasexpr(aTHX) |
| 974 | static OP *THX_parse_keyword_stmtasexpr(pTHXvoid) |
| 975 | { |
| 976 | OP *o = parse_barestmt(0)Perl_parse_barestmt( 0); |
| 977 | if (!o) o = newOP(OP_STUB, 0)Perl_newOP( OP_STUB,0); |
| 978 | if (PL_hintsPL_compiling.cop_hints & HINT_BLOCK_SCOPE0x00000100) o->op_flags |= OPf_PARENS8; |
| 979 | return op_scope(o)Perl_op_scope( o); |
| 980 | } |
| 981 | |
| 982 | #define parse_keyword_stmtsasexpr()THX_parse_keyword_stmtsasexpr() THX_parse_keyword_stmtsasexpr(aTHX) |
| 983 | static OP *THX_parse_keyword_stmtsasexpr(pTHXvoid) |
| 984 | { |
| 985 | OP *o; |
| 986 | lex_read_space(0)Perl_lex_read_space( 0); |
| 987 | if(lex_peek_unichar(0)Perl_lex_peek_unichar( 0) != '{'/*}*/) croakPerl_croak("syntax error"); |
| 988 | lex_read_unichar(0)Perl_lex_read_unichar( 0); |
| 989 | o = parse_stmtseq(0)Perl_parse_stmtseq( 0); |
| 990 | lex_read_space(0)Perl_lex_read_space( 0); |
| 991 | if(lex_peek_unichar(0)Perl_lex_peek_unichar( 0) != /*{*/'}') croakPerl_croak("syntax error"); |
| 992 | lex_read_unichar(0)Perl_lex_read_unichar( 0); |
| 993 | if (!o) o = newOP(OP_STUB, 0)Perl_newOP( OP_STUB,0); |
| 994 | if (PL_hintsPL_compiling.cop_hints & HINT_BLOCK_SCOPE0x00000100) o->op_flags |= OPf_PARENS8; |
| 995 | return op_scope(o)Perl_op_scope( o); |
| 996 | } |
| 997 | |
| 998 | #define parse_keyword_loopblock()THX_parse_keyword_loopblock() THX_parse_keyword_loopblock(aTHX) |
| 999 | static OP *THX_parse_keyword_loopblock(pTHXvoid) |
| 1000 | { |
| 1001 | return newWHILEOP(0, 1, NULL, newSVOP(OP_CONST, 0, &PL_sv_yes),Perl_newWHILEOP( 0,1,((void*)0),Perl_newSVOP( OP_CONST,0,& (PL_sv_immortals[0])),Perl_parse_block( 0),((void*)0),1) |
| 1002 | parse_block(0), NULL, 1)Perl_newWHILEOP( 0,1,((void*)0),Perl_newSVOP( OP_CONST,0,& (PL_sv_immortals[0])),Perl_parse_block( 0),((void*)0),1); |
| 1003 | } |
| 1004 | |
| 1005 | #define parse_keyword_blockasexpr()THX_parse_keyword_blockasexpr() THX_parse_keyword_blockasexpr(aTHX) |
| 1006 | static OP *THX_parse_keyword_blockasexpr(pTHXvoid) |
| 1007 | { |
| 1008 | OP *o = parse_block(0)Perl_parse_block( 0); |
| 1009 | if (!o) o = newOP(OP_STUB, 0)Perl_newOP( OP_STUB,0); |
| 1010 | if (PL_hintsPL_compiling.cop_hints & HINT_BLOCK_SCOPE0x00000100) o->op_flags |= OPf_PARENS8; |
| 1011 | return op_scope(o)Perl_op_scope( o); |
| 1012 | } |
| 1013 | |
| 1014 | #define parse_keyword_swaplabel()THX_parse_keyword_swaplabel() THX_parse_keyword_swaplabel(aTHX) |
| 1015 | static OP *THX_parse_keyword_swaplabel(pTHXvoid) |
| 1016 | { |
| 1017 | OP *sop = parse_barestmt(0)Perl_parse_barestmt( 0); |
| 1018 | SV *label = parse_label(PARSE_OPTIONAL)Perl_parse_label( 0x00000001); |
| 1019 | if (label) sv_2mortal(label)Perl_sv_2mortal( label); |
| 1020 | return newSTATEOP(label ? SvUTF8(label) : 0,Perl_newSTATEOP( label ? ((label)->sv_flags & 0x20000000 ) : 0,label ? Perl_savepv( ((label)->sv_u.svu_pv)) : ((void *)0),sop) |
| 1021 | label ? savepv(SvPVX(label)) : NULL,Perl_newSTATEOP( label ? ((label)->sv_flags & 0x20000000 ) : 0,label ? Perl_savepv( ((label)->sv_u.svu_pv)) : ((void *)0),sop) |
| 1022 | sop)Perl_newSTATEOP( label ? ((label)->sv_flags & 0x20000000 ) : 0,label ? Perl_savepv( ((label)->sv_u.svu_pv)) : ((void *)0),sop); |
| 1023 | } |
| 1024 | |
| 1025 | #define parse_keyword_labelconst()THX_parse_keyword_labelconst() THX_parse_keyword_labelconst(aTHX) |
| 1026 | static OP *THX_parse_keyword_labelconst(pTHXvoid) |
| 1027 | { |
| 1028 | return newSVOP(OP_CONST, 0, parse_label(0))Perl_newSVOP( OP_CONST,0,Perl_parse_label( 0)); |
| 1029 | } |
| 1030 | |
| 1031 | #define parse_keyword_arrayfullexpr()THX_parse_keyword_arrayfullexpr() THX_parse_keyword_arrayfullexpr(aTHX) |
| 1032 | static OP *THX_parse_keyword_arrayfullexpr(pTHXvoid) |
| 1033 | { |
| 1034 | return newANONLIST(parse_fullexpr(0))Perl_newANONLIST( Perl_parse_fullexpr( 0)); |
| 1035 | } |
| 1036 | |
| 1037 | #define parse_keyword_arraylistexpr()THX_parse_keyword_arraylistexpr() THX_parse_keyword_arraylistexpr(aTHX) |
| 1038 | static OP *THX_parse_keyword_arraylistexpr(pTHXvoid) |
| 1039 | { |
| 1040 | return newANONLIST(parse_listexpr(0))Perl_newANONLIST( Perl_parse_listexpr( 0)); |
| 1041 | } |
| 1042 | |
| 1043 | #define parse_keyword_arraytermexpr()THX_parse_keyword_arraytermexpr() THX_parse_keyword_arraytermexpr(aTHX) |
| 1044 | static OP *THX_parse_keyword_arraytermexpr(pTHXvoid) |
| 1045 | { |
| 1046 | return newANONLIST(parse_termexpr(0))Perl_newANONLIST( Perl_parse_termexpr( 0)); |
| 1047 | } |
| 1048 | |
| 1049 | #define parse_keyword_arrayarithexpr()THX_parse_keyword_arrayarithexpr() THX_parse_keyword_arrayarithexpr(aTHX) |
| 1050 | static OP *THX_parse_keyword_arrayarithexpr(pTHXvoid) |
| 1051 | { |
| 1052 | return newANONLIST(parse_arithexpr(0))Perl_newANONLIST( Perl_parse_arithexpr( 0)); |
| 1053 | } |
| 1054 | |
| 1055 | #define parse_keyword_arrayexprflags()THX_parse_keyword_arrayexprflags() THX_parse_keyword_arrayexprflags(aTHX) |
| 1056 | static OP *THX_parse_keyword_arrayexprflags(pTHXvoid) |
| 1057 | { |
| 1058 | U32 flags = 0; |
| 1059 | I32 c; |
| 1060 | OP *o; |
| 1061 | lex_read_space(0)Perl_lex_read_space( 0); |
| 1062 | c = lex_peek_unichar(0)Perl_lex_peek_unichar( 0); |
| 1063 | if (c != '!' && c != '?') croakPerl_croak("syntax error"); |
| 1064 | lex_read_unichar(0)Perl_lex_read_unichar( 0); |
| 1065 | if (c == '?') flags |= PARSE_OPTIONAL0x00000001; |
| 1066 | o = parse_listexpr(flags)Perl_parse_listexpr( flags); |
| 1067 | return o ? newANONLIST(o)Perl_newANONLIST( o) : newANONHASH(newOP(OP_STUB, 0))Perl_newANONHASH( Perl_newOP( OP_STUB,0)); |
| 1068 | } |
| 1069 | |
| 1070 | #define parse_keyword_subsignature()THX_parse_keyword_subsignature() THX_parse_keyword_subsignature(aTHX) |
| 1071 | static OP *THX_parse_keyword_subsignature(pTHXvoid) |
| 1072 | { |
| 1073 | OP *retop = NULL((void*)0), *listop, *sigop = parse_subsignature(0)Perl_parse_subsignature( 0); |
| 1074 | OP *kid; |
| 1075 | int seen_nextstate = 0; |
| 1076 | |
| 1077 | /* We can't yield the optree as is to the caller because it won't be |
| 1078 | * executable outside of a called sub. We'll have to convert it into |
| 1079 | * something safe for them to invoke. |
| 1080 | * sigop should be an OP_NULL above a OP_LINESEQ containing |
| 1081 | * OP_NEXTSTATE-separated OP_ARGCHECK and OP_ARGELEMs |
| 1082 | */ |
| 1083 | if(sigop->op_type != OP_NULL) |
| 1084 | croakPerl_croak("Expected parse_subsignature() to yield an OP_NULL"); |
| 1085 | |
| 1086 | if(!(sigop->op_flags & OPf_KIDS4)) |
| 1087 | croakPerl_croak("Expected parse_subsignature() to yield an OP_NULL with kids"); |
| 1088 | listop = cUNOPx(sigop)((UNOP*)(sigop))->op_first; |
| 1089 | |
| 1090 | if(listop->op_type != OP_LINESEQ) |
| 1091 | croakPerl_croak("Expected parse_subsignature() to yield an OP_LINESEQ"); |
| 1092 | |
| 1093 | for(kid = cLISTOPx(listop)((LISTOP*)(listop))->op_first; kid; kid = OpSIBLING(kid)(0 + (kid)->op_moresib ? (kid)->op_sibparent : ((void*) 0))) { |
| 1094 | switch(kid->op_type) { |
| 1095 | case OP_NEXTSTATE: |
| 1096 | /* Only emit the first one otherwise they get boring */ |
| 1097 | if(seen_nextstate) |
| 1098 | break; |
| 1099 | seen_nextstate++; |
| 1100 | retop = op_append_list(OP_LIST, retop, newSVOP(OP_CONST, 0,Perl_op_append_list( OP_LIST,retop,Perl_newSVOP( OP_CONST,0,Perl_newSVpvf ("nextstate:%u", (unsigned int)((COP*)(kid))->cop_line))) |
| 1101 | /* newSVpvf("nextstate:%s:%d", CopFILE(cCOPx(kid)), cCOPx(kid)->cop_line))); */Perl_op_append_list( OP_LIST,retop,Perl_newSVOP( OP_CONST,0,Perl_newSVpvf ("nextstate:%u", (unsigned int)((COP*)(kid))->cop_line))) |
| 1102 | newSVpvf("nextstate:%u", (unsigned int)cCOPx(kid)->cop_line)))Perl_op_append_list( OP_LIST,retop,Perl_newSVOP( OP_CONST,0,Perl_newSVpvf ("nextstate:%u", (unsigned int)((COP*)(kid))->cop_line))); |
| 1103 | break; |
| 1104 | case OP_ARGCHECK: { |
| 1105 | struct op_argcheck_aux *p = |
| 1106 | (struct op_argcheck_aux*)(cUNOP_AUXx(kid)((UNOP_AUX*)(kid))->op_aux); |
| 1107 | retop = op_append_list(OP_LIST, retop, newSVOP(OP_CONST, 0,Perl_op_append_list( OP_LIST,retop,Perl_newSVOP( OP_CONST,0,Perl_newSVpvf ("argcheck:%" "lu" ":%" "lu" ":%c", p->params, p->opt_params , p->slurpy ? p->slurpy : '-'))) |
| 1108 | newSVpvf("argcheck:%" UVuf ":%" UVuf ":%c",Perl_op_append_list( OP_LIST,retop,Perl_newSVOP( OP_CONST,0,Perl_newSVpvf ("argcheck:%" "lu" ":%" "lu" ":%c", p->params, p->opt_params , p->slurpy ? p->slurpy : '-'))) |
| 1109 | p->params, p->opt_params,Perl_op_append_list( OP_LIST,retop,Perl_newSVOP( OP_CONST,0,Perl_newSVpvf ("argcheck:%" "lu" ":%" "lu" ":%c", p->params, p->opt_params , p->slurpy ? p->slurpy : '-'))) |
| 1110 | p->slurpy ? p->slurpy : '-')))Perl_op_append_list( OP_LIST,retop,Perl_newSVOP( OP_CONST,0,Perl_newSVpvf ("argcheck:%" "lu" ":%" "lu" ":%c", p->params, p->opt_params , p->slurpy ? p->slurpy : '-'))); |
| 1111 | break; |
| 1112 | } |
| 1113 | case OP_ARGELEM: { |
| 1114 | PADOFFSET padix = kid->op_targ; |
| 1115 | PADNAMELIST *names = PadlistNAMES(CvPADLIST(find_runcv(0)))*((PADNAMELIST **)((*( &(((XPVCV*)({ void *_p = ((Perl_find_runcv ( 0))->sv_any); _p; }))->xcv_padlist_u.xcv_padlist))))-> xpadl_arr.xpadlarr_alloc); |
| 1116 | char *namepv = PadnamePV(padnamelist_fetch(names, padix))(Perl_padnamelist_fetch(names, padix))->xpadn_pv; |
| 1117 | retop = op_append_list(OP_LIST, retop, newSVOP(OP_CONST, 0,Perl_op_append_list( OP_LIST,retop,Perl_newSVOP( OP_CONST,0,Perl_newSVpvf (kid->op_flags & 4 ? "argelem:%s:d" : "argelem:%s", namepv ))) |
| 1118 | newSVpvf(kid->op_flags & OPf_KIDS ? "argelem:%s:d" : "argelem:%s", namepv)))Perl_op_append_list( OP_LIST,retop,Perl_newSVOP( OP_CONST,0,Perl_newSVpvf (kid->op_flags & 4 ? "argelem:%s:d" : "argelem:%s", namepv ))); |
| 1119 | break; |
| 1120 | } |
| 1121 | default: |
| 1122 | fprintfPerlIO_printf(stderrPerl_PerlIO_stderr(), "TODO: examine kid %p (optype=%s)\n", kid, PL_op_name[kid->op_type]); |
| 1123 | break; |
| 1124 | } |
| 1125 | } |
| 1126 | |
| 1127 | op_free(sigop)Perl_op_free( sigop); |
| 1128 | return newANONLIST(retop)Perl_newANONLIST( retop); |
| 1129 | } |
| 1130 | |
| 1131 | #define parse_keyword_DEFSV()THX_parse_keyword_DEFSV() THX_parse_keyword_DEFSV(aTHX) |
| 1132 | static OP *THX_parse_keyword_DEFSV(pTHXvoid) |
| 1133 | { |
| 1134 | return newDEFSVOP()Perl_newDEFSVOP(); |
| 1135 | } |
| 1136 | |
| 1137 | #define sv_cat_c(a,b)THX_sv_cat_c( a, b) THX_sv_cat_c(aTHX_ a, b) |
| 1138 | static void THX_sv_cat_c(pTHX_ SV *sv, U32 c) { |
| 1139 | char ds[UTF8_MAXBYTES13 + 1], *d; |
| 1140 | d = (char *)uvchr_to_utf8((U8 *)ds, c)Perl_uvoffuni_to_utf8_flags_msgs( (U8 *)ds,((UV) ((c) | 0)),0 ,0); |
| 1141 | if (d - ds > 1) { |
| 1142 | sv_utf8_upgrade(sv)Perl_sv_utf8_upgrade_flags_grow( sv,2,0); |
| 1143 | } |
| 1144 | sv_catpvn(sv, ds, d - ds)Perl_sv_catpvn_flags( sv,ds,d - ds,2); |
| 1145 | } |
| 1146 | |
| 1147 | #define parse_keyword_with_vars()THX_parse_keyword_with_vars() THX_parse_keyword_with_vars(aTHX) |
| 1148 | static OP *THX_parse_keyword_with_vars(pTHXvoid) |
| 1149 | { |
| 1150 | I32 c; |
| 1151 | IV count; |
| 1152 | int save_ix; |
| 1153 | OP *vardeclseq, *body; |
| 1154 | |
| 1155 | save_ix = block_start(TRUE)Perl_block_start( (1)); |
| 1156 | vardeclseq = NULL((void*)0); |
| 1157 | |
| 1158 | count = 0; |
| 1159 | |
| 1160 | lex_read_space(0)Perl_lex_read_space( 0); |
| 1161 | c = lex_peek_unichar(0)Perl_lex_peek_unichar( 0); |
| 1162 | while (c != '{') { |
| 1163 | SV *varname; |
| 1164 | PADOFFSET padoff; |
| 1165 | |
| 1166 | if (c == -1) { |
| 1167 | croakPerl_croak("unexpected EOF; expecting '{'"); |
| 1168 | } |
| 1169 | |
| 1170 | if (!isIDFIRST_uni(c)((c) < 256 ? ((( (sizeof(c) == 1) || !(((U64)((c) | 0)) & ~0xFF)) && (PL_charclass[(U8) (c)] & (1U << (16)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_perl_idstart( c ))) { |
| 1171 | croakPerl_croak("unexpected '%c'; expecting an identifier", (int)c); |
| 1172 | } |
| 1173 | |
| 1174 | varname = newSVpvs("$")Perl_newSVpvn( ("" "$" ""), (sizeof("$")-1)); |
| 1175 | if (lex_bufutf8()Perl_lex_bufutf8()) { |
| 1176 | SvUTF8_on(varname)((varname)->sv_flags |= (0x20000000)); |
| 1177 | } |
| 1178 | |
| 1179 | sv_cat_c(varname, c)THX_sv_cat_c( varname, c); |
| 1180 | lex_read_unichar(0)Perl_lex_read_unichar( 0); |
| 1181 | |
| 1182 | while (c = lex_peek_unichar(0)Perl_lex_peek_unichar( 0), c != -1 && isIDCONT_uni(c)((c) < 256 ? ((( (sizeof(c) == 1) || !(((U64)((c) | 0)) & ~0xFF)) && (PL_charclass[(U8) (c)] & (1U << (0)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_perl_idcont( c) )) { |
| 1183 | sv_cat_c(varname, c)THX_sv_cat_c( varname, c); |
| 1184 | lex_read_unichar(0)Perl_lex_read_unichar( 0); |
| 1185 | } |
| 1186 | |
| 1187 | padoff = pad_add_name_sv(varname, padadd_NO_DUP_CHECK, NULL, NULL)Perl_pad_add_name_sv( varname,0x04,((void*)0),((void*)0)); |
| 1188 | |
| 1189 | { |
| 1190 | OP *my_var = newOP(OP_PADSV, OPf_MOD | (OPpLVAL_INTRO << 8))Perl_newOP( OP_PADSV,32 | (0x80 << 8)); |
| 1191 | my_var->op_targ = padoff; |
| 1192 | |
| 1193 | vardeclseq = op_append_list(Perl_op_append_list( OP_LINESEQ,vardeclseq,Perl_newSTATEOP( 0 ,((void*)0),Perl_newASSIGNOP( 64,my_var,0,Perl_newSVOP( OP_CONST ,0,Perl_newSViv( ++count))))) |
| 1194 | OP_LINESEQ,Perl_op_append_list( OP_LINESEQ,vardeclseq,Perl_newSTATEOP( 0 ,((void*)0),Perl_newASSIGNOP( 64,my_var,0,Perl_newSVOP( OP_CONST ,0,Perl_newSViv( ++count))))) |
| 1195 | vardeclseq,Perl_op_append_list( OP_LINESEQ,vardeclseq,Perl_newSTATEOP( 0 ,((void*)0),Perl_newASSIGNOP( 64,my_var,0,Perl_newSVOP( OP_CONST ,0,Perl_newSViv( ++count))))) |
| 1196 | newSTATEOP(Perl_op_append_list( OP_LINESEQ,vardeclseq,Perl_newSTATEOP( 0 ,((void*)0),Perl_newASSIGNOP( 64,my_var,0,Perl_newSVOP( OP_CONST ,0,Perl_newSViv( ++count))))) |
| 1197 | 0, NULL,Perl_op_append_list( OP_LINESEQ,vardeclseq,Perl_newSTATEOP( 0 ,((void*)0),Perl_newASSIGNOP( 64,my_var,0,Perl_newSVOP( OP_CONST ,0,Perl_newSViv( ++count))))) |
| 1198 | newASSIGNOP(Perl_op_append_list( OP_LINESEQ,vardeclseq,Perl_newSTATEOP( 0 ,((void*)0),Perl_newASSIGNOP( 64,my_var,0,Perl_newSVOP( OP_CONST ,0,Perl_newSViv( ++count))))) |
| 1199 | OPf_STACKED,Perl_op_append_list( OP_LINESEQ,vardeclseq,Perl_newSTATEOP( 0 ,((void*)0),Perl_newASSIGNOP( 64,my_var,0,Perl_newSVOP( OP_CONST ,0,Perl_newSViv( ++count))))) |
| 1200 | my_var, 0,Perl_op_append_list( OP_LINESEQ,vardeclseq,Perl_newSTATEOP( 0 ,((void*)0),Perl_newASSIGNOP( 64,my_var,0,Perl_newSVOP( OP_CONST ,0,Perl_newSViv( ++count))))) |
| 1201 | newSVOP(Perl_op_append_list( OP_LINESEQ,vardeclseq,Perl_newSTATEOP( 0 ,((void*)0),Perl_newASSIGNOP( 64,my_var,0,Perl_newSVOP( OP_CONST ,0,Perl_newSViv( ++count))))) |
| 1202 | OP_CONST, 0,Perl_op_append_list( OP_LINESEQ,vardeclseq,Perl_newSTATEOP( 0 ,((void*)0),Perl_newASSIGNOP( 64,my_var,0,Perl_newSVOP( OP_CONST ,0,Perl_newSViv( ++count))))) |
| 1203 | newSViv(++count)Perl_op_append_list( OP_LINESEQ,vardeclseq,Perl_newSTATEOP( 0 ,((void*)0),Perl_newASSIGNOP( 64,my_var,0,Perl_newSVOP( OP_CONST ,0,Perl_newSViv( ++count))))) |
| 1204 | )Perl_op_append_list( OP_LINESEQ,vardeclseq,Perl_newSTATEOP( 0 ,((void*)0),Perl_newASSIGNOP( 64,my_var,0,Perl_newSVOP( OP_CONST ,0,Perl_newSViv( ++count))))) |
| 1205 | )Perl_op_append_list( OP_LINESEQ,vardeclseq,Perl_newSTATEOP( 0 ,((void*)0),Perl_newASSIGNOP( 64,my_var,0,Perl_newSVOP( OP_CONST ,0,Perl_newSViv( ++count))))) |
| 1206 | )Perl_op_append_list( OP_LINESEQ,vardeclseq,Perl_newSTATEOP( 0 ,((void*)0),Perl_newASSIGNOP( 64,my_var,0,Perl_newSVOP( OP_CONST ,0,Perl_newSViv( ++count))))) |
| 1207 | )Perl_op_append_list( OP_LINESEQ,vardeclseq,Perl_newSTATEOP( 0 ,((void*)0),Perl_newASSIGNOP( 64,my_var,0,Perl_newSVOP( OP_CONST ,0,Perl_newSViv( ++count))))); |
| 1208 | } |
| 1209 | |
| 1210 | lex_read_space(0)Perl_lex_read_space( 0); |
| 1211 | c = lex_peek_unichar(0)Perl_lex_peek_unichar( 0); |
| 1212 | } |
| 1213 | |
| 1214 | intro_my()Perl_intro_my(); |
| 1215 | |
| 1216 | body = parse_block(0)Perl_parse_block( 0); |
| 1217 | |
| 1218 | return block_end(save_ix, op_append_list(OP_LINESEQ, vardeclseq, body))Perl_block_end( save_ix,Perl_op_append_list( OP_LINESEQ,vardeclseq ,body)); |
| 1219 | } |
| 1220 | |
| 1221 | #define parse_join_with_space()THX_parse_join_with_space() THX_parse_join_with_space(aTHX) |
| 1222 | static OP *THX_parse_join_with_space(pTHXvoid) |
| 1223 | { |
| 1224 | OP *delim, *args; |
| 1225 | |
| 1226 | args = parse_listexpr(0)Perl_parse_listexpr( 0); |
| 1227 | delim = newSVOP(OP_CONST, 0, newSVpvs(" "))Perl_newSVOP( OP_CONST,0,Perl_newSVpvn( ("" " " ""), (sizeof( " ")-1))); |
| 1228 | return op_convert_list(OP_JOIN, 0, op_prepend_elem(OP_LIST, delim, args))Perl_op_convert_list( OP_JOIN,0,Perl_op_prepend_elem( OP_LIST ,delim,args)); |
| 1229 | } |
| 1230 | |
| 1231 | /* plugin glue */ |
| 1232 | |
| 1233 | #define keyword_active(hintkey_sv)THX_keyword_active( hintkey_sv) THX_keyword_active(aTHX_ hintkey_sv) |
| 1234 | static int THX_keyword_active(pTHX_ SV *hintkey_sv) |
| 1235 | { |
| 1236 | HE *he; |
| 1237 | if(!GvHV(PL_hintgv)(((0+(PL_hintgv)->sv_u.svu_gp))->gp_hv)) return 0; |
| 1238 | he = hv_fetch_ent(GvHV(PL_hintgv), hintkey_sv, 0,((HE *) Perl_hv_common( ((((0+(PL_hintgv)->sv_u.svu_gp))-> gp_hv)),(hintkey_sv),((void*)0),0,0,((0) ? 0x10 : 0),((void*) 0),((0 + ((struct hek*)(((const char*)(0 + (hintkey_sv)->sv_u .svu_pv)) - __builtin_offsetof(struct hek, hek_key)))->hek_hash )))) |
| 1239 | SvSHARED_HASH(hintkey_sv))((HE *) Perl_hv_common( ((((0+(PL_hintgv)->sv_u.svu_gp))-> gp_hv)),(hintkey_sv),((void*)0),0,0,((0) ? 0x10 : 0),((void*) 0),((0 + ((struct hek*)(((const char*)(0 + (hintkey_sv)->sv_u .svu_pv)) - __builtin_offsetof(struct hek, hek_key)))->hek_hash )))); |
| 1240 | return he && SvTRUE(HeVAL(he))Perl_SvTRUE( (he)->he_valu.hent_val); |
| 1241 | } |
| 1242 | |
| 1243 | static int my_keyword_plugin(pTHX_ |
| 1244 | char *keyword_ptr, STRLEN keyword_len, OP **op_ptr) |
| 1245 | { |
| 1246 | if (memEQs(keyword_ptr, keyword_len, "rpn")(((sizeof("rpn")-1) == (keyword_len)) && (memcmp(((const void *) ((keyword_ptr))), ((const void *) (("" "rpn" ""))), ( sizeof("rpn")-1)) == 0)) && |
| 1247 | keyword_active(hintkey_rpn_sv)THX_keyword_active( hintkey_rpn_sv)) { |
| 1248 | *op_ptr = parse_keyword_rpn()THX_parse_keyword_rpn(); |
| 1249 | return KEYWORD_PLUGIN_EXPR2; |
| 1250 | } else if (memEQs(keyword_ptr, keyword_len, "calcrpn")(((sizeof("calcrpn")-1) == (keyword_len)) && (memcmp( ((const void *) ((keyword_ptr))), ((const void *) (("" "calcrpn" ""))), (sizeof("calcrpn")-1)) == 0)) && |
| 1251 | keyword_active(hintkey_calcrpn_sv)THX_keyword_active( hintkey_calcrpn_sv)) { |
| 1252 | *op_ptr = parse_keyword_calcrpn()THX_parse_keyword_calcrpn(); |
| 1253 | return KEYWORD_PLUGIN_STMT1; |
| 1254 | } else if (memEQs(keyword_ptr, keyword_len, "stufftest")(((sizeof("stufftest")-1) == (keyword_len)) && (memcmp (((const void *) ((keyword_ptr))), ((const void *) (("" "stufftest" ""))), (sizeof("stufftest")-1)) == 0)) && |
| 1255 | keyword_active(hintkey_stufftest_sv)THX_keyword_active( hintkey_stufftest_sv)) { |
| 1256 | *op_ptr = parse_keyword_stufftest()THX_parse_keyword_stufftest(); |
| 1257 | return KEYWORD_PLUGIN_STMT1; |
| 1258 | } else if (memEQs(keyword_ptr, keyword_len, "swaptwostmts")(((sizeof("swaptwostmts")-1) == (keyword_len)) && (memcmp (((const void *) ((keyword_ptr))), ((const void *) (("" "swaptwostmts" ""))), (sizeof("swaptwostmts")-1)) == 0)) && |
| 1259 | keyword_active(hintkey_swaptwostmts_sv)THX_keyword_active( hintkey_swaptwostmts_sv)) { |
| 1260 | *op_ptr = parse_keyword_swaptwostmts()THX_parse_keyword_swaptwostmts(); |
| 1261 | return KEYWORD_PLUGIN_STMT1; |
| 1262 | } else if (memEQs(keyword_ptr, keyword_len, "looprest")(((sizeof("looprest")-1) == (keyword_len)) && (memcmp (((const void *) ((keyword_ptr))), ((const void *) (("" "looprest" ""))), (sizeof("looprest")-1)) == 0)) && |
| 1263 | keyword_active(hintkey_looprest_sv)THX_keyword_active( hintkey_looprest_sv)) { |
| 1264 | *op_ptr = parse_keyword_looprest()THX_parse_keyword_looprest(); |
| 1265 | return KEYWORD_PLUGIN_STMT1; |
| 1266 | } else if (memEQs(keyword_ptr, keyword_len, "scopelessblock")(((sizeof("scopelessblock")-1) == (keyword_len)) && ( memcmp(((const void *) ((keyword_ptr))), ((const void *) (("" "scopelessblock" ""))), (sizeof("scopelessblock")-1)) == 0)) && |
| 1267 | keyword_active(hintkey_scopelessblock_sv)THX_keyword_active( hintkey_scopelessblock_sv)) { |
| 1268 | *op_ptr = parse_keyword_scopelessblock()THX_parse_keyword_scopelessblock(); |
| 1269 | return KEYWORD_PLUGIN_STMT1; |
| 1270 | } else if (memEQs(keyword_ptr, keyword_len, "stmtasexpr")(((sizeof("stmtasexpr")-1) == (keyword_len)) && (memcmp (((const void *) ((keyword_ptr))), ((const void *) (("" "stmtasexpr" ""))), (sizeof("stmtasexpr")-1)) == 0)) && |
| 1271 | keyword_active(hintkey_stmtasexpr_sv)THX_keyword_active( hintkey_stmtasexpr_sv)) { |
| 1272 | *op_ptr = parse_keyword_stmtasexpr()THX_parse_keyword_stmtasexpr(); |
| 1273 | return KEYWORD_PLUGIN_EXPR2; |
| 1274 | } else if (memEQs(keyword_ptr, keyword_len, "stmtsasexpr")(((sizeof("stmtsasexpr")-1) == (keyword_len)) && (memcmp (((const void *) ((keyword_ptr))), ((const void *) (("" "stmtsasexpr" ""))), (sizeof("stmtsasexpr")-1)) == 0)) && |
| 1275 | keyword_active(hintkey_stmtsasexpr_sv)THX_keyword_active( hintkey_stmtsasexpr_sv)) { |
| 1276 | *op_ptr = parse_keyword_stmtsasexpr()THX_parse_keyword_stmtsasexpr(); |
| 1277 | return KEYWORD_PLUGIN_EXPR2; |
| 1278 | } else if (memEQs(keyword_ptr, keyword_len, "loopblock")(((sizeof("loopblock")-1) == (keyword_len)) && (memcmp (((const void *) ((keyword_ptr))), ((const void *) (("" "loopblock" ""))), (sizeof("loopblock")-1)) == 0)) && |
| 1279 | keyword_active(hintkey_loopblock_sv)THX_keyword_active( hintkey_loopblock_sv)) { |
| 1280 | *op_ptr = parse_keyword_loopblock()THX_parse_keyword_loopblock(); |
| 1281 | return KEYWORD_PLUGIN_STMT1; |
| 1282 | } else if (memEQs(keyword_ptr, keyword_len, "blockasexpr")(((sizeof("blockasexpr")-1) == (keyword_len)) && (memcmp (((const void *) ((keyword_ptr))), ((const void *) (("" "blockasexpr" ""))), (sizeof("blockasexpr")-1)) == 0)) && |
| 1283 | keyword_active(hintkey_blockasexpr_sv)THX_keyword_active( hintkey_blockasexpr_sv)) { |
| 1284 | *op_ptr = parse_keyword_blockasexpr()THX_parse_keyword_blockasexpr(); |
| 1285 | return KEYWORD_PLUGIN_EXPR2; |
| 1286 | } else if (memEQs(keyword_ptr, keyword_len, "swaplabel")(((sizeof("swaplabel")-1) == (keyword_len)) && (memcmp (((const void *) ((keyword_ptr))), ((const void *) (("" "swaplabel" ""))), (sizeof("swaplabel")-1)) == 0)) && |
| 1287 | keyword_active(hintkey_swaplabel_sv)THX_keyword_active( hintkey_swaplabel_sv)) { |
| 1288 | *op_ptr = parse_keyword_swaplabel()THX_parse_keyword_swaplabel(); |
| 1289 | return KEYWORD_PLUGIN_STMT1; |
| 1290 | } else if (memEQs(keyword_ptr, keyword_len, "labelconst")(((sizeof("labelconst")-1) == (keyword_len)) && (memcmp (((const void *) ((keyword_ptr))), ((const void *) (("" "labelconst" ""))), (sizeof("labelconst")-1)) == 0)) && |
| 1291 | keyword_active(hintkey_labelconst_sv)THX_keyword_active( hintkey_labelconst_sv)) { |
| 1292 | *op_ptr = parse_keyword_labelconst()THX_parse_keyword_labelconst(); |
| 1293 | return KEYWORD_PLUGIN_EXPR2; |
| 1294 | } else if (memEQs(keyword_ptr, keyword_len, "arrayfullexpr")(((sizeof("arrayfullexpr")-1) == (keyword_len)) && (memcmp (((const void *) ((keyword_ptr))), ((const void *) (("" "arrayfullexpr" ""))), (sizeof("arrayfullexpr")-1)) == 0)) && |
| 1295 | keyword_active(hintkey_arrayfullexpr_sv)THX_keyword_active( hintkey_arrayfullexpr_sv)) { |
| 1296 | *op_ptr = parse_keyword_arrayfullexpr()THX_parse_keyword_arrayfullexpr(); |
| 1297 | return KEYWORD_PLUGIN_EXPR2; |
| 1298 | } else if (memEQs(keyword_ptr, keyword_len, "arraylistexpr")(((sizeof("arraylistexpr")-1) == (keyword_len)) && (memcmp (((const void *) ((keyword_ptr))), ((const void *) (("" "arraylistexpr" ""))), (sizeof("arraylistexpr")-1)) == 0)) && |
| 1299 | keyword_active(hintkey_arraylistexpr_sv)THX_keyword_active( hintkey_arraylistexpr_sv)) { |
| 1300 | *op_ptr = parse_keyword_arraylistexpr()THX_parse_keyword_arraylistexpr(); |
| 1301 | return KEYWORD_PLUGIN_EXPR2; |
| 1302 | } else if (memEQs(keyword_ptr, keyword_len, "arraytermexpr")(((sizeof("arraytermexpr")-1) == (keyword_len)) && (memcmp (((const void *) ((keyword_ptr))), ((const void *) (("" "arraytermexpr" ""))), (sizeof("arraytermexpr")-1)) == 0)) && |
| 1303 | keyword_active(hintkey_arraytermexpr_sv)THX_keyword_active( hintkey_arraytermexpr_sv)) { |
| 1304 | *op_ptr = parse_keyword_arraytermexpr()THX_parse_keyword_arraytermexpr(); |
| 1305 | return KEYWORD_PLUGIN_EXPR2; |
| 1306 | } else if (memEQs(keyword_ptr, keyword_len, "arrayarithexpr")(((sizeof("arrayarithexpr")-1) == (keyword_len)) && ( memcmp(((const void *) ((keyword_ptr))), ((const void *) (("" "arrayarithexpr" ""))), (sizeof("arrayarithexpr")-1)) == 0)) && |
| 1307 | keyword_active(hintkey_arrayarithexpr_sv)THX_keyword_active( hintkey_arrayarithexpr_sv)) { |
| 1308 | *op_ptr = parse_keyword_arrayarithexpr()THX_parse_keyword_arrayarithexpr(); |
| 1309 | return KEYWORD_PLUGIN_EXPR2; |
| 1310 | } else if (memEQs(keyword_ptr, keyword_len, "arrayexprflags")(((sizeof("arrayexprflags")-1) == (keyword_len)) && ( memcmp(((const void *) ((keyword_ptr))), ((const void *) (("" "arrayexprflags" ""))), (sizeof("arrayexprflags")-1)) == 0)) && |
| 1311 | keyword_active(hintkey_arrayexprflags_sv)THX_keyword_active( hintkey_arrayexprflags_sv)) { |
| 1312 | *op_ptr = parse_keyword_arrayexprflags()THX_parse_keyword_arrayexprflags(); |
| 1313 | return KEYWORD_PLUGIN_EXPR2; |
| 1314 | } else if (memEQs(keyword_ptr, keyword_len, "DEFSV")(((sizeof("DEFSV")-1) == (keyword_len)) && (memcmp((( const void *) ((keyword_ptr))), ((const void *) (("" "DEFSV" "" ))), (sizeof("DEFSV")-1)) == 0)) && |
| 1315 | keyword_active(hintkey_DEFSV_sv)THX_keyword_active( hintkey_DEFSV_sv)) { |
| 1316 | *op_ptr = parse_keyword_DEFSV()THX_parse_keyword_DEFSV(); |
| 1317 | return KEYWORD_PLUGIN_EXPR2; |
| 1318 | } else if (memEQs(keyword_ptr, keyword_len, "with_vars")(((sizeof("with_vars")-1) == (keyword_len)) && (memcmp (((const void *) ((keyword_ptr))), ((const void *) (("" "with_vars" ""))), (sizeof("with_vars")-1)) == 0)) && |
| 1319 | keyword_active(hintkey_with_vars_sv)THX_keyword_active( hintkey_with_vars_sv)) { |
| 1320 | *op_ptr = parse_keyword_with_vars()THX_parse_keyword_with_vars(); |
| 1321 | return KEYWORD_PLUGIN_STMT1; |
| 1322 | } else if (memEQs(keyword_ptr, keyword_len, "join_with_space")(((sizeof("join_with_space")-1) == (keyword_len)) && ( memcmp(((const void *) ((keyword_ptr))), ((const void *) (("" "join_with_space" ""))), (sizeof("join_with_space")-1)) == 0 )) && |
| 1323 | keyword_active(hintkey_join_with_space_sv)THX_keyword_active( hintkey_join_with_space_sv)) { |
| 1324 | *op_ptr = parse_join_with_space()THX_parse_join_with_space(); |
| 1325 | return KEYWORD_PLUGIN_EXPR2; |
| 1326 | } else if (memEQs(keyword_ptr, keyword_len, "subsignature")(((sizeof("subsignature")-1) == (keyword_len)) && (memcmp (((const void *) ((keyword_ptr))), ((const void *) (("" "subsignature" ""))), (sizeof("subsignature")-1)) == 0)) && |
| 1327 | keyword_active(hintkey_subsignature_sv)THX_keyword_active( hintkey_subsignature_sv)) { |
| 1328 | *op_ptr = parse_keyword_subsignature()THX_parse_keyword_subsignature(); |
| 1329 | return KEYWORD_PLUGIN_EXPR2; |
| 1330 | } else { |
| 1331 | assert(next_keyword_plugin != my_keyword_plugin)((void)0); |
| 1332 | return next_keyword_plugin(aTHX_ keyword_ptr, keyword_len, op_ptr); |
| 1333 | } |
| 1334 | } |
| 1335 | |
| 1336 | static XOP my_xop; |
| 1337 | |
| 1338 | static OP * |
| 1339 | pp_xop(pTHXvoid) |
| 1340 | { |
| 1341 | return PL_op->op_next; |
| 1342 | } |
| 1343 | |
| 1344 | static void |
| 1345 | peep_xop(pTHX_ OP *o, OP *oldop) |
| 1346 | { |
| 1347 | dMY_CXTstruct Perl___notused_struct; |
| 1348 | av_push(MY_CXT.xop_record, newSVpvf("peep:%" UVxf, PTR2UV(o)))Perl_av_push( my_cxt.xop_record,Perl_newSVpvf("peep:%" "lx", ( UV)(o))); |
| 1349 | av_push(MY_CXT.xop_record, newSVpvf("oldop:%" UVxf, PTR2UV(oldop)))Perl_av_push( my_cxt.xop_record,Perl_newSVpvf("oldop:%" "lx", (UV)(oldop))); |
| 1350 | } |
| 1351 | |
| 1352 | static I32 |
| 1353 | filter_call(pTHX_ int idx, SV *buf_sv, int maxlen) |
| 1354 | { |
| 1355 | char *p; |
| 1356 | char *end; |
| 1357 | int n = FILTER_READ(idx + 1, buf_sv, maxlen)Perl_filter_read( idx + 1,buf_sv,maxlen); |
| 1358 | |
| 1359 | if (n<=0) return n; |
| 1360 | |
| 1361 | p = SvPV_force_nolen(buf_sv)((((buf_sv)->sv_flags & (0x00000400|0x00000100|0x00000200 |0x00000800|0x00008000|(0x08000000|0x00010000|0x00000800|0x01000000 |0x00800000|0x10000000)|0x00200000)) == 0x00000400) ? ((buf_sv )->sv_u.svu_pv) : Perl_sv_pvn_force_flags( buf_sv,0,2)); |
| 1362 | end = p + SvCUR(buf_sv)((XPV*) (buf_sv)->sv_any)->xpv_cur; |
| 1363 | while (p < end) { |
| 1364 | if (*p == 'o') *p = 'e'; |
| 1365 | p++; |
| 1366 | } |
| 1367 | return SvCUR(buf_sv)((XPV*) (buf_sv)->sv_any)->xpv_cur; |
| 1368 | } |
| 1369 | |
| 1370 | static AV * |
| 1371 | myget_linear_isa(pTHX_ HV *stash, U32 level) { |
| 1372 | GV **gvp = (GV **)hv_fetchs(stash, "ISA", 0)((SV**) Perl_hv_common_key_len( ((stash)),(("" "ISA" "")),((sizeof ("ISA")-1)),((0)) ? (0x20 | 0x10) : 0x20,((void*)0),0)); |
| 1373 | PERL_UNUSED_ARG(level)((void)sizeof(level)); |
| 1374 | return gvp && *gvp && GvAV(*gvp)((0+(*gvp)->sv_u.svu_gp)->gp_av) |
| 1375 | ? GvAV(*gvp)((0+(*gvp)->sv_u.svu_gp)->gp_av) |
| 1376 | : (AV *)sv_2mortal((SV *)newAV())Perl_sv_2mortal( (SV *)((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; }))); |
| 1377 | } |
| 1378 | |
| 1379 | |
| 1380 | XS_EXTERNAL(XS_XS__APItest__XSUB_XS_VERSION_undef)void XS_XS__APItest__XSUB_XS_VERSION_undef( CV* cv __attribute__ ((unused))); |
| 1381 | XS_EXTERNAL(XS_XS__APItest__XSUB_XS_VERSION_empty)void XS_XS__APItest__XSUB_XS_VERSION_empty( CV* cv __attribute__ ((unused))); |
| 1382 | XS_EXTERNAL(XS_XS__APItest__XSUB_XS_APIVERSION_invalid)void XS_XS__APItest__XSUB_XS_APIVERSION_invalid( CV* cv __attribute__ ((unused))); |
| 1383 | |
| 1384 | static struct mro_alg mymro; |
| 1385 | |
| 1386 | static Perl_check_t addissub_nxck_add; |
| 1387 | |
| 1388 | static OP * |
| 1389 | addissub_myck_add(pTHX_ OP *op) |
| 1390 | { |
| 1391 | SV **flag_svp = hv_fetchs(GvHV(PL_hintgv), "XS::APItest/addissub", 0)((SV**) Perl_hv_common_key_len( (((((0+(PL_hintgv)->sv_u.svu_gp ))->gp_hv))),(("" "XS::APItest/addissub" "")),((sizeof("XS::APItest/addissub" )-1)),((0)) ? (0x20 | 0x10) : 0x20,((void*)0),0)); |
| 1392 | OP *aop, *bop; |
| 1393 | U8 flags; |
| 1394 | if (!(flag_svp && SvTRUE(*flag_svp)Perl_SvTRUE( *flag_svp) && (op->op_flags & OPf_KIDS4) && |
| 1395 | (aop = cBINOPx(op)((BINOP*)(op))->op_first) && (bop = OpSIBLING(aop)(0 + (aop)->op_moresib ? (aop)->op_sibparent : ((void*) 0))) && |
| 1396 | !OpHAS_SIBLING(bop)((((bop)->op_moresib) ? (_Bool)1 : (_Bool)0)))) |
| 1397 | return addissub_nxck_add(aTHX_ op); |
| 1398 | flags = op->op_flags; |
| 1399 | op_sibling_splicePerl_op_sibling_splice(op, NULL((void*)0), 1, NULL((void*)0)); /* excise aop */ |
| 1400 | op_sibling_splicePerl_op_sibling_splice(op, NULL((void*)0), 1, NULL((void*)0)); /* excise bop */ |
| 1401 | op_free(op)Perl_op_free( op); /* free the empty husk */ |
| 1402 | flags &= ~OPf_KIDS4; |
| 1403 | return newBINOP(OP_SUBTRACT, flags, aop, bop)Perl_newBINOP( OP_SUBTRACT,flags,aop,bop); |
| 1404 | } |
| 1405 | |
| 1406 | static Perl_check_t old_ck_rv2cv; |
| 1407 | |
| 1408 | static OP * |
| 1409 | my_ck_rv2cv(pTHX_ OP *o) |
| 1410 | { |
| 1411 | SV *ref; |
| 1412 | SV **flag_svp = hv_fetchs(GvHV(PL_hintgv), "XS::APItest/addunder", 0)((SV**) Perl_hv_common_key_len( (((((0+(PL_hintgv)->sv_u.svu_gp ))->gp_hv))),(("" "XS::APItest/addunder" "")),((sizeof("XS::APItest/addunder" )-1)),((0)) ? (0x20 | 0x10) : 0x20,((void*)0),0)); |
| 1413 | OP *aop; |
| 1414 | |
| 1415 | if (flag_svp && SvTRUE(*flag_svp)Perl_SvTRUE( *flag_svp) && (o->op_flags & OPf_KIDS4) |
| 1416 | && (aop = cUNOPx(o)((UNOP*)(o))->op_first) && aop->op_type == OP_CONST |
| 1417 | && aop->op_private & (OPpCONST_ENTERED0x10|OPpCONST_BARE0x40) |
| 1418 | && (ref = cSVOPx(aop)((SVOP*)(aop))->op_sv) && SvPOK(ref)((ref)->sv_flags & 0x00000400) && SvCUR(ref)((XPV*) (ref)->sv_any)->xpv_cur |
| 1419 | && *(SvEND(ref)((ref)->sv_u.svu_pv + ((XPV*)(ref)->sv_any)->xpv_cur )-1) == 'o') |
| 1420 | { |
| 1421 | SvGROW(ref, SvCUR(ref)+2)(((ref)->sv_flags & 0x10000000) || ((XPV*) (ref)->sv_any )->xpv_len_u.xpvlenu_len < (((XPV*) (ref)->sv_any)-> xpv_cur+2) ? Perl_sv_grow( ref,((XPV*) (ref)->sv_any)-> xpv_cur+2) : ((ref)->sv_u.svu_pv)); |
| 1422 | *SvEND(ref)((ref)->sv_u.svu_pv + ((XPV*)(ref)->sv_any)->xpv_cur ) = '_'; |
| 1423 | SvCUR(ref)((XPV*) (ref)->sv_any)->xpv_cur++; /* Not _set, so we don't accidentally break non-PERL_CORE */ |
| 1424 | *SvEND(ref)((ref)->sv_u.svu_pv + ((XPV*)(ref)->sv_any)->xpv_cur ) = '\0'; |
| 1425 | } |
| 1426 | return old_ck_rv2cv(aTHX_ o); |
| 1427 | } |
| 1428 | |
| 1429 | #include "const-c.inc" |
| 1430 | |
| 1431 | #line 1432 "APItest.c" |
| 1432 | #ifndef PERL_UNUSED_VAR |
| 1433 | # define PERL_UNUSED_VAR(var)((void)sizeof(var)) if (0) var = var |
| 1434 | #endif |
| 1435 | |
| 1436 | #ifndef dVARstruct Perl___notused_struct |
| 1437 | # define dVARstruct Perl___notused_struct dNOOPstruct Perl___notused_struct |
| 1438 | #endif |
| 1439 | |
| 1440 | |
| 1441 | /* This stuff is not part of the API! You have been warned. */ |
| 1442 | #ifndef PERL_VERSION_DECIMAL |
| 1443 | # define PERL_VERSION_DECIMAL(r,v,s)(r*1000000 + v*1000 + s) (r*1000000 + v*1000 + s) |
| 1444 | #endif |
| 1445 | #ifndef PERL_DECIMAL_VERSION(5*1000000 + 32*1000 + 1) |
| 1446 | # define PERL_DECIMAL_VERSION(5*1000000 + 32*1000 + 1) \ |
| 1447 | PERL_VERSION_DECIMAL(PERL_REVISION,PERL_VERSION,PERL_SUBVERSION)(5*1000000 + 32*1000 + 1) |
| 1448 | #endif |
| 1449 | #ifndef PERL_VERSION_GE |
| 1450 | # define PERL_VERSION_GE(r,v,s)((5*1000000 + 32*1000 + 1) >= (r*1000000 + v*1000 + s)) \ |
| 1451 | (PERL_DECIMAL_VERSION(5*1000000 + 32*1000 + 1) >= PERL_VERSION_DECIMAL(r,v,s)(r*1000000 + v*1000 + s)) |
| 1452 | #endif |
| 1453 | #ifndef PERL_VERSION_LE |
| 1454 | # define PERL_VERSION_LE(r,v,s)((5*1000000 + 32*1000 + 1) <= (r*1000000 + v*1000 + s)) \ |
| 1455 | (PERL_DECIMAL_VERSION(5*1000000 + 32*1000 + 1) <= PERL_VERSION_DECIMAL(r,v,s)(r*1000000 + v*1000 + s)) |
| 1456 | #endif |
| 1457 | |
| 1458 | /* XS_INTERNAL is the explicit static-linkage variant of the default |
| 1459 | * XS macro. |
| 1460 | * |
| 1461 | * XS_EXTERNAL is the same as XS_INTERNAL except it does not include |
| 1462 | * "STATIC", ie. it exports XSUB symbols. You probably don't want that |
| 1463 | * for anything but the BOOT XSUB. |
| 1464 | * |
| 1465 | * See XSUB.h in core! |
| 1466 | */ |
| 1467 | |
| 1468 | |
| 1469 | /* TODO: This might be compatible further back than 5.10.0. */ |
| 1470 | #if PERL_VERSION_GE(5, 10, 0)((5*1000000 + 32*1000 + 1) >= (5*1000000 + 10*1000 + 0)) && PERL_VERSION_LE(5, 15, 1)((5*1000000 + 32*1000 + 1) <= (5*1000000 + 15*1000 + 1)) |
| 1471 | # undef XS_EXTERNAL |
| 1472 | # undef XS_INTERNAL |
| 1473 | # if defined(__CYGWIN__) && defined(USE_DYNAMIC_LOADING) |
| 1474 | # define XS_EXTERNAL(name)void name( CV* cv __attribute__((unused))) __declspec(dllexport) XSPROTO(name)void name( CV* cv __attribute__((unused))) |
| 1475 | # define XS_INTERNAL(name)static void name( CV* cv __attribute__((unused))) STATICstatic XSPROTO(name)void name( CV* cv __attribute__((unused))) |
| 1476 | # endif |
| 1477 | # if defined(__SYMBIAN32__) |
| 1478 | # define XS_EXTERNAL(name)void name( CV* cv __attribute__((unused))) EXPORT_C XSPROTO(name)void name( CV* cv __attribute__((unused))) |
| 1479 | # define XS_INTERNAL(name)static void name( CV* cv __attribute__((unused))) EXPORT_C STATICstatic XSPROTO(name)void name( CV* cv __attribute__((unused))) |
| 1480 | # endif |
| 1481 | # ifndef XS_EXTERNAL |
| 1482 | # if defined(HASATTRIBUTE_UNUSED) && !defined(__cplusplus) |
| 1483 | # define XS_EXTERNAL(name)void name( CV* cv __attribute__((unused))) void name(pTHX_ CV* cv __attribute__unused____attribute__((unused))) |
| 1484 | # define XS_INTERNAL(name)static void name( CV* cv __attribute__((unused))) STATICstatic void name(pTHX_ CV* cv __attribute__unused____attribute__((unused))) |
| 1485 | # else |
| 1486 | # ifdef __cplusplus |
| 1487 | # define XS_EXTERNAL(name)void name( CV* cv __attribute__((unused))) extern "C" XSPROTO(name)void name( CV* cv __attribute__((unused))) |
| 1488 | # define XS_INTERNAL(name)static void name( CV* cv __attribute__((unused))) static XSPROTO(name)void name( CV* cv __attribute__((unused))) |
| 1489 | # else |
| 1490 | # define XS_EXTERNAL(name)void name( CV* cv __attribute__((unused))) XSPROTO(name)void name( CV* cv __attribute__((unused))) |
| 1491 | # define XS_INTERNAL(name)static void name( CV* cv __attribute__((unused))) STATICstatic XSPROTO(name)void name( CV* cv __attribute__((unused))) |
| 1492 | # endif |
| 1493 | # endif |
| 1494 | # endif |
| 1495 | #endif |
| 1496 | |
| 1497 | /* perl >= 5.10.0 && perl <= 5.15.1 */ |
| 1498 | |
| 1499 | |
| 1500 | /* The XS_EXTERNAL macro is used for functions that must not be static |
| 1501 | * like the boot XSUB of a module. If perl didn't have an XS_EXTERNAL |
| 1502 | * macro defined, the best we can do is assume XS is the same. |
| 1503 | * Dito for XS_INTERNAL. |
| 1504 | */ |
| 1505 | #ifndef XS_EXTERNAL |
| 1506 | # define XS_EXTERNAL(name)void name( CV* cv __attribute__((unused))) XS(name)void name( CV* cv __attribute__((unused))) |
| 1507 | #endif |
| 1508 | #ifndef XS_INTERNAL |
| 1509 | # define XS_INTERNAL(name)static void name( CV* cv __attribute__((unused))) XS(name)void name( CV* cv __attribute__((unused))) |
| 1510 | #endif |
| 1511 | |
| 1512 | /* Now, finally, after all this mess, we want an ExtUtils::ParseXS |
| 1513 | * internal macro that we're free to redefine for varying linkage due |
| 1514 | * to the EXPORT_XSUB_SYMBOLS XS keyword. This is internal, use |
| 1515 | * XS_EXTERNAL(name) or XS_INTERNAL(name) in your code if you need to! |
| 1516 | */ |
| 1517 | |
| 1518 | #undef XS_EUPXS |
| 1519 | #if defined(PERL_EUPXS_ALWAYS_EXPORT) |
| 1520 | # define XS_EUPXS(name)static void name( CV* cv __attribute__((unused))) XS_EXTERNAL(name)void name( CV* cv __attribute__((unused))) |
| 1521 | #else |
| 1522 | /* default to internal */ |
| 1523 | # define XS_EUPXS(name)static void name( CV* cv __attribute__((unused))) XS_INTERNAL(name)static void name( CV* cv __attribute__((unused))) |
| 1524 | #endif |
| 1525 | |
| 1526 | #ifndef PERL_ARGS_ASSERT_CROAK_XS_USAGE((void)0); ((void)0) |
| 1527 | #define PERL_ARGS_ASSERT_CROAK_XS_USAGE((void)0); ((void)0) assert(cv)((void)0); assert(params)((void)0) |
| 1528 | |
| 1529 | /* prototype to pass -Wmissing-prototypes */ |
| 1530 | STATICstatic void |
| 1531 | S_croak_xs_usage(const CV *const cv, const char *const params); |
| 1532 | |
| 1533 | STATICstatic void |
| 1534 | S_croak_xs_usage(const CV *const cv, const char *const params) |
| 1535 | { |
| 1536 | const GV *const gv = CvGV(cv)Perl_CvGV( (CV *)(cv)); |
| 1537 | |
| 1538 | PERL_ARGS_ASSERT_CROAK_XS_USAGE((void)0); ((void)0); |
| 1539 | |
| 1540 | if (gv) { |
| 1541 | const char *const gvname = GvNAME(gv)((((XPVGV*)(gv)->sv_any)->xiv_u.xivu_namehek))->hek_key; |
| 1542 | const HV *const stash = GvSTASH(gv)(((XPVGV*)(gv)->sv_any)->xnv_u.xgv_stash); |
| 1543 | const char *const hvname = stash ? HvNAME(stash)((((stash)->sv_flags & 0x02000000) && ((struct xpvhv_aux*)&(((stash)->sv_u.svu_hash)[((XPVHV*) (stash )->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_name && ( ((struct xpvhv_aux*)&(((stash)->sv_u.svu_hash)[((XPVHV *) (stash)->sv_any)->xhv_max+1]))->xhv_name_count ? * ((struct xpvhv_aux*)&(((stash)->sv_u.svu_hash)[((XPVHV *) (stash)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_names : ((struct xpvhv_aux*)&(((stash)->sv_u.svu_hash)[((XPVHV *) (stash)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_name )) ? (( ((struct xpvhv_aux*)&(((stash)->sv_u.svu_hash )[((XPVHV*) (stash)->sv_any)->xhv_max+1]))->xhv_name_count ? *((struct xpvhv_aux*)&(((stash)->sv_u.svu_hash)[((XPVHV *) (stash)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_names : ((struct xpvhv_aux*)&(((stash)->sv_u.svu_hash)[((XPVHV *) (stash)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_name ))->hek_key : ((void*)0)) : NULL((void*)0); |
| 1544 | |
| 1545 | if (hvname) |
| 1546 | Perl_croak_nocontextPerl_croak("Usage: %s::%s(%s)", hvname, gvname, params); |
| 1547 | else |
| 1548 | Perl_croak_nocontextPerl_croak("Usage: %s(%s)", gvname, params); |
| 1549 | } else { |
| 1550 | /* Pants. I don't think that it should be possible to get here. */ |
| 1551 | Perl_croak_nocontextPerl_croak("Usage: CODE(0x%" UVxf"lx" ")(%s)", PTR2UV(cv)(UV)(cv), params); |
| 1552 | } |
| 1553 | } |
| 1554 | #undef PERL_ARGS_ASSERT_CROAK_XS_USAGE((void)0); ((void)0) |
| 1555 | |
| 1556 | #define croak_xs_usagePerl_croak_xs_usage S_croak_xs_usage |
| 1557 | |
| 1558 | #endif |
| 1559 | |
| 1560 | /* NOTE: the prototype of newXSproto() is different in versions of perls, |
| 1561 | * so we define a portable version of newXSproto() |
| 1562 | */ |
| 1563 | #ifdef newXS_flags |
| 1564 | #define newXSproto_portable(name, c_impl, file, proto)Perl_newXS_flags( name,c_impl,file,proto,0) newXS_flags(name, c_impl, file, proto, 0)Perl_newXS_flags( name,c_impl,file,proto,0) |
| 1565 | #else |
| 1566 | #define newXSproto_portable(name, c_impl, file, proto)Perl_newXS_flags( name,c_impl,file,proto,0) (PL_Sv=(SV*)newXS(name, c_impl, file)Perl_newXS( name,c_impl,file), sv_setpv(PL_Sv, proto)Perl_sv_setpv( PL_Sv,proto), (CV*)PL_Sv) |
| 1567 | #endif /* !defined(newXS_flags) */ |
| 1568 | |
| 1569 | #if PERL_VERSION_LE(5, 21, 5)((5*1000000 + 32*1000 + 1) <= (5*1000000 + 21*1000 + 5)) |
| 1570 | # define newXS_deffile(a,b)Perl_newXS_deffile( a,b) Perl_newXS(aTHX_ a,b,file) |
| 1571 | #else |
| 1572 | # define newXS_deffile(a,b)Perl_newXS_deffile( a,b) Perl_newXS_deffile(aTHX_ a,b) |
| 1573 | #endif |
| 1574 | |
| 1575 | #line 1576 "APItest.c" |
| 1576 | |
| 1577 | /* INCLUDE: Including 'const-xs.inc' from 'APItest.xs' */ |
| 1578 | |
| 1579 | |
| 1580 | XS_EUPXS(XS_XS__APItest_constant)static void XS_XS__APItest_constant( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 1581 | XS_EUPXS(XS_XS__APItest_constant)static void XS_XS__APItest_constant( CV* cv __attribute__((unused ))) |
| 1582 | { |
| 1583 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 1584 | if (items != 1) |
| 1585 | croak_xs_usagePerl_croak_xs_usage(cv, "sv"); |
| 1586 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 1587 | SPsp -= items; |
| 1588 | { |
| 1589 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 1590 | ; |
| 1591 | #line 247 "./const-xs.inc" |
| 1592 | #ifndef SYMBIAN |
| 1593 | /* It's not obvious how to calculate this at C pre-processor time. |
| 1594 | However, any compiler optimiser worth its salt should be able to |
| 1595 | remove the dead code, and hopefully the now-obviously-unused static |
| 1596 | function too. */ |
| 1597 | HV *constant_missing = (C_ARRAY_LENGTH(values_for_notfound)(sizeof(values_for_notfound)/sizeof((values_for_notfound)[0]) ) > 1) |
| 1598 | ? get_missing_hash(aTHX) : NULL((void*)0); |
| 1599 | if ((C_ARRAY_LENGTH(values_for_notfound)(sizeof(values_for_notfound)/sizeof((values_for_notfound)[0]) ) > 1) |
| 1600 | ? hv_exists_ent(constant_missing, sv, 0)((Perl_hv_common( (constant_missing),(sv),((void*)0),0,0,0x08 ,0,(0))) ? (_Bool)1 : (_Bool)0) : 0) { |
| 1601 | sv = newSVpvfPerl_newSVpvf("Your vendor has not defined XS::APItest macro %" SVf"-p" |
| 1602 | ", used", sv); |
| 1603 | } else |
| 1604 | #endif |
| 1605 | { |
| 1606 | sv = newSVpvfPerl_newSVpvf("%" SVf"-p" " is not a valid XS::APItest macro", |
| 1607 | sv); |
| 1608 | } |
| 1609 | PUSHs(sv_2mortal(sv))(*++sp = (Perl_sv_2mortal( sv))); |
| 1610 | #line 1611 "APItest.c" |
| 1611 | PUTBACKPL_stack_sp = sp; |
| 1612 | return; |
| 1613 | } |
| 1614 | } |
| 1615 | |
| 1616 | |
| 1617 | /* INCLUDE: Returning to 'APItest.xs' from 'const-xs.inc' */ |
| 1618 | |
| 1619 | |
| 1620 | /* INCLUDE: Including 'numeric.xs' from 'APItest.xs' */ |
| 1621 | |
| 1622 | |
| 1623 | XS_EUPXS(XS_XS__APItest__numeric_grok_number)static void XS_XS__APItest__numeric_grok_number( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 1624 | XS_EUPXS(XS_XS__APItest__numeric_grok_number)static void XS_XS__APItest__numeric_grok_number( CV* cv __attribute__ ((unused))) |
| 1625 | { |
| 1626 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 1627 | if (items != 1) |
| 1628 | croak_xs_usagePerl_croak_xs_usage(cv, "number"); |
| 1629 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 1630 | SPsp -= items; |
| 1631 | { |
| 1632 | SV * number = ST(0)PL_stack_base[ax + (0)] |
| 1633 | ; |
| 1634 | #line 7 "./numeric.xs" |
| 1635 | STRLEN len; |
| 1636 | const char *pv = SvPV(number, len)((((number)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (number)->sv_any)->xpv_cur), ((number )->sv_u.svu_pv)) : Perl_sv_2pv_flags( number,&len,2)); |
| 1637 | UV value; |
| 1638 | int result; |
| 1639 | #line 1640 "APItest.c" |
| 1640 | #line 12 "./numeric.xs" |
| 1641 | EXTEND(SP,2)do { (void)0; if (__builtin_expect(((((2) < 0 || PL_stack_max - (sp) < (2))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(2) > sizeof(ssize_t) && ((ssize_t) (2) != (2)) ? -1 : (2))); ((void)sizeof(sp)); } } while (0); |
| 1642 | result = grok_number(pv, len, &value)Perl_grok_number( pv,len,&value); |
| 1643 | PUSHs(sv_2mortal(newSViv(result)))(*++sp = (Perl_sv_2mortal( Perl_newSViv( result)))); |
| 1644 | if (result & IS_NUMBER_IN_UV0x01) |
| 1645 | PUSHs(sv_2mortal(newSVuv(value)))(*++sp = (Perl_sv_2mortal( Perl_newSVuv( value)))); |
| 1646 | #line 1647 "APItest.c" |
| 1647 | PUTBACKPL_stack_sp = sp; |
| 1648 | return; |
| 1649 | } |
| 1650 | } |
| 1651 | |
| 1652 | |
| 1653 | XS_EUPXS(XS_XS__APItest__numeric_grok_number_flags)static void XS_XS__APItest__numeric_grok_number_flags( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 1654 | XS_EUPXS(XS_XS__APItest__numeric_grok_number_flags)static void XS_XS__APItest__numeric_grok_number_flags( CV* cv __attribute__((unused))) |
| 1655 | { |
| 1656 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 1657 | if (items != 2) |
| 1658 | croak_xs_usagePerl_croak_xs_usage(cv, "number, flags"); |
| 1659 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 1660 | SPsp -= items; |
| 1661 | { |
| 1662 | SV * number = ST(0)PL_stack_base[ax + (0)] |
| 1663 | ; |
| 1664 | U32 flags = (unsigned long)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 1665 | ; |
| 1666 | #line 23 "./numeric.xs" |
| 1667 | STRLEN len; |
| 1668 | const char *pv = SvPV(number, len)((((number)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (number)->sv_any)->xpv_cur), ((number )->sv_u.svu_pv)) : Perl_sv_2pv_flags( number,&len,2)); |
| 1669 | UV value; |
| 1670 | int result; |
| 1671 | #line 1672 "APItest.c" |
| 1672 | #line 28 "./numeric.xs" |
| 1673 | EXTEND(SP,2)do { (void)0; if (__builtin_expect(((((2) < 0 || PL_stack_max - (sp) < (2))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(2) > sizeof(ssize_t) && ((ssize_t) (2) != (2)) ? -1 : (2))); ((void)sizeof(sp)); } } while (0); |
| 1674 | result = grok_number_flags(pv, len, &value, flags)Perl_grok_number_flags( pv,len,&value,flags); |
| 1675 | PUSHs(sv_2mortal(newSViv(result)))(*++sp = (Perl_sv_2mortal( Perl_newSViv( result)))); |
| 1676 | if (result & IS_NUMBER_IN_UV0x01) |
| 1677 | PUSHs(sv_2mortal(newSVuv(value)))(*++sp = (Perl_sv_2mortal( Perl_newSVuv( value)))); |
| 1678 | #line 1679 "APItest.c" |
| 1679 | PUTBACKPL_stack_sp = sp; |
| 1680 | return; |
| 1681 | } |
| 1682 | } |
| 1683 | |
| 1684 | |
| 1685 | XS_EUPXS(XS_XS__APItest__numeric_grok_atoUV)static void XS_XS__APItest__numeric_grok_atoUV( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 1686 | XS_EUPXS(XS_XS__APItest__numeric_grok_atoUV)static void XS_XS__APItest__numeric_grok_atoUV( CV* cv __attribute__ ((unused))) |
| 1687 | { |
| 1688 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 1689 | if (items != 2) |
| 1690 | croak_xs_usagePerl_croak_xs_usage(cv, "number, endsv"); |
| 1691 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 1692 | SPsp -= items; |
| 1693 | { |
| 1694 | SV * number = ST(0)PL_stack_base[ax + (0)] |
| 1695 | ; |
| 1696 | SV * endsv = ST(1)PL_stack_base[ax + (1)] |
| 1697 | ; |
| 1698 | #line 39 "./numeric.xs" |
| 1699 | STRLEN len; |
| 1700 | const char *pv = SvPV(number, len)((((number)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (number)->sv_any)->xpv_cur), ((number )->sv_u.svu_pv)) : Perl_sv_2pv_flags( number,&len,2)); |
| 1701 | UV value = 0xdeadbeef; |
| 1702 | bool_Bool result; |
| 1703 | const char* endptr = pv + len; |
| 1704 | #line 1705 "APItest.c" |
| 1705 | #line 45 "./numeric.xs" |
| 1706 | EXTEND(SP,2)do { (void)0; if (__builtin_expect(((((2) < 0 || PL_stack_max - (sp) < (2))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(2) > sizeof(ssize_t) && ((ssize_t) (2) != (2)) ? -1 : (2))); ((void)sizeof(sp)); } } while (0); |
| 1707 | if (endsv == &PL_sv_undef(PL_sv_immortals[1])) { |
| 1708 | result = grok_atoUVPerl_grok_atoUV(pv, &value, NULL((void*)0)); |
| 1709 | } else { |
| 1710 | result = grok_atoUVPerl_grok_atoUV(pv, &value, &endptr); |
| 1711 | } |
| 1712 | PUSHs(result ? &PL_sv_yes : &PL_sv_no)(*++sp = (result ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2]))); |
| 1713 | PUSHs(sv_2mortal(newSVuv(value)))(*++sp = (Perl_sv_2mortal( Perl_newSVuv( value)))); |
| 1714 | if (endsv == &PL_sv_undef(PL_sv_immortals[1])) { |
| 1715 | PUSHs(sv_2mortal(newSVpvn(NULL, 0)))(*++sp = (Perl_sv_2mortal( Perl_newSVpvn( ((void*)0),0)))); |
| 1716 | } else { |
| 1717 | if (endptr) { |
| 1718 | PUSHs(sv_2mortal(newSViv(endptr - pv)))(*++sp = (Perl_sv_2mortal( Perl_newSViv( endptr - pv)))); |
| 1719 | } else { |
| 1720 | PUSHs(sv_2mortal(newSViv(0)))(*++sp = (Perl_sv_2mortal( Perl_newSViv( 0)))); |
| 1721 | } |
| 1722 | } |
| 1723 | #line 1724 "APItest.c" |
| 1724 | PUTBACKPL_stack_sp = sp; |
| 1725 | return; |
| 1726 | } |
| 1727 | } |
| 1728 | |
| 1729 | |
| 1730 | /* INCLUDE: Returning to 'APItest.xs' from 'numeric.xs' */ |
| 1731 | |
| 1732 | |
| 1733 | XS_EUPXS(XS_XS__APItest__numeric_assertx)static void XS_XS__APItest__numeric_assertx( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 1734 | XS_EUPXS(XS_XS__APItest__numeric_assertx)static void XS_XS__APItest__numeric_assertx( CV* cv __attribute__ ((unused))) |
| 1735 | { |
| 1736 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 1737 | if (items != 1) |
| 1738 | croak_xs_usagePerl_croak_xs_usage(cv, "x"); |
| 1739 | { |
| 1740 | int x = (int)SvIV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (0)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 0)],2)) |
| 1741 | ; |
| 1742 | #line 1431 "APItest.xs" |
| 1743 | /* this only needs to compile and checks that assert() can be |
| 1744 | used this way syntactically */ |
| 1745 | (void)(assert(x)((void)0), 1); |
| 1746 | (void)(x); |
| 1747 | #line 1748 "APItest.c" |
| 1748 | } |
| 1749 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 1750 | } |
| 1751 | |
| 1752 | |
| 1753 | XS_EUPXS(XS_XS__APItest__utf8_bytes_cmp_utf8)static void XS_XS__APItest__utf8_bytes_cmp_utf8( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 1754 | XS_EUPXS(XS_XS__APItest__utf8_bytes_cmp_utf8)static void XS_XS__APItest__utf8_bytes_cmp_utf8( CV* cv __attribute__ ((unused))) |
| 1755 | { |
| 1756 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 1757 | if (items != 2) |
| 1758 | croak_xs_usagePerl_croak_xs_usage(cv, "bytes, utf8"); |
| 1759 | { |
| 1760 | SV * bytes = ST(0)PL_stack_base[ax + (0)] |
| 1761 | ; |
| 1762 | SV * utf8 = ST(1)PL_stack_base[ax + (1)] |
| 1763 | ; |
| 1764 | #line 1443 "APItest.xs" |
| 1765 | const U8 *b; |
| 1766 | STRLEN blen; |
| 1767 | const U8 *u; |
| 1768 | STRLEN ulen; |
| 1769 | #line 1770 "APItest.c" |
| 1770 | int RETVAL; |
| 1771 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 1772 | #line 1448 "APItest.xs" |
| 1773 | b = (const U8 *)SvPVbyte(bytes, blen)((((bytes)->sv_flags & (0x00000400|0x20000000|0x00200000 )) == 0x00000400) ? ((blen = ((XPV*) (bytes)->sv_any)-> xpv_cur), ((bytes)->sv_u.svu_pv)) : Perl_sv_2pvbyte_flags( bytes,&blen,2)); |
| 1774 | u = (const U8 *)SvPVbyte(utf8, ulen)((((utf8)->sv_flags & (0x00000400|0x20000000|0x00200000 )) == 0x00000400) ? ((ulen = ((XPV*) (utf8)->sv_any)->xpv_cur ), ((utf8)->sv_u.svu_pv)) : Perl_sv_2pvbyte_flags( utf8,& ulen,2)); |
| 1775 | RETVAL = bytes_cmp_utf8(b, blen, u, ulen)Perl_bytes_cmp_utf8( b,blen,u,ulen); |
| 1776 | #line 1777 "APItest.c" |
| 1777 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHi((IV)RETVAL)do { do { IV TARGi_iv = (IV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1)) ? (_Bool)1 : (_Bool)0) ,(1))) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000 ); targ->sv_u.svu_iv = TARGi_iv; } else Perl_sv_setiv_mg( targ ,TARGi_iv); } while (0); (*++sp = (targ)); } while (0); |
| 1778 | } |
| 1779 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 1780 | } |
| 1781 | |
| 1782 | |
| 1783 | XS_EUPXS(XS_XS__APItest__utf8_test_utf8_to_bytes)static void XS_XS__APItest__utf8_test_utf8_to_bytes( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 1784 | XS_EUPXS(XS_XS__APItest__utf8_test_utf8_to_bytes)static void XS_XS__APItest__utf8_test_utf8_to_bytes( CV* cv __attribute__ ((unused))) |
| 1785 | { |
| 1786 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 1787 | if (items != 2) |
| 1788 | croak_xs_usagePerl_croak_xs_usage(cv, "bytes, len"); |
| 1789 | { |
| 1790 | U8 * bytes = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 1791 | ; |
| 1792 | STRLEN len = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 1793 | ; |
| 1794 | #line 1459 "APItest.xs" |
| 1795 | char * ret; |
| 1796 | #line 1797 "APItest.c" |
| 1797 | AV * RETVAL; |
| 1798 | #line 1461 "APItest.xs" |
| 1799 | RETVAL = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 1800 | sv_2mortal((SV*)RETVAL)Perl_sv_2mortal( (SV*)RETVAL); |
| 1801 | |
| 1802 | ret = (char *) utf8_to_bytes(bytes, &len)Perl_utf8_to_bytes( bytes,&len); |
| 1803 | av_push(RETVAL, newSVpv(ret, 0))Perl_av_push( RETVAL,Perl_newSVpv( ret,0)); |
| 1804 | |
| 1805 | /* utf8_to_bytes uses (STRLEN)-1 to signal errors, and we want to |
| 1806 | * return that as -1 to perl, so cast to SSize_t in case |
| 1807 | * sizeof(IV) > sizeof(STRLEN) */ |
| 1808 | av_push(RETVAL, newSViv((SSize_t)len))Perl_av_push( RETVAL,Perl_newSViv( (ssize_t)len)); |
| 1809 | av_push(RETVAL, newSVpv((const char *) bytes, 0))Perl_av_push( RETVAL,Perl_newSVpv( (const char *) bytes,0)); |
| 1810 | |
| 1811 | #line 1812 "APItest.c" |
| 1812 | { |
| 1813 | SV * RETVALSV; |
| 1814 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 1815 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 1816 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 1817 | } |
| 1818 | } |
| 1819 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 1820 | } |
| 1821 | |
| 1822 | |
| 1823 | XS_EUPXS(XS_XS__APItest__utf8_test_utf8n_to_uvchr_msgs)static void XS_XS__APItest__utf8_test_utf8n_to_uvchr_msgs( CV * cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 1824 | XS_EUPXS(XS_XS__APItest__utf8_test_utf8n_to_uvchr_msgs)static void XS_XS__APItest__utf8_test_utf8n_to_uvchr_msgs( CV * cv __attribute__((unused))) |
| 1825 | { |
| 1826 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 1827 | if (items != 3) |
| 1828 | croak_xs_usagePerl_croak_xs_usage(cv, "s, len, flags"); |
| 1829 | { |
| 1830 | char * s = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 1831 | ; |
| 1832 | STRLEN len = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 1833 | ; |
| 1834 | U32 flags = (unsigned long)SvUV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (2)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (2)],2)) |
| 1835 | ; |
| 1836 | #line 1482 "APItest.xs" |
| 1837 | STRLEN retlen; |
| 1838 | UV ret; |
| 1839 | U32 errors; |
| 1840 | AV *msgs = NULL((void*)0); |
| 1841 | |
| 1842 | #line 1843 "APItest.c" |
| 1843 | AV * RETVAL; |
| 1844 | #line 1488 "APItest.xs" |
| 1845 | RETVAL = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 1846 | sv_2mortal((SV*)RETVAL)Perl_sv_2mortal( (SV*)RETVAL); |
| 1847 | |
| 1848 | ret = utf8n_to_uvchr_msgsPerl_utf8n_to_uvchr_msgs((U8*) s, |
| 1849 | len, |
| 1850 | &retlen, |
| 1851 | flags, |
| 1852 | &errors, |
| 1853 | &msgs); |
| 1854 | |
| 1855 | /* Returns the return value in [0]; <retlen> in [1], <errors> in [2] */ |
| 1856 | av_push(RETVAL, newSVuv(ret))Perl_av_push( RETVAL,Perl_newSVuv( ret)); |
| 1857 | if (retlen == (STRLEN) -1) { |
| 1858 | av_push(RETVAL, newSViv(-1))Perl_av_push( RETVAL,Perl_newSViv( -1)); |
| 1859 | } |
| 1860 | else { |
| 1861 | av_push(RETVAL, newSVuv(retlen))Perl_av_push( RETVAL,Perl_newSVuv( retlen)); |
| 1862 | } |
| 1863 | av_push(RETVAL, newSVuv(errors))Perl_av_push( RETVAL,Perl_newSVuv( errors)); |
| 1864 | |
| 1865 | /* And any messages in [3] */ |
| 1866 | if (msgs) { |
| 1867 | av_push(RETVAL, newRV_noinc((SV*)msgs))Perl_av_push( RETVAL,Perl_newRV_noinc( (SV*)msgs)); |
| 1868 | } |
| 1869 | |
| 1870 | #line 1871 "APItest.c" |
| 1871 | { |
| 1872 | SV * RETVALSV; |
| 1873 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 1874 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 1875 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 1876 | } |
| 1877 | } |
| 1878 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 1879 | } |
| 1880 | |
| 1881 | |
| 1882 | XS_EUPXS(XS_XS__APItest__utf8_test_utf8n_to_uvchr_error)static void XS_XS__APItest__utf8_test_utf8n_to_uvchr_error( CV * cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 1883 | XS_EUPXS(XS_XS__APItest__utf8_test_utf8n_to_uvchr_error)static void XS_XS__APItest__utf8_test_utf8n_to_uvchr_error( CV * cv __attribute__((unused))) |
| 1884 | { |
| 1885 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 1886 | if (items != 3) |
| 1887 | croak_xs_usagePerl_croak_xs_usage(cv, "s, len, flags"); |
| 1888 | { |
| 1889 | char * s = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 1890 | ; |
| 1891 | STRLEN len = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 1892 | ; |
| 1893 | U32 flags = (unsigned long)SvUV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (2)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (2)],2)) |
| 1894 | ; |
| 1895 | #line 1523 "APItest.xs" |
| 1896 | STRLEN retlen; |
| 1897 | UV ret; |
| 1898 | U32 errors; |
| 1899 | |
| 1900 | #line 1901 "APItest.c" |
| 1901 | AV * RETVAL; |
| 1902 | #line 1528 "APItest.xs" |
| 1903 | /* Now that utf8n_to_uvchr() is a trivial wrapper for |
| 1904 | * utf8n_to_uvchr_error(), call the latter with the inputs. It always |
| 1905 | * asks for the actual length to be returned and errors to be returned |
| 1906 | * |
| 1907 | * Length to assume <s> is; not checked, so could have buffer overflow |
| 1908 | */ |
| 1909 | RETVAL = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 1910 | sv_2mortal((SV*)RETVAL)Perl_sv_2mortal( (SV*)RETVAL); |
| 1911 | |
| 1912 | ret = utf8n_to_uvchr_error((U8*) s,Perl_utf8n_to_uvchr_msgs((U8*) s, len, &retlen, flags, & errors, 0) |
| 1913 | len,Perl_utf8n_to_uvchr_msgs((U8*) s, len, &retlen, flags, & errors, 0) |
| 1914 | &retlen,Perl_utf8n_to_uvchr_msgs((U8*) s, len, &retlen, flags, & errors, 0) |
| 1915 | flags,Perl_utf8n_to_uvchr_msgs((U8*) s, len, &retlen, flags, & errors, 0) |
| 1916 | &errors)Perl_utf8n_to_uvchr_msgs((U8*) s, len, &retlen, flags, & errors, 0); |
| 1917 | |
| 1918 | /* Returns the return value in [0]; <retlen> in [1], <errors> in [2] */ |
| 1919 | av_push(RETVAL, newSVuv(ret))Perl_av_push( RETVAL,Perl_newSVuv( ret)); |
| 1920 | if (retlen == (STRLEN) -1) { |
| 1921 | av_push(RETVAL, newSViv(-1))Perl_av_push( RETVAL,Perl_newSViv( -1)); |
| 1922 | } |
| 1923 | else { |
| 1924 | av_push(RETVAL, newSVuv(retlen))Perl_av_push( RETVAL,Perl_newSVuv( retlen)); |
| 1925 | } |
| 1926 | av_push(RETVAL, newSVuv(errors))Perl_av_push( RETVAL,Perl_newSVuv( errors)); |
| 1927 | |
| 1928 | #line 1929 "APItest.c" |
| 1929 | { |
| 1930 | SV * RETVALSV; |
| 1931 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 1932 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 1933 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 1934 | } |
| 1935 | } |
| 1936 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 1937 | } |
| 1938 | |
| 1939 | |
| 1940 | XS_EUPXS(XS_XS__APItest__utf8_test_valid_utf8_to_uvchr)static void XS_XS__APItest__utf8_test_valid_utf8_to_uvchr( CV * cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 1941 | XS_EUPXS(XS_XS__APItest__utf8_test_valid_utf8_to_uvchr)static void XS_XS__APItest__utf8_test_valid_utf8_to_uvchr( CV * cv __attribute__((unused))) |
| 1942 | { |
| 1943 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 1944 | if (items != 1) |
| 1945 | croak_xs_usagePerl_croak_xs_usage(cv, "s"); |
| 1946 | { |
| 1947 | SV * s = ST(0)PL_stack_base[ax + (0)] |
| 1948 | ; |
| 1949 | #line 1561 "APItest.xs" |
| 1950 | STRLEN retlen; |
| 1951 | UV ret; |
| 1952 | |
| 1953 | #line 1954 "APItest.c" |
| 1954 | AV * RETVAL; |
| 1955 | #line 1565 "APItest.xs" |
| 1956 | /* Call utf8n_to_uvchr() with the inputs. It always asks for the |
| 1957 | * actual length to be returned |
| 1958 | * |
| 1959 | * Length to assume <s> is; not checked, so could have buffer overflow |
| 1960 | */ |
| 1961 | RETVAL = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 1962 | sv_2mortal((SV*)RETVAL)Perl_sv_2mortal( (SV*)RETVAL); |
| 1963 | |
| 1964 | ret = valid_utf8_to_uvchrPerl_valid_utf8_to_uvchr((U8*) SvPV_nolen(s)((((s)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((s)->sv_u.svu_pv) : Perl_sv_2pv_flags( s,0,2)), &retlen); |
| 1965 | |
| 1966 | /* Returns the return value in [0]; <retlen> in [1] */ |
| 1967 | av_push(RETVAL, newSVuv(ret))Perl_av_push( RETVAL,Perl_newSVuv( ret)); |
| 1968 | av_push(RETVAL, newSVuv(retlen))Perl_av_push( RETVAL,Perl_newSVuv( retlen)); |
| 1969 | |
| 1970 | #line 1971 "APItest.c" |
| 1971 | { |
| 1972 | SV * RETVALSV; |
| 1973 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 1974 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 1975 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 1976 | } |
| 1977 | } |
| 1978 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 1979 | } |
| 1980 | |
| 1981 | |
| 1982 | XS_EUPXS(XS_XS__APItest__utf8_test_uvchr_to_utf8_flags)static void XS_XS__APItest__utf8_test_uvchr_to_utf8_flags( CV * cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 1983 | XS_EUPXS(XS_XS__APItest__utf8_test_uvchr_to_utf8_flags)static void XS_XS__APItest__utf8_test_uvchr_to_utf8_flags( CV * cv __attribute__((unused))) |
| 1984 | { |
| 1985 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 1986 | if (items != 2) |
| 1987 | croak_xs_usagePerl_croak_xs_usage(cv, "uv, flags"); |
| 1988 | { |
| 1989 | SV * uv = ST(0)PL_stack_base[ax + (0)] |
| 1990 | ; |
| 1991 | SV * flags = ST(1)PL_stack_base[ax + (1)] |
| 1992 | ; |
| 1993 | #line 1588 "APItest.xs" |
| 1994 | U8 dest[UTF8_MAXBYTES13 + 1]; |
| 1995 | U8 *ret; |
| 1996 | |
| 1997 | #line 1998 "APItest.c" |
| 1998 | SV * RETVAL; |
| 1999 | #line 1592 "APItest.xs" |
| 2000 | /* Call uvchr_to_utf8_flags() with the inputs. */ |
| 2001 | ret = uvchr_to_utf8_flags(dest, SvUV(uv), SvUV(flags))Perl_uvoffuni_to_utf8_flags_msgs( dest,((UV) ((((((uv)->sv_flags & (0x00000100|0x80000000|0x00200000)) == (0x00000100|0x80000000 )) ? ((XPVUV*) (uv)->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( uv,2))) | 0)),((((flags)->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (flags) ->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags( flags,2)) ,0); |
| 2002 | if (! ret) { |
| 2003 | XSRETURN_UNDEFdo { (PL_stack_base[ax + (0)] = &(PL_sv_immortals[1])); do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 2004 | } |
| 2005 | RETVAL = newSVpvn((char *) dest, ret - dest)Perl_newSVpvn( (char *) dest,ret - dest); |
| 2006 | |
| 2007 | #line 2008 "APItest.c" |
| 2008 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 2009 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 2010 | } |
| 2011 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 2012 | } |
| 2013 | |
| 2014 | |
| 2015 | XS_EUPXS(XS_XS__APItest__utf8_test_uvchr_to_utf8_flags_msgs)static void XS_XS__APItest__utf8_test_uvchr_to_utf8_flags_msgs ( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2016 | XS_EUPXS(XS_XS__APItest__utf8_test_uvchr_to_utf8_flags_msgs)static void XS_XS__APItest__utf8_test_uvchr_to_utf8_flags_msgs ( CV* cv __attribute__((unused))) |
| 2017 | { |
| 2018 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2019 | if (items != 2) |
| 2020 | croak_xs_usagePerl_croak_xs_usage(cv, "uv, flags"); |
| 2021 | { |
| 2022 | SV * uv = ST(0)PL_stack_base[ax + (0)] |
| 2023 | ; |
| 2024 | SV * flags = ST(1)PL_stack_base[ax + (1)] |
| 2025 | ; |
| 2026 | #line 1608 "APItest.xs" |
| 2027 | U8 dest[UTF8_MAXBYTES13 + 1]; |
| 2028 | U8 *ret; |
| 2029 | |
| 2030 | #line 2031 "APItest.c" |
| 2031 | AV * RETVAL; |
| 2032 | #line 1612 "APItest.xs" |
| 2033 | HV *msgs = NULL((void*)0); |
| 2034 | RETVAL = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 2035 | sv_2mortal((SV*)RETVAL)Perl_sv_2mortal( (SV*)RETVAL); |
| 2036 | |
| 2037 | ret = uvchr_to_utf8_flags_msgs(dest, SvUV(uv), SvUV(flags), &msgs)Perl_uvoffuni_to_utf8_flags_msgs( dest,((UV) ((((((uv)->sv_flags & (0x00000100|0x80000000|0x00200000)) == (0x00000100|0x80000000 )) ? ((XPVUV*) (uv)->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( uv,2))) | 0)),((((flags)->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (flags) ->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags( flags,2)) ,&msgs); |
| 2038 | |
| 2039 | if (ret) { |
| 2040 | av_push(RETVAL, newSVpvn((char *) dest, ret - dest))Perl_av_push( RETVAL,Perl_newSVpvn( (char *) dest,ret - dest) ); |
| 2041 | } |
| 2042 | else { |
| 2043 | av_push(RETVAL, &PL_sv_undef)Perl_av_push( RETVAL,&(PL_sv_immortals[1])); |
| 2044 | } |
| 2045 | |
| 2046 | if (msgs) { |
| 2047 | av_push(RETVAL, newRV_noinc((SV*)msgs))Perl_av_push( RETVAL,Perl_newRV_noinc( (SV*)msgs)); |
| 2048 | } |
| 2049 | |
| 2050 | #line 2051 "APItest.c" |
| 2051 | { |
| 2052 | SV * RETVALSV; |
| 2053 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 2054 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 2055 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 2056 | } |
| 2057 | } |
| 2058 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 2059 | } |
| 2060 | |
| 2061 | |
| 2062 | XS_EUPXS(XS_XS__APItest__Overload_amagic_deref_call)static void XS_XS__APItest__Overload_amagic_deref_call( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2063 | XS_EUPXS(XS_XS__APItest__Overload_amagic_deref_call)static void XS_XS__APItest__Overload_amagic_deref_call( CV* cv __attribute__((unused))) |
| 2064 | { |
| 2065 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2066 | if (items != 2) |
| 2067 | croak_xs_usagePerl_croak_xs_usage(cv, "sv, what"); |
| 2068 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 2069 | SPsp -= items; |
| 2070 | { |
| 2071 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 2072 | ; |
| 2073 | int what = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 2074 | ; |
| 2075 | #line 1639 "APItest.xs" |
| 2076 | /* The reference is owned by something else. */ |
| 2077 | PUSHs(amagic_deref_call(sv, what))(*++sp = (Perl_amagic_deref_call( sv,what))); |
| 2078 | #line 2079 "APItest.c" |
| 2079 | PUTBACKPL_stack_sp = sp; |
| 2080 | return; |
| 2081 | } |
| 2082 | } |
| 2083 | |
| 2084 | |
| 2085 | XS_EUPXS(XS_XS__APItest__Overload_tryAMAGICunDEREF_var)static void XS_XS__APItest__Overload_tryAMAGICunDEREF_var( CV * cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2086 | XS_EUPXS(XS_XS__APItest__Overload_tryAMAGICunDEREF_var)static void XS_XS__APItest__Overload_tryAMAGICunDEREF_var( CV * cv __attribute__((unused))) |
| 2087 | { |
| 2088 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2089 | if (items != 2) |
| 2090 | croak_xs_usagePerl_croak_xs_usage(cv, "sv, what"); |
| 2091 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 2092 | SPsp -= items; |
| 2093 | { |
| 2094 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 2095 | ; |
| 2096 | int what = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 2097 | ; |
| 2098 | #line 1650 "APItest.xs" |
| 2099 | { |
| 2100 | SV **sp = &sv; |
| 2101 | switch(what) { |
| 2102 | case to_av_amg: |
| 2103 | tryAMAGICunDEREF(to_av)do { sv = Perl_amagic_deref_call( *sp,to_av_amg); sp = PL_stack_sp ; } while (0); |
| 2104 | break; |
| 2105 | case to_cv_amg: |
| 2106 | tryAMAGICunDEREF(to_cv)do { sv = Perl_amagic_deref_call( *sp,to_cv_amg); sp = PL_stack_sp ; } while (0); |
| 2107 | break; |
| 2108 | case to_gv_amg: |
| 2109 | tryAMAGICunDEREF(to_gv)do { sv = Perl_amagic_deref_call( *sp,to_gv_amg); sp = PL_stack_sp ; } while (0); |
| 2110 | break; |
| 2111 | case to_hv_amg: |
| 2112 | tryAMAGICunDEREF(to_hv)do { sv = Perl_amagic_deref_call( *sp,to_hv_amg); sp = PL_stack_sp ; } while (0); |
| 2113 | break; |
| 2114 | case to_sv_amg: |
| 2115 | tryAMAGICunDEREF(to_sv)do { sv = Perl_amagic_deref_call( *sp,to_sv_amg); sp = PL_stack_sp ; } while (0); |
| 2116 | break; |
| 2117 | default: |
| 2118 | croakPerl_croak("Invalid value %d passed to tryAMAGICunDEREF_var", what); |
| 2119 | } |
| 2120 | } |
| 2121 | /* The reference is owned by something else. */ |
| 2122 | PUSHs(sv)(*++sp = (sv)); |
| 2123 | #line 2124 "APItest.c" |
| 2124 | PUTBACKPL_stack_sp = sp; |
| 2125 | return; |
| 2126 | } |
| 2127 | } |
| 2128 | |
| 2129 | |
| 2130 | XS_EUPXS(XS_XS__APItest__XSUB_XS_VERSION_defined)static void XS_XS__APItest__XSUB_XS_VERSION_defined( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2131 | XS_EUPXS(XS_XS__APItest__XSUB_XS_VERSION_defined)static void XS_XS__APItest__XSUB_XS_VERSION_defined( CV* cv __attribute__ ((unused))) |
| 2132 | { |
| 2133 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2134 | PERL_UNUSED_VAR(cv)((void)sizeof(cv)); /* -W */ |
| 2135 | PERL_UNUSED_VAR(items)((void)sizeof(items)); /* -W */ |
| 2136 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 2137 | SPsp -= items; |
| 2138 | { |
| 2139 | #line 1685 "APItest.xs" |
| 2140 | XS_VERSION_BOOTCHECKPerl_xs_handshake((((sizeof(struct PerlHandShakeInterpreter)) << 16) | ((sizeof("" "1.09" "")-1) > 0xFF ? (Perl_croak ("panic: handshake overflow"), 0xFF) : (sizeof("" "1.09" "")- 1) << 8) | ((((0)) ? (_Bool)1 : (_Bool)0) ? 0x00000020 : 0) | ((((0)) ? (_Bool)1 : (_Bool)0) ? 0x00000080 : 0) | (((( 0)) ? (_Bool)1 : (_Bool)0) ? 0x00000040 : 0) | ((sizeof("" "" "")-1) > 0x0000001F ? (Perl_croak("panic: handshake overflow" ), 0x0000001F) : (sizeof("" "" "")-1))), cv, "APItest.xs", items , ax, "1.09"); |
| 2141 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 2142 | #line 2143 "APItest.c" |
| 2143 | PUTBACKPL_stack_sp = sp; |
| 2144 | return; |
| 2145 | } |
| 2146 | } |
| 2147 | |
| 2148 | |
| 2149 | XS_EUPXS(XS_XS__APItest__XSUB_XS_APIVERSION_valid)static void XS_XS__APItest__XSUB_XS_APIVERSION_valid( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2150 | XS_EUPXS(XS_XS__APItest__XSUB_XS_APIVERSION_valid)static void XS_XS__APItest__XSUB_XS_APIVERSION_valid( CV* cv __attribute__ ((unused))) |
| 2151 | { |
| 2152 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2153 | PERL_UNUSED_VAR(cv)((void)sizeof(cv)); /* -W */ |
| 2154 | PERL_UNUSED_VAR(items)((void)sizeof(items)); /* -W */ |
| 2155 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 2156 | SPsp -= items; |
| 2157 | { |
| 2158 | #line 1691 "APItest.xs" |
| 2159 | XS_APIVERSION_BOOTCHECKPerl_xs_handshake((((sizeof(struct PerlHandShakeInterpreter)) << 16) | ((sizeof("" "" "")-1) > 0xFF ? (Perl_croak ("panic: handshake overflow"), 0xFF) : (sizeof("" "" "")-1) << 8) | ((((0)) ? (_Bool)1 : (_Bool)0) ? 0x00000020 : 0) | (((( 0)) ? (_Bool)1 : (_Bool)0) ? 0x00000080 : 0) | ((((0)) ? (_Bool )1 : (_Bool)0) ? 0x00000040 : 0) | ((sizeof("" "v" "5" "." "32" "." "0" "")-1) > 0x0000001F ? (Perl_croak("panic: handshake overflow" ), 0x0000001F) : (sizeof("" "v" "5" "." "32" "." "0" "")-1))) , cv, "APItest.xs", items, ax, "v" "5" "." "32" "." "0"); |
| 2160 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 2161 | #line 2162 "APItest.c" |
| 2162 | PUTBACKPL_stack_sp = sp; |
| 2163 | return; |
| 2164 | } |
| 2165 | } |
| 2166 | |
| 2167 | |
| 2168 | XS_EUPXS(XS_XS__APItest__XSUB_xsreturn)static void XS_XS__APItest__XSUB_xsreturn( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2169 | XS_EUPXS(XS_XS__APItest__XSUB_xsreturn)static void XS_XS__APItest__XSUB_xsreturn( CV* cv __attribute__ ((unused))) |
| 2170 | { |
| 2171 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2172 | if (items != 1) |
| 2173 | croak_xs_usagePerl_croak_xs_usage(cv, "len"); |
| 2174 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 2175 | SPsp -= items; |
| 2176 | { |
| 2177 | int len = (int)SvIV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (0)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 0)],2)) |
| 2178 | ; |
| 2179 | #line 1697 "APItest.xs" |
| 2180 | int i = 0; |
| 2181 | EXTEND( SP, len )do { (void)0; if (__builtin_expect(((((len) < 0 || PL_stack_max - (sp) < (len))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(len) > sizeof(ssize_t) && ((ssize_t )(len) != (len)) ? -1 : (len))); ((void)sizeof(sp)); } } while (0); |
| 2182 | for ( ; i < len; i++ ) { |
| 2183 | ST(i)PL_stack_base[ax + (i)] = sv_2mortal( newSViv(i) )Perl_sv_2mortal( Perl_newSViv( i)); |
| 2184 | } |
| 2185 | XSRETURN( len )do { const IV tmpXSoff = (len); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 2186 | #line 2187 "APItest.c" |
| 2187 | PUTBACKPL_stack_sp = sp; |
| 2188 | return; |
| 2189 | } |
| 2190 | } |
| 2191 | |
| 2192 | |
| 2193 | XS_EUPXS(XS_XS__APItest__XSUB_xsreturn_iv)static void XS_XS__APItest__XSUB_xsreturn_iv( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2194 | XS_EUPXS(XS_XS__APItest__XSUB_xsreturn_iv)static void XS_XS__APItest__XSUB_xsreturn_iv( CV* cv __attribute__ ((unused))) |
| 2195 | { |
| 2196 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2197 | if (items != 0) |
| 2198 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 2199 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 2200 | SPsp -= items; |
| 2201 | { |
| 2202 | #line 1707 "APItest.xs" |
| 2203 | XSRETURN_IV(I32_MIN + 1)do { (PL_stack_base[ax + (0)] = Perl_sv_2mortal( Perl_newSViv ( (-0x7fffffff - 1) + 1)) ); do { const IV tmpXSoff = (1); (( void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return ; } while (0); } while (0); |
| 2204 | #line 2205 "APItest.c" |
| 2205 | PUTBACKPL_stack_sp = sp; |
| 2206 | return; |
| 2207 | } |
| 2208 | } |
| 2209 | |
| 2210 | |
| 2211 | XS_EUPXS(XS_XS__APItest__XSUB_xsreturn_uv)static void XS_XS__APItest__XSUB_xsreturn_uv( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2212 | XS_EUPXS(XS_XS__APItest__XSUB_xsreturn_uv)static void XS_XS__APItest__XSUB_xsreturn_uv( CV* cv __attribute__ ((unused))) |
| 2213 | { |
| 2214 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2215 | if (items != 0) |
| 2216 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 2217 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 2218 | SPsp -= items; |
| 2219 | { |
| 2220 | #line 1712 "APItest.xs" |
| 2221 | XSRETURN_UV( (U32)((1U<<31) + 1) )do { (PL_stack_base[ax + (0)] = Perl_sv_2mortal( Perl_newSVuv ( (U32)((1U<<31) + 1))) ); do { const IV tmpXSoff = (1) ; ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1 ); return; } while (0); } while (0); |
| 2222 | #line 2223 "APItest.c" |
| 2223 | PUTBACKPL_stack_sp = sp; |
| 2224 | return; |
| 2225 | } |
| 2226 | } |
| 2227 | |
| 2228 | |
| 2229 | XS_EUPXS(XS_XS__APItest__XSUB_xsreturn_nv)static void XS_XS__APItest__XSUB_xsreturn_nv( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2230 | XS_EUPXS(XS_XS__APItest__XSUB_xsreturn_nv)static void XS_XS__APItest__XSUB_xsreturn_nv( CV* cv __attribute__ ((unused))) |
| 2231 | { |
| 2232 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2233 | if (items != 0) |
| 2234 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 2235 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 2236 | SPsp -= items; |
| 2237 | { |
| 2238 | #line 1717 "APItest.xs" |
| 2239 | XSRETURN_NV(0.25)do { (PL_stack_base[ax + (0)] = Perl_sv_2mortal( Perl_newSVnv ( 0.25)) ); do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 2240 | #line 2241 "APItest.c" |
| 2241 | PUTBACKPL_stack_sp = sp; |
| 2242 | return; |
| 2243 | } |
| 2244 | } |
| 2245 | |
| 2246 | |
| 2247 | XS_EUPXS(XS_XS__APItest__XSUB_xsreturn_pv)static void XS_XS__APItest__XSUB_xsreturn_pv( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2248 | XS_EUPXS(XS_XS__APItest__XSUB_xsreturn_pv)static void XS_XS__APItest__XSUB_xsreturn_pv( CV* cv __attribute__ ((unused))) |
| 2249 | { |
| 2250 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2251 | if (items != 0) |
| 2252 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 2253 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 2254 | SPsp -= items; |
| 2255 | { |
| 2256 | #line 1722 "APItest.xs" |
| 2257 | XSRETURN_PV("returned")do { (PL_stack_base[ax + (0)] = Perl_sv_2mortal( Perl_newSVpv ( "returned",0))); do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 2258 | #line 2259 "APItest.c" |
| 2259 | PUTBACKPL_stack_sp = sp; |
| 2260 | return; |
| 2261 | } |
| 2262 | } |
| 2263 | |
| 2264 | |
| 2265 | XS_EUPXS(XS_XS__APItest__XSUB_xsreturn_pvn)static void XS_XS__APItest__XSUB_xsreturn_pvn( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2266 | XS_EUPXS(XS_XS__APItest__XSUB_xsreturn_pvn)static void XS_XS__APItest__XSUB_xsreturn_pvn( CV* cv __attribute__ ((unused))) |
| 2267 | { |
| 2268 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2269 | if (items != 0) |
| 2270 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 2271 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 2272 | SPsp -= items; |
| 2273 | { |
| 2274 | #line 1727 "APItest.xs" |
| 2275 | XSRETURN_PVN("returned too much",8)do { (PL_stack_base[ax + (0)] = Perl_newSVpvn_flags( "returned too much" ,8,0x00080000)); do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 2276 | #line 2277 "APItest.c" |
| 2277 | PUTBACKPL_stack_sp = sp; |
| 2278 | return; |
| 2279 | } |
| 2280 | } |
| 2281 | |
| 2282 | |
| 2283 | XS_EUPXS(XS_XS__APItest__XSUB_xsreturn_no)static void XS_XS__APItest__XSUB_xsreturn_no( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2284 | XS_EUPXS(XS_XS__APItest__XSUB_xsreturn_no)static void XS_XS__APItest__XSUB_xsreturn_no( CV* cv __attribute__ ((unused))) |
| 2285 | { |
| 2286 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2287 | if (items != 0) |
| 2288 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 2289 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 2290 | SPsp -= items; |
| 2291 | { |
| 2292 | #line 1732 "APItest.xs" |
| 2293 | XSRETURN_NOdo { (PL_stack_base[ax + (0)] = &(PL_sv_immortals[2]) ); do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 2294 | #line 2295 "APItest.c" |
| 2295 | PUTBACKPL_stack_sp = sp; |
| 2296 | return; |
| 2297 | } |
| 2298 | } |
| 2299 | |
| 2300 | |
| 2301 | XS_EUPXS(XS_XS__APItest__XSUB_xsreturn_yes)static void XS_XS__APItest__XSUB_xsreturn_yes( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2302 | XS_EUPXS(XS_XS__APItest__XSUB_xsreturn_yes)static void XS_XS__APItest__XSUB_xsreturn_yes( CV* cv __attribute__ ((unused))) |
| 2303 | { |
| 2304 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2305 | if (items != 0) |
| 2306 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 2307 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 2308 | SPsp -= items; |
| 2309 | { |
| 2310 | #line 1737 "APItest.xs" |
| 2311 | XSRETURN_YESdo { (PL_stack_base[ax + (0)] = &(PL_sv_immortals[0]) ); do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 2312 | #line 2313 "APItest.c" |
| 2313 | PUTBACKPL_stack_sp = sp; |
| 2314 | return; |
| 2315 | } |
| 2316 | } |
| 2317 | |
| 2318 | |
| 2319 | XS_EUPXS(XS_XS__APItest__XSUB_xsreturn_undef)static void XS_XS__APItest__XSUB_xsreturn_undef( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2320 | XS_EUPXS(XS_XS__APItest__XSUB_xsreturn_undef)static void XS_XS__APItest__XSUB_xsreturn_undef( CV* cv __attribute__ ((unused))) |
| 2321 | { |
| 2322 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2323 | if (items != 0) |
| 2324 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 2325 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 2326 | SPsp -= items; |
| 2327 | { |
| 2328 | #line 1742 "APItest.xs" |
| 2329 | XSRETURN_UNDEFdo { (PL_stack_base[ax + (0)] = &(PL_sv_immortals[1])); do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 2330 | #line 2331 "APItest.c" |
| 2331 | PUTBACKPL_stack_sp = sp; |
| 2332 | return; |
| 2333 | } |
| 2334 | } |
| 2335 | |
| 2336 | |
| 2337 | XS_EUPXS(XS_XS__APItest__XSUB_xsreturn_empty)static void XS_XS__APItest__XSUB_xsreturn_empty( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2338 | XS_EUPXS(XS_XS__APItest__XSUB_xsreturn_empty)static void XS_XS__APItest__XSUB_xsreturn_empty( CV* cv __attribute__ ((unused))) |
| 2339 | { |
| 2340 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2341 | if (items != 0) |
| 2342 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 2343 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 2344 | SPsp -= items; |
| 2345 | { |
| 2346 | #line 1747 "APItest.xs" |
| 2347 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 2348 | #line 2349 "APItest.c" |
| 2349 | PUTBACKPL_stack_sp = sp; |
| 2350 | return; |
| 2351 | } |
| 2352 | } |
| 2353 | |
| 2354 | |
| 2355 | XS_EUPXS(XS_XS__APItest__Hash_rot13_hash)static void XS_XS__APItest__Hash_rot13_hash( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2356 | XS_EUPXS(XS_XS__APItest__Hash_rot13_hash)static void XS_XS__APItest__Hash_rot13_hash( CV* cv __attribute__ ((unused))) |
| 2357 | { |
| 2358 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2359 | if (items != 1) |
| 2360 | croak_xs_usagePerl_croak_xs_usage(cv, "hash"); |
| 2361 | { |
| 2362 | HV * hash; |
| 2363 | |
| 2364 | STMT_STARTdo { |
| 2365 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 2366 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 2367 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800) && SvTYPE(SvRV(xsub_tmp_sv))((svtype)((((xsub_tmp_sv)->sv_u.svu_rv))->sv_flags & 0xff)) == SVt_PVHV){ |
| 2368 | hash = (HV*)SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 2369 | } |
| 2370 | else{ |
| 2371 | Perl_croak_nocontextPerl_croak("%s: %s is not a HASH reference", |
| 2372 | "XS::APItest::Hash::rot13_hash", |
| 2373 | "hash"); |
| 2374 | } |
| 2375 | } STMT_ENDwhile (0) |
| 2376 | ; |
| 2377 | #line 1755 "APItest.xs" |
| 2378 | { |
| 2379 | struct ufuncs uf; |
| 2380 | uf.uf_val = rot13_key; |
| 2381 | uf.uf_set = 0; |
| 2382 | uf.uf_index = 0; |
| 2383 | |
| 2384 | sv_magic((SV*)hash, NULL, PERL_MAGIC_uvar, (char*)&uf, sizeof(uf))Perl_sv_magic( (SV*)hash,((void*)0),'U',(char*)&uf,sizeof (uf)); |
| 2385 | } |
| 2386 | #line 2387 "APItest.c" |
| 2387 | } |
| 2388 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 2389 | } |
| 2390 | |
| 2391 | |
| 2392 | XS_EUPXS(XS_XS__APItest__Hash_bitflip_hash)static void XS_XS__APItest__Hash_bitflip_hash( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2393 | XS_EUPXS(XS_XS__APItest__Hash_bitflip_hash)static void XS_XS__APItest__Hash_bitflip_hash( CV* cv __attribute__ ((unused))) |
| 2394 | { |
| 2395 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2396 | if (items != 1) |
| 2397 | croak_xs_usagePerl_croak_xs_usage(cv, "hash"); |
| 2398 | { |
| 2399 | HV * hash; |
| 2400 | |
| 2401 | STMT_STARTdo { |
| 2402 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 2403 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 2404 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800) && SvTYPE(SvRV(xsub_tmp_sv))((svtype)((((xsub_tmp_sv)->sv_u.svu_rv))->sv_flags & 0xff)) == SVt_PVHV){ |
| 2405 | hash = (HV*)SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 2406 | } |
| 2407 | else{ |
| 2408 | Perl_croak_nocontextPerl_croak("%s: %s is not a HASH reference", |
| 2409 | "XS::APItest::Hash::bitflip_hash", |
| 2410 | "hash"); |
| 2411 | } |
| 2412 | } STMT_ENDwhile (0) |
| 2413 | ; |
| 2414 | #line 1768 "APItest.xs" |
| 2415 | { |
| 2416 | struct ufuncs uf; |
| 2417 | uf.uf_val = bitflip_key; |
| 2418 | uf.uf_set = 0; |
| 2419 | uf.uf_index = 0; |
| 2420 | |
| 2421 | sv_magic((SV*)hash, NULL, PERL_MAGIC_uvar, (char*)&uf, sizeof(uf))Perl_sv_magic( (SV*)hash,((void*)0),'U',(char*)&uf,sizeof (uf)); |
| 2422 | } |
| 2423 | #line 2424 "APItest.c" |
| 2424 | } |
| 2425 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 2426 | } |
| 2427 | |
| 2428 | #define UTF8KLEN(sv, len)(((sv)->sv_flags & 0x20000000) ? -(I32)len : (I32)len) (SvUTF8(sv)((sv)->sv_flags & 0x20000000) ? -(I32)len : (I32)len) |
| 2429 | |
| 2430 | XS_EUPXS(XS_XS__APItest__Hash_exists)static void XS_XS__APItest__Hash_exists( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2431 | XS_EUPXS(XS_XS__APItest__Hash_exists)static void XS_XS__APItest__Hash_exists( CV* cv __attribute__ ((unused))) |
| 2432 | { |
| 2433 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2434 | if (items != 2) |
| 2435 | croak_xs_usagePerl_croak_xs_usage(cv, "hash, key_sv"); |
| 2436 | { |
| 2437 | #line 1782 "APItest.xs" |
| 2438 | STRLEN len; |
| 2439 | const char *key; |
| 2440 | #line 2441 "APItest.c" |
| 2441 | HV * hash; |
| 2442 | SV * key_sv = ST(1)PL_stack_base[ax + (1)] |
| 2443 | ; |
| 2444 | bool_Bool RETVAL; |
| 2445 | |
| 2446 | STMT_STARTdo { |
| 2447 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 2448 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 2449 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800) && SvTYPE(SvRV(xsub_tmp_sv))((svtype)((((xsub_tmp_sv)->sv_u.svu_rv))->sv_flags & 0xff)) == SVt_PVHV){ |
| 2450 | hash = (HV*)SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 2451 | } |
| 2452 | else{ |
| 2453 | Perl_croak_nocontextPerl_croak("%s: %s is not a HASH reference", |
| 2454 | "XS::APItest::Hash::exists", |
| 2455 | "hash"); |
| 2456 | } |
| 2457 | } STMT_ENDwhile (0) |
| 2458 | ; |
| 2459 | #line 1788 "APItest.xs" |
| 2460 | key = SvPV(key_sv, len)((((key_sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (key_sv)->sv_any)->xpv_cur), ((key_sv )->sv_u.svu_pv)) : Perl_sv_2pv_flags( key_sv,&len,2)); |
| 2461 | RETVAL = hv_exists(hash, key, UTF8KLEN(key_sv, len))((Perl_hv_common_key_len( (hash),(key),((((key_sv)->sv_flags & 0x20000000) ? -(I32)len : (I32)len)),0x08,((void*)0),0 )) ? (_Bool)1 : (_Bool)0); |
| 2462 | #line 2463 "APItest.c" |
| 2463 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 2464 | } |
| 2465 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 2466 | } |
| 2467 | |
| 2468 | |
| 2469 | XS_EUPXS(XS_XS__APItest__Hash_exists_ent)static void XS_XS__APItest__Hash_exists_ent( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2470 | XS_EUPXS(XS_XS__APItest__Hash_exists_ent)static void XS_XS__APItest__Hash_exists_ent( CV* cv __attribute__ ((unused))) |
| 2471 | { |
| 2472 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2473 | if (items != 2) |
| 2474 | croak_xs_usagePerl_croak_xs_usage(cv, "hash, key_sv"); |
| 2475 | { |
| 2476 | #line 1796 "APItest.xs" |
| 2477 | #line 2478 "APItest.c" |
| 2478 | HV * hash; |
| 2479 | SV * key_sv = ST(1)PL_stack_base[ax + (1)] |
| 2480 | ; |
| 2481 | bool_Bool RETVAL; |
| 2482 | |
| 2483 | STMT_STARTdo { |
| 2484 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 2485 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 2486 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800) && SvTYPE(SvRV(xsub_tmp_sv))((svtype)((((xsub_tmp_sv)->sv_u.svu_rv))->sv_flags & 0xff)) == SVt_PVHV){ |
| 2487 | hash = (HV*)SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 2488 | } |
| 2489 | else{ |
| 2490 | Perl_croak_nocontextPerl_croak("%s: %s is not a HASH reference", |
| 2491 | "XS::APItest::Hash::exists_ent", |
| 2492 | "hash"); |
| 2493 | } |
| 2494 | } STMT_ENDwhile (0) |
| 2495 | ; |
| 2496 | #line 1800 "APItest.xs" |
| 2497 | RETVAL = hv_exists_ent(hash, key_sv, 0)((Perl_hv_common( (hash),(key_sv),((void*)0),0,0,0x08,0,(0))) ? (_Bool)1 : (_Bool)0); |
| 2498 | #line 2499 "APItest.c" |
| 2499 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 2500 | } |
| 2501 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 2502 | } |
| 2503 | |
| 2504 | |
| 2505 | XS_EUPXS(XS_XS__APItest__Hash_delete)static void XS_XS__APItest__Hash_delete( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2506 | XS_EUPXS(XS_XS__APItest__Hash_delete)static void XS_XS__APItest__Hash_delete( CV* cv __attribute__ ((unused))) |
| 2507 | { |
| 2508 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2509 | if (items < 2 || items > 3) |
| 2510 | croak_xs_usagePerl_croak_xs_usage(cv, "hash, key_sv, flags = 0"); |
| 2511 | { |
| 2512 | #line 1807 "APItest.xs" |
| 2513 | STRLEN len; |
| 2514 | const char *key; |
| 2515 | #line 2516 "APItest.c" |
| 2516 | HV * hash; |
| 2517 | SV * key_sv = ST(1)PL_stack_base[ax + (1)] |
| 2518 | ; |
| 2519 | I32 flags; |
| 2520 | SV * RETVAL; |
| 2521 | |
| 2522 | STMT_STARTdo { |
| 2523 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 2524 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 2525 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800) && SvTYPE(SvRV(xsub_tmp_sv))((svtype)((((xsub_tmp_sv)->sv_u.svu_rv))->sv_flags & 0xff)) == SVt_PVHV){ |
| 2526 | hash = (HV*)SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 2527 | } |
| 2528 | else{ |
| 2529 | Perl_croak_nocontextPerl_croak("%s: %s is not a HASH reference", |
| 2530 | "XS::APItest::Hash::delete", |
| 2531 | "hash"); |
| 2532 | } |
| 2533 | } STMT_ENDwhile (0) |
| 2534 | ; |
| 2535 | |
| 2536 | if (items < 3) |
| 2537 | flags = 0; |
| 2538 | else { |
| 2539 | flags = (I32)SvIV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (2)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 2)],2)) |
| 2540 | ; |
| 2541 | } |
| 2542 | #line 1814 "APItest.xs" |
| 2543 | key = SvPV(key_sv, len)((((key_sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (key_sv)->sv_any)->xpv_cur), ((key_sv )->sv_u.svu_pv)) : Perl_sv_2pv_flags( key_sv,&len,2)); |
| 2544 | /* It's already mortal, so need to increase reference count. */ |
| 2545 | RETVAL |
| 2546 | = SvREFCNT_inc(hv_delete(hash, key, UTF8KLEN(key_sv, len), flags))Perl_SvREFCNT_inc(((SV *)({ void *_p = ((((SV *)({ void *_p = (Perl_hv_common_key_len( (hash),(key),((((key_sv)->sv_flags & 0x20000000) ? -(I32)len : (I32)len)),(flags) | 0x40,(( void*)0),0)); _p; })))); _p; }))); |
| 2547 | #line 2548 "APItest.c" |
| 2548 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 2549 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 2550 | } |
| 2551 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 2552 | } |
| 2553 | |
| 2554 | |
| 2555 | XS_EUPXS(XS_XS__APItest__Hash_delete_ent)static void XS_XS__APItest__Hash_delete_ent( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2556 | XS_EUPXS(XS_XS__APItest__Hash_delete_ent)static void XS_XS__APItest__Hash_delete_ent( CV* cv __attribute__ ((unused))) |
| 2557 | { |
| 2558 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2559 | if (items < 2 || items > 3) |
| 2560 | croak_xs_usagePerl_croak_xs_usage(cv, "hash, key_sv, flags = 0"); |
| 2561 | { |
| 2562 | HV * hash; |
| 2563 | SV * key_sv = ST(1)PL_stack_base[ax + (1)] |
| 2564 | ; |
| 2565 | I32 flags; |
| 2566 | SV * RETVAL; |
| 2567 | |
| 2568 | STMT_STARTdo { |
| 2569 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 2570 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 2571 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800) && SvTYPE(SvRV(xsub_tmp_sv))((svtype)((((xsub_tmp_sv)->sv_u.svu_rv))->sv_flags & 0xff)) == SVt_PVHV){ |
| 2572 | hash = (HV*)SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 2573 | } |
| 2574 | else{ |
| 2575 | Perl_croak_nocontextPerl_croak("%s: %s is not a HASH reference", |
| 2576 | "XS::APItest::Hash::delete_ent", |
| 2577 | "hash"); |
| 2578 | } |
| 2579 | } STMT_ENDwhile (0) |
| 2580 | ; |
| 2581 | |
| 2582 | if (items < 3) |
| 2583 | flags = 0; |
| 2584 | else { |
| 2585 | flags = (I32)SvIV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (2)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 2)],2)) |
| 2586 | ; |
| 2587 | } |
| 2588 | #line 1828 "APItest.xs" |
| 2589 | /* It's already mortal, so need to increase reference count. */ |
| 2590 | RETVAL = SvREFCNT_inc(hv_delete_ent(hash, key_sv, flags, 0))Perl_SvREFCNT_inc(((SV *)({ void *_p = ((((SV *)({ void *_p = (Perl_hv_common( (hash),(key_sv),((void*)0),0,0,(flags) | 0x40 ,((void*)0),(0))); _p; })))); _p; }))); |
| 2591 | #line 2592 "APItest.c" |
| 2592 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 2593 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 2594 | } |
| 2595 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 2596 | } |
| 2597 | |
| 2598 | |
| 2599 | XS_EUPXS(XS_XS__APItest__Hash_store_ent)static void XS_XS__APItest__Hash_store_ent( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2600 | XS_EUPXS(XS_XS__APItest__Hash_store_ent)static void XS_XS__APItest__Hash_store_ent( CV* cv __attribute__ ((unused))) |
| 2601 | { |
| 2602 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2603 | if (items != 3) |
| 2604 | croak_xs_usagePerl_croak_xs_usage(cv, "hash, key, value"); |
| 2605 | { |
| 2606 | #line 1836 "APItest.xs" |
| 2607 | SV *copy; |
| 2608 | HE *result; |
| 2609 | #line 2610 "APItest.c" |
| 2610 | HV * hash; |
| 2611 | SV * key = ST(1)PL_stack_base[ax + (1)] |
| 2612 | ; |
| 2613 | SV * value = ST(2)PL_stack_base[ax + (2)] |
| 2614 | ; |
| 2615 | SV * RETVAL; |
| 2616 | |
| 2617 | STMT_STARTdo { |
| 2618 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 2619 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 2620 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800) && SvTYPE(SvRV(xsub_tmp_sv))((svtype)((((xsub_tmp_sv)->sv_u.svu_rv))->sv_flags & 0xff)) == SVt_PVHV){ |
| 2621 | hash = (HV*)SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 2622 | } |
| 2623 | else{ |
| 2624 | Perl_croak_nocontextPerl_croak("%s: %s is not a HASH reference", |
| 2625 | "XS::APItest::Hash::store_ent", |
| 2626 | "hash"); |
| 2627 | } |
| 2628 | } STMT_ENDwhile (0) |
| 2629 | ; |
| 2630 | #line 1843 "APItest.xs" |
| 2631 | copy = newSV(0)Perl_newSV( 0); |
| 2632 | result = hv_store_ent(hash, key, copy, 0)((HE *) Perl_hv_common( (hash),(key),((void*)0),0,0,0x04,(copy ),(0))); |
| 2633 | SvSetMagicSV(copy, value)do { if (__builtin_expect((((copy) != (value)) ? (_Bool)1 : ( _Bool)0),(1))) { Perl_sv_setsv_flags( copy,value,2|0); do { if (__builtin_expect(((((copy)->sv_flags & 0x00400000)) ? (_Bool)1 : (_Bool)0),(0))) Perl_mg_set( copy); } while (0); } } while (0); |
| 2634 | if (!result) { |
| 2635 | SvREFCNT_dec(copy)Perl_SvREFCNT_dec( ((SV *)({ void *_p = (copy); _p; }))); |
| 2636 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 2637 | } |
| 2638 | /* It's about to become mortal, so need to increase reference count. |
| 2639 | */ |
| 2640 | RETVAL = SvREFCNT_inc(HeVAL(result))Perl_SvREFCNT_inc(((SV *)({ void *_p = ((result)->he_valu. hent_val); _p; }))); |
| 2641 | #line 2642 "APItest.c" |
| 2642 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 2643 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 2644 | } |
| 2645 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 2646 | } |
| 2647 | |
| 2648 | |
| 2649 | XS_EUPXS(XS_XS__APItest__Hash_store)static void XS_XS__APItest__Hash_store( CV* cv __attribute__( (unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2650 | XS_EUPXS(XS_XS__APItest__Hash_store)static void XS_XS__APItest__Hash_store( CV* cv __attribute__( (unused))) |
| 2651 | { |
| 2652 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2653 | if (items != 3) |
| 2654 | croak_xs_usagePerl_croak_xs_usage(cv, "hash, key_sv, value"); |
| 2655 | { |
| 2656 | #line 1859 "APItest.xs" |
| 2657 | STRLEN len; |
| 2658 | const char *key; |
| 2659 | SV *copy; |
| 2660 | SV **result; |
| 2661 | #line 2662 "APItest.c" |
| 2662 | HV * hash; |
| 2663 | SV * key_sv = ST(1)PL_stack_base[ax + (1)] |
| 2664 | ; |
| 2665 | SV * value = ST(2)PL_stack_base[ax + (2)] |
| 2666 | ; |
| 2667 | SV * RETVAL; |
| 2668 | |
| 2669 | STMT_STARTdo { |
| 2670 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 2671 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 2672 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800) && SvTYPE(SvRV(xsub_tmp_sv))((svtype)((((xsub_tmp_sv)->sv_u.svu_rv))->sv_flags & 0xff)) == SVt_PVHV){ |
| 2673 | hash = (HV*)SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 2674 | } |
| 2675 | else{ |
| 2676 | Perl_croak_nocontextPerl_croak("%s: %s is not a HASH reference", |
| 2677 | "XS::APItest::Hash::store", |
| 2678 | "hash"); |
| 2679 | } |
| 2680 | } STMT_ENDwhile (0) |
| 2681 | ; |
| 2682 | #line 1868 "APItest.xs" |
| 2683 | key = SvPV(key_sv, len)((((key_sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (key_sv)->sv_any)->xpv_cur), ((key_sv )->sv_u.svu_pv)) : Perl_sv_2pv_flags( key_sv,&len,2)); |
| 2684 | copy = newSV(0)Perl_newSV( 0); |
| 2685 | result = hv_store(hash, key, UTF8KLEN(key_sv, len), copy, 0)((SV**) Perl_hv_common_key_len( (hash),(key),((((key_sv)-> sv_flags & 0x20000000) ? -(I32)len : (I32)len)),(0x04|0x20 ),(copy),(0))); |
| 2686 | SvSetMagicSV(copy, value)do { if (__builtin_expect((((copy) != (value)) ? (_Bool)1 : ( _Bool)0),(1))) { Perl_sv_setsv_flags( copy,value,2|0); do { if (__builtin_expect(((((copy)->sv_flags & 0x00400000)) ? (_Bool)1 : (_Bool)0),(0))) Perl_mg_set( copy); } while (0); } } while (0); |
| 2687 | if (!result) { |
| 2688 | SvREFCNT_dec(copy)Perl_SvREFCNT_dec( ((SV *)({ void *_p = (copy); _p; }))); |
| 2689 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 2690 | } |
| 2691 | /* It's about to become mortal, so need to increase reference count. |
| 2692 | */ |
| 2693 | RETVAL = SvREFCNT_inc(*result)Perl_SvREFCNT_inc(((SV *)({ void *_p = (*result); _p; }))); |
| 2694 | #line 2695 "APItest.c" |
| 2695 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 2696 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 2697 | } |
| 2698 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 2699 | } |
| 2700 | |
| 2701 | |
| 2702 | XS_EUPXS(XS_XS__APItest__Hash_fetch_ent)static void XS_XS__APItest__Hash_fetch_ent( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2703 | XS_EUPXS(XS_XS__APItest__Hash_fetch_ent)static void XS_XS__APItest__Hash_fetch_ent( CV* cv __attribute__ ((unused))) |
| 2704 | { |
| 2705 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2706 | if (items != 2) |
| 2707 | croak_xs_usagePerl_croak_xs_usage(cv, "hash, key_sv"); |
| 2708 | { |
| 2709 | #line 1885 "APItest.xs" |
| 2710 | HE *result; |
| 2711 | #line 2712 "APItest.c" |
| 2712 | HV * hash; |
| 2713 | SV * key_sv = ST(1)PL_stack_base[ax + (1)] |
| 2714 | ; |
| 2715 | SV * RETVAL; |
| 2716 | |
| 2717 | STMT_STARTdo { |
| 2718 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 2719 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 2720 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800) && SvTYPE(SvRV(xsub_tmp_sv))((svtype)((((xsub_tmp_sv)->sv_u.svu_rv))->sv_flags & 0xff)) == SVt_PVHV){ |
| 2721 | hash = (HV*)SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 2722 | } |
| 2723 | else{ |
| 2724 | Perl_croak_nocontextPerl_croak("%s: %s is not a HASH reference", |
| 2725 | "XS::APItest::Hash::fetch_ent", |
| 2726 | "hash"); |
| 2727 | } |
| 2728 | } STMT_ENDwhile (0) |
| 2729 | ; |
| 2730 | #line 1890 "APItest.xs" |
| 2731 | result = hv_fetch_ent(hash, key_sv, 0, 0)((HE *) Perl_hv_common( (hash),(key_sv),((void*)0),0,0,((0) ? 0x10 : 0),((void*)0),(0))); |
| 2732 | if (!result) { |
| 2733 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 2734 | } |
| 2735 | /* Force mg_get */ |
| 2736 | RETVAL = newSVsv(HeVAL(result))Perl_newSVsv_flags( ((result)->he_valu.hent_val),2|16); |
| 2737 | #line 2738 "APItest.c" |
| 2738 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 2739 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 2740 | } |
| 2741 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 2742 | } |
| 2743 | |
| 2744 | |
| 2745 | XS_EUPXS(XS_XS__APItest__Hash_fetch)static void XS_XS__APItest__Hash_fetch( CV* cv __attribute__( (unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2746 | XS_EUPXS(XS_XS__APItest__Hash_fetch)static void XS_XS__APItest__Hash_fetch( CV* cv __attribute__( (unused))) |
| 2747 | { |
| 2748 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2749 | if (items != 2) |
| 2750 | croak_xs_usagePerl_croak_xs_usage(cv, "hash, key_sv"); |
| 2751 | { |
| 2752 | #line 1902 "APItest.xs" |
| 2753 | STRLEN len; |
| 2754 | const char *key; |
| 2755 | SV **result; |
| 2756 | #line 2757 "APItest.c" |
| 2757 | HV * hash; |
| 2758 | SV * key_sv = ST(1)PL_stack_base[ax + (1)] |
| 2759 | ; |
| 2760 | SV * RETVAL; |
| 2761 | |
| 2762 | STMT_STARTdo { |
| 2763 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 2764 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 2765 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800) && SvTYPE(SvRV(xsub_tmp_sv))((svtype)((((xsub_tmp_sv)->sv_u.svu_rv))->sv_flags & 0xff)) == SVt_PVHV){ |
| 2766 | hash = (HV*)SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 2767 | } |
| 2768 | else{ |
| 2769 | Perl_croak_nocontextPerl_croak("%s: %s is not a HASH reference", |
| 2770 | "XS::APItest::Hash::fetch", |
| 2771 | "hash"); |
| 2772 | } |
| 2773 | } STMT_ENDwhile (0) |
| 2774 | ; |
| 2775 | #line 1909 "APItest.xs" |
| 2776 | key = SvPV(key_sv, len)((((key_sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (key_sv)->sv_any)->xpv_cur), ((key_sv )->sv_u.svu_pv)) : Perl_sv_2pv_flags( key_sv,&len,2)); |
| 2777 | result = hv_fetch(hash, key, UTF8KLEN(key_sv, len), 0)((SV**) Perl_hv_common_key_len( (hash),(key),((((key_sv)-> sv_flags & 0x20000000) ? -(I32)len : (I32)len)),(0) ? (0x20 | 0x10) : 0x20,((void*)0),0)); |
| 2778 | if (!result) { |
| 2779 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 2780 | } |
| 2781 | /* Force mg_get */ |
| 2782 | RETVAL = newSVsv(*result)Perl_newSVsv_flags( (*result),2|16); |
| 2783 | #line 2784 "APItest.c" |
| 2784 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 2785 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 2786 | } |
| 2787 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 2788 | } |
| 2789 | |
| 2790 | #if defined (hv_common) |
| 2791 | #define XSubPPtmpAAAA1 1 |
| 2792 | |
| 2793 | |
| 2794 | XS_EUPXS(XS_XS__APItest__Hash_common)static void XS_XS__APItest__Hash_common( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2795 | XS_EUPXS(XS_XS__APItest__Hash_common)static void XS_XS__APItest__Hash_common( CV* cv __attribute__ ((unused))) |
| 2796 | { |
| 2797 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2798 | if (items != 1) |
| 2799 | croak_xs_usagePerl_croak_xs_usage(cv, "params"); |
| 2800 | { |
| 2801 | HV * params; |
| 2802 | #line 1926 "APItest.xs" |
| 2803 | HE *result; |
| 2804 | HV *hv = NULL((void*)0); |
| 2805 | SV *keysv = NULL((void*)0); |
| 2806 | const char *key = NULL((void*)0); |
| 2807 | STRLEN klen = 0; |
| 2808 | int flags = 0; |
| 2809 | int action = 0; |
| 2810 | SV *val = NULL((void*)0); |
| 2811 | U32 hash = 0; |
| 2812 | SV **svp; |
| 2813 | #line 2814 "APItest.c" |
| 2814 | SV * RETVAL; |
| 2815 | |
| 2816 | STMT_STARTdo { |
| 2817 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 2818 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 2819 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800) && SvTYPE(SvRV(xsub_tmp_sv))((svtype)((((xsub_tmp_sv)->sv_u.svu_rv))->sv_flags & 0xff)) == SVt_PVHV){ |
| 2820 | params = (HV*)SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 2821 | } |
| 2822 | else{ |
| 2823 | Perl_croak_nocontextPerl_croak("%s: %s is not a HASH reference", |
| 2824 | "XS::APItest::Hash::common", |
| 2825 | "params"); |
| 2826 | } |
| 2827 | } STMT_ENDwhile (0) |
| 2828 | ; |
| 2829 | #line 1937 "APItest.xs" |
| 2830 | if ((svp = hv_fetchs(params, "hv", 0)((SV**) Perl_hv_common_key_len( ((params)),(("" "hv" "")),((sizeof ("hv")-1)),((0)) ? (0x20 | 0x10) : 0x20,((void*)0),0)))) { |
| 2831 | SV *const rv = *svp; |
| 2832 | if (!SvROK(rv)((rv)->sv_flags & 0x00000800)) |
| 2833 | croakPerl_croak("common passed a non-reference for parameter hv"); |
| 2834 | hv = (HV *)SvRV(rv)((rv)->sv_u.svu_rv); |
| 2835 | } |
| 2836 | if ((svp = hv_fetchs(params, "keysv", 0)((SV**) Perl_hv_common_key_len( ((params)),(("" "keysv" "")), ((sizeof("keysv")-1)),((0)) ? (0x20 | 0x10) : 0x20,((void*)0) ,0)))) |
| 2837 | keysv = *svp; |
| 2838 | if ((svp = hv_fetchs(params, "keypv", 0)((SV**) Perl_hv_common_key_len( ((params)),(("" "keypv" "")), ((sizeof("keypv")-1)),((0)) ? (0x20 | 0x10) : 0x20,((void*)0) ,0)))) { |
| 2839 | key = SvPV_const(*svp, klen)((((*svp)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((klen = ((XPV*) (*svp)->sv_any)->xpv_cur), ((const char*)(0 + (*svp)->sv_u.svu_pv))) : (const char*) Perl_sv_2pv_flags ( *svp,&klen,(2|32))); |
| 2840 | if (SvUTF8(*svp)((*svp)->sv_flags & 0x20000000)) |
| 2841 | flags = HVhek_UTF80x01; |
| 2842 | } |
| 2843 | if ((svp = hv_fetchs(params, "action", 0)((SV**) Perl_hv_common_key_len( ((params)),(("" "action" "")) ,((sizeof("action")-1)),((0)) ? (0x20 | 0x10) : 0x20,((void*) 0),0)))) |
| 2844 | action = SvIV(*svp)((((*svp)->sv_flags & (0x00000100|0x00200000)) == 0x00000100 ) ? ((XPVIV*) (*svp)->sv_any)->xiv_u.xivu_iv : Perl_sv_2iv_flags ( *svp,2)); |
| 2845 | if ((svp = hv_fetchs(params, "val", 0)((SV**) Perl_hv_common_key_len( ((params)),(("" "val" "")),(( sizeof("val")-1)),((0)) ? (0x20 | 0x10) : 0x20,((void*)0),0)))) |
| 2846 | val = newSVsv(*svp)Perl_newSVsv_flags( (*svp),2|16); |
| 2847 | if ((svp = hv_fetchs(params, "hash", 0)((SV**) Perl_hv_common_key_len( ((params)),(("" "hash" "")),( (sizeof("hash")-1)),((0)) ? (0x20 | 0x10) : 0x20,((void*)0),0 )))) |
| 2848 | hash = SvUV(*svp)((((*svp)->sv_flags & (0x00000100|0x80000000|0x00200000 )) == (0x00000100|0x80000000)) ? ((XPVUV*) (*svp)->sv_any) ->xuv_u.xivu_uv : Perl_sv_2uv_flags( *svp,2)); |
| 2849 | |
| 2850 | if (hv_fetchs(params, "hash_pv", 0)((SV**) Perl_hv_common_key_len( ((params)),(("" "hash_pv" "") ),((sizeof("hash_pv")-1)),((0)) ? (0x20 | 0x10) : 0x20,((void *)0),0))) { |
| 2851 | assert(key)((void)0); |
| 2852 | PERL_HASH(hash, key, klen)(hash) = (__builtin_expect(((((klen)) <= 24) ? (_Bool)1 : ( _Bool)0),(1)) ? sbox32_hash_with_state(((((U8 *)PL_hash_state_w )) + (sizeof(U64) * 4)),(U8*)((U8*)((U8*)(key))),(((klen)))) : (U32)stadtx_hash_with_state((((((U8 *)PL_hash_state_w)))),(U8 *)(((U8*)((U8*)(key)))),((((klen)))))); |
| 2853 | } |
| 2854 | if (hv_fetchs(params, "hash_sv", 0)((SV**) Perl_hv_common_key_len( ((params)),(("" "hash_sv" "") ),((sizeof("hash_sv")-1)),((0)) ? (0x20 | 0x10) : 0x20,((void *)0),0))) { |
| 2855 | assert(keysv)((void)0); |
| 2856 | { |
| 2857 | STRLEN len; |
| 2858 | const char *const p = SvPV(keysv, len)((((keysv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (keysv)->sv_any)->xpv_cur), ((keysv )->sv_u.svu_pv)) : Perl_sv_2pv_flags( keysv,&len,2)); |
| 2859 | PERL_HASH(hash, p, len)(hash) = (__builtin_expect(((((len)) <= 24) ? (_Bool)1 : ( _Bool)0),(1)) ? sbox32_hash_with_state(((((U8 *)PL_hash_state_w )) + (sizeof(U64) * 4)),(U8*)((U8*)((U8*)(p))),(((len)))) : ( U32)stadtx_hash_with_state((((((U8 *)PL_hash_state_w)))),(U8* )(((U8*)((U8*)(p)))),((((len)))))); |
| 2860 | } |
| 2861 | } |
| 2862 | |
| 2863 | result = (HE *)hv_common(hv, keysv, key, klen, flags, action, val, hash)Perl_hv_common( hv,keysv,key,klen,flags,action,val,hash); |
| 2864 | if (!result) { |
| 2865 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 2866 | } |
| 2867 | /* Force mg_get */ |
| 2868 | RETVAL = newSVsv(HeVAL(result))Perl_newSVsv_flags( ((result)->he_valu.hent_val),2|16); |
| 2869 | #line 2870 "APItest.c" |
| 2870 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 2871 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 2872 | } |
| 2873 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 2874 | } |
| 2875 | |
| 2876 | #endif |
| 2877 | |
| 2878 | XS_EUPXS(XS_XS__APItest__Hash_test_hv_free_ent)static void XS_XS__APItest__Hash_test_hv_free_ent( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2879 | XS_EUPXS(XS_XS__APItest__Hash_test_hv_free_ent)static void XS_XS__APItest__Hash_test_hv_free_ent( CV* cv __attribute__ ((unused))) |
| 2880 | { |
| 2881 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2882 | if (items != 0) |
| 2883 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 2884 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 2885 | SPsp -= items; |
| 2886 | { |
| 2887 | #line 1984 "APItest.xs" |
| 2888 | test_freeent(&Perl_hv_free_ent); |
| 2889 | XSRETURN(4)do { const IV tmpXSoff = (4); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 2890 | #line 2891 "APItest.c" |
| 2891 | PUTBACKPL_stack_sp = sp; |
| 2892 | return; |
| 2893 | } |
| 2894 | } |
| 2895 | |
| 2896 | |
| 2897 | XS_EUPXS(XS_XS__APItest__Hash_test_hv_delayfree_ent)static void XS_XS__APItest__Hash_test_hv_delayfree_ent( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2898 | XS_EUPXS(XS_XS__APItest__Hash_test_hv_delayfree_ent)static void XS_XS__APItest__Hash_test_hv_delayfree_ent( CV* cv __attribute__((unused))) |
| 2899 | { |
| 2900 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2901 | if (items != 0) |
| 2902 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 2903 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 2904 | SPsp -= items; |
| 2905 | { |
| 2906 | #line 1990 "APItest.xs" |
| 2907 | test_freeent(&Perl_hv_delayfree_ent); |
| 2908 | XSRETURN(4)do { const IV tmpXSoff = (4); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 2909 | #line 2910 "APItest.c" |
| 2910 | PUTBACKPL_stack_sp = sp; |
| 2911 | return; |
| 2912 | } |
| 2913 | } |
| 2914 | |
| 2915 | |
| 2916 | XS_EUPXS(XS_XS__APItest__Hash_test_share_unshare_pvn)static void XS_XS__APItest__Hash_test_share_unshare_pvn( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2917 | XS_EUPXS(XS_XS__APItest__Hash_test_share_unshare_pvn)static void XS_XS__APItest__Hash_test_share_unshare_pvn( CV* cv __attribute__((unused))) |
| 2918 | { |
| 2919 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2920 | if (items != 1) |
| 2921 | croak_xs_usagePerl_croak_xs_usage(cv, "input"); |
| 2922 | { |
| 2923 | #line 1996 "APItest.xs" |
| 2924 | STRLEN len; |
| 2925 | U32 hash; |
| 2926 | char *pvx; |
| 2927 | char *p; |
| 2928 | #line 2929 "APItest.c" |
| 2929 | SV * input = ST(0)PL_stack_base[ax + (0)] |
| 2930 | ; |
| 2931 | SV * RETVAL; |
| 2932 | #line 2003 "APItest.xs" |
| 2933 | pvx = SvPV(input, len)((((input)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (input)->sv_any)->xpv_cur), ((input )->sv_u.svu_pv)) : Perl_sv_2pv_flags( input,&len,2)); |
| 2934 | PERL_HASH(hash, pvx, len)(hash) = (__builtin_expect(((((len)) <= 24) ? (_Bool)1 : ( _Bool)0),(1)) ? sbox32_hash_with_state(((((U8 *)PL_hash_state_w )) + (sizeof(U64) * 4)),(U8*)((U8*)((U8*)(pvx))),(((len)))) : (U32)stadtx_hash_with_state((((((U8 *)PL_hash_state_w)))),(U8 *)(((U8*)((U8*)(pvx)))),((((len)))))); |
| 2935 | p = sharepvn(pvx, len, hash)(Perl_share_hek( pvx,len,hash))->hek_key; |
| 2936 | RETVAL = newSVpvn(p, len)Perl_newSVpvn( p,len); |
| 2937 | unsharepvn(p, len, hash)Perl_unsharepvn( p,len,hash); |
| 2938 | #line 2939 "APItest.c" |
| 2939 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 2940 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 2941 | } |
| 2942 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 2943 | } |
| 2944 | |
| 2945 | #if PERL_VERSION32 >= 9 |
| 2946 | #define XSubPPtmpAAAB1 1 |
| 2947 | |
| 2948 | |
| 2949 | XS_EUPXS(XS_XS__APItest__Hash_refcounted_he_exists)static void XS_XS__APItest__Hash_refcounted_he_exists( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2950 | XS_EUPXS(XS_XS__APItest__Hash_refcounted_he_exists)static void XS_XS__APItest__Hash_refcounted_he_exists( CV* cv __attribute__((unused))) |
| 2951 | { |
| 2952 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2953 | if (items < 1 || items > 2) |
| 2954 | croak_xs_usagePerl_croak_xs_usage(cv, "key, level=0"); |
| 2955 | { |
| 2956 | SV * key = ST(0)PL_stack_base[ax + (0)] |
| 2957 | ; |
| 2958 | IV level; |
| 2959 | bool_Bool RETVAL; |
| 2960 | |
| 2961 | if (items < 2) |
| 2962 | level = 0; |
| 2963 | else { |
| 2964 | level = (IV)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 2965 | ; |
| 2966 | } |
| 2967 | #line 2018 "APItest.xs" |
| 2968 | if (level) { |
| 2969 | croakPerl_croak("level must be zero, not %" IVdf"ld", level); |
| 2970 | } |
| 2971 | RETVAL = (cop_hints_fetch_sv(PL_curcop, key, 0, 0)Perl_refcounted_he_fetch_sv( ((COPHH*)((PL_curcop)->cop_hints_hash )), key, 0, 0) != &PL_sv_placeholder); |
| 2972 | #line 2973 "APItest.c" |
| 2973 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 2974 | } |
| 2975 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 2976 | } |
| 2977 | |
| 2978 | |
| 2979 | XS_EUPXS(XS_XS__APItest__Hash_refcounted_he_fetch)static void XS_XS__APItest__Hash_refcounted_he_fetch( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 2980 | XS_EUPXS(XS_XS__APItest__Hash_refcounted_he_fetch)static void XS_XS__APItest__Hash_refcounted_he_fetch( CV* cv __attribute__ ((unused))) |
| 2981 | { |
| 2982 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 2983 | if (items < 1 || items > 2) |
| 2984 | croak_xs_usagePerl_croak_xs_usage(cv, "key, level=0"); |
| 2985 | { |
| 2986 | SV * key = ST(0)PL_stack_base[ax + (0)] |
| 2987 | ; |
| 2988 | IV level; |
| 2989 | SV * RETVAL; |
| 2990 | |
| 2991 | if (items < 2) |
| 2992 | level = 0; |
| 2993 | else { |
| 2994 | level = (IV)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 2995 | ; |
| 2996 | } |
| 2997 | #line 2030 "APItest.xs" |
| 2998 | if (level) { |
| 2999 | croakPerl_croak("level must be zero, not %" IVdf"ld", level); |
| 3000 | } |
| 3001 | RETVAL = cop_hints_fetch_sv(PL_curcop, key, 0, 0)Perl_refcounted_he_fetch_sv( ((COPHH*)((PL_curcop)->cop_hints_hash )), key, 0, 0); |
| 3002 | SvREFCNT_inc(RETVAL)Perl_SvREFCNT_inc(((SV *)({ void *_p = (RETVAL); _p; }))); |
| 3003 | #line 3004 "APItest.c" |
| 3004 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 3005 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 3006 | } |
| 3007 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 3008 | } |
| 3009 | |
| 3010 | #endif |
| 3011 | |
| 3012 | XS_EUPXS(XS_XS__APItest__Hash_test_force_keys)static void XS_XS__APItest__Hash_test_force_keys( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3013 | XS_EUPXS(XS_XS__APItest__Hash_test_force_keys)static void XS_XS__APItest__Hash_test_force_keys( CV* cv __attribute__ ((unused))) |
| 3014 | { |
| 3015 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3016 | if (items != 1) |
| 3017 | croak_xs_usagePerl_croak_xs_usage(cv, "hv"); |
| 3018 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 3019 | SPsp -= items; |
| 3020 | { |
| 3021 | #line 2043 "APItest.xs" |
| 3022 | HE *he; |
| 3023 | SSize_tssize_t count = 0; |
| 3024 | #line 3025 "APItest.c" |
| 3025 | HV * hv; |
| 3026 | |
| 3027 | STMT_STARTdo { |
| 3028 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 3029 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 3030 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800) && SvTYPE(SvRV(xsub_tmp_sv))((svtype)((((xsub_tmp_sv)->sv_u.svu_rv))->sv_flags & 0xff)) == SVt_PVHV){ |
| 3031 | hv = (HV*)SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 3032 | } |
| 3033 | else{ |
| 3034 | Perl_croak_nocontextPerl_croak("%s: %s is not a HASH reference", |
| 3035 | "XS::APItest::Hash::test_force_keys", |
| 3036 | "hv"); |
| 3037 | } |
| 3038 | } STMT_ENDwhile (0) |
| 3039 | ; |
| 3040 | #line 2046 "APItest.xs" |
| 3041 | hv_iterinit(hv)Perl_hv_iterinit( hv); |
| 3042 | he = hv_iternext(hv)Perl_hv_iternext_flags( hv,0); |
| 3043 | while (he) { |
| 3044 | SV *sv = HeSVKEY_force(he)(((he)->hent_hek)->hek_key ? ((((he)->hent_hek)-> hek_len == -2) ? (*(SV**)((he)->hent_hek)->hek_key) : Perl_newSVpvn_flags ( ((he)->hent_hek)->hek_key,((he)->hent_hek)->hek_len ,0x00080000 | ( ((*((unsigned char *)(((he)->hent_hek)-> hek_key)+((he)->hent_hek)->hek_len+1)) & 0x01) ? 0x20000000 : 0 ))) : &(PL_sv_immortals[1])); |
| 3045 | ++count; |
| 3046 | EXTEND(SP, count)do { (void)0; if (__builtin_expect(((((count) < 0 || PL_stack_max - (sp) < (count))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(count) > sizeof(ssize_t) && ((ssize_t )(count) != (count)) ? -1 : (count))); ((void)sizeof(sp)); } } while (0); |
| 3047 | PUSHs(sv_mortalcopy(sv))(*++sp = (Perl_sv_mortalcopy_flags( sv, 2|0))); |
| 3048 | he = hv_iternext(hv)Perl_hv_iternext_flags( hv,0); |
| 3049 | } |
| 3050 | #line 3051 "APItest.c" |
| 3051 | PUTBACKPL_stack_sp = sp; |
| 3052 | return; |
| 3053 | } |
| 3054 | } |
| 3055 | |
| 3056 | |
| 3057 | XS_EUPXS(XS_XS__APItest__TempLv_make_temp_mg_lv)static void XS_XS__APItest__TempLv_make_temp_mg_lv( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3058 | XS_EUPXS(XS_XS__APItest__TempLv_make_temp_mg_lv)static void XS_XS__APItest__TempLv_make_temp_mg_lv( CV* cv __attribute__ ((unused))) |
| 3059 | { |
| 3060 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3061 | if (items != 1) |
| 3062 | croak_xs_usagePerl_croak_xs_usage(cv, "sv"); |
| 3063 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 3064 | SPsp -= items; |
| 3065 | { |
| 3066 | SV* sv = ST(0)PL_stack_base[ax + (0)] |
| 3067 | ; |
| 3068 | #line 2075 "APItest.xs" |
| 3069 | SV * const lv = newSV_type(SVt_PVLV)Perl_newSV_type( SVt_PVLV); |
| 3070 | STRLEN len; |
| 3071 | #line 3072 "APItest.c" |
| 3072 | #line 2078 "APItest.xs" |
| 3073 | SvPV(sv, len)((((sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (sv)->sv_any)->xpv_cur), ((sv)-> sv_u.svu_pv)) : Perl_sv_2pv_flags( sv,&len,2)); |
| 3074 | |
| 3075 | sv_magic(lv, NULL, PERL_MAGIC_substr, NULL, 0)Perl_sv_magic( lv,((void*)0),'x',((void*)0),0); |
| 3076 | LvTYPE(lv)((XPVLV*) (lv)->sv_any)->xlv_type = 'x'; |
| 3077 | LvTARG(lv)((XPVLV*) (lv)->sv_any)->xlv_targ = SvREFCNT_inc_simple(sv)Perl_SvREFCNT_inc(((SV *)({ void *_p = (sv); _p; }))); |
| 3078 | LvTARGOFF(lv)((XPVLV*) (lv)->sv_any)->xlv_targoff_u.xlvu_targoff = len == 0 ? 0 : 1; |
| 3079 | LvTARGLEN(lv)((XPVLV*) (lv)->sv_any)->xlv_targlen = len < 2 ? 0 : len-2; |
| 3080 | |
| 3081 | EXTEND(SP, 1)do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); |
| 3082 | ST(0)PL_stack_base[ax + (0)] = sv_2mortal(lv)Perl_sv_2mortal( lv); |
| 3083 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 3084 | #line 3085 "APItest.c" |
| 3085 | PUTBACKPL_stack_sp = sp; |
| 3086 | return; |
| 3087 | } |
| 3088 | } |
| 3089 | |
| 3090 | |
| 3091 | XS_EUPXS(XS_XS__APItest__PtrTable_new)static void XS_XS__APItest__PtrTable_new( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3092 | XS_EUPXS(XS_XS__APItest__PtrTable_new)static void XS_XS__APItest__PtrTable_new( CV* cv __attribute__ ((unused))) |
| 3093 | { |
| 3094 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3095 | if (items != 1) |
| 3096 | croak_xs_usagePerl_croak_xs_usage(cv, "classname"); |
| 3097 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 3098 | SPsp -= items; |
| 3099 | { |
| 3100 | const char * classname = (const char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 3101 | ; |
| 3102 | #line 2097 "APItest.xs" |
| 3103 | PUSHs(sv_setref_pv(sv_newmortal(), classname, (void*)ptr_table_new()))(*++sp = (Perl_sv_setref_pv( Perl_sv_newmortal(),classname,(void *)Perl_ptr_table_new()))); |
| 3104 | #line 3105 "APItest.c" |
| 3105 | PUTBACKPL_stack_sp = sp; |
| 3106 | return; |
| 3107 | } |
| 3108 | } |
| 3109 | |
| 3110 | |
| 3111 | XS_EUPXS(XS_XS__APItest__PtrTable_DESTROY)static void XS_XS__APItest__PtrTable_DESTROY( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3112 | XS_EUPXS(XS_XS__APItest__PtrTable_DESTROY)static void XS_XS__APItest__PtrTable_DESTROY( CV* cv __attribute__ ((unused))) |
| 3113 | { |
| 3114 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3115 | if (items != 1) |
| 3116 | croak_xs_usagePerl_croak_xs_usage(cv, "table"); |
| 3117 | { |
| 3118 | XS__APItest__PtrTable table; |
| 3119 | |
| 3120 | if (SvROK(ST(0))((PL_stack_base[ax + (0)])->sv_flags & 0x00000800)) { |
| 3121 | IV tmp = SvIV((SV*)SvRV(ST(0)))(((((SV*)((PL_stack_base[ax + (0)])->sv_u.svu_rv))->sv_flags & (0x00000100|0x00200000)) == 0x00000100) ? ((XPVIV*) (( SV*)((PL_stack_base[ax + (0)])->sv_u.svu_rv))->sv_any)-> xiv_u.xivu_iv : Perl_sv_2iv_flags( (SV*)((PL_stack_base[ax + ( 0)])->sv_u.svu_rv),2)); |
| 3122 | table = INT2PTR(XS__APItest__PtrTable,tmp)(XS__APItest__PtrTable)(tmp); |
| 3123 | } |
| 3124 | else |
| 3125 | Perl_croak_nocontextPerl_croak("%s: %s is not a reference", |
| 3126 | "XS::APItest::PtrTable::DESTROY", |
| 3127 | "table") |
| 3128 | ; |
| 3129 | #line 2103 "APItest.xs" |
| 3130 | ptr_table_free(table)Perl_ptr_table_free( table); |
| 3131 | #line 3132 "APItest.c" |
| 3132 | } |
| 3133 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 3134 | } |
| 3135 | |
| 3136 | |
| 3137 | XS_EUPXS(XS_XS__APItest__PtrTable_store)static void XS_XS__APItest__PtrTable_store( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3138 | XS_EUPXS(XS_XS__APItest__PtrTable_store)static void XS_XS__APItest__PtrTable_store( CV* cv __attribute__ ((unused))) |
| 3139 | { |
| 3140 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3141 | if (items != 3) |
| 3142 | croak_xs_usagePerl_croak_xs_usage(cv, "table, from, to"); |
| 3143 | { |
| 3144 | XS__APItest__PtrTable table; |
| 3145 | SVREF from; |
| 3146 | SVREF to; |
| 3147 | |
| 3148 | if (SvROK(ST(0))((PL_stack_base[ax + (0)])->sv_flags & 0x00000800) && sv_derived_from(ST(0), "XS::APItest::PtrTable")Perl_sv_derived_from( PL_stack_base[ax + (0)],"XS::APItest::PtrTable" )) { |
| 3149 | IV tmp = SvIV((SV*)SvRV(ST(0)))(((((SV*)((PL_stack_base[ax + (0)])->sv_u.svu_rv))->sv_flags & (0x00000100|0x00200000)) == 0x00000100) ? ((XPVIV*) (( SV*)((PL_stack_base[ax + (0)])->sv_u.svu_rv))->sv_any)-> xiv_u.xivu_iv : Perl_sv_2iv_flags( (SV*)((PL_stack_base[ax + ( 0)])->sv_u.svu_rv),2)); |
| 3150 | table = INT2PTR(XS__APItest__PtrTable,tmp)(XS__APItest__PtrTable)(tmp); |
| 3151 | } |
| 3152 | else |
| 3153 | Perl_croak_nocontextPerl_croak("%s: %s is not of type %s", |
| 3154 | "XS::APItest::PtrTable::store", |
| 3155 | "table", "XS::APItest::PtrTable") |
| 3156 | ; |
| 3157 | |
| 3158 | STMT_STARTdo { |
| 3159 | SV* const xsub_tmp_sv = ST(1)PL_stack_base[ax + (1)]; |
| 3160 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 3161 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800)){ |
| 3162 | from = SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 3163 | } |
| 3164 | else{ |
| 3165 | Perl_croak_nocontextPerl_croak("%s: %s is not a reference", |
| 3166 | "XS::APItest::PtrTable::store", |
| 3167 | "from"); |
| 3168 | } |
| 3169 | } STMT_ENDwhile (0) |
| 3170 | ; |
| 3171 | |
| 3172 | STMT_STARTdo { |
| 3173 | SV* const xsub_tmp_sv = ST(2)PL_stack_base[ax + (2)]; |
| 3174 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 3175 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800)){ |
| 3176 | to = SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 3177 | } |
| 3178 | else{ |
| 3179 | Perl_croak_nocontextPerl_croak("%s: %s is not a reference", |
| 3180 | "XS::APItest::PtrTable::store", |
| 3181 | "to"); |
| 3182 | } |
| 3183 | } STMT_ENDwhile (0) |
| 3184 | ; |
| 3185 | #line 2111 "APItest.xs" |
| 3186 | ptr_table_store(table, from, to)Perl_ptr_table_store( table,from,to); |
| 3187 | #line 3188 "APItest.c" |
| 3188 | } |
| 3189 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 3190 | } |
| 3191 | |
| 3192 | |
| 3193 | XS_EUPXS(XS_XS__APItest__PtrTable_fetch)static void XS_XS__APItest__PtrTable_fetch( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3194 | XS_EUPXS(XS_XS__APItest__PtrTable_fetch)static void XS_XS__APItest__PtrTable_fetch( CV* cv __attribute__ ((unused))) |
| 3195 | { |
| 3196 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3197 | if (items != 2) |
| 3198 | croak_xs_usagePerl_croak_xs_usage(cv, "table, from"); |
| 3199 | { |
| 3200 | XS__APItest__PtrTable table; |
| 3201 | SVREF from; |
| 3202 | UV RETVAL; |
| 3203 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 3204 | |
| 3205 | if (SvROK(ST(0))((PL_stack_base[ax + (0)])->sv_flags & 0x00000800) && sv_derived_from(ST(0), "XS::APItest::PtrTable")Perl_sv_derived_from( PL_stack_base[ax + (0)],"XS::APItest::PtrTable" )) { |
| 3206 | IV tmp = SvIV((SV*)SvRV(ST(0)))(((((SV*)((PL_stack_base[ax + (0)])->sv_u.svu_rv))->sv_flags & (0x00000100|0x00200000)) == 0x00000100) ? ((XPVIV*) (( SV*)((PL_stack_base[ax + (0)])->sv_u.svu_rv))->sv_any)-> xiv_u.xivu_iv : Perl_sv_2iv_flags( (SV*)((PL_stack_base[ax + ( 0)])->sv_u.svu_rv),2)); |
| 3207 | table = INT2PTR(XS__APItest__PtrTable,tmp)(XS__APItest__PtrTable)(tmp); |
| 3208 | } |
| 3209 | else |
| 3210 | Perl_croak_nocontextPerl_croak("%s: %s is not of type %s", |
| 3211 | "XS::APItest::PtrTable::fetch", |
| 3212 | "table", "XS::APItest::PtrTable") |
| 3213 | ; |
| 3214 | |
| 3215 | STMT_STARTdo { |
| 3216 | SV* const xsub_tmp_sv = ST(1)PL_stack_base[ax + (1)]; |
| 3217 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 3218 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800)){ |
| 3219 | from = SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 3220 | } |
| 3221 | else{ |
| 3222 | Perl_croak_nocontextPerl_croak("%s: %s is not a reference", |
| 3223 | "XS::APItest::PtrTable::fetch", |
| 3224 | "from"); |
| 3225 | } |
| 3226 | } STMT_ENDwhile (0) |
| 3227 | ; |
| 3228 | #line 2118 "APItest.xs" |
| 3229 | RETVAL = PTR2UV(ptr_table_fetch(table, from))(UV)(Perl_ptr_table_fetch( table,from)); |
| 3230 | #line 3231 "APItest.c" |
| 3231 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 3232 | } |
| 3233 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 3234 | } |
| 3235 | |
| 3236 | |
| 3237 | XS_EUPXS(XS_XS__APItest__PtrTable_split)static void XS_XS__APItest__PtrTable_split( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3238 | XS_EUPXS(XS_XS__APItest__PtrTable_split)static void XS_XS__APItest__PtrTable_split( CV* cv __attribute__ ((unused))) |
| 3239 | { |
| 3240 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3241 | if (items != 1) |
| 3242 | croak_xs_usagePerl_croak_xs_usage(cv, "table"); |
| 3243 | { |
| 3244 | XS__APItest__PtrTable table; |
| 3245 | |
| 3246 | if (SvROK(ST(0))((PL_stack_base[ax + (0)])->sv_flags & 0x00000800) && sv_derived_from(ST(0), "XS::APItest::PtrTable")Perl_sv_derived_from( PL_stack_base[ax + (0)],"XS::APItest::PtrTable" )) { |
| 3247 | IV tmp = SvIV((SV*)SvRV(ST(0)))(((((SV*)((PL_stack_base[ax + (0)])->sv_u.svu_rv))->sv_flags & (0x00000100|0x00200000)) == 0x00000100) ? ((XPVIV*) (( SV*)((PL_stack_base[ax + (0)])->sv_u.svu_rv))->sv_any)-> xiv_u.xivu_iv : Perl_sv_2iv_flags( (SV*)((PL_stack_base[ax + ( 0)])->sv_u.svu_rv),2)); |
| 3248 | table = INT2PTR(XS__APItest__PtrTable,tmp)(XS__APItest__PtrTable)(tmp); |
| 3249 | } |
| 3250 | else |
| 3251 | Perl_croak_nocontextPerl_croak("%s: %s is not of type %s", |
| 3252 | "XS::APItest::PtrTable::split", |
| 3253 | "table", "XS::APItest::PtrTable") |
| 3254 | ; |
| 3255 | |
| 3256 | ptr_table_split(table)Perl_ptr_table_split( table); |
| 3257 | } |
| 3258 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 3259 | } |
| 3260 | |
| 3261 | |
| 3262 | XS_EUPXS(XS_XS__APItest__PtrTable_clear)static void XS_XS__APItest__PtrTable_clear( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3263 | XS_EUPXS(XS_XS__APItest__PtrTable_clear)static void XS_XS__APItest__PtrTable_clear( CV* cv __attribute__ ((unused))) |
| 3264 | { |
| 3265 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3266 | if (items != 1) |
| 3267 | croak_xs_usagePerl_croak_xs_usage(cv, "table"); |
| 3268 | { |
| 3269 | XS__APItest__PtrTable table; |
| 3270 | |
| 3271 | if (SvROK(ST(0))((PL_stack_base[ax + (0)])->sv_flags & 0x00000800) && sv_derived_from(ST(0), "XS::APItest::PtrTable")Perl_sv_derived_from( PL_stack_base[ax + (0)],"XS::APItest::PtrTable" )) { |
| 3272 | IV tmp = SvIV((SV*)SvRV(ST(0)))(((((SV*)((PL_stack_base[ax + (0)])->sv_u.svu_rv))->sv_flags & (0x00000100|0x00200000)) == 0x00000100) ? ((XPVIV*) (( SV*)((PL_stack_base[ax + (0)])->sv_u.svu_rv))->sv_any)-> xiv_u.xivu_iv : Perl_sv_2iv_flags( (SV*)((PL_stack_base[ax + ( 0)])->sv_u.svu_rv),2)); |
| 3273 | table = INT2PTR(XS__APItest__PtrTable,tmp)(XS__APItest__PtrTable)(tmp); |
| 3274 | } |
| 3275 | else |
| 3276 | Perl_croak_nocontextPerl_croak("%s: %s is not of type %s", |
| 3277 | "XS::APItest::PtrTable::clear", |
| 3278 | "table", "XS::APItest::PtrTable") |
| 3279 | ; |
| 3280 | |
| 3281 | ptr_table_clear(table)Perl_ptr_table_clear( table); |
| 3282 | } |
| 3283 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 3284 | } |
| 3285 | |
| 3286 | |
| 3287 | XS_EUPXS(XS_XS__APItest__AutoLoader_AUTOLOAD)static void XS_XS__APItest__AutoLoader_AUTOLOAD( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3288 | XS_EUPXS(XS_XS__APItest__AutoLoader_AUTOLOAD)static void XS_XS__APItest__AutoLoader_AUTOLOAD( CV* cv __attribute__ ((unused))) |
| 3289 | { |
| 3290 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3291 | if (items != 0) |
| 3292 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 3293 | { |
| 3294 | SV * RETVAL; |
| 3295 | #line 2135 "APItest.xs" |
| 3296 | RETVAL = newSVpvn_flags(SvPVX(cv), SvCUR(cv), SvUTF8(cv))Perl_newSVpvn_flags( ((cv)->sv_u.svu_pv),((XPV*) (cv)-> sv_any)->xpv_cur,((cv)->sv_flags & 0x20000000)); |
| 3297 | #line 3298 "APItest.c" |
| 3298 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 3299 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 3300 | } |
| 3301 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 3302 | } |
| 3303 | |
| 3304 | |
| 3305 | XS_EUPXS(XS_XS__APItest__AutoLoader_AUTOLOADp)static void XS_XS__APItest__AutoLoader_AUTOLOADp( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3306 | XS_EUPXS(XS_XS__APItest__AutoLoader_AUTOLOADp)static void XS_XS__APItest__AutoLoader_AUTOLOADp( CV* cv __attribute__ ((unused))) |
| 3307 | { |
| 3308 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3309 | PERL_UNUSED_VAR(cv)((void)sizeof(cv)); /* -W */ |
| 3310 | PERL_UNUSED_VAR(items)((void)sizeof(items)); /* -W */ |
| 3311 | { |
| 3312 | SV * RETVAL; |
| 3313 | #line 2143 "APItest.xs" |
| 3314 | PERL_UNUSED_ARG(items)((void)sizeof(items)); |
| 3315 | RETVAL = newSVpvn_flags(SvPVX(cv), SvCUR(cv), SvUTF8(cv))Perl_newSVpvn_flags( ((cv)->sv_u.svu_pv),((XPV*) (cv)-> sv_any)->xpv_cur,((cv)->sv_flags & 0x20000000)); |
| 3316 | #line 3317 "APItest.c" |
| 3317 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 3318 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 3319 | } |
| 3320 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 3321 | } |
| 3322 | |
| 3323 | |
| 3324 | XS_EUPXS(XS_XS__APItest_xop_custom_ops)static void XS_XS__APItest_xop_custom_ops( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3325 | XS_EUPXS(XS_XS__APItest_xop_custom_ops)static void XS_XS__APItest_xop_custom_ops( CV* cv __attribute__ ((unused))) |
| 3326 | { |
| 3327 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3328 | if (items != 0) |
| 3329 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 3330 | { |
| 3331 | HV * RETVAL; |
| 3332 | #line 2164 "APItest.xs" |
| 3333 | RETVAL = PL_custom_ops; |
| 3334 | #line 3335 "APItest.c" |
| 3335 | { |
| 3336 | SV * RETVALSV; |
| 3337 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 3338 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 3339 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 3340 | } |
| 3341 | } |
| 3342 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 3343 | } |
| 3344 | |
| 3345 | |
| 3346 | XS_EUPXS(XS_XS__APItest_xop_custom_op_names)static void XS_XS__APItest_xop_custom_op_names( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3347 | XS_EUPXS(XS_XS__APItest_xop_custom_op_names)static void XS_XS__APItest_xop_custom_op_names( CV* cv __attribute__ ((unused))) |
| 3348 | { |
| 3349 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3350 | if (items != 0) |
| 3351 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 3352 | { |
| 3353 | HV * RETVAL; |
| 3354 | #line 2171 "APItest.xs" |
| 3355 | PL_custom_op_names = newHV()((HV *)({ void *_p = (Perl_newSV_type( SVt_PVHV)); _p; })); |
| 3356 | RETVAL = PL_custom_op_names; |
| 3357 | #line 3358 "APItest.c" |
| 3358 | { |
| 3359 | SV * RETVALSV; |
| 3360 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 3361 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 3362 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 3363 | } |
| 3364 | } |
| 3365 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 3366 | } |
| 3367 | |
| 3368 | |
| 3369 | XS_EUPXS(XS_XS__APItest_xop_custom_op_descs)static void XS_XS__APItest_xop_custom_op_descs( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3370 | XS_EUPXS(XS_XS__APItest_xop_custom_op_descs)static void XS_XS__APItest_xop_custom_op_descs( CV* cv __attribute__ ((unused))) |
| 3371 | { |
| 3372 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3373 | if (items != 0) |
| 3374 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 3375 | { |
| 3376 | HV * RETVAL; |
| 3377 | #line 2179 "APItest.xs" |
| 3378 | PL_custom_op_descs = newHV()((HV *)({ void *_p = (Perl_newSV_type( SVt_PVHV)); _p; })); |
| 3379 | RETVAL = PL_custom_op_descs; |
| 3380 | #line 3381 "APItest.c" |
| 3381 | { |
| 3382 | SV * RETVALSV; |
| 3383 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 3384 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 3385 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 3386 | } |
| 3387 | } |
| 3388 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 3389 | } |
| 3390 | |
| 3391 | |
| 3392 | XS_EUPXS(XS_XS__APItest_xop_register)static void XS_XS__APItest_xop_register( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3393 | XS_EUPXS(XS_XS__APItest_xop_register)static void XS_XS__APItest_xop_register( CV* cv __attribute__ ((unused))) |
| 3394 | { |
| 3395 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3396 | if (items != 0) |
| 3397 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 3398 | { |
| 3399 | #line 2187 "APItest.xs" |
| 3400 | XopENTRY_set(&my_xop, xop_name, "my_xop")do { (&my_xop)->xop_name = ("my_xop"); (&my_xop)-> xop_flags |= 0x01; } while (0); |
| 3401 | XopENTRY_set(&my_xop, xop_desc, "XOP for testing")do { (&my_xop)->xop_desc = ("XOP for testing"); (& my_xop)->xop_flags |= 0x02; } while (0); |
| 3402 | XopENTRY_set(&my_xop, xop_class, OA_UNOP)do { (&my_xop)->xop_class = ((1 << 8)); (&my_xop )->xop_flags |= 0x04; } while (0); |
| 3403 | XopENTRY_set(&my_xop, xop_peep, peep_xop)do { (&my_xop)->xop_peep = (peep_xop); (&my_xop)-> xop_flags |= 0x08; } while (0); |
| 3404 | Perl_custom_op_register(aTHX_ pp_xop, &my_xop); |
| 3405 | #line 3406 "APItest.c" |
| 3406 | } |
| 3407 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 3408 | } |
| 3409 | |
| 3410 | |
| 3411 | XS_EUPXS(XS_XS__APItest_xop_clear)static void XS_XS__APItest_xop_clear( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 3412 | XS_EUPXS(XS_XS__APItest_xop_clear)static void XS_XS__APItest_xop_clear( CV* cv __attribute__((unused ))) |
| 3413 | { |
| 3414 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3415 | if (items != 0) |
| 3416 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 3417 | { |
| 3418 | #line 2196 "APItest.xs" |
| 3419 | XopDISABLE(&my_xop, xop_name)((&my_xop)->xop_flags &= ~0x01); |
| 3420 | XopDISABLE(&my_xop, xop_desc)((&my_xop)->xop_flags &= ~0x02); |
| 3421 | XopDISABLE(&my_xop, xop_class)((&my_xop)->xop_flags &= ~0x04); |
| 3422 | XopDISABLE(&my_xop, xop_peep)((&my_xop)->xop_flags &= ~0x08); |
| 3423 | #line 3424 "APItest.c" |
| 3424 | } |
| 3425 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 3426 | } |
| 3427 | |
| 3428 | |
| 3429 | XS_EUPXS(XS_XS__APItest_xop_my_xop)static void XS_XS__APItest_xop_my_xop( CV* cv __attribute__(( unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3430 | XS_EUPXS(XS_XS__APItest_xop_my_xop)static void XS_XS__APItest_xop_my_xop( CV* cv __attribute__(( unused))) |
| 3431 | { |
| 3432 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3433 | if (items != 0) |
| 3434 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 3435 | { |
| 3436 | IV RETVAL; |
| 3437 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 3438 | #line 2204 "APItest.xs" |
| 3439 | RETVAL = PTR2IV(&my_xop)(IV)(&my_xop); |
| 3440 | #line 3441 "APItest.c" |
| 3441 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHi((IV)RETVAL)do { do { IV TARGi_iv = (IV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1)) ? (_Bool)1 : (_Bool)0) ,(1))) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000 ); targ->sv_u.svu_iv = TARGi_iv; } else Perl_sv_setiv_mg( targ ,TARGi_iv); } while (0); (*++sp = (targ)); } while (0); |
| 3442 | } |
| 3443 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 3444 | } |
| 3445 | |
| 3446 | |
| 3447 | XS_EUPXS(XS_XS__APItest_xop_ppaddr)static void XS_XS__APItest_xop_ppaddr( CV* cv __attribute__(( unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3448 | XS_EUPXS(XS_XS__APItest_xop_ppaddr)static void XS_XS__APItest_xop_ppaddr( CV* cv __attribute__(( unused))) |
| 3449 | { |
| 3450 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3451 | if (items != 0) |
| 3452 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 3453 | { |
| 3454 | IV RETVAL; |
| 3455 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 3456 | #line 2211 "APItest.xs" |
| 3457 | RETVAL = PTR2IV(pp_xop)(IV)(pp_xop); |
| 3458 | #line 3459 "APItest.c" |
| 3459 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHi((IV)RETVAL)do { do { IV TARGi_iv = (IV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1)) ? (_Bool)1 : (_Bool)0) ,(1))) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000 ); targ->sv_u.svu_iv = TARGi_iv; } else Perl_sv_setiv_mg( targ ,TARGi_iv); } while (0); (*++sp = (targ)); } while (0); |
| 3460 | } |
| 3461 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 3462 | } |
| 3463 | |
| 3464 | |
| 3465 | XS_EUPXS(XS_XS__APItest_xop_OA_UNOP)static void XS_XS__APItest_xop_OA_UNOP( CV* cv __attribute__( (unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3466 | XS_EUPXS(XS_XS__APItest_xop_OA_UNOP)static void XS_XS__APItest_xop_OA_UNOP( CV* cv __attribute__( (unused))) |
| 3467 | { |
| 3468 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3469 | if (items != 0) |
| 3470 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 3471 | { |
| 3472 | IV RETVAL; |
| 3473 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 3474 | #line 2218 "APItest.xs" |
| 3475 | RETVAL = OA_UNOP(1 << 8); |
| 3476 | #line 3477 "APItest.c" |
| 3477 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHi((IV)RETVAL)do { do { IV TARGi_iv = (IV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1)) ? (_Bool)1 : (_Bool)0) ,(1))) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000 ); targ->sv_u.svu_iv = TARGi_iv; } else Perl_sv_setiv_mg( targ ,TARGi_iv); } while (0); (*++sp = (targ)); } while (0); |
| 3478 | } |
| 3479 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 3480 | } |
| 3481 | |
| 3482 | |
| 3483 | XS_EUPXS(XS_XS__APItest_xop_build_optree)static void XS_XS__APItest_xop_build_optree( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3484 | XS_EUPXS(XS_XS__APItest_xop_build_optree)static void XS_XS__APItest_xop_build_optree( CV* cv __attribute__ ((unused))) |
| 3485 | { |
| 3486 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3487 | if (items != 0) |
| 3488 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 3489 | { |
| 3490 | AV * RETVAL; |
| 3491 | #line 2225 "APItest.xs" |
| 3492 | dMY_CXTstruct Perl___notused_struct; |
| 3493 | UNOP *unop; |
| 3494 | OP *kid; |
| 3495 | |
| 3496 | MY_CXTmy_cxt.xop_record = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 3497 | |
| 3498 | kid = newSVOP(OP_CONST, 0, newSViv(42))Perl_newSVOP( OP_CONST,0,Perl_newSViv( 42)); |
| 3499 | |
| 3500 | unop = (UNOP*)mkUNOP(OP_CUSTOM, kid)THX_mkUNOP( (OP_CUSTOM), (kid)); |
| 3501 | unop->op_ppaddr = pp_xop; |
| 3502 | unop->op_private = 0; |
| 3503 | unop->op_next = NULL((void*)0); |
| 3504 | kid->op_next = (OP*)unop; |
| 3505 | |
| 3506 | av_push(MY_CXT.xop_record, newSVpvf("unop:%" UVxf, PTR2UV(unop)))Perl_av_push( my_cxt.xop_record,Perl_newSVpvf("unop:%" "lx", ( UV)(unop))); |
| 3507 | av_push(MY_CXT.xop_record, newSVpvf("kid:%" UVxf, PTR2UV(kid)))Perl_av_push( my_cxt.xop_record,Perl_newSVpvf("kid:%" "lx", ( UV)(kid))); |
| 3508 | |
| 3509 | av_push(MY_CXT.xop_record, newSVpvf("NAME:%s", OP_NAME((OP*)unop)))Perl_av_push( my_cxt.xop_record,Perl_newSVpvf("NAME:%s", (((OP *)unop)->op_type == OP_CUSTOM ? (Perl_custom_op_get_field( (OP*)unop, XOPe_xop_name).xop_name) : PL_op_name[((OP*)unop) ->op_type]))); |
| 3510 | av_push(MY_CXT.xop_record, newSVpvf("DESC:%s", OP_DESC((OP*)unop)))Perl_av_push( my_cxt.xop_record,Perl_newSVpvf("DESC:%s", (((OP *)unop)->op_type == OP_CUSTOM ? (Perl_custom_op_get_field( (OP*)unop, XOPe_xop_desc).xop_desc) : PL_op_desc[((OP*)unop) ->op_type]))); |
| 3511 | av_push(MY_CXT.xop_record, newSVpvf("CLASS:%d", (int)OP_CLASS((OP*)unop)))Perl_av_push( my_cxt.xop_record,Perl_newSVpvf("CLASS:%d", (int )(((OP*)unop)->op_type == OP_CUSTOM ? (Perl_custom_op_get_field ( (OP*)unop, XOPe_xop_class).xop_class) : (PL_opargs[((OP*)unop )->op_type] & (15 << 8))))); |
| 3512 | |
| 3513 | PL_rpeepp(aTHX_ kid); |
| 3514 | |
| 3515 | FreeOp(kid)Perl_Slab_Free( kid); |
| 3516 | FreeOp(unop)Perl_Slab_Free( unop); |
| 3517 | |
| 3518 | RETVAL = MY_CXTmy_cxt.xop_record; |
| 3519 | MY_CXTmy_cxt.xop_record = NULL((void*)0); |
| 3520 | #line 3521 "APItest.c" |
| 3521 | { |
| 3522 | SV * RETVALSV; |
| 3523 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 3524 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 3525 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 3526 | } |
| 3527 | } |
| 3528 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 3529 | } |
| 3530 | |
| 3531 | |
| 3532 | XS_EUPXS(XS_XS__APItest_xop_from_custom_op)static void XS_XS__APItest_xop_from_custom_op( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3533 | XS_EUPXS(XS_XS__APItest_xop_from_custom_op)static void XS_XS__APItest_xop_from_custom_op( CV* cv __attribute__ ((unused))) |
| 3534 | { |
| 3535 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3536 | if (items != 0) |
| 3537 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 3538 | { |
| 3539 | IV RETVAL; |
| 3540 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 3541 | #line 2259 "APItest.xs" |
| 3542 | /* author note: this test doesn't imply Perl_custom_op_xop is or isn't public |
| 3543 | API or that Perl_custom_op_xop is known to be used outside the core */ |
| 3544 | UNOP *unop; |
| 3545 | XOP *xop; |
| 3546 | |
| 3547 | unop = (UNOP*)mkUNOP(OP_CUSTOM, NULL)THX_mkUNOP( (OP_CUSTOM), (((void*)0))); |
| 3548 | unop->op_ppaddr = pp_xop; |
| 3549 | unop->op_private = 0; |
| 3550 | unop->op_next = NULL((void*)0); |
| 3551 | |
| 3552 | xop = Perl_custom_op_xop(aTHX_ (OP *)unop)(Perl_custom_op_get_field((OP *)unop, XOPe_xop_ptr).xop_ptr); |
| 3553 | FreeOp(unop)Perl_Slab_Free( unop); |
| 3554 | RETVAL = PTR2IV(xop)(IV)(xop); |
| 3555 | #line 3556 "APItest.c" |
| 3556 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHi((IV)RETVAL)do { do { IV TARGi_iv = (IV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1)) ? (_Bool)1 : (_Bool)0) ,(1))) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000 ); targ->sv_u.svu_iv = TARGi_iv; } else Perl_sv_setiv_mg( targ ,TARGi_iv); } while (0); (*++sp = (targ)); } while (0); |
| 3557 | } |
| 3558 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 3559 | } |
| 3560 | |
| 3561 | |
| 3562 | XS_EUPXS(XS_XS__APItest_CLONE)static void XS_XS__APItest_CLONE( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 3563 | XS_EUPXS(XS_XS__APItest_CLONE)static void XS_XS__APItest_CLONE( CV* cv __attribute__((unused ))) |
| 3564 | { |
| 3565 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3566 | PERL_UNUSED_VAR(cv)((void)sizeof(cv)); /* -W */ |
| 3567 | PERL_UNUSED_VAR(items)((void)sizeof(items)); /* -W */ |
| 3568 | { |
| 3569 | #line 2311 "APItest.xs" |
| 3570 | MY_CXT_CLONE(void)0; |
| 3571 | PERL_UNUSED_VAR(items)((void)sizeof(items)); |
| 3572 | MY_CXTmy_cxt.sv = newSVpv("initial_clone",0)Perl_newSVpv( "initial_clone",0); |
| 3573 | MY_CXTmy_cxt.cscgv = gv_fetchpvs("XS::APItest::COMPILE_SCOPE_CONTAINER",Perl_gv_fetchpvn_flags( ("" "XS::APItest::COMPILE_SCOPE_CONTAINER" ""), (sizeof("XS::APItest::COMPILE_SCOPE_CONTAINER")-1), 0x02 , SVt_PVAV) |
| 3574 | GV_ADDMULTI, SVt_PVAV)Perl_gv_fetchpvn_flags( ("" "XS::APItest::COMPILE_SCOPE_CONTAINER" ""), (sizeof("XS::APItest::COMPILE_SCOPE_CONTAINER")-1), 0x02 , SVt_PVAV); |
| 3575 | MY_CXTmy_cxt.cscav = NULL((void*)0); |
| 3576 | MY_CXTmy_cxt.bhkav = get_av("XS::APItest::bhkav", GV_ADDMULTI)Perl_get_av( "XS::APItest::bhkav",0x02); |
| 3577 | MY_CXTmy_cxt.bhk_record = 0; |
| 3578 | MY_CXTmy_cxt.peep_recorder = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 3579 | MY_CXTmy_cxt.rpeep_recorder = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 3580 | #line 3581 "APItest.c" |
| 3581 | } |
| 3582 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 3583 | } |
| 3584 | |
| 3585 | |
| 3586 | XS_EUPXS(XS_XS__APItest_print_double)static void XS_XS__APItest_print_double( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3587 | XS_EUPXS(XS_XS__APItest_print_double)static void XS_XS__APItest_print_double( CV* cv __attribute__ ((unused))) |
| 3588 | { |
| 3589 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3590 | if (items != 1) |
| 3591 | croak_xs_usagePerl_croak_xs_usage(cv, "val"); |
| 3592 | { |
| 3593 | double val = (double)SvNV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000200|0x00200000 )) == 0x00000200) ? ((XPVNV*) (PL_stack_base[ax + (0)])->sv_any )->xnv_u.xnv_nv : Perl_sv_2nv_flags( PL_stack_base[ax + (0 )],2)) |
| 3594 | ; |
| 3595 | #line 2326 "APItest.xs" |
| 3596 | printf("%5.3f\n",val)PerlIO_stdoutf("%5.3f\n",val); |
| 3597 | #line 3598 "APItest.c" |
| 3598 | } |
| 3599 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 3600 | } |
| 3601 | |
| 3602 | |
| 3603 | XS_EUPXS(XS_XS__APItest_have_long_double)static void XS_XS__APItest_have_long_double( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3604 | XS_EUPXS(XS_XS__APItest_have_long_double)static void XS_XS__APItest_have_long_double( CV* cv __attribute__ ((unused))) |
| 3605 | { |
| 3606 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3607 | if (items != 0) |
| 3608 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 3609 | { |
| 3610 | int RETVAL; |
| 3611 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 3612 | #line 2331 "APItest.xs" |
| 3613 | #ifdef HAS_LONG_DOUBLE |
| 3614 | RETVAL = 1; |
| 3615 | #else |
| 3616 | RETVAL = 0; |
| 3617 | #endif |
| 3618 | #line 3619 "APItest.c" |
| 3619 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHi((IV)RETVAL)do { do { IV TARGi_iv = (IV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1)) ? (_Bool)1 : (_Bool)0) ,(1))) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000 ); targ->sv_u.svu_iv = TARGi_iv; } else Perl_sv_setiv_mg( targ ,TARGi_iv); } while (0); (*++sp = (targ)); } while (0); |
| 3620 | } |
| 3621 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 3622 | } |
| 3623 | |
| 3624 | |
| 3625 | XS_EUPXS(XS_XS__APItest_print_long_double)static void XS_XS__APItest_print_long_double( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3626 | XS_EUPXS(XS_XS__APItest_print_long_double)static void XS_XS__APItest_print_long_double( CV* cv __attribute__ ((unused))) |
| 3627 | { |
| 3628 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3629 | if (items != 0) |
| 3630 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 3631 | { |
| 3632 | #line 2342 "APItest.xs" |
| 3633 | #ifdef HAS_LONG_DOUBLE |
| 3634 | # if defined(PERL_PRIfldbl"Lf") && (LONG_DOUBLESIZE16 > DOUBLESIZE8) |
| 3635 | long double val = 7.0; |
| 3636 | printf("%5.3" PERL_PRIfldbl "\n",val)PerlIO_stdoutf("%5.3" "Lf" "\n",val); |
| 3637 | # else |
| 3638 | double val = 7.0; |
| 3639 | printf("%5.3f\n",val)PerlIO_stdoutf("%5.3f\n",val); |
| 3640 | # endif |
| 3641 | #endif |
| 3642 | #line 3643 "APItest.c" |
| 3643 | } |
| 3644 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 3645 | } |
| 3646 | |
| 3647 | |
| 3648 | XS_EUPXS(XS_XS__APItest_print_int)static void XS_XS__APItest_print_int( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 3649 | XS_EUPXS(XS_XS__APItest_print_int)static void XS_XS__APItest_print_int( CV* cv __attribute__((unused ))) |
| 3650 | { |
| 3651 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3652 | if (items != 1) |
| 3653 | croak_xs_usagePerl_croak_xs_usage(cv, "val"); |
| 3654 | { |
| 3655 | int val = (int)SvIV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (0)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 0)],2)) |
| 3656 | ; |
| 3657 | #line 2356 "APItest.xs" |
| 3658 | printf("%d\n",val)PerlIO_stdoutf("%d\n",val); |
| 3659 | #line 3660 "APItest.c" |
| 3660 | } |
| 3661 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 3662 | } |
| 3663 | |
| 3664 | |
| 3665 | XS_EUPXS(XS_XS__APItest_print_long)static void XS_XS__APItest_print_long( CV* cv __attribute__(( unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3666 | XS_EUPXS(XS_XS__APItest_print_long)static void XS_XS__APItest_print_long( CV* cv __attribute__(( unused))) |
| 3667 | { |
| 3668 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3669 | if (items != 1) |
| 3670 | croak_xs_usagePerl_croak_xs_usage(cv, "val"); |
| 3671 | { |
| 3672 | long val = (long)SvIV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (0)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 0)],2)) |
| 3673 | ; |
| 3674 | #line 2362 "APItest.xs" |
| 3675 | printf("%ld\n",val)PerlIO_stdoutf("%ld\n",val); |
| 3676 | #line 3677 "APItest.c" |
| 3677 | } |
| 3678 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 3679 | } |
| 3680 | |
| 3681 | |
| 3682 | XS_EUPXS(XS_XS__APItest_print_float)static void XS_XS__APItest_print_float( CV* cv __attribute__( (unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3683 | XS_EUPXS(XS_XS__APItest_print_float)static void XS_XS__APItest_print_float( CV* cv __attribute__( (unused))) |
| 3684 | { |
| 3685 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3686 | if (items != 1) |
| 3687 | croak_xs_usagePerl_croak_xs_usage(cv, "val"); |
| 3688 | { |
| 3689 | float val = (float)SvNV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000200|0x00200000 )) == 0x00000200) ? ((XPVNV*) (PL_stack_base[ax + (0)])->sv_any )->xnv_u.xnv_nv : Perl_sv_2nv_flags( PL_stack_base[ax + (0 )],2)) |
| 3690 | ; |
| 3691 | #line 2368 "APItest.xs" |
| 3692 | printf("%5.3f\n",val)PerlIO_stdoutf("%5.3f\n",val); |
| 3693 | #line 3694 "APItest.c" |
| 3694 | } |
| 3695 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 3696 | } |
| 3697 | |
| 3698 | |
| 3699 | XS_EUPXS(XS_XS__APItest_print_flush)static void XS_XS__APItest_print_flush( CV* cv __attribute__( (unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3700 | XS_EUPXS(XS_XS__APItest_print_flush)static void XS_XS__APItest_print_flush( CV* cv __attribute__( (unused))) |
| 3701 | { |
| 3702 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3703 | if (items != 0) |
| 3704 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 3705 | { |
| 3706 | #line 2373 "APItest.xs" |
| 3707 | fflush(stdout)Perl_PerlIO_flush( Perl_PerlIO_stdout()); |
| 3708 | #line 3709 "APItest.c" |
| 3709 | } |
| 3710 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 3711 | } |
| 3712 | |
| 3713 | |
| 3714 | XS_EUPXS(XS_XS__APItest_mpushp)static void XS_XS__APItest_mpushp( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 3715 | XS_EUPXS(XS_XS__APItest_mpushp)static void XS_XS__APItest_mpushp( CV* cv __attribute__((unused ))) |
| 3716 | { |
| 3717 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3718 | if (items != 0) |
| 3719 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 3720 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 3721 | SPsp -= items; |
| 3722 | { |
| 3723 | #line 2378 "APItest.xs" |
| 3724 | EXTEND(SP, 3)do { (void)0; if (__builtin_expect(((((3) < 0 || PL_stack_max - (sp) < (3))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(3) > sizeof(ssize_t) && ((ssize_t) (3) != (3)) ? -1 : (3))); ((void)sizeof(sp)); } } while (0); |
| 3725 | mPUSHp("one", 3)(*++sp = (Perl_newSVpvn_flags( ("one"),(3),0x00080000))); |
| 3726 | mPUSHp("two", 3)(*++sp = (Perl_newSVpvn_flags( ("two"),(3),0x00080000))); |
| 3727 | mPUSHp("three", 5)(*++sp = (Perl_newSVpvn_flags( ("three"),(5),0x00080000))); |
| 3728 | XSRETURN(3)do { const IV tmpXSoff = (3); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 3729 | #line 3730 "APItest.c" |
| 3730 | PUTBACKPL_stack_sp = sp; |
| 3731 | return; |
| 3732 | } |
| 3733 | } |
| 3734 | |
| 3735 | |
| 3736 | XS_EUPXS(XS_XS__APItest_mpushn)static void XS_XS__APItest_mpushn( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 3737 | XS_EUPXS(XS_XS__APItest_mpushn)static void XS_XS__APItest_mpushn( CV* cv __attribute__((unused ))) |
| 3738 | { |
| 3739 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3740 | if (items != 0) |
| 3741 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 3742 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 3743 | SPsp -= items; |
| 3744 | { |
| 3745 | #line 2387 "APItest.xs" |
| 3746 | EXTEND(SP, 3)do { (void)0; if (__builtin_expect(((((3) < 0 || PL_stack_max - (sp) < (3))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(3) > sizeof(ssize_t) && ((ssize_t) (3) != (3)) ? -1 : (3))); ((void)sizeof(sp)); } } while (0); |
| 3747 | mPUSHn(0.5)Perl_sv_setnv( (*++sp = (Perl_sv_newmortal())),(NV)(0.5)); |
| 3748 | mPUSHn(-0.25)Perl_sv_setnv( (*++sp = (Perl_sv_newmortal())),(NV)(-0.25)); |
| 3749 | mPUSHn(0.125)Perl_sv_setnv( (*++sp = (Perl_sv_newmortal())),(NV)(0.125)); |
| 3750 | XSRETURN(3)do { const IV tmpXSoff = (3); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 3751 | #line 3752 "APItest.c" |
| 3752 | PUTBACKPL_stack_sp = sp; |
| 3753 | return; |
| 3754 | } |
| 3755 | } |
| 3756 | |
| 3757 | |
| 3758 | XS_EUPXS(XS_XS__APItest_mpushi)static void XS_XS__APItest_mpushi( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 3759 | XS_EUPXS(XS_XS__APItest_mpushi)static void XS_XS__APItest_mpushi( CV* cv __attribute__((unused ))) |
| 3760 | { |
| 3761 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3762 | if (items != 0) |
| 3763 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 3764 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 3765 | SPsp -= items; |
| 3766 | { |
| 3767 | #line 2396 "APItest.xs" |
| 3768 | EXTEND(SP, 3)do { (void)0; if (__builtin_expect(((((3) < 0 || PL_stack_max - (sp) < (3))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(3) > sizeof(ssize_t) && ((ssize_t) (3) != (3)) ? -1 : (3))); ((void)sizeof(sp)); } } while (0); |
| 3769 | mPUSHi(-1)Perl_sv_setiv( (*++sp = (Perl_sv_newmortal())),(IV)(-1)); |
| 3770 | mPUSHi(2)Perl_sv_setiv( (*++sp = (Perl_sv_newmortal())),(IV)(2)); |
| 3771 | mPUSHi(-3)Perl_sv_setiv( (*++sp = (Perl_sv_newmortal())),(IV)(-3)); |
| 3772 | XSRETURN(3)do { const IV tmpXSoff = (3); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 3773 | #line 3774 "APItest.c" |
| 3774 | PUTBACKPL_stack_sp = sp; |
| 3775 | return; |
| 3776 | } |
| 3777 | } |
| 3778 | |
| 3779 | |
| 3780 | XS_EUPXS(XS_XS__APItest_mpushu)static void XS_XS__APItest_mpushu( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 3781 | XS_EUPXS(XS_XS__APItest_mpushu)static void XS_XS__APItest_mpushu( CV* cv __attribute__((unused ))) |
| 3782 | { |
| 3783 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3784 | if (items != 0) |
| 3785 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 3786 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 3787 | SPsp -= items; |
| 3788 | { |
| 3789 | #line 2405 "APItest.xs" |
| 3790 | EXTEND(SP, 3)do { (void)0; if (__builtin_expect(((((3) < 0 || PL_stack_max - (sp) < (3))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(3) > sizeof(ssize_t) && ((ssize_t) (3) != (3)) ? -1 : (3))); ((void)sizeof(sp)); } } while (0); |
| 3791 | mPUSHu(1)Perl_sv_setuv( (*++sp = (Perl_sv_newmortal())),(UV)(1)); |
| 3792 | mPUSHu(2)Perl_sv_setuv( (*++sp = (Perl_sv_newmortal())),(UV)(2)); |
| 3793 | mPUSHu(3)Perl_sv_setuv( (*++sp = (Perl_sv_newmortal())),(UV)(3)); |
| 3794 | XSRETURN(3)do { const IV tmpXSoff = (3); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 3795 | #line 3796 "APItest.c" |
| 3796 | PUTBACKPL_stack_sp = sp; |
| 3797 | return; |
| 3798 | } |
| 3799 | } |
| 3800 | |
| 3801 | |
| 3802 | XS_EUPXS(XS_XS__APItest_mxpushp)static void XS_XS__APItest_mxpushp( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 3803 | XS_EUPXS(XS_XS__APItest_mxpushp)static void XS_XS__APItest_mxpushp( CV* cv __attribute__((unused ))) |
| 3804 | { |
| 3805 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3806 | if (items != 0) |
| 3807 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 3808 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 3809 | SPsp -= items; |
| 3810 | { |
| 3811 | #line 2414 "APItest.xs" |
| 3812 | mXPUSHp("one", 3)do { do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); ( *++sp = (Perl_newSVpvn_flags( (("one")),((3)),0x00080000))); } while (0); |
| 3813 | mXPUSHp("two", 3)do { do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); ( *++sp = (Perl_newSVpvn_flags( (("two")),((3)),0x00080000))); } while (0); |
| 3814 | mXPUSHp("three", 5)do { do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); ( *++sp = (Perl_newSVpvn_flags( (("three")),((5)),0x00080000))) ; } while (0); |
| 3815 | XSRETURN(3)do { const IV tmpXSoff = (3); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 3816 | #line 3817 "APItest.c" |
| 3817 | PUTBACKPL_stack_sp = sp; |
| 3818 | return; |
| 3819 | } |
| 3820 | } |
| 3821 | |
| 3822 | |
| 3823 | XS_EUPXS(XS_XS__APItest_mxpushn)static void XS_XS__APItest_mxpushn( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 3824 | XS_EUPXS(XS_XS__APItest_mxpushn)static void XS_XS__APItest_mxpushn( CV* cv __attribute__((unused ))) |
| 3825 | { |
| 3826 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3827 | if (items != 0) |
| 3828 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 3829 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 3830 | SPsp -= items; |
| 3831 | { |
| 3832 | #line 2422 "APItest.xs" |
| 3833 | mXPUSHn(0.5)do { do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); Perl_sv_setnv ( (*++sp = (Perl_sv_newmortal())),(NV)(0.5)); } while (0); |
| 3834 | mXPUSHn(-0.25)do { do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); Perl_sv_setnv ( (*++sp = (Perl_sv_newmortal())),(NV)(-0.25)); } while (0); |
| 3835 | mXPUSHn(0.125)do { do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); Perl_sv_setnv ( (*++sp = (Perl_sv_newmortal())),(NV)(0.125)); } while (0); |
| 3836 | XSRETURN(3)do { const IV tmpXSoff = (3); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 3837 | #line 3838 "APItest.c" |
| 3838 | PUTBACKPL_stack_sp = sp; |
| 3839 | return; |
| 3840 | } |
| 3841 | } |
| 3842 | |
| 3843 | |
| 3844 | XS_EUPXS(XS_XS__APItest_mxpushi)static void XS_XS__APItest_mxpushi( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 3845 | XS_EUPXS(XS_XS__APItest_mxpushi)static void XS_XS__APItest_mxpushi( CV* cv __attribute__((unused ))) |
| 3846 | { |
| 3847 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3848 | if (items != 0) |
| 3849 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 3850 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 3851 | SPsp -= items; |
| 3852 | { |
| 3853 | #line 2430 "APItest.xs" |
| 3854 | mXPUSHi(-1)do { do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); Perl_sv_setiv ( (*++sp = (Perl_sv_newmortal())),(IV)(-1)); } while (0); |
| 3855 | mXPUSHi(2)do { do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); Perl_sv_setiv ( (*++sp = (Perl_sv_newmortal())),(IV)(2)); } while (0); |
| 3856 | mXPUSHi(-3)do { do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); Perl_sv_setiv ( (*++sp = (Perl_sv_newmortal())),(IV)(-3)); } while (0); |
| 3857 | XSRETURN(3)do { const IV tmpXSoff = (3); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 3858 | #line 3859 "APItest.c" |
| 3859 | PUTBACKPL_stack_sp = sp; |
| 3860 | return; |
| 3861 | } |
| 3862 | } |
| 3863 | |
| 3864 | |
| 3865 | XS_EUPXS(XS_XS__APItest_mxpushu)static void XS_XS__APItest_mxpushu( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 3866 | XS_EUPXS(XS_XS__APItest_mxpushu)static void XS_XS__APItest_mxpushu( CV* cv __attribute__((unused ))) |
| 3867 | { |
| 3868 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3869 | if (items != 0) |
| 3870 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 3871 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 3872 | SPsp -= items; |
| 3873 | { |
| 3874 | #line 2438 "APItest.xs" |
| 3875 | mXPUSHu(1)do { do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); Perl_sv_setuv ( (*++sp = (Perl_sv_newmortal())),(UV)(1)); } while (0); |
| 3876 | mXPUSHu(2)do { do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); Perl_sv_setuv ( (*++sp = (Perl_sv_newmortal())),(UV)(2)); } while (0); |
| 3877 | mXPUSHu(3)do { do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); Perl_sv_setuv ( (*++sp = (Perl_sv_newmortal())),(UV)(3)); } while (0); |
| 3878 | XSRETURN(3)do { const IV tmpXSoff = (3); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 3879 | #line 3880 "APItest.c" |
| 3880 | PUTBACKPL_stack_sp = sp; |
| 3881 | return; |
| 3882 | } |
| 3883 | } |
| 3884 | |
| 3885 | |
| 3886 | XS_EUPXS(XS_XS__APItest_test_EXTEND)static void XS_XS__APItest_test_EXTEND( CV* cv __attribute__( (unused))); /* prototype to pass -Wmissing-prototypes */ |
| 3887 | XS_EUPXS(XS_XS__APItest_test_EXTEND)static void XS_XS__APItest_test_EXTEND( CV* cv __attribute__( (unused))) |
| 3888 | { |
| 3889 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3890 | if (items != 3) |
| 3891 | croak_xs_usagePerl_croak_xs_usage(cv, "max_offset, nsv, use_ss"); |
| 3892 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 3893 | SPsp -= items; |
| 3894 | { |
| 3895 | IV max_offset = (IV)SvIV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (0)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 0)],2)) |
| 3896 | ; |
| 3897 | SV * nsv = ST(1)PL_stack_base[ax + (1)] |
| 3898 | ; |
| 3899 | bool_Bool use_ss = (bool_Bool)SvTRUE(ST(2))Perl_SvTRUE( PL_stack_base[ax + (2)]) |
| 3900 | ; |
| 3901 | #line 2461 "APItest.xs" |
| 3902 | SV **sp = PL_stack_max + max_offset; |
| 3903 | #line 3904 "APItest.c" |
| 3904 | #line 2463 "APItest.xs" |
| 3905 | if (use_ss) { |
| 3906 | SSize_tssize_t n = (SSize_tssize_t)SvIV(nsv)((((nsv)->sv_flags & (0x00000100|0x00200000)) == 0x00000100 ) ? ((XPVIV*) (nsv)->sv_any)->xiv_u.xivu_iv : Perl_sv_2iv_flags ( nsv,2)); |
| 3907 | EXTEND(sp, n)do { (void)0; if (__builtin_expect(((((n) < 0 || PL_stack_max - (sp) < (n))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(n) > sizeof(ssize_t) && ((ssize_t) (n) != (n)) ? -1 : (n))); ((void)sizeof(sp)); } } while (0); |
| 3908 | *(sp + n) = NULL((void*)0); |
| 3909 | } |
| 3910 | else { |
| 3911 | IV n = SvIV(nsv)((((nsv)->sv_flags & (0x00000100|0x00200000)) == 0x00000100 ) ? ((XPVIV*) (nsv)->sv_any)->xiv_u.xivu_iv : Perl_sv_2iv_flags ( nsv,2)); |
| 3912 | EXTEND(sp, n)do { (void)0; if (__builtin_expect(((((n) < 0 || PL_stack_max - (sp) < (n))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(n) > sizeof(ssize_t) && ((ssize_t) (n) != (n)) ? -1 : (n))); ((void)sizeof(sp)); } } while (0); |
| 3913 | *(sp + n) = NULL((void*)0); |
| 3914 | } |
| 3915 | *PL_stack_max = NULL((void*)0); |
| 3916 | #line 3917 "APItest.c" |
| 3917 | PUTBACKPL_stack_sp = sp; |
| 3918 | return; |
| 3919 | } |
| 3920 | } |
| 3921 | |
| 3922 | |
| 3923 | XS_EUPXS(XS_XS__APItest_call_sv_C)static void XS_XS__APItest_call_sv_C( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 3924 | XS_EUPXS(XS_XS__APItest_call_sv_C)static void XS_XS__APItest_call_sv_C( CV* cv __attribute__((unused ))) |
| 3925 | { |
| 3926 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 3927 | if (items != 0) |
| 3928 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 3929 | { |
| 3930 | #line 2479 "APItest.xs" |
| 3931 | CV * i_sub; |
| 3932 | GV * i_gv; |
| 3933 | I32 retcnt; |
| 3934 | SV * errsv; |
| 3935 | char * errstr; |
| 3936 | STRLEN errlen; |
| 3937 | SV * miscsv = sv_newmortal()Perl_sv_newmortal(); |
| 3938 | HV * hv = (HV*)sv_2mortal((SV*)newHV())Perl_sv_2mortal( (SV*)((HV *)({ void *_p = (Perl_newSV_type( SVt_PVHV )); _p; }))); |
| 3939 | #line 3940 "APItest.c" |
| 3940 | #line 2488 "APItest.xs" |
| 3941 | i_sub = get_cv("i", 0)Perl_get_cv( "i",0); |
| 3942 | PUSHMARK(SP)do { I32 * mark_stack_entry; if (__builtin_expect((((mark_stack_entry = ++PL_markstack_ptr) == PL_markstack_max) ? (_Bool)1 : (_Bool )0),(0))) mark_stack_entry = Perl_markstack_grow(); *mark_stack_entry = (I32)((sp) - PL_stack_base); ; } while (0); |
| 3943 | /* PUTBACK not needed since this sub was called with 0 args, and is calling |
| 3944 | 0 args, so global SP doesn't need to be moved before a call_* */ |
| 3945 | retcnt = call_sv((SV*)i_sub, 0)Perl_call_sv( (SV*)i_sub,0); /* try a CV* */ |
| 3946 | SPAGAINsp = PL_stack_sp; |
| 3947 | SPsp -= retcnt; /* dont care about return count, wipe everything off */ |
| 3948 | sv_setpvs(miscsv, "i")Perl_sv_setpvn( miscsv, ("" "i" ""), (sizeof("i")-1)); |
| 3949 | PUSHMARK(SP)do { I32 * mark_stack_entry; if (__builtin_expect((((mark_stack_entry = ++PL_markstack_ptr) == PL_markstack_max) ? (_Bool)1 : (_Bool )0),(0))) mark_stack_entry = Perl_markstack_grow(); *mark_stack_entry = (I32)((sp) - PL_stack_base); ; } while (0); |
| 3950 | retcnt = call_sv(miscsv, 0)Perl_call_sv( miscsv,0); /* try a PV */ |
| 3951 | SPAGAINsp = PL_stack_sp; |
| 3952 | SPsp -= retcnt; |
| 3953 | /* no add and SVt_NULL are intentional, sub i should be defined already */ |
| 3954 | i_gv = gv_fetchpvn_flags("i", sizeof("i")-1, 0, SVt_NULL)Perl_gv_fetchpvn_flags( "i",sizeof("i")-1,0,SVt_NULL); |
| 3955 | PUSHMARK(SP)do { I32 * mark_stack_entry; if (__builtin_expect((((mark_stack_entry = ++PL_markstack_ptr) == PL_markstack_max) ? (_Bool)1 : (_Bool )0),(0))) mark_stack_entry = Perl_markstack_grow(); *mark_stack_entry = (I32)((sp) - PL_stack_base); ; } while (0); |
| 3956 | retcnt = call_sv((SV*)i_gv, 0)Perl_call_sv( (SV*)i_gv,0); /* try a GV* */ |
| 3957 | SPAGAINsp = PL_stack_sp; |
| 3958 | SPsp -= retcnt; |
| 3959 | /* the tests below are not declaring this being public API behavior, |
| 3960 | only current internal behavior, these tests can be changed in the |
| 3961 | future if necessery */ |
| 3962 | PUSHMARK(SP)do { I32 * mark_stack_entry; if (__builtin_expect((((mark_stack_entry = ++PL_markstack_ptr) == PL_markstack_max) ? (_Bool)1 : (_Bool )0),(0))) mark_stack_entry = Perl_markstack_grow(); *mark_stack_entry = (I32)((sp) - PL_stack_base); ; } while (0); |
| 3963 | retcnt = call_sv(&PL_sv_yes, G_EVAL)Perl_call_sv( &(PL_sv_immortals[0]),0x8); |
| 3964 | SPAGAINsp = PL_stack_sp; |
| 3965 | SPsp -= retcnt; |
| 3966 | errsv = ERRSV(*((0+(PL_errgv)->sv_u.svu_gp)->gp_sv ? &((0+(PL_errgv )->sv_u.svu_gp)->gp_sv) : &((0+(Perl_gv_add_by_type ( (PL_errgv),SVt_NULL))->sv_u.svu_gp)->gp_sv))); |
| 3967 | errstr = SvPV(errsv, errlen)((((errsv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((errlen = ((XPV*) (errsv)->sv_any)->xpv_cur), ((errsv )->sv_u.svu_pv)) : Perl_sv_2pv_flags( errsv,&errlen,2) ); |
| 3968 | if(memBEGINs(errstr, errlen, "Undefined subroutine &main::1 called at")( (ptrdiff_t) (errlen) >= (ptrdiff_t) sizeof("Undefined subroutine &main::1 called at" ) - 1 && (memcmp(((const void *) (errstr)), ((const void *) ("" "Undefined subroutine &main::1 called at" "")), sizeof ("Undefined subroutine &main::1 called at")-1) == 0))) { |
| 3969 | PUSHMARK(SP)do { I32 * mark_stack_entry; if (__builtin_expect((((mark_stack_entry = ++PL_markstack_ptr) == PL_markstack_max) ? (_Bool)1 : (_Bool )0),(0))) mark_stack_entry = Perl_markstack_grow(); *mark_stack_entry = (I32)((sp) - PL_stack_base); ; } while (0); |
| 3970 | retcnt = call_sv((SV*)i_sub, 0)Perl_call_sv( (SV*)i_sub,0); /* call again to increase counter */ |
| 3971 | SPAGAINsp = PL_stack_sp; |
| 3972 | SPsp -= retcnt; |
| 3973 | } |
| 3974 | PUSHMARK(SP)do { I32 * mark_stack_entry; if (__builtin_expect((((mark_stack_entry = ++PL_markstack_ptr) == PL_markstack_max) ? (_Bool)1 : (_Bool )0),(0))) mark_stack_entry = Perl_markstack_grow(); *mark_stack_entry = (I32)((sp) - PL_stack_base); ; } while (0); |
| 3975 | retcnt = call_sv(&PL_sv_no, G_EVAL)Perl_call_sv( &(PL_sv_immortals[2]),0x8); |
| 3976 | SPAGAINsp = PL_stack_sp; |
| 3977 | SPsp -= retcnt; |
| 3978 | errsv = ERRSV(*((0+(PL_errgv)->sv_u.svu_gp)->gp_sv ? &((0+(PL_errgv )->sv_u.svu_gp)->gp_sv) : &((0+(Perl_gv_add_by_type ( (PL_errgv),SVt_NULL))->sv_u.svu_gp)->gp_sv))); |
| 3979 | errstr = SvPV(errsv, errlen)((((errsv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((errlen = ((XPV*) (errsv)->sv_any)->xpv_cur), ((errsv )->sv_u.svu_pv)) : Perl_sv_2pv_flags( errsv,&errlen,2) ); |
| 3980 | if(memBEGINs(errstr, errlen, "Undefined subroutine &main:: called at")( (ptrdiff_t) (errlen) >= (ptrdiff_t) sizeof("Undefined subroutine &main:: called at" ) - 1 && (memcmp(((const void *) (errstr)), ((const void *) ("" "Undefined subroutine &main:: called at" "")), sizeof ("Undefined subroutine &main:: called at")-1) == 0))) { |
| 3981 | PUSHMARK(SP)do { I32 * mark_stack_entry; if (__builtin_expect((((mark_stack_entry = ++PL_markstack_ptr) == PL_markstack_max) ? (_Bool)1 : (_Bool )0),(0))) mark_stack_entry = Perl_markstack_grow(); *mark_stack_entry = (I32)((sp) - PL_stack_base); ; } while (0); |
| 3982 | retcnt = call_sv((SV*)i_sub, 0)Perl_call_sv( (SV*)i_sub,0); /* call again to increase counter */ |
| 3983 | SPAGAINsp = PL_stack_sp; |
| 3984 | SPsp -= retcnt; |
| 3985 | } |
| 3986 | PUSHMARK(SP)do { I32 * mark_stack_entry; if (__builtin_expect((((mark_stack_entry = ++PL_markstack_ptr) == PL_markstack_max) ? (_Bool)1 : (_Bool )0),(0))) mark_stack_entry = Perl_markstack_grow(); *mark_stack_entry = (I32)((sp) - PL_stack_base); ; } while (0); |
| 3987 | retcnt = call_sv(&PL_sv_undef, G_EVAL)Perl_call_sv( &(PL_sv_immortals[1]),0x8); |
| 3988 | SPAGAINsp = PL_stack_sp; |
| 3989 | SPsp -= retcnt; |
| 3990 | errsv = ERRSV(*((0+(PL_errgv)->sv_u.svu_gp)->gp_sv ? &((0+(PL_errgv )->sv_u.svu_gp)->gp_sv) : &((0+(Perl_gv_add_by_type ( (PL_errgv),SVt_NULL))->sv_u.svu_gp)->gp_sv))); |
| 3991 | errstr = SvPV(errsv, errlen)((((errsv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((errlen = ((XPV*) (errsv)->sv_any)->xpv_cur), ((errsv )->sv_u.svu_pv)) : Perl_sv_2pv_flags( errsv,&errlen,2) ); |
| 3992 | if(memBEGINs(errstr, errlen, "Can't use an undefined value as a subroutine reference at")( (ptrdiff_t) (errlen) >= (ptrdiff_t) sizeof("Can't use an undefined value as a subroutine reference at" ) - 1 && (memcmp(((const void *) (errstr)), ((const void *) ("" "Can't use an undefined value as a subroutine reference at" "")), sizeof("Can't use an undefined value as a subroutine reference at" )-1) == 0))) { |
| 3993 | PUSHMARK(SP)do { I32 * mark_stack_entry; if (__builtin_expect((((mark_stack_entry = ++PL_markstack_ptr) == PL_markstack_max) ? (_Bool)1 : (_Bool )0),(0))) mark_stack_entry = Perl_markstack_grow(); *mark_stack_entry = (I32)((sp) - PL_stack_base); ; } while (0); |
| 3994 | retcnt = call_sv((SV*)i_sub, 0)Perl_call_sv( (SV*)i_sub,0); /* call again to increase counter */ |
| 3995 | SPAGAINsp = PL_stack_sp; |
| 3996 | SPsp -= retcnt; |
| 3997 | } |
| 3998 | PUSHMARK(SP)do { I32 * mark_stack_entry; if (__builtin_expect((((mark_stack_entry = ++PL_markstack_ptr) == PL_markstack_max) ? (_Bool)1 : (_Bool )0),(0))) mark_stack_entry = Perl_markstack_grow(); *mark_stack_entry = (I32)((sp) - PL_stack_base); ; } while (0); |
| 3999 | retcnt = call_sv((SV*)hv, G_EVAL)Perl_call_sv( (SV*)hv,0x8); |
| 4000 | SPAGAINsp = PL_stack_sp; |
| 4001 | SPsp -= retcnt; |
| 4002 | errsv = ERRSV(*((0+(PL_errgv)->sv_u.svu_gp)->gp_sv ? &((0+(PL_errgv )->sv_u.svu_gp)->gp_sv) : &((0+(Perl_gv_add_by_type ( (PL_errgv),SVt_NULL))->sv_u.svu_gp)->gp_sv))); |
| 4003 | errstr = SvPV(errsv, errlen)((((errsv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((errlen = ((XPV*) (errsv)->sv_any)->xpv_cur), ((errsv )->sv_u.svu_pv)) : Perl_sv_2pv_flags( errsv,&errlen,2) ); |
| 4004 | if(memBEGINs(errstr, errlen, "Not a CODE reference at")( (ptrdiff_t) (errlen) >= (ptrdiff_t) sizeof("Not a CODE reference at" ) - 1 && (memcmp(((const void *) (errstr)), ((const void *) ("" "Not a CODE reference at" "")), sizeof("Not a CODE reference at" )-1) == 0))) { |
| 4005 | PUSHMARK(SP)do { I32 * mark_stack_entry; if (__builtin_expect((((mark_stack_entry = ++PL_markstack_ptr) == PL_markstack_max) ? (_Bool)1 : (_Bool )0),(0))) mark_stack_entry = Perl_markstack_grow(); *mark_stack_entry = (I32)((sp) - PL_stack_base); ; } while (0); |
| 4006 | retcnt = call_sv((SV*)i_sub, 0)Perl_call_sv( (SV*)i_sub,0); /* call again to increase counter */ |
| 4007 | SPAGAINsp = PL_stack_sp; |
| 4008 | SPsp -= retcnt; |
| 4009 | } |
| 4010 | #line 4011 "APItest.c" |
| 4011 | } |
| 4012 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 4013 | } |
| 4014 | |
| 4015 | |
| 4016 | XS_EUPXS(XS_XS__APItest_call_sv)static void XS_XS__APItest_call_sv( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 4017 | XS_EUPXS(XS_XS__APItest_call_sv)static void XS_XS__APItest_call_sv( CV* cv __attribute__((unused ))) |
| 4018 | { |
| 4019 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4020 | if (items < 2) |
| 4021 | croak_xs_usagePerl_croak_xs_usage(cv, "sv, flags, ..."); |
| 4022 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 4023 | SPsp -= items; |
| 4024 | { |
| 4025 | SV* sv = ST(0)PL_stack_base[ax + (0)] |
| 4026 | ; |
| 4027 | I32 flags = (I32)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 4028 | ; |
| 4029 | #line 2563 "APItest.xs" |
| 4030 | I32 i; |
| 4031 | #line 4032 "APItest.c" |
| 4032 | #line 2565 "APItest.xs" |
| 4033 | for (i=0; i<items-2; i++) |
| 4034 | ST(i)PL_stack_base[ax + (i)] = ST(i+2)PL_stack_base[ax + (i+2)]; /* pop first two args */ |
| 4035 | PUSHMARK(SP)do { I32 * mark_stack_entry; if (__builtin_expect((((mark_stack_entry = ++PL_markstack_ptr) == PL_markstack_max) ? (_Bool)1 : (_Bool )0),(0))) mark_stack_entry = Perl_markstack_grow(); *mark_stack_entry = (I32)((sp) - PL_stack_base); ; } while (0); |
| 4036 | SPsp += items - 2; |
| 4037 | PUTBACKPL_stack_sp = sp; |
| 4038 | i = call_sv(sv, flags)Perl_call_sv( sv,flags); |
| 4039 | SPAGAINsp = PL_stack_sp; |
| 4040 | EXTEND(SP, 1)do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); |
| 4041 | PUSHs(sv_2mortal(newSViv(i)))(*++sp = (Perl_sv_2mortal( Perl_newSViv( i)))); |
| 4042 | #line 4043 "APItest.c" |
| 4043 | PUTBACKPL_stack_sp = sp; |
| 4044 | return; |
| 4045 | } |
| 4046 | } |
| 4047 | |
| 4048 | |
| 4049 | XS_EUPXS(XS_XS__APItest_call_pv)static void XS_XS__APItest_call_pv( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 4050 | XS_EUPXS(XS_XS__APItest_call_pv)static void XS_XS__APItest_call_pv( CV* cv __attribute__((unused ))) |
| 4051 | { |
| 4052 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4053 | if (items < 2) |
| 4054 | croak_xs_usagePerl_croak_xs_usage(cv, "subname, flags, ..."); |
| 4055 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 4056 | SPsp -= items; |
| 4057 | { |
| 4058 | char* subname = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 4059 | ; |
| 4060 | I32 flags = (I32)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 4061 | ; |
| 4062 | #line 2580 "APItest.xs" |
| 4063 | I32 i; |
| 4064 | #line 4065 "APItest.c" |
| 4065 | #line 2582 "APItest.xs" |
| 4066 | for (i=0; i<items-2; i++) |
| 4067 | ST(i)PL_stack_base[ax + (i)] = ST(i+2)PL_stack_base[ax + (i+2)]; /* pop first two args */ |
| 4068 | PUSHMARK(SP)do { I32 * mark_stack_entry; if (__builtin_expect((((mark_stack_entry = ++PL_markstack_ptr) == PL_markstack_max) ? (_Bool)1 : (_Bool )0),(0))) mark_stack_entry = Perl_markstack_grow(); *mark_stack_entry = (I32)((sp) - PL_stack_base); ; } while (0); |
| 4069 | SPsp += items - 2; |
| 4070 | PUTBACKPL_stack_sp = sp; |
| 4071 | i = call_pv(subname, flags)Perl_call_pv( subname,flags); |
| 4072 | SPAGAINsp = PL_stack_sp; |
| 4073 | EXTEND(SP, 1)do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); |
| 4074 | PUSHs(sv_2mortal(newSViv(i)))(*++sp = (Perl_sv_2mortal( Perl_newSViv( i)))); |
| 4075 | #line 4076 "APItest.c" |
| 4076 | PUTBACKPL_stack_sp = sp; |
| 4077 | return; |
| 4078 | } |
| 4079 | } |
| 4080 | |
| 4081 | |
| 4082 | XS_EUPXS(XS_XS__APItest_call_argv)static void XS_XS__APItest_call_argv( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 4083 | XS_EUPXS(XS_XS__APItest_call_argv)static void XS_XS__APItest_call_argv( CV* cv __attribute__((unused ))) |
| 4084 | { |
| 4085 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4086 | if (items < 2) |
| 4087 | croak_xs_usagePerl_croak_xs_usage(cv, "subname, flags, ..."); |
| 4088 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 4089 | SPsp -= items; |
| 4090 | { |
| 4091 | char* subname = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 4092 | ; |
| 4093 | I32 flags = (I32)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 4094 | ; |
| 4095 | #line 2597 "APItest.xs" |
| 4096 | I32 i; |
| 4097 | char *tmpary[4]; |
| 4098 | #line 4099 "APItest.c" |
| 4099 | #line 2600 "APItest.xs" |
| 4100 | for (i=0; i<items-2; i++) |
| 4101 | tmpary[i] = SvPV_nolen(ST(i+2))((((PL_stack_base[ax + (i+2)])->sv_flags & (0x00000400 |0x00200000)) == 0x00000400) ? ((PL_stack_base[ax + (i+2)])-> sv_u.svu_pv) : Perl_sv_2pv_flags( PL_stack_base[ax + (i+2)],0 ,2)); /* ignore first two args */ |
| 4102 | tmpary[i] = NULL((void*)0); |
| 4103 | PUTBACKPL_stack_sp = sp; |
| 4104 | i = call_argv(subname, flags, tmpary)Perl_call_argv( subname,flags,tmpary); |
| 4105 | SPAGAINsp = PL_stack_sp; |
| 4106 | EXTEND(SP, 1)do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); |
| 4107 | PUSHs(sv_2mortal(newSViv(i)))(*++sp = (Perl_sv_2mortal( Perl_newSViv( i)))); |
| 4108 | #line 4109 "APItest.c" |
| 4109 | PUTBACKPL_stack_sp = sp; |
| 4110 | return; |
| 4111 | } |
| 4112 | } |
| 4113 | |
| 4114 | |
| 4115 | XS_EUPXS(XS_XS__APItest_call_method)static void XS_XS__APItest_call_method( CV* cv __attribute__( (unused))); /* prototype to pass -Wmissing-prototypes */ |
| 4116 | XS_EUPXS(XS_XS__APItest_call_method)static void XS_XS__APItest_call_method( CV* cv __attribute__( (unused))) |
| 4117 | { |
| 4118 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4119 | if (items < 2) |
| 4120 | croak_xs_usagePerl_croak_xs_usage(cv, "methname, flags, ..."); |
| 4121 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 4122 | SPsp -= items; |
| 4123 | { |
| 4124 | char* methname = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 4125 | ; |
| 4126 | I32 flags = (I32)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 4127 | ; |
| 4128 | #line 2614 "APItest.xs" |
| 4129 | I32 i; |
| 4130 | #line 4131 "APItest.c" |
| 4131 | #line 2616 "APItest.xs" |
| 4132 | for (i=0; i<items-2; i++) |
| 4133 | ST(i)PL_stack_base[ax + (i)] = ST(i+2)PL_stack_base[ax + (i+2)]; /* pop first two args */ |
| 4134 | PUSHMARK(SP)do { I32 * mark_stack_entry; if (__builtin_expect((((mark_stack_entry = ++PL_markstack_ptr) == PL_markstack_max) ? (_Bool)1 : (_Bool )0),(0))) mark_stack_entry = Perl_markstack_grow(); *mark_stack_entry = (I32)((sp) - PL_stack_base); ; } while (0); |
| 4135 | SPsp += items - 2; |
| 4136 | PUTBACKPL_stack_sp = sp; |
| 4137 | i = call_method(methname, flags)Perl_call_method( methname,flags); |
| 4138 | SPAGAINsp = PL_stack_sp; |
| 4139 | EXTEND(SP, 1)do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); |
| 4140 | PUSHs(sv_2mortal(newSViv(i)))(*++sp = (Perl_sv_2mortal( Perl_newSViv( i)))); |
| 4141 | #line 4142 "APItest.c" |
| 4142 | PUTBACKPL_stack_sp = sp; |
| 4143 | return; |
| 4144 | } |
| 4145 | } |
| 4146 | |
| 4147 | |
| 4148 | XS_EUPXS(XS_XS__APItest_newCONSTSUB)static void XS_XS__APItest_newCONSTSUB( CV* cv __attribute__( (unused))); /* prototype to pass -Wmissing-prototypes */ |
| 4149 | XS_EUPXS(XS_XS__APItest_newCONSTSUB)static void XS_XS__APItest_newCONSTSUB( CV* cv __attribute__( (unused))) |
| 4150 | { |
| 4151 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4152 | dXSI32I32 ix = ((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))-> xcv_start_u.xcv_xsubany.any_i32; |
| 4153 | if (items != 4) |
| 4154 | croak_xs_usagePerl_croak_xs_usage(cv, "stash, name, flags, sv"); |
| 4155 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 4156 | SPsp -= items; |
| 4157 | { |
| 4158 | HV* stash; |
| 4159 | SV* name = ST(1)PL_stack_base[ax + (1)] |
| 4160 | ; |
| 4161 | I32 flags = (I32)SvIV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (2)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 2)],2)) |
| 4162 | ; |
| 4163 | SV* sv = ST(3)PL_stack_base[ax + (3)] |
| 4164 | ; |
| 4165 | #line 2635 "APItest.xs" |
| 4166 | CV* mycv = NULL((void*)0); |
| 4167 | STRLEN len; |
| 4168 | const char *pv = SvPV(name, len)((((name)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (name)->sv_any)->xpv_cur), ((name)-> sv_u.svu_pv)) : Perl_sv_2pv_flags( name,&len,2)); |
| 4169 | #line 4170 "APItest.c" |
| 4170 | |
| 4171 | STMT_STARTdo { |
| 4172 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 4173 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 4174 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800) && SvTYPE(SvRV(xsub_tmp_sv))((svtype)((((xsub_tmp_sv)->sv_u.svu_rv))->sv_flags & 0xff)) == SVt_PVHV){ |
| 4175 | stash = (HV*)SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 4176 | } |
| 4177 | else{ |
| 4178 | Perl_croak_nocontextPerl_croak("%s: %s is not a HASH reference", |
| 4179 | GvNAME(CvGV(cv))((((XPVGV*)(Perl_CvGV( (CV *)(cv)))->sv_any)->xiv_u.xivu_namehek ))->hek_key, |
| 4180 | "stash"); |
| 4181 | } |
| 4182 | } STMT_ENDwhile (0) |
| 4183 | ; |
| 4184 | #line 2639 "APItest.xs" |
| 4185 | switch (ix) { |
| 4186 | case 0: |
| 4187 | mycv = newCONSTSUB(stash, pv, SvOK(sv) ? SvREFCNT_inc(sv) : NULL)Perl_newCONSTSUB( stash,pv,((sv)->sv_flags & (0x00000100 |0x00000200|0x00000400|0x00000800| 0x00001000|0x00002000|0x00004000 |0x00008000)) ? Perl_SvREFCNT_inc(((SV *)({ void *_p = (sv); _p ; }))) : ((void*)0)); |
| 4188 | break; |
| 4189 | case 1: |
| 4190 | mycv = newCONSTSUB_flags(Perl_newCONSTSUB_flags( stash,pv,len,flags | ((name)->sv_flags & 0x20000000),((sv)->sv_flags & (0x00000100|0x00000200 |0x00000400|0x00000800| 0x00001000|0x00002000|0x00004000|0x00008000 )) ? Perl_SvREFCNT_inc(((SV *)({ void *_p = (sv); _p; }))) : ( (void*)0)) |
| 4191 | stash, pv, len, flags | SvUTF8(name), SvOK(sv) ? SvREFCNT_inc(sv) : NULLPerl_newCONSTSUB_flags( stash,pv,len,flags | ((name)->sv_flags & 0x20000000),((sv)->sv_flags & (0x00000100|0x00000200 |0x00000400|0x00000800| 0x00001000|0x00002000|0x00004000|0x00008000 )) ? Perl_SvREFCNT_inc(((SV *)({ void *_p = (sv); _p; }))) : ( (void*)0)) |
| 4192 | )Perl_newCONSTSUB_flags( stash,pv,len,flags | ((name)->sv_flags & 0x20000000),((sv)->sv_flags & (0x00000100|0x00000200 |0x00000400|0x00000800| 0x00001000|0x00002000|0x00004000|0x00008000 )) ? Perl_SvREFCNT_inc(((SV *)({ void *_p = (sv); _p; }))) : ( (void*)0)); |
| 4193 | break; |
| 4194 | } |
| 4195 | EXTEND(SP, 2)do { (void)0; if (__builtin_expect(((((2) < 0 || PL_stack_max - (sp) < (2))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(2) > sizeof(ssize_t) && ((ssize_t) (2) != (2)) ? -1 : (2))); ((void)sizeof(sp)); } } while (0); |
| 4196 | assert(mycv)((void)0); |
| 4197 | PUSHs( CvCONST(mycv) ? &PL_sv_yes : &PL_sv_no )(*++sp = ((((XPVCV*)({ void *_p = ((mycv)->sv_any); _p; }) )->xcv_flags & 0x0004) ? &(PL_sv_immortals[0]) : & (PL_sv_immortals[2]))); |
| 4198 | PUSHs((SV*)CvGV(mycv))(*++sp = ((SV*)Perl_CvGV( (CV *)(mycv)))); |
| 4199 | #line 4200 "APItest.c" |
| 4200 | PUTBACKPL_stack_sp = sp; |
| 4201 | return; |
| 4202 | } |
| 4203 | } |
| 4204 | |
| 4205 | |
| 4206 | XS_EUPXS(XS_XS__APItest_gv_init_type)static void XS_XS__APItest_gv_init_type( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 4207 | XS_EUPXS(XS_XS__APItest_gv_init_type)static void XS_XS__APItest_gv_init_type( CV* cv __attribute__ ((unused))) |
| 4208 | { |
| 4209 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4210 | if (items != 4) |
| 4211 | croak_xs_usagePerl_croak_xs_usage(cv, "namesv, multi, flags, type"); |
| 4212 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 4213 | SPsp -= items; |
| 4214 | { |
| 4215 | SV* namesv = ST(0)PL_stack_base[ax + (0)] |
| 4216 | ; |
| 4217 | int multi = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 4218 | ; |
| 4219 | I32 flags = (I32)SvIV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (2)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 2)],2)) |
| 4220 | ; |
| 4221 | int type = (int)SvIV(ST(3))((((PL_stack_base[ax + (3)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (3)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 3)],2)) |
| 4222 | ; |
| 4223 | #line 2661 "APItest.xs" |
| 4224 | STRLEN len; |
| 4225 | const char * const name = SvPV_const(namesv, len)((((namesv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (namesv)->sv_any)->xpv_cur), ((const char*)(0 + (namesv)->sv_u.svu_pv))) : (const char*) Perl_sv_2pv_flags ( namesv,&len,(2|32))); |
| 4226 | GV *gv = *(GV**)hv_fetch(PL_defstash, name, len, TRUE)((SV**) Perl_hv_common_key_len( (PL_defstash),(name),(len),(( 1)) ? (0x20 | 0x10) : 0x20,((void*)0),0)); |
| 4227 | #line 4228 "APItest.c" |
| 4228 | #line 2665 "APItest.xs" |
| 4229 | if (SvTYPE(gv)((svtype)((gv)->sv_flags & 0xff)) == SVt_PVGV) |
| 4230 | Perl_croak(aTHX_ "GV is already a PVGV"); |
| 4231 | if (multi) flags |= GV_ADDMULTI0x02; |
| 4232 | switch (type) { |
| 4233 | case 0: |
| 4234 | gv_init(gv, PL_defstash, name, len, multi)Perl_gv_init_pvn( gv,PL_defstash,name,len,0x02*!!(multi)); |
| 4235 | break; |
| 4236 | case 1: |
| 4237 | gv_init_sv(gv, PL_defstash, namesv, flags)Perl_gv_init_sv( gv,PL_defstash,namesv,flags); |
| 4238 | break; |
| 4239 | case 2: |
| 4240 | gv_init_pv(gv, PL_defstash, name, flags | SvUTF8(namesv))Perl_gv_init_pv( gv,PL_defstash,name,flags | ((namesv)->sv_flags & 0x20000000)); |
| 4241 | break; |
| 4242 | case 3: |
| 4243 | gv_init_pvn(gv, PL_defstash, name, len, flags | SvUTF8(namesv))Perl_gv_init_pvn( gv,PL_defstash,name,len,flags | ((namesv)-> sv_flags & 0x20000000)); |
| 4244 | break; |
| 4245 | } |
| 4246 | XPUSHs( gv ? (SV*)gv : &PL_sv_undef)do { do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); * ++sp = (gv ? (SV*)gv : &(PL_sv_immortals[1])); } while (0 ); |
| 4247 | #line 4248 "APItest.c" |
| 4248 | PUTBACKPL_stack_sp = sp; |
| 4249 | return; |
| 4250 | } |
| 4251 | } |
| 4252 | |
| 4253 | |
| 4254 | XS_EUPXS(XS_XS__APItest_gv_fetchmeth_type)static void XS_XS__APItest_gv_fetchmeth_type( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 4255 | XS_EUPXS(XS_XS__APItest_gv_fetchmeth_type)static void XS_XS__APItest_gv_fetchmeth_type( CV* cv __attribute__ ((unused))) |
| 4256 | { |
| 4257 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4258 | if (items != 5) |
| 4259 | croak_xs_usagePerl_croak_xs_usage(cv, "stash, methname, type, level, flags"); |
| 4260 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 4261 | SPsp -= items; |
| 4262 | { |
| 4263 | HV* stash; |
| 4264 | SV* methname = ST(1)PL_stack_base[ax + (1)] |
| 4265 | ; |
| 4266 | int type = (int)SvIV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (2)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 2)],2)) |
| 4267 | ; |
| 4268 | I32 level = (I32)SvIV(ST(3))((((PL_stack_base[ax + (3)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (3)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 3)],2)) |
| 4269 | ; |
| 4270 | I32 flags = (I32)SvIV(ST(4))((((PL_stack_base[ax + (4)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (4)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 4)],2)) |
| 4271 | ; |
| 4272 | #line 2692 "APItest.xs" |
| 4273 | STRLEN len; |
| 4274 | const char * const name = SvPV_const(methname, len)((((methname)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (methname)->sv_any)->xpv_cur), ((const char*)(0 + (methname)->sv_u.svu_pv))) : (const char*) Perl_sv_2pv_flags ( methname,&len,(2|32))); |
| 4275 | GV* gv = NULL((void*)0); |
| 4276 | #line 4277 "APItest.c" |
| 4277 | |
| 4278 | STMT_STARTdo { |
| 4279 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 4280 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 4281 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800) && SvTYPE(SvRV(xsub_tmp_sv))((svtype)((((xsub_tmp_sv)->sv_u.svu_rv))->sv_flags & 0xff)) == SVt_PVHV){ |
| 4282 | stash = (HV*)SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 4283 | } |
| 4284 | else{ |
| 4285 | Perl_croak_nocontextPerl_croak("%s: %s is not a HASH reference", |
| 4286 | "XS::APItest::gv_fetchmeth_type", |
| 4287 | "stash"); |
| 4288 | } |
| 4289 | } STMT_ENDwhile (0) |
| 4290 | ; |
| 4291 | #line 2696 "APItest.xs" |
| 4292 | switch (type) { |
| 4293 | case 0: |
| 4294 | gv = gv_fetchmeth(stash, name, len, level)Perl_gv_fetchmeth_pvn( stash,name,len,level,0); |
| 4295 | break; |
| 4296 | case 1: |
| 4297 | gv = gv_fetchmeth_sv(stash, methname, level, flags)Perl_gv_fetchmeth_sv( stash,methname,level,flags); |
| 4298 | break; |
| 4299 | case 2: |
| 4300 | gv = gv_fetchmeth_pv(stash, name, level, flags | SvUTF8(methname))Perl_gv_fetchmeth_pv( stash,name,level,flags | ((methname)-> sv_flags & 0x20000000)); |
| 4301 | break; |
| 4302 | case 3: |
| 4303 | gv = gv_fetchmeth_pvn(stash, name, len, level, flags | SvUTF8(methname))Perl_gv_fetchmeth_pvn( stash,name,len,level,flags | ((methname )->sv_flags & 0x20000000)); |
| 4304 | break; |
| 4305 | } |
| 4306 | XPUSHs( gv ? MUTABLE_SV(gv) : &PL_sv_undef )do { do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); * ++sp = (gv ? ((SV *)({ void *_p = (gv); _p; })) : &(PL_sv_immortals [1])); } while (0); |
| 4307 | #line 4308 "APItest.c" |
| 4308 | PUTBACKPL_stack_sp = sp; |
| 4309 | return; |
| 4310 | } |
| 4311 | } |
| 4312 | |
| 4313 | |
| 4314 | XS_EUPXS(XS_XS__APItest_gv_fetchmeth_autoload_type)static void XS_XS__APItest_gv_fetchmeth_autoload_type( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 4315 | XS_EUPXS(XS_XS__APItest_gv_fetchmeth_autoload_type)static void XS_XS__APItest_gv_fetchmeth_autoload_type( CV* cv __attribute__((unused))) |
| 4316 | { |
| 4317 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4318 | if (items != 5) |
| 4319 | croak_xs_usagePerl_croak_xs_usage(cv, "stash, methname, type, level, flags"); |
| 4320 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 4321 | SPsp -= items; |
| 4322 | { |
| 4323 | HV* stash; |
| 4324 | SV* methname = ST(1)PL_stack_base[ax + (1)] |
| 4325 | ; |
| 4326 | int type = (int)SvIV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (2)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 2)],2)) |
| 4327 | ; |
| 4328 | I32 level = (I32)SvIV(ST(3))((((PL_stack_base[ax + (3)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (3)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 3)],2)) |
| 4329 | ; |
| 4330 | I32 flags = (I32)SvIV(ST(4))((((PL_stack_base[ax + (4)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (4)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 4)],2)) |
| 4331 | ; |
| 4332 | #line 2720 "APItest.xs" |
| 4333 | STRLEN len; |
| 4334 | const char * const name = SvPV_const(methname, len)((((methname)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (methname)->sv_any)->xpv_cur), ((const char*)(0 + (methname)->sv_u.svu_pv))) : (const char*) Perl_sv_2pv_flags ( methname,&len,(2|32))); |
| 4335 | GV* gv = NULL((void*)0); |
| 4336 | #line 4337 "APItest.c" |
| 4337 | |
| 4338 | STMT_STARTdo { |
| 4339 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 4340 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 4341 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800) && SvTYPE(SvRV(xsub_tmp_sv))((svtype)((((xsub_tmp_sv)->sv_u.svu_rv))->sv_flags & 0xff)) == SVt_PVHV){ |
| 4342 | stash = (HV*)SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 4343 | } |
| 4344 | else{ |
| 4345 | Perl_croak_nocontextPerl_croak("%s: %s is not a HASH reference", |
| 4346 | "XS::APItest::gv_fetchmeth_autoload_type", |
| 4347 | "stash"); |
| 4348 | } |
| 4349 | } STMT_ENDwhile (0) |
| 4350 | ; |
| 4351 | #line 2724 "APItest.xs" |
| 4352 | switch (type) { |
| 4353 | case 0: |
| 4354 | gv = gv_fetchmeth_autoload(stash, name, len, level)Perl_gv_fetchmeth_pvn_autoload( stash,name,len,level,0); |
| 4355 | break; |
| 4356 | case 1: |
| 4357 | gv = gv_fetchmeth_sv_autoload(stash, methname, level, flags)Perl_gv_fetchmeth_sv_autoload( stash,methname,level,flags); |
| 4358 | break; |
| 4359 | case 2: |
| 4360 | gv = gv_fetchmeth_pv_autoload(stash, name, level, flags | SvUTF8(methname))Perl_gv_fetchmeth_pv_autoload( stash,name,level,flags | ((methname )->sv_flags & 0x20000000)); |
| 4361 | break; |
| 4362 | case 3: |
| 4363 | gv = gv_fetchmeth_pvn_autoload(stash, name, len, level, flags | SvUTF8(methname))Perl_gv_fetchmeth_pvn_autoload( stash,name,len,level,flags | ( (methname)->sv_flags & 0x20000000)); |
| 4364 | break; |
| 4365 | } |
| 4366 | XPUSHs( gv ? MUTABLE_SV(gv) : &PL_sv_undef )do { do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); * ++sp = (gv ? ((SV *)({ void *_p = (gv); _p; })) : &(PL_sv_immortals [1])); } while (0); |
| 4367 | #line 4368 "APItest.c" |
| 4368 | PUTBACKPL_stack_sp = sp; |
| 4369 | return; |
| 4370 | } |
| 4371 | } |
| 4372 | |
| 4373 | |
| 4374 | XS_EUPXS(XS_XS__APItest_gv_fetchmethod_flags_type)static void XS_XS__APItest_gv_fetchmethod_flags_type( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 4375 | XS_EUPXS(XS_XS__APItest_gv_fetchmethod_flags_type)static void XS_XS__APItest_gv_fetchmethod_flags_type( CV* cv __attribute__ ((unused))) |
| 4376 | { |
| 4377 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4378 | if (items != 4) |
| 4379 | croak_xs_usagePerl_croak_xs_usage(cv, "stash, methname, type, flags"); |
| 4380 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 4381 | SPsp -= items; |
| 4382 | { |
| 4383 | HV* stash; |
| 4384 | SV* methname = ST(1)PL_stack_base[ax + (1)] |
| 4385 | ; |
| 4386 | int type = (int)SvIV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (2)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 2)],2)) |
| 4387 | ; |
| 4388 | I32 flags = (I32)SvIV(ST(3))((((PL_stack_base[ax + (3)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (3)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 3)],2)) |
| 4389 | ; |
| 4390 | #line 2747 "APItest.xs" |
| 4391 | GV* gv = NULL((void*)0); |
| 4392 | #line 4393 "APItest.c" |
| 4393 | |
| 4394 | STMT_STARTdo { |
| 4395 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 4396 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 4397 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800) && SvTYPE(SvRV(xsub_tmp_sv))((svtype)((((xsub_tmp_sv)->sv_u.svu_rv))->sv_flags & 0xff)) == SVt_PVHV){ |
| 4398 | stash = (HV*)SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 4399 | } |
| 4400 | else{ |
| 4401 | Perl_croak_nocontextPerl_croak("%s: %s is not a HASH reference", |
| 4402 | "XS::APItest::gv_fetchmethod_flags_type", |
| 4403 | "stash"); |
| 4404 | } |
| 4405 | } STMT_ENDwhile (0) |
| 4406 | ; |
| 4407 | #line 2749 "APItest.xs" |
| 4408 | switch (type) { |
| 4409 | case 0: |
| 4410 | gv = gv_fetchmethod_flags(stash, SvPVX_const(methname), flags)Perl_gv_fetchmethod_pv_flags( stash,((const char*)(0 + (methname )->sv_u.svu_pv)),flags); |
| 4411 | break; |
| 4412 | case 1: |
| 4413 | gv = gv_fetchmethod_sv_flags(stash, methname, flags)Perl_gv_fetchmethod_sv_flags( stash,methname,flags); |
| 4414 | break; |
| 4415 | case 2: |
| 4416 | gv = gv_fetchmethod_pv_flags(stash, SvPV_nolen(methname), flags | SvUTF8(methname))Perl_gv_fetchmethod_pv_flags( stash,((((methname)->sv_flags & (0x00000400|0x00200000)) == 0x00000400) ? ((methname)-> sv_u.svu_pv) : Perl_sv_2pv_flags( methname,0,2)),flags | ((methname )->sv_flags & 0x20000000)); |
| 4417 | break; |
| 4418 | case 3: { |
| 4419 | STRLEN len; |
| 4420 | const char * const name = SvPV_const(methname, len)((((methname)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (methname)->sv_any)->xpv_cur), ((const char*)(0 + (methname)->sv_u.svu_pv))) : (const char*) Perl_sv_2pv_flags ( methname,&len,(2|32))); |
| 4421 | gv = gv_fetchmethod_pvn_flags(stash, name, len, flags | SvUTF8(methname))Perl_gv_fetchmethod_pvn_flags( stash,name,len,flags | ((methname )->sv_flags & 0x20000000)); |
| 4422 | break; |
| 4423 | } |
| 4424 | case 4: |
| 4425 | gv = gv_fetchmethod_pvn_flags(stash, SvPV_nolen(methname),Perl_gv_fetchmethod_pvn_flags( stash,((((methname)->sv_flags & (0x00000400|0x00200000)) == 0x00000400) ? ((methname)-> sv_u.svu_pv) : Perl_sv_2pv_flags( methname,0,2)),flags,((methname )->sv_flags & 0x20000000)) |
| 4426 | flags, SvUTF8(methname))Perl_gv_fetchmethod_pvn_flags( stash,((((methname)->sv_flags & (0x00000400|0x00200000)) == 0x00000400) ? ((methname)-> sv_u.svu_pv) : Perl_sv_2pv_flags( methname,0,2)),flags,((methname )->sv_flags & 0x20000000)); |
| 4427 | } |
| 4428 | XPUSHs( gv ? (SV*)gv : &PL_sv_undef)do { do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); * ++sp = (gv ? (SV*)gv : &(PL_sv_immortals[1])); } while (0 ); |
| 4429 | #line 4430 "APItest.c" |
| 4430 | PUTBACKPL_stack_sp = sp; |
| 4431 | return; |
| 4432 | } |
| 4433 | } |
| 4434 | |
| 4435 | |
| 4436 | XS_EUPXS(XS_XS__APItest_gv_autoload_type)static void XS_XS__APItest_gv_autoload_type( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 4437 | XS_EUPXS(XS_XS__APItest_gv_autoload_type)static void XS_XS__APItest_gv_autoload_type( CV* cv __attribute__ ((unused))) |
| 4438 | { |
| 4439 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4440 | if (items != 4) |
| 4441 | croak_xs_usagePerl_croak_xs_usage(cv, "stash, methname, type, method"); |
| 4442 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 4443 | SPsp -= items; |
| 4444 | { |
| 4445 | HV* stash; |
| 4446 | SV* methname = ST(1)PL_stack_base[ax + (1)] |
| 4447 | ; |
| 4448 | int type = (int)SvIV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (2)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 2)],2)) |
| 4449 | ; |
| 4450 | I32 method = (I32)SvIV(ST(3))((((PL_stack_base[ax + (3)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (3)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 3)],2)) |
| 4451 | ; |
| 4452 | #line 2778 "APItest.xs" |
| 4453 | STRLEN len; |
| 4454 | const char * const name = SvPV_const(methname, len)((((methname)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (methname)->sv_any)->xpv_cur), ((const char*)(0 + (methname)->sv_u.svu_pv))) : (const char*) Perl_sv_2pv_flags ( methname,&len,(2|32))); |
| 4455 | GV* gv = NULL((void*)0); |
| 4456 | I32 flags = method ? GV_AUTOLOAD_ISMETHOD1 : 0; |
| 4457 | #line 4458 "APItest.c" |
| 4458 | |
| 4459 | STMT_STARTdo { |
| 4460 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 4461 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 4462 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800) && SvTYPE(SvRV(xsub_tmp_sv))((svtype)((((xsub_tmp_sv)->sv_u.svu_rv))->sv_flags & 0xff)) == SVt_PVHV){ |
| 4463 | stash = (HV*)SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 4464 | } |
| 4465 | else{ |
| 4466 | Perl_croak_nocontextPerl_croak("%s: %s is not a HASH reference", |
| 4467 | "XS::APItest::gv_autoload_type", |
| 4468 | "stash"); |
| 4469 | } |
| 4470 | } STMT_ENDwhile (0) |
| 4471 | ; |
| 4472 | #line 2783 "APItest.xs" |
| 4473 | switch (type) { |
| 4474 | case 0: |
| 4475 | gv = gv_autoload4(stash, name, len, method)Perl_gv_autoload_pvn( stash,name,len,!!(method)); |
| 4476 | break; |
| 4477 | case 1: |
| 4478 | gv = gv_autoload_sv(stash, methname, flags)Perl_gv_autoload_sv( stash,methname,flags); |
| 4479 | break; |
| 4480 | case 2: |
| 4481 | gv = gv_autoload_pv(stash, name, flags | SvUTF8(methname))Perl_gv_autoload_pv( stash,name,flags | ((methname)->sv_flags & 0x20000000)); |
| 4482 | break; |
| 4483 | case 3: |
| 4484 | gv = gv_autoload_pvn(stash, name, len, flags | SvUTF8(methname))Perl_gv_autoload_pvn( stash,name,len,flags | ((methname)-> sv_flags & 0x20000000)); |
| 4485 | break; |
| 4486 | } |
| 4487 | XPUSHs( gv ? (SV*)gv : &PL_sv_undef)do { do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); * ++sp = (gv ? (SV*)gv : &(PL_sv_immortals[1])); } while (0 ); |
| 4488 | #line 4489 "APItest.c" |
| 4489 | PUTBACKPL_stack_sp = sp; |
| 4490 | return; |
| 4491 | } |
| 4492 | } |
| 4493 | |
| 4494 | |
| 4495 | XS_EUPXS(XS_XS__APItest_gv_const_sv)static void XS_XS__APItest_gv_const_sv( CV* cv __attribute__( (unused))); /* prototype to pass -Wmissing-prototypes */ |
| 4496 | XS_EUPXS(XS_XS__APItest_gv_const_sv)static void XS_XS__APItest_gv_const_sv( CV* cv __attribute__( (unused))) |
| 4497 | { |
| 4498 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4499 | if (items != 1) |
| 4500 | croak_xs_usagePerl_croak_xs_usage(cv, "name"); |
| 4501 | { |
| 4502 | #line 2802 "APItest.xs" |
| 4503 | GV *gv; |
| 4504 | #line 4505 "APItest.c" |
| 4505 | SV * RETVAL; |
| 4506 | SV * name = ST(0)PL_stack_base[ax + (0)] |
| 4507 | ; |
| 4508 | #line 2804 "APItest.xs" |
| 4509 | if (SvPOK(name)((name)->sv_flags & 0x00000400)) { |
| 4510 | HV *stash = gv_stashpv("main",0)Perl_gv_stashpv( "main",0); |
| 4511 | HE *he = hv_fetch_ent(stash, name, 0, 0)((HE *) Perl_hv_common( (stash),(name),((void*)0),0,0,((0) ? 0x10 : 0),((void*)0),(0))); |
| 4512 | gv = (GV *)HeVAL(he)(he)->he_valu.hent_val; |
| 4513 | } |
| 4514 | else { |
| 4515 | gv = (GV *)name; |
| 4516 | } |
| 4517 | RETVAL = gv_const_sv(gv)Perl_gv_const_sv( gv); |
| 4518 | if (!RETVAL) |
| 4519 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 4520 | RETVAL = newSVsv(RETVAL)Perl_newSVsv_flags( (RETVAL),2|16); |
| 4521 | #line 4522 "APItest.c" |
| 4522 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 4523 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 4524 | } |
| 4525 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 4526 | } |
| 4527 | |
| 4528 | |
| 4529 | XS_EUPXS(XS_XS__APItest_whichsig_type)static void XS_XS__APItest_whichsig_type( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 4530 | XS_EUPXS(XS_XS__APItest_whichsig_type)static void XS_XS__APItest_whichsig_type( CV* cv __attribute__ ((unused))) |
| 4531 | { |
| 4532 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4533 | if (items != 2) |
| 4534 | croak_xs_usagePerl_croak_xs_usage(cv, "namesv, type"); |
| 4535 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 4536 | SPsp -= items; |
| 4537 | { |
| 4538 | SV* namesv = ST(0)PL_stack_base[ax + (0)] |
| 4539 | ; |
| 4540 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 4541 | ; |
| 4542 | #line 2824 "APItest.xs" |
| 4543 | STRLEN len; |
| 4544 | const char * const name = SvPV_const(namesv, len)((((namesv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (namesv)->sv_any)->xpv_cur), ((const char*)(0 + (namesv)->sv_u.svu_pv))) : (const char*) Perl_sv_2pv_flags ( namesv,&len,(2|32))); |
| 4545 | I32 i = 0; |
| 4546 | #line 4547 "APItest.c" |
| 4547 | #line 2828 "APItest.xs" |
| 4548 | switch (type) { |
| 4549 | case 0: |
| 4550 | i = whichsig(name)Perl_whichsig_pv( name); |
| 4551 | break; |
| 4552 | case 1: |
| 4553 | i = whichsig_sv(namesv)Perl_whichsig_sv( namesv); |
| 4554 | break; |
| 4555 | case 2: |
| 4556 | i = whichsig_pv(name)Perl_whichsig_pv( name); |
| 4557 | break; |
| 4558 | case 3: |
| 4559 | i = whichsig_pvn(name, len)Perl_whichsig_pvn( name,len); |
| 4560 | break; |
| 4561 | } |
| 4562 | XPUSHs(sv_2mortal(newSViv(i)))do { do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); * ++sp = (Perl_sv_2mortal( Perl_newSViv( i))); } while (0); |
| 4563 | #line 4564 "APItest.c" |
| 4564 | PUTBACKPL_stack_sp = sp; |
| 4565 | return; |
| 4566 | } |
| 4567 | } |
| 4568 | |
| 4569 | |
| 4570 | XS_EUPXS(XS_XS__APItest_eval_sv)static void XS_XS__APItest_eval_sv( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 4571 | XS_EUPXS(XS_XS__APItest_eval_sv)static void XS_XS__APItest_eval_sv( CV* cv __attribute__((unused ))) |
| 4572 | { |
| 4573 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4574 | if (items != 2) |
| 4575 | croak_xs_usagePerl_croak_xs_usage(cv, "sv, flags"); |
| 4576 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 4577 | SPsp -= items; |
| 4578 | { |
| 4579 | SV* sv = ST(0)PL_stack_base[ax + (0)] |
| 4580 | ; |
| 4581 | I32 flags = (I32)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 4582 | ; |
| 4583 | #line 2849 "APItest.xs" |
| 4584 | I32 i; |
| 4585 | #line 4586 "APItest.c" |
| 4586 | #line 2851 "APItest.xs" |
| 4587 | PUTBACKPL_stack_sp = sp; |
| 4588 | i = eval_sv(sv, flags)Perl_eval_sv( sv,flags); |
| 4589 | SPAGAINsp = PL_stack_sp; |
| 4590 | EXTEND(SP, 1)do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); |
| 4591 | PUSHs(sv_2mortal(newSViv(i)))(*++sp = (Perl_sv_2mortal( Perl_newSViv( i)))); |
| 4592 | #line 4593 "APItest.c" |
| 4593 | PUTBACKPL_stack_sp = sp; |
| 4594 | return; |
| 4595 | } |
| 4596 | } |
| 4597 | |
| 4598 | |
| 4599 | XS_EUPXS(XS_XS__APItest_eval_pv)static void XS_XS__APItest_eval_pv( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 4600 | XS_EUPXS(XS_XS__APItest_eval_pv)static void XS_XS__APItest_eval_pv( CV* cv __attribute__((unused ))) |
| 4601 | { |
| 4602 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4603 | if (items != 2) |
| 4604 | croak_xs_usagePerl_croak_xs_usage(cv, "p, croak_on_error"); |
| 4605 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 4606 | SPsp -= items; |
| 4607 | { |
| 4608 | const char* p = (const char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 4609 | ; |
| 4610 | I32 croak_on_error = (I32)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 4611 | ; |
| 4612 | #line 2862 "APItest.xs" |
| 4613 | PUTBACKPL_stack_sp = sp; |
| 4614 | EXTEND(SP, 1)do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); |
| 4615 | PUSHs(eval_pv(p, croak_on_error))(*++sp = (Perl_eval_pv( p,croak_on_error))); |
| 4616 | #line 4617 "APItest.c" |
| 4617 | PUTBACKPL_stack_sp = sp; |
| 4618 | return; |
| 4619 | } |
| 4620 | } |
| 4621 | |
| 4622 | |
| 4623 | XS_EUPXS(XS_XS__APItest_require_pv)static void XS_XS__APItest_require_pv( CV* cv __attribute__(( unused))); /* prototype to pass -Wmissing-prototypes */ |
| 4624 | XS_EUPXS(XS_XS__APItest_require_pv)static void XS_XS__APItest_require_pv( CV* cv __attribute__(( unused))) |
| 4625 | { |
| 4626 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4627 | if (items != 1) |
| 4628 | croak_xs_usagePerl_croak_xs_usage(cv, "pv"); |
| 4629 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 4630 | SPsp -= items; |
| 4631 | { |
| 4632 | const char* pv = (const char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 4633 | ; |
| 4634 | #line 2870 "APItest.xs" |
| 4635 | PUTBACKPL_stack_sp = sp; |
| 4636 | require_pv(pv)Perl_require_pv( pv); |
| 4637 | #line 4638 "APItest.c" |
| 4638 | PUTBACKPL_stack_sp = sp; |
| 4639 | return; |
| 4640 | } |
| 4641 | } |
| 4642 | |
| 4643 | |
| 4644 | XS_EUPXS(XS_XS__APItest_apitest_exception)static void XS_XS__APItest_apitest_exception( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 4645 | XS_EUPXS(XS_XS__APItest_apitest_exception)static void XS_XS__APItest_apitest_exception( CV* cv __attribute__ ((unused))) |
| 4646 | { |
| 4647 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4648 | if (items != 1) |
| 4649 | croak_xs_usagePerl_croak_xs_usage(cv, "throw_e"); |
| 4650 | { |
| 4651 | int throw_e = (int)SvIV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (0)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 0)],2)) |
| 4652 | ; |
| 4653 | int RETVAL; |
| 4654 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 4655 | |
| 4656 | RETVAL = apitest_exception(throw_e); |
| 4657 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHi((IV)RETVAL)do { do { IV TARGi_iv = (IV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1)) ? (_Bool)1 : (_Bool)0) ,(1))) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000 ); targ->sv_u.svu_iv = TARGi_iv; } else Perl_sv_setiv_mg( targ ,TARGi_iv); } while (0); (*++sp = (targ)); } while (0); |
| 4658 | } |
| 4659 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 4660 | } |
| 4661 | |
| 4662 | |
| 4663 | XS_EUPXS(XS_XS__APItest_mycroak)static void XS_XS__APItest_mycroak( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 4664 | XS_EUPXS(XS_XS__APItest_mycroak)static void XS_XS__APItest_mycroak( CV* cv __attribute__((unused ))) |
| 4665 | { |
| 4666 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4667 | if (items != 1) |
| 4668 | croak_xs_usagePerl_croak_xs_usage(cv, "sv"); |
| 4669 | { |
| 4670 | SV* sv = ST(0)PL_stack_base[ax + (0)] |
| 4671 | ; |
| 4672 | #line 2883 "APItest.xs" |
| 4673 | if (SvOK(sv)((sv)->sv_flags & (0x00000100|0x00000200|0x00000400|0x00000800 | 0x00001000|0x00002000|0x00004000|0x00008000))) { |
| 4674 | Perl_croak(aTHX_ "%s", SvPV_nolen(sv)((((sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((sv)->sv_u.svu_pv) : Perl_sv_2pv_flags( sv,0,2))); |
| 4675 | } |
| 4676 | else { |
| 4677 | Perl_croak(aTHX_ NULL((void*)0)); |
| 4678 | } |
| 4679 | #line 4680 "APItest.c" |
| 4680 | } |
| 4681 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 4682 | } |
| 4683 | |
| 4684 | |
| 4685 | XS_EUPXS(XS_XS__APItest_strtab)static void XS_XS__APItest_strtab( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 4686 | XS_EUPXS(XS_XS__APItest_strtab)static void XS_XS__APItest_strtab( CV* cv __attribute__((unused ))) |
| 4687 | { |
| 4688 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4689 | if (items != 0) |
| 4690 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 4691 | { |
| 4692 | SV * RETVAL; |
| 4693 | #line 2893 "APItest.xs" |
| 4694 | RETVAL = newRV_inc((SV*)PL_strtab)Perl_newRV( (SV*)PL_strtab); |
| 4695 | #line 4696 "APItest.c" |
| 4696 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 4697 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 4698 | } |
| 4699 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 4700 | } |
| 4701 | |
| 4702 | |
| 4703 | XS_EUPXS(XS_XS__APItest_my_cxt_getint)static void XS_XS__APItest_my_cxt_getint( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 4704 | XS_EUPXS(XS_XS__APItest_my_cxt_getint)static void XS_XS__APItest_my_cxt_getint( CV* cv __attribute__ ((unused))) |
| 4705 | { |
| 4706 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4707 | if (items != 0) |
| 4708 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 4709 | { |
| 4710 | int RETVAL; |
| 4711 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 4712 | #line 2900 "APItest.xs" |
| 4713 | dMY_CXTstruct Perl___notused_struct; |
| 4714 | RETVAL = my_cxt_getint_p(aMY_CXT); |
| 4715 | #line 4716 "APItest.c" |
| 4716 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHi((IV)RETVAL)do { do { IV TARGi_iv = (IV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1)) ? (_Bool)1 : (_Bool)0) ,(1))) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000 ); targ->sv_u.svu_iv = TARGi_iv; } else Perl_sv_setiv_mg( targ ,TARGi_iv); } while (0); (*++sp = (targ)); } while (0); |
| 4717 | } |
| 4718 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 4719 | } |
| 4720 | |
| 4721 | |
| 4722 | XS_EUPXS(XS_XS__APItest_my_cxt_setint)static void XS_XS__APItest_my_cxt_setint( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 4723 | XS_EUPXS(XS_XS__APItest_my_cxt_setint)static void XS_XS__APItest_my_cxt_setint( CV* cv __attribute__ ((unused))) |
| 4724 | { |
| 4725 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4726 | if (items != 1) |
| 4727 | croak_xs_usagePerl_croak_xs_usage(cv, "i"); |
| 4728 | { |
| 4729 | int i = (int)SvIV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (0)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 0)],2)) |
| 4730 | ; |
| 4731 | #line 2909 "APItest.xs" |
| 4732 | dMY_CXTstruct Perl___notused_struct; |
| 4733 | my_cxt_setint_p(aMY_CXT_ i); |
| 4734 | #line 4735 "APItest.c" |
| 4735 | } |
| 4736 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 4737 | } |
| 4738 | |
| 4739 | |
| 4740 | XS_EUPXS(XS_XS__APItest_my_cxt_getsv)static void XS_XS__APItest_my_cxt_getsv( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 4741 | XS_EUPXS(XS_XS__APItest_my_cxt_getsv)static void XS_XS__APItest_my_cxt_getsv( CV* cv __attribute__ ((unused))) |
| 4742 | { |
| 4743 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4744 | if (items != 1) |
| 4745 | croak_xs_usagePerl_croak_xs_usage(cv, "how"); |
| 4746 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 4747 | SPsp -= items; |
| 4748 | { |
| 4749 | bool_Bool how = (bool_Bool)SvTRUE(ST(0))Perl_SvTRUE( PL_stack_base[ax + (0)]) |
| 4750 | ; |
| 4751 | #line 2916 "APItest.xs" |
| 4752 | EXTEND(SP, 1)do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); |
| 4753 | ST(0)PL_stack_base[ax + (0)] = how ? my_cxt_getsv_interp_context() : my_cxt_getsv_interp(); |
| 4754 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 4755 | #line 4756 "APItest.c" |
| 4756 | PUTBACKPL_stack_sp = sp; |
| 4757 | return; |
| 4758 | } |
| 4759 | } |
| 4760 | |
| 4761 | |
| 4762 | XS_EUPXS(XS_XS__APItest_my_cxt_setsv)static void XS_XS__APItest_my_cxt_setsv( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 4763 | XS_EUPXS(XS_XS__APItest_my_cxt_setsv)static void XS_XS__APItest_my_cxt_setsv( CV* cv __attribute__ ((unused))) |
| 4764 | { |
| 4765 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4766 | if (items != 1) |
| 4767 | croak_xs_usagePerl_croak_xs_usage(cv, "sv"); |
| 4768 | { |
| 4769 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 4770 | ; |
| 4771 | #line 2924 "APItest.xs" |
| 4772 | dMY_CXTstruct Perl___notused_struct; |
| 4773 | SvREFCNT_dec(MY_CXT.sv)Perl_SvREFCNT_dec( ((SV *)({ void *_p = (my_cxt.sv); _p; }))); |
| 4774 | my_cxt_setsv_p(sv _aMY_CXT); |
| 4775 | SvREFCNT_inc(sv)Perl_SvREFCNT_inc(((SV *)({ void *_p = (sv); _p; }))); |
| 4776 | #line 4777 "APItest.c" |
| 4777 | } |
| 4778 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 4779 | } |
| 4780 | |
| 4781 | |
| 4782 | XS_EUPXS(XS_XS__APItest_sv_setsv_cow_hashkey_core)static void XS_XS__APItest_sv_setsv_cow_hashkey_core( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 4783 | XS_EUPXS(XS_XS__APItest_sv_setsv_cow_hashkey_core)static void XS_XS__APItest_sv_setsv_cow_hashkey_core( CV* cv __attribute__ ((unused))) |
| 4784 | { |
| 4785 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4786 | if (items != 0) |
| 4787 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 4788 | { |
| 4789 | bool_Bool RETVAL; |
| 4790 | |
| 4791 | RETVAL = sv_setsv_cow_hashkey_core(); |
| 4792 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 4793 | } |
| 4794 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 4795 | } |
| 4796 | |
| 4797 | |
| 4798 | XS_EUPXS(XS_XS__APItest_sv_setsv_cow_hashkey_notcore)static void XS_XS__APItest_sv_setsv_cow_hashkey_notcore( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 4799 | XS_EUPXS(XS_XS__APItest_sv_setsv_cow_hashkey_notcore)static void XS_XS__APItest_sv_setsv_cow_hashkey_notcore( CV* cv __attribute__((unused))) |
| 4800 | { |
| 4801 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4802 | if (items != 0) |
| 4803 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 4804 | { |
| 4805 | bool_Bool RETVAL; |
| 4806 | |
| 4807 | RETVAL = sv_setsv_cow_hashkey_notcore(); |
| 4808 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 4809 | } |
| 4810 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 4811 | } |
| 4812 | |
| 4813 | |
| 4814 | XS_EUPXS(XS_XS__APItest_sv_set_deref)static void XS_XS__APItest_sv_set_deref( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 4815 | XS_EUPXS(XS_XS__APItest_sv_set_deref)static void XS_XS__APItest_sv_set_deref( CV* cv __attribute__ ((unused))) |
| 4816 | { |
| 4817 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4818 | if (items != 3) |
| 4819 | croak_xs_usagePerl_croak_xs_usage(cv, "sv, sv2, which"); |
| 4820 | { |
| 4821 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 4822 | ; |
| 4823 | SV * sv2 = ST(1)PL_stack_base[ax + (1)] |
| 4824 | ; |
| 4825 | int which = (int)SvIV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (2)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 2)],2)) |
| 4826 | ; |
| 4827 | #line 2938 "APItest.xs" |
| 4828 | { |
| 4829 | STRLEN len; |
| 4830 | const char *pv = SvPV(sv2,len)((((sv2)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (sv2)->sv_any)->xpv_cur), ((sv2)-> sv_u.svu_pv)) : Perl_sv_2pv_flags( sv2,&len,2)); |
| 4831 | if (!SvROK(sv)((sv)->sv_flags & 0x00000800)) croakPerl_croak("Not a ref"); |
| 4832 | sv = SvRV(sv)((sv)->sv_u.svu_rv); |
| 4833 | switch (which) { |
| 4834 | case 0: sv_setsv(sv,sv2)Perl_sv_setsv_flags( sv,sv2,2|0); break; |
| 4835 | case 1: sv_setpv(sv,pv)Perl_sv_setpv( sv,pv); break; |
| 4836 | case 2: sv_setpvn(sv,pv,len)Perl_sv_setpvn( sv,pv,len); break; |
| 4837 | } |
| 4838 | } |
| 4839 | #line 4840 "APItest.c" |
| 4840 | } |
| 4841 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 4842 | } |
| 4843 | |
| 4844 | |
| 4845 | XS_EUPXS(XS_XS__APItest_rmagical_cast)static void XS_XS__APItest_rmagical_cast( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 4846 | XS_EUPXS(XS_XS__APItest_rmagical_cast)static void XS_XS__APItest_rmagical_cast( CV* cv __attribute__ ((unused))) |
| 4847 | { |
| 4848 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4849 | if (items != 2) |
| 4850 | croak_xs_usagePerl_croak_xs_usage(cv, "sv, type"); |
| 4851 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 4852 | SPsp -= items; |
| 4853 | { |
| 4854 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 4855 | ; |
| 4856 | SV * type = ST(1)PL_stack_base[ax + (1)] |
| 4857 | ; |
| 4858 | #line 2955 "APItest.xs" |
| 4859 | struct ufuncs uf; |
| 4860 | #line 4861 "APItest.c" |
| 4861 | #line 2957 "APItest.xs" |
| 4862 | if (!SvOK(sv)((sv)->sv_flags & (0x00000100|0x00000200|0x00000400|0x00000800 | 0x00001000|0x00002000|0x00004000|0x00008000)) || !SvROK(sv)((sv)->sv_flags & 0x00000800) || !SvOK(type)((type)->sv_flags & (0x00000100|0x00000200|0x00000400| 0x00000800| 0x00001000|0x00002000|0x00004000|0x00008000))) { XSRETURN_UNDEFdo { (PL_stack_base[ax + (0)] = &(PL_sv_immortals[1])); do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); } |
| 4863 | sv = SvRV(sv)((sv)->sv_u.svu_rv); |
| 4864 | if (SvTYPE(sv)((svtype)((sv)->sv_flags & 0xff)) != SVt_PVHV) { XSRETURN_UNDEFdo { (PL_stack_base[ax + (0)] = &(PL_sv_immortals[1])); do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); } |
| 4865 | uf.uf_val = rmagical_a_dummy; |
| 4866 | uf.uf_set = NULL((void*)0); |
| 4867 | uf.uf_index = 0; |
| 4868 | if (SvTRUE(type)Perl_SvTRUE( type)) { /* b */ |
| 4869 | sv_magicext(sv, NULL, PERL_MAGIC_ext, &rmagical_b, NULL, 0)Perl_sv_magicext( sv,((void*)0),'~',&rmagical_b,((void*)0 ),0); |
| 4870 | } else { /* a */ |
| 4871 | sv_magic(sv, NULL, PERL_MAGIC_uvar, (char *) &uf, sizeof(uf))Perl_sv_magic( sv,((void*)0),'U',(char *) &uf,sizeof(uf)); |
| 4872 | } |
| 4873 | XSRETURN_YESdo { (PL_stack_base[ax + (0)] = &(PL_sv_immortals[0]) ); do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 4874 | #line 4875 "APItest.c" |
| 4875 | PUTBACKPL_stack_sp = sp; |
| 4876 | return; |
| 4877 | } |
| 4878 | } |
| 4879 | |
| 4880 | |
| 4881 | XS_EUPXS(XS_XS__APItest_rmagical_flags)static void XS_XS__APItest_rmagical_flags( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 4882 | XS_EUPXS(XS_XS__APItest_rmagical_flags)static void XS_XS__APItest_rmagical_flags( CV* cv __attribute__ ((unused))) |
| 4883 | { |
| 4884 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4885 | if (items != 1) |
| 4886 | croak_xs_usagePerl_croak_xs_usage(cv, "sv"); |
| 4887 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 4888 | SPsp -= items; |
| 4889 | { |
| 4890 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 4891 | ; |
| 4892 | #line 2974 "APItest.xs" |
| 4893 | if (!SvOK(sv)((sv)->sv_flags & (0x00000100|0x00000200|0x00000400|0x00000800 | 0x00001000|0x00002000|0x00004000|0x00008000)) || !SvROK(sv)((sv)->sv_flags & 0x00000800)) { XSRETURN_UNDEFdo { (PL_stack_base[ax + (0)] = &(PL_sv_immortals[1])); do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); } |
| 4894 | sv = SvRV(sv)((sv)->sv_u.svu_rv); |
| 4895 | EXTEND(SP, 3)do { (void)0; if (__builtin_expect(((((3) < 0 || PL_stack_max - (sp) < (3))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(3) > sizeof(ssize_t) && ((ssize_t) (3) != (3)) ? -1 : (3))); ((void)sizeof(sp)); } } while (0); |
| 4896 | mXPUSHu(SvFLAGS(sv) & SVs_GMG)do { do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); Perl_sv_setuv ( (*++sp = (Perl_sv_newmortal())),(UV)((sv)->sv_flags & 0x00200000)); } while (0); |
| 4897 | mXPUSHu(SvFLAGS(sv) & SVs_SMG)do { do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); Perl_sv_setuv ( (*++sp = (Perl_sv_newmortal())),(UV)((sv)->sv_flags & 0x00400000)); } while (0); |
| 4898 | mXPUSHu(SvFLAGS(sv) & SVs_RMG)do { do { (void)0; if (__builtin_expect(((((1) < 0 || PL_stack_max - (sp) < (1))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(1) > sizeof(ssize_t) && ((ssize_t) (1) != (1)) ? -1 : (1))); ((void)sizeof(sp)); } } while (0); Perl_sv_setuv ( (*++sp = (Perl_sv_newmortal())),(UV)((sv)->sv_flags & 0x00800000)); } while (0); |
| 4899 | XSRETURN(3)do { const IV tmpXSoff = (3); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 4900 | #line 4901 "APItest.c" |
| 4901 | PUTBACKPL_stack_sp = sp; |
| 4902 | return; |
| 4903 | } |
| 4904 | } |
| 4905 | |
| 4906 | |
| 4907 | XS_EUPXS(XS_XS__APItest_my_caller)static void XS_XS__APItest_my_caller( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 4908 | XS_EUPXS(XS_XS__APItest_my_caller)static void XS_XS__APItest_my_caller( CV* cv __attribute__((unused ))) |
| 4909 | { |
| 4910 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4911 | if (items != 1) |
| 4912 | croak_xs_usagePerl_croak_xs_usage(cv, "level"); |
| 4913 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 4914 | SPsp -= items; |
| 4915 | { |
| 4916 | I32 level = (I32)SvIV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (0)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 0)],2)) |
| 4917 | ; |
| 4918 | #line 2986 "APItest.xs" |
| 4919 | const PERL_CONTEXT *cx, *dbcx; |
| 4920 | const char *pv; |
| 4921 | const GV *gv; |
| 4922 | HV *hv; |
| 4923 | #line 4924 "APItest.c" |
| 4924 | #line 2991 "APItest.xs" |
| 4925 | cx = caller_cx(level, &dbcx)Perl_caller_cx( level,&dbcx); |
| 4926 | EXTEND(SP, 8)do { (void)0; if (__builtin_expect(((((8) < 0 || PL_stack_max - (sp) < (8))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(8) > sizeof(ssize_t) && ((ssize_t) (8) != (8)) ? -1 : (8))); ((void)sizeof(sp)); } } while (0); |
| 4927 | |
| 4928 | pv = CopSTASHPV(cx->blk_oldcop)(((cx->cx_u.cx_blk.blku_oldcop)->cop_stash) ? ((((((cx-> cx_u.cx_blk.blku_oldcop)->cop_stash))->sv_flags & 0x02000000 ) && ((struct xpvhv_aux*)&(((((cx->cx_u.cx_blk .blku_oldcop)->cop_stash))->sv_u.svu_hash)[((XPVHV*) (( (cx->cx_u.cx_blk.blku_oldcop)->cop_stash))->sv_any)-> xhv_max+1]))->xhv_name_u.xhvnameu_name && ( ((struct xpvhv_aux*)&(((((cx->cx_u.cx_blk.blku_oldcop)->cop_stash ))->sv_u.svu_hash)[((XPVHV*) (((cx->cx_u.cx_blk.blku_oldcop )->cop_stash))->sv_any)->xhv_max+1]))->xhv_name_count ? *((struct xpvhv_aux*)&(((((cx->cx_u.cx_blk.blku_oldcop )->cop_stash))->sv_u.svu_hash)[((XPVHV*) (((cx->cx_u .cx_blk.blku_oldcop)->cop_stash))->sv_any)->xhv_max+ 1]))->xhv_name_u.xhvnameu_names : ((struct xpvhv_aux*)& (((((cx->cx_u.cx_blk.blku_oldcop)->cop_stash))->sv_u .svu_hash)[((XPVHV*) (((cx->cx_u.cx_blk.blku_oldcop)->cop_stash ))->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_name ) ) ? (( ((struct xpvhv_aux*)&(((((cx->cx_u.cx_blk.blku_oldcop )->cop_stash))->sv_u.svu_hash)[((XPVHV*) (((cx->cx_u .cx_blk.blku_oldcop)->cop_stash))->sv_any)->xhv_max+ 1]))->xhv_name_count ? *((struct xpvhv_aux*)&(((((cx-> cx_u.cx_blk.blku_oldcop)->cop_stash))->sv_u.svu_hash)[( (XPVHV*) (((cx->cx_u.cx_blk.blku_oldcop)->cop_stash))-> sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_names : ((struct xpvhv_aux*)&(((((cx->cx_u.cx_blk.blku_oldcop)->cop_stash ))->sv_u.svu_hash)[((XPVHV*) (((cx->cx_u.cx_blk.blku_oldcop )->cop_stash))->sv_any)->xhv_max+1]))->xhv_name_u .xhvnameu_name ))->hek_key : ((void*)0)) : ((void*)0)); |
| 4929 | ST(0)PL_stack_base[ax + (0)] = pv ? sv_2mortal(newSVpv(pv, 0))Perl_sv_2mortal( Perl_newSVpv( pv,0)) : &PL_sv_undef(PL_sv_immortals[1]); |
| 4930 | gv = CvGV(cx->blk_sub.cv)Perl_CvGV( (CV *)(cx->cx_u.cx_blk.blk_u.blku_sub.cv)); |
| 4931 | ST(1)PL_stack_base[ax + (1)] = isGV(gv)(((svtype)((gv)->sv_flags & 0xff)) == SVt_PVGV) ? sv_2mortal(newSVpv(GvNAME(gv), 0))Perl_sv_2mortal( Perl_newSVpv( ((((XPVGV*)(gv)->sv_any)-> xiv_u.xivu_namehek))->hek_key,0)) : &PL_sv_undef(PL_sv_immortals[1]); |
| 4932 | |
| 4933 | pv = CopSTASHPV(dbcx->blk_oldcop)(((dbcx->cx_u.cx_blk.blku_oldcop)->cop_stash) ? ((((((dbcx ->cx_u.cx_blk.blku_oldcop)->cop_stash))->sv_flags & 0x02000000) && ((struct xpvhv_aux*)&(((((dbcx-> cx_u.cx_blk.blku_oldcop)->cop_stash))->sv_u.svu_hash)[( (XPVHV*) (((dbcx->cx_u.cx_blk.blku_oldcop)->cop_stash)) ->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_name && ( ((struct xpvhv_aux*)&(((((dbcx->cx_u.cx_blk.blku_oldcop )->cop_stash))->sv_u.svu_hash)[((XPVHV*) (((dbcx->cx_u .cx_blk.blku_oldcop)->cop_stash))->sv_any)->xhv_max+ 1]))->xhv_name_count ? *((struct xpvhv_aux*)&(((((dbcx ->cx_u.cx_blk.blku_oldcop)->cop_stash))->sv_u.svu_hash )[((XPVHV*) (((dbcx->cx_u.cx_blk.blku_oldcop)->cop_stash ))->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_names : ((struct xpvhv_aux*)&(((((dbcx->cx_u.cx_blk.blku_oldcop )->cop_stash))->sv_u.svu_hash)[((XPVHV*) (((dbcx->cx_u .cx_blk.blku_oldcop)->cop_stash))->sv_any)->xhv_max+ 1]))->xhv_name_u.xhvnameu_name )) ? (( ((struct xpvhv_aux* )&(((((dbcx->cx_u.cx_blk.blku_oldcop)->cop_stash))-> sv_u.svu_hash)[((XPVHV*) (((dbcx->cx_u.cx_blk.blku_oldcop) ->cop_stash))->sv_any)->xhv_max+1]))->xhv_name_count ? *((struct xpvhv_aux*)&(((((dbcx->cx_u.cx_blk.blku_oldcop )->cop_stash))->sv_u.svu_hash)[((XPVHV*) (((dbcx->cx_u .cx_blk.blku_oldcop)->cop_stash))->sv_any)->xhv_max+ 1]))->xhv_name_u.xhvnameu_names : ((struct xpvhv_aux*)& (((((dbcx->cx_u.cx_blk.blku_oldcop)->cop_stash))->sv_u .svu_hash)[((XPVHV*) (((dbcx->cx_u.cx_blk.blku_oldcop)-> cop_stash))->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_name ))->hek_key : ((void*)0)) : ((void*)0)); |
| 4934 | ST(2)PL_stack_base[ax + (2)] = pv ? sv_2mortal(newSVpv(pv, 0))Perl_sv_2mortal( Perl_newSVpv( pv,0)) : &PL_sv_undef(PL_sv_immortals[1]); |
| 4935 | gv = CvGV(dbcx->blk_sub.cv)Perl_CvGV( (CV *)(dbcx->cx_u.cx_blk.blk_u.blku_sub.cv)); |
| 4936 | ST(3)PL_stack_base[ax + (3)] = isGV(gv)(((svtype)((gv)->sv_flags & 0xff)) == SVt_PVGV) ? sv_2mortal(newSVpv(GvNAME(gv), 0))Perl_sv_2mortal( Perl_newSVpv( ((((XPVGV*)(gv)->sv_any)-> xiv_u.xivu_namehek))->hek_key,0)) : &PL_sv_undef(PL_sv_immortals[1]); |
| 4937 | |
| 4938 | ST(4)PL_stack_base[ax + (4)] = cop_hints_fetch_pvs(cx->blk_oldcop, "foo", 0)Perl_refcounted_he_fetch_pvn( ((COPHH*)((cx->cx_u.cx_blk.blku_oldcop )->cop_hints_hash)), ("" "foo" ""), (sizeof("foo")-1), 0, 0 ); |
| 4939 | ST(5)PL_stack_base[ax + (5)] = cop_hints_fetch_pvn(cx->blk_oldcop, "foo", 3, 0, 0)Perl_refcounted_he_fetch_pvn( ((COPHH*)((cx->cx_u.cx_blk.blku_oldcop )->cop_hints_hash)), "foo", 3, 0, 0); |
| 4940 | ST(6)PL_stack_base[ax + (6)] = cop_hints_fetch_sv(cx->blk_oldcop,Perl_refcounted_he_fetch_sv( ((COPHH*)((cx->cx_u.cx_blk.blku_oldcop )->cop_hints_hash)), Perl_sv_2mortal( Perl_newSVpvn( ("" "foo" ""), (sizeof("foo")-1))), 0, 0) |
| 4941 | sv_2mortal(newSVpvs("foo")), 0, 0)Perl_refcounted_he_fetch_sv( ((COPHH*)((cx->cx_u.cx_blk.blku_oldcop )->cop_hints_hash)), Perl_sv_2mortal( Perl_newSVpvn( ("" "foo" ""), (sizeof("foo")-1))), 0, 0); |
| 4942 | |
| 4943 | hv = cop_hints_2hv(cx->blk_oldcop, 0)Perl_refcounted_he_chain_2hv( ((COPHH*)((cx->cx_u.cx_blk.blku_oldcop )->cop_hints_hash)), 0); |
| 4944 | ST(7)PL_stack_base[ax + (7)] = hv ? sv_2mortal(newRV_noinc((SV *)hv))Perl_sv_2mortal( Perl_newRV_noinc( (SV *)hv)) : &PL_sv_undef(PL_sv_immortals[1]); |
| 4945 | |
| 4946 | XSRETURN(8)do { const IV tmpXSoff = (8); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 4947 | #line 4948 "APItest.c" |
| 4948 | PUTBACKPL_stack_sp = sp; |
| 4949 | return; |
| 4950 | } |
| 4951 | } |
| 4952 | |
| 4953 | |
| 4954 | XS_EUPXS(XS_XS__APItest_DPeek)static void XS_XS__APItest_DPeek( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 4955 | XS_EUPXS(XS_XS__APItest_DPeek)static void XS_XS__APItest_DPeek( CV* cv __attribute__((unused ))) |
| 4956 | { |
| 4957 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4958 | if (items != 1) |
| 4959 | croak_xs_usagePerl_croak_xs_usage(cv, "sv"); |
| 4960 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 4961 | SPsp -= items; |
| 4962 | { |
| 4963 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 4964 | ; |
| 4965 | #line 3019 "APItest.xs" |
| 4966 | ST (0)PL_stack_base[ax + (0)] = newSVpv (Perl_sv_peek (aTHX_ sv), 0)Perl_newSVpv( Perl_sv_peek ( sv),0); |
| 4967 | XSRETURN (1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 4968 | #line 4969 "APItest.c" |
| 4969 | PUTBACKPL_stack_sp = sp; |
| 4970 | return; |
| 4971 | } |
| 4972 | } |
| 4973 | |
| 4974 | |
| 4975 | XS_EUPXS(XS_XS__APItest_BEGIN)static void XS_XS__APItest_BEGIN( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 4976 | XS_EUPXS(XS_XS__APItest_BEGIN)static void XS_XS__APItest_BEGIN( CV* cv __attribute__((unused ))) |
| 4977 | { |
| 4978 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4979 | if (items != 0) |
| 4980 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 4981 | { |
| 4982 | #line 3025 "APItest.xs" |
| 4983 | sv_inc(get_sv("XS::APItest::BEGIN_called", GV_ADD|GV_ADDMULTI))Perl_sv_inc( Perl_get_sv( "XS::APItest::BEGIN_called",0x01|0x02 )); |
| 4984 | #line 4985 "APItest.c" |
| 4985 | } |
| 4986 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 4987 | } |
| 4988 | |
| 4989 | |
| 4990 | XS_EUPXS(XS_XS__APItest_CHECK)static void XS_XS__APItest_CHECK( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 4991 | XS_EUPXS(XS_XS__APItest_CHECK)static void XS_XS__APItest_CHECK( CV* cv __attribute__((unused ))) |
| 4992 | { |
| 4993 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 4994 | if (items != 0) |
| 4995 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 4996 | { |
| 4997 | #line 3030 "APItest.xs" |
| 4998 | sv_inc(get_sv("XS::APItest::CHECK_called", GV_ADD|GV_ADDMULTI))Perl_sv_inc( Perl_get_sv( "XS::APItest::CHECK_called",0x01|0x02 )); |
| 4999 | #line 5000 "APItest.c" |
| 5000 | } |
| 5001 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 5002 | } |
| 5003 | |
| 5004 | |
| 5005 | XS_EUPXS(XS_XS__APItest_UNITCHECK)static void XS_XS__APItest_UNITCHECK( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 5006 | XS_EUPXS(XS_XS__APItest_UNITCHECK)static void XS_XS__APItest_UNITCHECK( CV* cv __attribute__((unused ))) |
| 5007 | { |
| 5008 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 5009 | if (items != 0) |
| 5010 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 5011 | { |
| 5012 | #line 3035 "APItest.xs" |
| 5013 | sv_inc(get_sv("XS::APItest::UNITCHECK_called", GV_ADD|GV_ADDMULTI))Perl_sv_inc( Perl_get_sv( "XS::APItest::UNITCHECK_called",0x01 |0x02)); |
| 5014 | #line 5015 "APItest.c" |
| 5015 | } |
| 5016 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 5017 | } |
| 5018 | |
| 5019 | |
| 5020 | XS_EUPXS(XS_XS__APItest_INIT)static void XS_XS__APItest_INIT( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 5021 | XS_EUPXS(XS_XS__APItest_INIT)static void XS_XS__APItest_INIT( CV* cv __attribute__((unused ))) |
| 5022 | { |
| 5023 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 5024 | if (items != 0) |
| 5025 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 5026 | { |
| 5027 | #line 3040 "APItest.xs" |
| 5028 | sv_inc(get_sv("XS::APItest::INIT_called", GV_ADD|GV_ADDMULTI))Perl_sv_inc( Perl_get_sv( "XS::APItest::INIT_called",0x01|0x02 )); |
| 5029 | #line 5030 "APItest.c" |
| 5030 | } |
| 5031 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 5032 | } |
| 5033 | |
| 5034 | |
| 5035 | XS_EUPXS(XS_XS__APItest_END)static void XS_XS__APItest_END( CV* cv __attribute__((unused) )); /* prototype to pass -Wmissing-prototypes */ |
| 5036 | XS_EUPXS(XS_XS__APItest_END)static void XS_XS__APItest_END( CV* cv __attribute__((unused) )) |
| 5037 | { |
| 5038 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 5039 | if (items != 0) |
| 5040 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 5041 | { |
| 5042 | #line 3045 "APItest.xs" |
| 5043 | sv_inc(get_sv("XS::APItest::END_called", GV_ADD|GV_ADDMULTI))Perl_sv_inc( Perl_get_sv( "XS::APItest::END_called",0x01|0x02 )); |
| 5044 | #line 5045 "APItest.c" |
| 5045 | } |
| 5046 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 5047 | } |
| 5048 | |
| 5049 | |
| 5050 | XS_EUPXS(XS_XS__APItest_utf16_to_utf8)static void XS_XS__APItest_utf16_to_utf8( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 5051 | XS_EUPXS(XS_XS__APItest_utf16_to_utf8)static void XS_XS__APItest_utf16_to_utf8( CV* cv __attribute__ ((unused))) |
| 5052 | { |
| 5053 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 5054 | dXSI32I32 ix = ((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))-> xcv_start_u.xcv_xsubany.any_i32; |
| 5055 | if (items < 1) |
| 5056 | croak_xs_usagePerl_croak_xs_usage(cv, "sv, ..."); |
| 5057 | { |
| 5058 | SV* sv = ST(0)PL_stack_base[ax + (0)] |
| 5059 | ; |
| 5060 | #line 3053 "APItest.xs" |
| 5061 | STRLEN len; |
| 5062 | U8 *source; |
| 5063 | SV *dest; |
| 5064 | Size_tsize_t got; |
| 5065 | #line 5066 "APItest.c" |
| 5066 | #line 3058 "APItest.xs" |
| 5067 | if (ix) (void)SvPV_force_nolen(sv)((((sv)->sv_flags & (0x00000400|0x00000100|0x00000200| 0x00000800|0x00008000|(0x08000000|0x00010000|0x00000800|0x01000000 |0x00800000|0x10000000)|0x00200000)) == 0x00000400) ? ((sv)-> sv_u.svu_pv) : Perl_sv_pvn_force_flags( sv,0,2)); |
| 5068 | source = (U8 *)SvPVbyte(sv, len)((((sv)->sv_flags & (0x00000400|0x20000000|0x00200000) ) == 0x00000400) ? ((len = ((XPV*) (sv)->sv_any)->xpv_cur ), ((sv)->sv_u.svu_pv)) : Perl_sv_2pvbyte_flags( sv,&len ,2)); |
| 5069 | /* Optionally only convert part of the buffer. */ |
| 5070 | if (items > 1) { |
| 5071 | len = SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)); |
| 5072 | } |
| 5073 | /* Mortalise this right now, as we'll be testing croak()s */ |
| 5074 | dest = sv_2mortal(newSV(len * 2 + 1))Perl_sv_2mortal( Perl_newSV( len * 2 + 1)); |
| 5075 | if (ix) { |
| 5076 | utf16_to_utf8_reversed(source, (U8 *)SvPVX(dest), len, &got)Perl_utf16_to_utf8_reversed( source,(U8 *)((dest)->sv_u.svu_pv ),len,&got); |
| 5077 | } else { |
| 5078 | utf16_to_utf8(source, (U8 *)SvPVX(dest), len, &got)Perl_utf16_to_utf8( source,(U8 *)((dest)->sv_u.svu_pv),len ,&got); |
| 5079 | } |
| 5080 | SvCUR_set(dest, got)do { ((void)0); ((void)0); ((void)0); (((XPV*) (dest)->sv_any )->xpv_cur = (got)); } while (0); |
| 5081 | SvPVX(dest)((dest)->sv_u.svu_pv)[got] = '\0'; |
| 5082 | SvPOK_on(dest)( (dest)->sv_flags |= (0x00000400|0x00004000)); |
| 5083 | ST(0)PL_stack_base[ax + (0)] = dest; |
| 5084 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 5085 | #line 5086 "APItest.c" |
| 5086 | } |
| 5087 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 5088 | } |
| 5089 | |
| 5090 | |
| 5091 | XS_EUPXS(XS_XS__APItest_my_exit)static void XS_XS__APItest_my_exit( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 5092 | XS_EUPXS(XS_XS__APItest_my_exit)static void XS_XS__APItest_my_exit( CV* cv __attribute__((unused ))) |
| 5093 | { |
| 5094 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 5095 | if (items != 1) |
| 5096 | croak_xs_usagePerl_croak_xs_usage(cv, "exitcode"); |
| 5097 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 5098 | SPsp -= items; |
| 5099 | { |
| 5100 | int exitcode = (int)SvIV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (0)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 0)],2)) |
| 5101 | ; |
| 5102 | #line 3080 "APItest.xs" |
| 5103 | my_exit(exitcode)Perl_my_exit( exitcode); |
| 5104 | #line 5105 "APItest.c" |
| 5105 | PUTBACKPL_stack_sp = sp; |
| 5106 | return; |
| 5107 | } |
| 5108 | } |
| 5109 | |
| 5110 | |
| 5111 | XS_EUPXS(XS_XS__APItest_first_byte)static void XS_XS__APItest_first_byte( CV* cv __attribute__(( unused))); /* prototype to pass -Wmissing-prototypes */ |
| 5112 | XS_EUPXS(XS_XS__APItest_first_byte)static void XS_XS__APItest_first_byte( CV* cv __attribute__(( unused))) |
| 5113 | { |
| 5114 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 5115 | if (items != 1) |
| 5116 | croak_xs_usagePerl_croak_xs_usage(cv, "sv"); |
| 5117 | { |
| 5118 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 5119 | ; |
| 5120 | U8 RETVAL; |
| 5121 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 5122 | #line 3086 "APItest.xs" |
| 5123 | char *s; |
| 5124 | STRLEN len; |
| 5125 | s = SvPVbyte(sv, len)((((sv)->sv_flags & (0x00000400|0x20000000|0x00200000) ) == 0x00000400) ? ((len = ((XPV*) (sv)->sv_any)->xpv_cur ), ((sv)->sv_u.svu_pv)) : Perl_sv_2pvbyte_flags( sv,&len ,2)); |
| 5126 | RETVAL = s[0]; |
| 5127 | #line 5128 "APItest.c" |
| 5128 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 5129 | } |
| 5130 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 5131 | } |
| 5132 | |
| 5133 | |
| 5134 | XS_EUPXS(XS_XS__APItest_sv_count)static void XS_XS__APItest_sv_count( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 5135 | XS_EUPXS(XS_XS__APItest_sv_count)static void XS_XS__APItest_sv_count( CV* cv __attribute__((unused ))) |
| 5136 | { |
| 5137 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 5138 | if (items != 0) |
| 5139 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 5140 | { |
| 5141 | I32 RETVAL; |
| 5142 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 5143 | #line 3096 "APItest.xs" |
| 5144 | RETVAL = PL_sv_count; |
| 5145 | #line 5146 "APItest.c" |
| 5146 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHi((IV)RETVAL)do { do { IV TARGi_iv = (IV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1)) ? (_Bool)1 : (_Bool)0) ,(1))) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000 ); targ->sv_u.svu_iv = TARGi_iv; } else Perl_sv_setiv_mg( targ ,TARGi_iv); } while (0); (*++sp = (targ)); } while (0); |
| 5147 | } |
| 5148 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 5149 | } |
| 5150 | |
| 5151 | |
| 5152 | XS_EUPXS(XS_XS__APItest_bhk_record)static void XS_XS__APItest_bhk_record( CV* cv __attribute__(( unused))); /* prototype to pass -Wmissing-prototypes */ |
| 5153 | XS_EUPXS(XS_XS__APItest_bhk_record)static void XS_XS__APItest_bhk_record( CV* cv __attribute__(( unused))) |
| 5154 | { |
| 5155 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 5156 | if (items != 1) |
| 5157 | croak_xs_usagePerl_croak_xs_usage(cv, "on"); |
| 5158 | { |
| 5159 | bool_Bool on = (bool_Bool)SvTRUE(ST(0))Perl_SvTRUE( PL_stack_base[ax + (0)]) |
| 5160 | ; |
| 5161 | #line 3103 "APItest.xs" |
| 5162 | dMY_CXTstruct Perl___notused_struct; |
| 5163 | MY_CXTmy_cxt.bhk_record = on; |
| 5164 | if (on) |
| 5165 | av_clear(MY_CXT.bhkav)Perl_av_clear( my_cxt.bhkav); |
| 5166 | #line 5167 "APItest.c" |
| 5167 | } |
| 5168 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 5169 | } |
| 5170 | |
| 5171 | |
| 5172 | XS_EUPXS(XS_XS__APItest_test_magic_chain)static void XS_XS__APItest_test_magic_chain( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 5173 | XS_EUPXS(XS_XS__APItest_test_magic_chain)static void XS_XS__APItest_test_magic_chain( CV* cv __attribute__ ((unused))) |
| 5174 | { |
| 5175 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 5176 | if (items != 0) |
| 5177 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 5178 | { |
| 5179 | #line 3111 "APItest.xs" |
| 5180 | SV *sv; |
| 5181 | MAGIC *callmg, *uvarmg; |
| 5182 | #line 5183 "APItest.c" |
| 5183 | #line 3114 "APItest.xs" |
| 5184 | sv = sv_2mortal(newSV(0))Perl_sv_2mortal( Perl_newSV( 0)); |
| 5185 | if (SvTYPE(sv)((svtype)((sv)->sv_flags & 0xff)) >= SVt_PVMG) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3115); |
| 5186 | if (SvMAGICAL(sv)((sv)->sv_flags & (0x00200000|0x00400000|0x00800000))) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3116); |
| 5187 | sv_magic(sv, &PL_sv_yes, PERL_MAGIC_checkcall, (char*)&callmg, 0)Perl_sv_magic( sv,&(PL_sv_immortals[0]),']',(char*)&callmg ,0); |
| 5188 | if (SvTYPE(sv)((svtype)((sv)->sv_flags & 0xff)) < SVt_PVMG) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3118); |
| 5189 | if (!SvMAGICAL(sv)((sv)->sv_flags & (0x00200000|0x00400000|0x00800000))) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3119); |
| 5190 | if (mg_findPerl_mg_find(sv, PERL_MAGIC_uvar'U')) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3120); |
| 5191 | callmg = mg_findPerl_mg_find(sv, PERL_MAGIC_checkcall']'); |
| 5192 | if (!callmg) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3122); |
| 5193 | if (callmg->mg_obj != &PL_sv_yes(PL_sv_immortals[0]) || callmg->mg_ptr != (char*)&callmg) |
| 5194 | croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3124); |
| 5195 | sv_magic(sv, &PL_sv_no, PERL_MAGIC_uvar, (char*)&uvarmg, 0)Perl_sv_magic( sv,&(PL_sv_immortals[2]),'U',(char*)&uvarmg ,0); |
| 5196 | if (SvTYPE(sv)((svtype)((sv)->sv_flags & 0xff)) < SVt_PVMG) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3126); |
| 5197 | if (!SvMAGICAL(sv)((sv)->sv_flags & (0x00200000|0x00400000|0x00800000))) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3127); |
| 5198 | if (mg_findPerl_mg_find(sv, PERL_MAGIC_checkcall']') != callmg) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3128); |
| 5199 | uvarmg = mg_findPerl_mg_find(sv, PERL_MAGIC_uvar'U'); |
| 5200 | if (!uvarmg) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3130); |
| 5201 | if (callmg->mg_obj != &PL_sv_yes(PL_sv_immortals[0]) || callmg->mg_ptr != (char*)&callmg) |
| 5202 | croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3132); |
| 5203 | if (uvarmg->mg_obj != &PL_sv_no(PL_sv_immortals[2]) || uvarmg->mg_ptr != (char*)&uvarmg) |
| 5204 | croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3134); |
| 5205 | mg_free_type(sv, PERL_MAGIC_vec)Perl_mg_free_type( sv,'v'); |
| 5206 | if (SvTYPE(sv)((svtype)((sv)->sv_flags & 0xff)) < SVt_PVMG) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3136); |
| 5207 | if (!SvMAGICAL(sv)((sv)->sv_flags & (0x00200000|0x00400000|0x00800000))) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3137); |
| 5208 | if (mg_findPerl_mg_find(sv, PERL_MAGIC_checkcall']') != callmg) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3138); |
| 5209 | if (mg_findPerl_mg_find(sv, PERL_MAGIC_uvar'U') != uvarmg) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3139); |
| 5210 | if (callmg->mg_obj != &PL_sv_yes(PL_sv_immortals[0]) || callmg->mg_ptr != (char*)&callmg) |
| 5211 | croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3141); |
| 5212 | if (uvarmg->mg_obj != &PL_sv_no(PL_sv_immortals[2]) || uvarmg->mg_ptr != (char*)&uvarmg) |
| 5213 | croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3143); |
| 5214 | mg_free_type(sv, PERL_MAGIC_uvar)Perl_mg_free_type( sv,'U'); |
| 5215 | if (SvTYPE(sv)((svtype)((sv)->sv_flags & 0xff)) < SVt_PVMG) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3145); |
| 5216 | if (!SvMAGICAL(sv)((sv)->sv_flags & (0x00200000|0x00400000|0x00800000))) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3146); |
| 5217 | if (mg_findPerl_mg_find(sv, PERL_MAGIC_checkcall']') != callmg) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3147); |
| 5218 | if (mg_findPerl_mg_find(sv, PERL_MAGIC_uvar'U')) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3148); |
| 5219 | if (callmg->mg_obj != &PL_sv_yes(PL_sv_immortals[0]) || callmg->mg_ptr != (char*)&callmg) |
| 5220 | croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3150); |
| 5221 | sv_magic(sv, &PL_sv_no, PERL_MAGIC_uvar, (char*)&uvarmg, 0)Perl_sv_magic( sv,&(PL_sv_immortals[2]),'U',(char*)&uvarmg ,0); |
| 5222 | if (SvTYPE(sv)((svtype)((sv)->sv_flags & 0xff)) < SVt_PVMG) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3152); |
| 5223 | if (!SvMAGICAL(sv)((sv)->sv_flags & (0x00200000|0x00400000|0x00800000))) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3153); |
| 5224 | if (mg_findPerl_mg_find(sv, PERL_MAGIC_checkcall']') != callmg) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3154); |
| 5225 | uvarmg = mg_findPerl_mg_find(sv, PERL_MAGIC_uvar'U'); |
| 5226 | if (!uvarmg) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3156); |
| 5227 | if (callmg->mg_obj != &PL_sv_yes(PL_sv_immortals[0]) || callmg->mg_ptr != (char*)&callmg) |
| 5228 | croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3158); |
| 5229 | if (uvarmg->mg_obj != &PL_sv_no(PL_sv_immortals[2]) || uvarmg->mg_ptr != (char*)&uvarmg) |
| 5230 | croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3160); |
| 5231 | mg_free_type(sv, PERL_MAGIC_checkcall)Perl_mg_free_type( sv,']'); |
| 5232 | if (SvTYPE(sv)((svtype)((sv)->sv_flags & 0xff)) < SVt_PVMG) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3162); |
| 5233 | if (!SvMAGICAL(sv)((sv)->sv_flags & (0x00200000|0x00400000|0x00800000))) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3163); |
| 5234 | if (mg_findPerl_mg_find(sv, PERL_MAGIC_uvar'U') != uvarmg) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3164); |
| 5235 | if (mg_findPerl_mg_find(sv, PERL_MAGIC_checkcall']')) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3165); |
| 5236 | if (uvarmg->mg_obj != &PL_sv_no(PL_sv_immortals[2]) || uvarmg->mg_ptr != (char*)&uvarmg) |
| 5237 | croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3167); |
| 5238 | mg_free_type(sv, PERL_MAGIC_uvar)Perl_mg_free_type( sv,'U'); |
| 5239 | if (SvMAGICAL(sv)((sv)->sv_flags & (0x00200000|0x00400000|0x00800000))) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3169); |
| 5240 | if (mg_findPerl_mg_find(sv, PERL_MAGIC_checkcall']')) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3170); |
| 5241 | if (mg_findPerl_mg_find(sv, PERL_MAGIC_uvar'U')) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3171); |
| 5242 | #line 5243 "APItest.c" |
| 5243 | } |
| 5244 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 5245 | } |
| 5246 | |
| 5247 | |
| 5248 | XS_EUPXS(XS_XS__APItest_test_op_contextualize)static void XS_XS__APItest_test_op_contextualize( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 5249 | XS_EUPXS(XS_XS__APItest_test_op_contextualize)static void XS_XS__APItest_test_op_contextualize( CV* cv __attribute__ ((unused))) |
| 5250 | { |
| 5251 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 5252 | if (items != 0) |
| 5253 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 5254 | { |
| 5255 | #line 3176 "APItest.xs" |
| 5256 | OP *o; |
| 5257 | #line 5258 "APItest.c" |
| 5258 | #line 3178 "APItest.xs" |
| 5259 | o = newSVOP(OP_CONST, 0, newSViv(0))Perl_newSVOP( OP_CONST,0,Perl_newSViv( 0)); |
| 5260 | o->op_flags &= ~OPf_WANT3; |
| 5261 | o = op_contextualize(o, G_SCALAR)Perl_op_contextualize( o,2); |
| 5262 | if (o->op_type != OP_CONST || |
| 5263 | (o->op_flags & OPf_WANT3) != OPf_WANT_SCALAR2) |
| 5264 | croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3183); |
| 5265 | op_free(o)Perl_op_free( o); |
| 5266 | o = newSVOP(OP_CONST, 0, newSViv(0))Perl_newSVOP( OP_CONST,0,Perl_newSViv( 0)); |
| 5267 | o->op_flags &= ~OPf_WANT3; |
| 5268 | o = op_contextualize(o, G_ARRAY)Perl_op_contextualize( o,3); |
| 5269 | if (o->op_type != OP_CONST || |
| 5270 | (o->op_flags & OPf_WANT3) != OPf_WANT_LIST3) |
| 5271 | croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3190); |
| 5272 | op_free(o)Perl_op_free( o); |
| 5273 | o = newSVOP(OP_CONST, 0, newSViv(0))Perl_newSVOP( OP_CONST,0,Perl_newSViv( 0)); |
| 5274 | o->op_flags &= ~OPf_WANT3; |
| 5275 | o = op_contextualize(o, G_VOID)Perl_op_contextualize( o,1); |
| 5276 | if (o->op_type != OP_NULL) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3195); |
| 5277 | op_free(o)Perl_op_free( o); |
| 5278 | #line 5279 "APItest.c" |
| 5279 | } |
| 5280 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 5281 | } |
| 5282 | |
| 5283 | |
| 5284 | XS_EUPXS(XS_XS__APItest_test_rv2cv_op_cv)static void XS_XS__APItest_test_rv2cv_op_cv( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 5285 | XS_EUPXS(XS_XS__APItest_test_rv2cv_op_cv)static void XS_XS__APItest_test_rv2cv_op_cv( CV* cv __attribute__ ((unused))) |
| 5286 | { |
| 5287 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 5288 | if (items != 0) |
| 5289 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 5290 | { |
| 5291 | #line 3202 "APItest.xs" |
| 5292 | GV *troc_gv; |
| 5293 | CV *troc_cv; |
| 5294 | OP *o; |
| 5295 | #line 5296 "APItest.c" |
| 5296 | #line 3206 "APItest.xs" |
| 5297 | troc_gv = gv_fetchpv("XS::APItest::test_rv2cv_op_cv", 0, SVt_PVGV)Perl_gv_fetchpv( "XS::APItest::test_rv2cv_op_cv",0,SVt_PVGV); |
| 5298 | troc_cv = get_cv("XS::APItest::test_rv2cv_op_cv", 0)Perl_get_cv( "XS::APItest::test_rv2cv_op_cv",0); |
| 5299 | o = newCVREF(0, newGVOP(OP_GV, 0, troc_gv))Perl_newCVREF( 0,Perl_newGVOP( OP_GV,0,troc_gv)); |
| 5300 | if (rv2cv_op_cv(o, 0)Perl_rv2cv_op_cv( o,0) != troc_cv) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3209); |
| 5301 | if (rv2cv_op_cv(o, RV2CVOPCV_RETURN_NAME_GV)Perl_rv2cv_op_cv( o,0x00000002) != (CV*)troc_gv) |
| 5302 | croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3211); |
| 5303 | o->op_private |= OPpENTERSUB_AMPER0x08; |
| 5304 | if (rv2cv_op_cv(o, 0)Perl_rv2cv_op_cv( o,0)) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3213); |
| 5305 | if (rv2cv_op_cv(o, RV2CVOPCV_RETURN_NAME_GV)Perl_rv2cv_op_cv( o,0x00000002)) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3214); |
| 5306 | o->op_private &= ~OPpENTERSUB_AMPER0x08; |
| 5307 | if (cUNOPx(o)((UNOP*)(o))->op_first->op_private & OPpEARLY_CV0x20) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3216); |
| 5308 | if (rv2cv_op_cv(o, RV2CVOPCV_MARK_EARLY)Perl_rv2cv_op_cv( o,0x00000001) != troc_cv) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3217); |
| 5309 | if (cUNOPx(o)((UNOP*)(o))->op_first->op_private & OPpEARLY_CV0x20) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3218); |
| 5310 | op_free(o)Perl_op_free( o); |
| 5311 | o = newSVOP(OP_CONST, 0, newSVpv("XS::APItest::test_rv2cv_op_cv", 0))Perl_newSVOP( OP_CONST,0,Perl_newSVpv( "XS::APItest::test_rv2cv_op_cv" ,0)); |
| 5312 | o->op_private = OPpCONST_BARE0x40; |
| 5313 | o = newCVREF(0, o)Perl_newCVREF( 0,o); |
| 5314 | if (rv2cv_op_cv(o, 0)Perl_rv2cv_op_cv( o,0) != troc_cv) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3223); |
| 5315 | if (rv2cv_op_cv(o, RV2CVOPCV_RETURN_NAME_GV)Perl_rv2cv_op_cv( o,0x00000002) != (CV*)troc_gv) |
| 5316 | croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3225); |
| 5317 | o->op_private |= OPpENTERSUB_AMPER0x08; |
| 5318 | if (rv2cv_op_cv(o, 0)Perl_rv2cv_op_cv( o,0)) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3227); |
| 5319 | if (rv2cv_op_cv(o, RV2CVOPCV_RETURN_NAME_GV)Perl_rv2cv_op_cv( o,0x00000002)) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3228); |
| 5320 | op_free(o)Perl_op_free( o); |
| 5321 | o = newCVREF(0, newSVOP(OP_CONST, 0, newRV_inc((SV*)troc_cv)))Perl_newCVREF( 0,Perl_newSVOP( OP_CONST,0,Perl_newRV( (SV*)troc_cv ))); |
| 5322 | if (rv2cv_op_cv(o, 0)Perl_rv2cv_op_cv( o,0) != troc_cv) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3231); |
| 5323 | if (rv2cv_op_cv(o, RV2CVOPCV_RETURN_NAME_GV)Perl_rv2cv_op_cv( o,0x00000002) != (CV*)troc_gv) |
| 5324 | croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3233); |
| 5325 | o->op_private |= OPpENTERSUB_AMPER0x08; |
| 5326 | if (rv2cv_op_cv(o, 0)Perl_rv2cv_op_cv( o,0)) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3235); |
| 5327 | if (rv2cv_op_cv(o, RV2CVOPCV_RETURN_NAME_GV)Perl_rv2cv_op_cv( o,0x00000002)) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3236); |
| 5328 | o->op_private &= ~OPpENTERSUB_AMPER0x08; |
| 5329 | if (cUNOPx(o)((UNOP*)(o))->op_first->op_private & OPpEARLY_CV0x20) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3238); |
| 5330 | if (rv2cv_op_cv(o, RV2CVOPCV_MARK_EARLY)Perl_rv2cv_op_cv( o,0x00000001) != troc_cv) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3239); |
| 5331 | if (cUNOPx(o)((UNOP*)(o))->op_first->op_private & OPpEARLY_CV0x20) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3240); |
| 5332 | op_free(o)Perl_op_free( o); |
| 5333 | o = newCVREF(0, newUNOP(OP_RAND, 0, newSVOP(OP_CONST, 0, newSViv(0))))Perl_newCVREF( 0,Perl_newUNOP( OP_RAND,0,Perl_newSVOP( OP_CONST ,0,Perl_newSViv( 0)))); |
| 5334 | if (rv2cv_op_cv(o, 0)Perl_rv2cv_op_cv( o,0)) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3243); |
| 5335 | if (rv2cv_op_cv(o, RV2CVOPCV_RETURN_NAME_GV)Perl_rv2cv_op_cv( o,0x00000002)) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3244); |
| 5336 | o->op_private |= OPpENTERSUB_AMPER0x08; |
| 5337 | if (rv2cv_op_cv(o, 0)Perl_rv2cv_op_cv( o,0)) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3246); |
| 5338 | if (rv2cv_op_cv(o, RV2CVOPCV_RETURN_NAME_GV)Perl_rv2cv_op_cv( o,0x00000002)) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3247); |
| 5339 | o->op_private &= ~OPpENTERSUB_AMPER0x08; |
| 5340 | if (cUNOPx(o)((UNOP*)(o))->op_first->op_private & OPpEARLY_CV0x20) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3249); |
| 5341 | if (rv2cv_op_cv(o, RV2CVOPCV_MARK_EARLY)Perl_rv2cv_op_cv( o,0x00000001)) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3250); |
| 5342 | if (cUNOPx(o)((UNOP*)(o))->op_first->op_private & OPpEARLY_CV0x20) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3251); |
| 5343 | op_free(o)Perl_op_free( o); |
| 5344 | o = newUNOP(OP_RAND, 0, newSVOP(OP_CONST, 0, newSViv(0)))Perl_newUNOP( OP_RAND,0,Perl_newSVOP( OP_CONST,0,Perl_newSViv ( 0))); |
| 5345 | if (rv2cv_op_cv(o, 0)Perl_rv2cv_op_cv( o,0)) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3254); |
| 5346 | if (rv2cv_op_cv(o, RV2CVOPCV_RETURN_NAME_GV)Perl_rv2cv_op_cv( o,0x00000002)) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3255); |
| 5347 | op_free(o)Perl_op_free( o); |
| 5348 | #line 5349 "APItest.c" |
| 5349 | } |
| 5350 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 5351 | } |
| 5352 | |
| 5353 | |
| 5354 | XS_EUPXS(XS_XS__APItest_test_cv_getset_call_checker)static void XS_XS__APItest_test_cv_getset_call_checker( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 5355 | XS_EUPXS(XS_XS__APItest_test_cv_getset_call_checker)static void XS_XS__APItest_test_cv_getset_call_checker( CV* cv __attribute__((unused))) |
| 5356 | { |
| 5357 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 5358 | if (items != 0) |
| 5359 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 5360 | { |
| 5361 | #line 3261 "APItest.xs" |
| 5362 | CV *troc_cv, *tsh_cv; |
| 5363 | Perl_call_checker ckfun; |
| 5364 | SV *ckobj; |
| 5365 | U32 ckflags; |
| 5366 | #line 5367 "APItest.c" |
| 5367 | #line 3266 "APItest.xs" |
| 5368 | #define check_cc(cv, xckfun, xckobj, xckflags) \ |
| 5369 | do { \ |
| 5370 | cv_get_call_checker((cv), &ckfun, &ckobj)Perl_cv_get_call_checker( (cv),&ckfun,&ckobj); \ |
| 5371 | if (ckfun != (xckfun)) croak_fail_nep(FPTR2DPTR(void *, ckfun), xckfun)Perl_croak("fail %p!=%p at " "APItest.xs" " line %d", (((void *)(UV)(ckfun))), (xckfun), 3269); \ |
| 5372 | if (ckobj != (xckobj)) croak_fail_nep(FPTR2DPTR(void *, ckobj), xckobj)Perl_croak("fail %p!=%p at " "APItest.xs" " line %d", (((void *)(UV)(ckobj))), (xckobj), 3270); \ |
| 5373 | cv_get_call_checker_flags((cv), CALL_CHECKER_REQUIRE_GV, &ckfun, &ckobj, &ckflags)Perl_cv_get_call_checker_flags( (cv),1,&ckfun,&ckobj, &ckflags); \ |
| 5374 | if (ckfun != (xckfun)) croak_fail_nep(FPTR2DPTR(void *, ckfun), xckfun)Perl_croak("fail %p!=%p at " "APItest.xs" " line %d", (((void *)(UV)(ckfun))), (xckfun), 3272); \ |
| 5375 | if (ckobj != (xckobj)) croak_fail_nep(FPTR2DPTR(void *, ckobj), xckobj)Perl_croak("fail %p!=%p at " "APItest.xs" " line %d", (((void *)(UV)(ckobj))), (xckobj), 3273); \ |
| 5376 | if (ckflags != CALL_CHECKER_REQUIRE_GV1) croak_fail_nei(ckflags, CALL_CHECKER_REQUIRE_GV)Perl_croak("fail %d!=%d at " "APItest.xs" " line %d", (int)(ckflags ), (int)(1), 3274); \ |
| 5377 | cv_get_call_checker_flags((cv), 0, &ckfun, &ckobj, &ckflags)Perl_cv_get_call_checker_flags( (cv),0,&ckfun,&ckobj, &ckflags); \ |
| 5378 | if (ckfun != (xckfun)) croak_fail_nep(FPTR2DPTR(void *, ckfun), xckfun)Perl_croak("fail %p!=%p at " "APItest.xs" " line %d", (((void *)(UV)(ckfun))), (xckfun), 3276); \ |
| 5379 | if (ckobj != (xckobj)) croak_fail_nep(FPTR2DPTR(void *, ckobj), xckobj)Perl_croak("fail %p!=%p at " "APItest.xs" " line %d", (((void *)(UV)(ckobj))), (xckobj), 3277); \ |
| 5380 | if (ckflags != (xckflags)) croak_fail_nei(ckflags, (xckflags))Perl_croak("fail %d!=%d at " "APItest.xs" " line %d", (int)(ckflags ), (int)((xckflags)), 3278); \ |
| 5381 | } while(0) |
| 5382 | troc_cv = get_cv("XS::APItest::test_rv2cv_op_cv", 0)Perl_get_cv( "XS::APItest::test_rv2cv_op_cv",0); |
| 5383 | tsh_cv = get_cv("XS::APItest::test_savehints", 0)Perl_get_cv( "XS::APItest::test_savehints",0); |
| 5384 | check_cc(troc_cv, Perl_ck_entersub_args_proto_or_list, (SV*)troc_cv, 0); |
| 5385 | check_cc(tsh_cv, Perl_ck_entersub_args_proto_or_list, (SV*)tsh_cv, 0); |
| 5386 | cv_set_call_checker(tsh_cv, Perl_ck_entersub_args_proto_or_list,Perl_cv_set_call_checker( tsh_cv,Perl_ck_entersub_args_proto_or_list ,&(PL_sv_immortals[0])) |
| 5387 | &PL_sv_yes)Perl_cv_set_call_checker( tsh_cv,Perl_ck_entersub_args_proto_or_list ,&(PL_sv_immortals[0])); |
| 5388 | check_cc(troc_cv, Perl_ck_entersub_args_proto_or_list, (SV*)troc_cv, 0); |
| 5389 | check_cc(tsh_cv, Perl_ck_entersub_args_proto_or_list, &PL_sv_yes(PL_sv_immortals[0]), CALL_CHECKER_REQUIRE_GV1); |
| 5390 | cv_set_call_checker(troc_cv, THX_ck_entersub_args_scalars, &PL_sv_no)Perl_cv_set_call_checker( troc_cv,THX_ck_entersub_args_scalars ,&(PL_sv_immortals[2])); |
| 5391 | check_cc(troc_cv, THX_ck_entersub_args_scalars, &PL_sv_no(PL_sv_immortals[2]), CALL_CHECKER_REQUIRE_GV1); |
| 5392 | check_cc(tsh_cv, Perl_ck_entersub_args_proto_or_list, &PL_sv_yes(PL_sv_immortals[0]), CALL_CHECKER_REQUIRE_GV1); |
| 5393 | cv_set_call_checker(tsh_cv, Perl_ck_entersub_args_proto_or_list,Perl_cv_set_call_checker( tsh_cv,Perl_ck_entersub_args_proto_or_list ,(SV*)tsh_cv) |
| 5394 | (SV*)tsh_cv)Perl_cv_set_call_checker( tsh_cv,Perl_ck_entersub_args_proto_or_list ,(SV*)tsh_cv); |
| 5395 | check_cc(troc_cv, THX_ck_entersub_args_scalars, &PL_sv_no(PL_sv_immortals[2]), CALL_CHECKER_REQUIRE_GV1); |
| 5396 | check_cc(tsh_cv, Perl_ck_entersub_args_proto_or_list, (SV*)tsh_cv, 0); |
| 5397 | cv_set_call_checker(troc_cv, Perl_ck_entersub_args_proto_or_list,Perl_cv_set_call_checker( troc_cv,Perl_ck_entersub_args_proto_or_list ,(SV*)troc_cv) |
| 5398 | (SV*)troc_cv)Perl_cv_set_call_checker( troc_cv,Perl_ck_entersub_args_proto_or_list ,(SV*)troc_cv); |
| 5399 | check_cc(troc_cv, Perl_ck_entersub_args_proto_or_list, (SV*)troc_cv, 0); |
| 5400 | check_cc(tsh_cv, Perl_ck_entersub_args_proto_or_list, (SV*)tsh_cv, 0); |
| 5401 | if (SvMAGICAL((SV*)troc_cv)(((SV*)troc_cv)->sv_flags & (0x00200000|0x00400000|0x00800000 )) || SvMAGIC((SV*)troc_cv)((XPVMG*) ((SV*)troc_cv)->sv_any)->xmg_u.xmg_magic) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3299); |
| 5402 | if (SvMAGICAL((SV*)tsh_cv)(((SV*)tsh_cv)->sv_flags & (0x00200000|0x00400000|0x00800000 )) || SvMAGIC((SV*)tsh_cv)((XPVMG*) ((SV*)tsh_cv)->sv_any)->xmg_u.xmg_magic) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3300); |
| 5403 | cv_set_call_checker_flags(tsh_cv, Perl_ck_entersub_args_proto_or_list,Perl_cv_set_call_checker_flags( tsh_cv,Perl_ck_entersub_args_proto_or_list ,&(PL_sv_immortals[0]),0) |
| 5404 | &PL_sv_yes, 0)Perl_cv_set_call_checker_flags( tsh_cv,Perl_ck_entersub_args_proto_or_list ,&(PL_sv_immortals[0]),0); |
| 5405 | check_cc(tsh_cv, Perl_ck_entersub_args_proto_or_list, &PL_sv_yes(PL_sv_immortals[0]), 0); |
| 5406 | cv_set_call_checker_flags(tsh_cv, Perl_ck_entersub_args_proto_or_list,Perl_cv_set_call_checker_flags( tsh_cv,Perl_ck_entersub_args_proto_or_list ,&(PL_sv_immortals[0]),1) |
| 5407 | &PL_sv_yes, CALL_CHECKER_REQUIRE_GV)Perl_cv_set_call_checker_flags( tsh_cv,Perl_ck_entersub_args_proto_or_list ,&(PL_sv_immortals[0]),1); |
| 5408 | check_cc(tsh_cv, Perl_ck_entersub_args_proto_or_list, &PL_sv_yes(PL_sv_immortals[0]), CALL_CHECKER_REQUIRE_GV1); |
| 5409 | cv_set_call_checker_flags(tsh_cv, Perl_ck_entersub_args_proto_or_list,Perl_cv_set_call_checker_flags( tsh_cv,Perl_ck_entersub_args_proto_or_list ,(SV*)tsh_cv,0) |
| 5410 | (SV*)tsh_cv, 0)Perl_cv_set_call_checker_flags( tsh_cv,Perl_ck_entersub_args_proto_or_list ,(SV*)tsh_cv,0); |
| 5411 | check_cc(tsh_cv, Perl_ck_entersub_args_proto_or_list, (SV*)tsh_cv, 0); |
| 5412 | if (SvMAGICAL((SV*)tsh_cv)(((SV*)tsh_cv)->sv_flags & (0x00200000|0x00400000|0x00800000 )) || SvMAGIC((SV*)tsh_cv)((XPVMG*) ((SV*)tsh_cv)->sv_any)->xmg_u.xmg_magic) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3310); |
| 5413 | cv_set_call_checker_flags(tsh_cv, Perl_ck_entersub_args_proto_or_list,Perl_cv_set_call_checker_flags( tsh_cv,Perl_ck_entersub_args_proto_or_list ,&(PL_sv_immortals[0]),1) |
| 5414 | &PL_sv_yes, CALL_CHECKER_REQUIRE_GV)Perl_cv_set_call_checker_flags( tsh_cv,Perl_ck_entersub_args_proto_or_list ,&(PL_sv_immortals[0]),1); |
| 5415 | check_cc(tsh_cv, Perl_ck_entersub_args_proto_or_list, &PL_sv_yes(PL_sv_immortals[0]), CALL_CHECKER_REQUIRE_GV1); |
| 5416 | cv_set_call_checker_flags(tsh_cv, Perl_ck_entersub_args_proto_or_list,Perl_cv_set_call_checker_flags( tsh_cv,Perl_ck_entersub_args_proto_or_list ,(SV*)tsh_cv,1) |
| 5417 | (SV*)tsh_cv, CALL_CHECKER_REQUIRE_GV)Perl_cv_set_call_checker_flags( tsh_cv,Perl_ck_entersub_args_proto_or_list ,(SV*)tsh_cv,1); |
| 5418 | check_cc(tsh_cv, Perl_ck_entersub_args_proto_or_list, (SV*)tsh_cv, 0); |
| 5419 | if (SvMAGICAL((SV*)tsh_cv)(((SV*)tsh_cv)->sv_flags & (0x00200000|0x00400000|0x00800000 )) || SvMAGIC((SV*)tsh_cv)((XPVMG*) ((SV*)tsh_cv)->sv_any)->xmg_u.xmg_magic) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3317); |
| 5420 | #undef check_cc |
| 5421 | #line 5422 "APItest.c" |
| 5422 | } |
| 5423 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 5424 | } |
| 5425 | |
| 5426 | |
| 5427 | XS_EUPXS(XS_XS__APItest_cv_set_call_checker_lists)static void XS_XS__APItest_cv_set_call_checker_lists( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 5428 | XS_EUPXS(XS_XS__APItest_cv_set_call_checker_lists)static void XS_XS__APItest_cv_set_call_checker_lists( CV* cv __attribute__ ((unused))) |
| 5429 | { |
| 5430 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 5431 | if (items != 1) |
| 5432 | croak_xs_usagePerl_croak_xs_usage(cv, "cv"); |
| 5433 | { |
| 5434 | CV * cv; |
| 5435 | |
| 5436 | STMT_STARTdo { |
| 5437 | HV *st; |
| 5438 | GV *gvp; |
| 5439 | SV * const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 5440 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 5441 | cv = sv_2cv(xsub_tmp_sv, &st, &gvp, 0)Perl_sv_2cv( xsub_tmp_sv,&st,&gvp,0); |
| 5442 | if (!cv) { |
| 5443 | Perl_croak_nocontextPerl_croak("%s: %s is not a CODE reference", |
| 5444 | "XS::APItest::cv_set_call_checker_lists", |
| 5445 | "cv"); |
| 5446 | } |
| 5447 | } STMT_ENDwhile (0) |
| 5448 | ; |
| 5449 | #line 3323 "APItest.xs" |
| 5450 | cv_set_call_checker(cv, THX_ck_entersub_args_lists, &PL_sv_undef)Perl_cv_set_call_checker( cv,THX_ck_entersub_args_lists,& (PL_sv_immortals[1])); |
| 5451 | #line 5452 "APItest.c" |
| 5452 | } |
| 5453 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 5454 | } |
| 5455 | |
| 5456 | |
| 5457 | XS_EUPXS(XS_XS__APItest_cv_set_call_checker_scalars)static void XS_XS__APItest_cv_set_call_checker_scalars( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 5458 | XS_EUPXS(XS_XS__APItest_cv_set_call_checker_scalars)static void XS_XS__APItest_cv_set_call_checker_scalars( CV* cv __attribute__((unused))) |
| 5459 | { |
| 5460 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 5461 | if (items != 1) |
| 5462 | croak_xs_usagePerl_croak_xs_usage(cv, "cv"); |
| 5463 | { |
| 5464 | CV * cv; |
| 5465 | |
| 5466 | STMT_STARTdo { |
| 5467 | HV *st; |
| 5468 | GV *gvp; |
| 5469 | SV * const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 5470 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 5471 | cv = sv_2cv(xsub_tmp_sv, &st, &gvp, 0)Perl_sv_2cv( xsub_tmp_sv,&st,&gvp,0); |
| 5472 | if (!cv) { |
| 5473 | Perl_croak_nocontextPerl_croak("%s: %s is not a CODE reference", |
| 5474 | "XS::APItest::cv_set_call_checker_scalars", |
| 5475 | "cv"); |
| 5476 | } |
| 5477 | } STMT_ENDwhile (0) |
| 5478 | ; |
| 5479 | #line 3328 "APItest.xs" |
| 5480 | cv_set_call_checker(cv, THX_ck_entersub_args_scalars, &PL_sv_undef)Perl_cv_set_call_checker( cv,THX_ck_entersub_args_scalars,& (PL_sv_immortals[1])); |
| 5481 | #line 5482 "APItest.c" |
| 5482 | } |
| 5483 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 5484 | } |
| 5485 | |
| 5486 | |
| 5487 | XS_EUPXS(XS_XS__APItest_cv_set_call_checker_proto)static void XS_XS__APItest_cv_set_call_checker_proto( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 5488 | XS_EUPXS(XS_XS__APItest_cv_set_call_checker_proto)static void XS_XS__APItest_cv_set_call_checker_proto( CV* cv __attribute__ ((unused))) |
| 5489 | { |
| 5490 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 5491 | if (items != 2) |
| 5492 | croak_xs_usagePerl_croak_xs_usage(cv, "cv, proto"); |
| 5493 | { |
| 5494 | CV * cv; |
| 5495 | SV * proto = ST(1)PL_stack_base[ax + (1)] |
| 5496 | ; |
| 5497 | |
| 5498 | STMT_STARTdo { |
| 5499 | HV *st; |
| 5500 | GV *gvp; |
| 5501 | SV * const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 5502 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 5503 | cv = sv_2cv(xsub_tmp_sv, &st, &gvp, 0)Perl_sv_2cv( xsub_tmp_sv,&st,&gvp,0); |
| 5504 | if (!cv) { |
| 5505 | Perl_croak_nocontextPerl_croak("%s: %s is not a CODE reference", |
| 5506 | "XS::APItest::cv_set_call_checker_proto", |
| 5507 | "cv"); |
| 5508 | } |
| 5509 | } STMT_ENDwhile (0) |
| 5510 | ; |
| 5511 | #line 3333 "APItest.xs" |
| 5512 | if (SvROK(proto)((proto)->sv_flags & 0x00000800)) |
| 5513 | proto = SvRV(proto)((proto)->sv_u.svu_rv); |
| 5514 | cv_set_call_checker(cv, Perl_ck_entersub_args_proto, proto)Perl_cv_set_call_checker( cv,Perl_ck_entersub_args_proto,proto ); |
| 5515 | #line 5516 "APItest.c" |
| 5516 | } |
| 5517 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 5518 | } |
| 5519 | |
| 5520 | |
| 5521 | XS_EUPXS(XS_XS__APItest_cv_set_call_checker_proto_or_list)static void XS_XS__APItest_cv_set_call_checker_proto_or_list( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 5522 | XS_EUPXS(XS_XS__APItest_cv_set_call_checker_proto_or_list)static void XS_XS__APItest_cv_set_call_checker_proto_or_list( CV* cv __attribute__((unused))) |
| 5523 | { |
| 5524 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 5525 | if (items != 2) |
| 5526 | croak_xs_usagePerl_croak_xs_usage(cv, "cv, proto"); |
| 5527 | { |
| 5528 | CV * cv; |
| 5529 | SV * proto = ST(1)PL_stack_base[ax + (1)] |
| 5530 | ; |
| 5531 | |
| 5532 | STMT_STARTdo { |
| 5533 | HV *st; |
| 5534 | GV *gvp; |
| 5535 | SV * const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 5536 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 5537 | cv = sv_2cv(xsub_tmp_sv, &st, &gvp, 0)Perl_sv_2cv( xsub_tmp_sv,&st,&gvp,0); |
| 5538 | if (!cv) { |
| 5539 | Perl_croak_nocontextPerl_croak("%s: %s is not a CODE reference", |
| 5540 | "XS::APItest::cv_set_call_checker_proto_or_list", |
| 5541 | "cv"); |
| 5542 | } |
| 5543 | } STMT_ENDwhile (0) |
| 5544 | ; |
| 5545 | #line 3340 "APItest.xs" |
| 5546 | if (SvROK(proto)((proto)->sv_flags & 0x00000800)) |
| 5547 | proto = SvRV(proto)((proto)->sv_u.svu_rv); |
| 5548 | cv_set_call_checker(cv, Perl_ck_entersub_args_proto_or_list, proto)Perl_cv_set_call_checker( cv,Perl_ck_entersub_args_proto_or_list ,proto); |
| 5549 | #line 5550 "APItest.c" |
| 5550 | } |
| 5551 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 5552 | } |
| 5553 | |
| 5554 | |
| 5555 | XS_EUPXS(XS_XS__APItest_cv_set_call_checker_multi_sum)static void XS_XS__APItest_cv_set_call_checker_multi_sum( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 5556 | XS_EUPXS(XS_XS__APItest_cv_set_call_checker_multi_sum)static void XS_XS__APItest_cv_set_call_checker_multi_sum( CV* cv __attribute__((unused))) |
| 5557 | { |
| 5558 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 5559 | if (items != 1) |
| 5560 | croak_xs_usagePerl_croak_xs_usage(cv, "cv"); |
| 5561 | { |
| 5562 | CV * cv; |
| 5563 | |
| 5564 | STMT_STARTdo { |
| 5565 | HV *st; |
| 5566 | GV *gvp; |
| 5567 | SV * const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 5568 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 5569 | cv = sv_2cv(xsub_tmp_sv, &st, &gvp, 0)Perl_sv_2cv( xsub_tmp_sv,&st,&gvp,0); |
| 5570 | if (!cv) { |
| 5571 | Perl_croak_nocontextPerl_croak("%s: %s is not a CODE reference", |
| 5572 | "XS::APItest::cv_set_call_checker_multi_sum", |
| 5573 | "cv"); |
| 5574 | } |
| 5575 | } STMT_ENDwhile (0) |
| 5576 | ; |
| 5577 | #line 3347 "APItest.xs" |
| 5578 | cv_set_call_checker(cv, THX_ck_entersub_multi_sum, &PL_sv_undef)Perl_cv_set_call_checker( cv,THX_ck_entersub_multi_sum,&( PL_sv_immortals[1])); |
| 5579 | #line 5580 "APItest.c" |
| 5580 | } |
| 5581 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 5582 | } |
| 5583 | |
| 5584 | |
| 5585 | XS_EUPXS(XS_XS__APItest_test_cophh)static void XS_XS__APItest_test_cophh( CV* cv __attribute__(( unused))); /* prototype to pass -Wmissing-prototypes */ |
| 5586 | XS_EUPXS(XS_XS__APItest_test_cophh)static void XS_XS__APItest_test_cophh( CV* cv __attribute__(( unused))) |
| 5587 | { |
| 5588 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 5589 | if (items != 0) |
| 5590 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 5591 | { |
| 5592 | #line 3352 "APItest.xs" |
| 5593 | COPHH *a, *b; |
| 5594 | #ifdef EBCDIC |
| 5595 | SV* key_sv; |
| 5596 | char * key_name; |
| 5597 | STRLEN key_len; |
| 5598 | #endif |
| 5599 | #line 5600 "APItest.c" |
| 5600 | #line 3359 "APItest.xs" |
| 5601 | #define check_ph(EXPR) \ |
| 5602 | do { if((EXPR) != &PL_sv_placeholder) croakPerl_croak("fail"); } while(0) |
| 5603 | #define check_iv(EXPR, EXPECT) \ |
| 5604 | do { if(SvIV(EXPR)((((EXPR)->sv_flags & (0x00000100|0x00200000)) == 0x00000100 ) ? ((XPVIV*) (EXPR)->sv_any)->xiv_u.xivu_iv : Perl_sv_2iv_flags ( EXPR,2)) != (EXPECT)) croakPerl_croak("fail"); } while(0) |
| 5605 | #define msvpvs(STR) sv_2mortal(newSVpvs(STR))Perl_sv_2mortal( Perl_newSVpvn( ("" STR ""), (sizeof(STR)-1)) ) |
| 5606 | #define msviv(VALUE) sv_2mortal(newSViv(VALUE))Perl_sv_2mortal( Perl_newSViv( VALUE)) |
| 5607 | a = cophh_new_empty()((COPHH *)((void*)0)); |
| 5608 | check_ph(cophh_fetch_pvn(a, "foo_1", 5, 0, 0)Perl_refcounted_he_fetch_pvn( a, "foo_1", 5, 0, 0)); |
| 5609 | check_ph(cophh_fetch_pvs(a, "foo_1", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_1" ""), (sizeof("foo_1" )-1), 0, 0)); |
| 5610 | check_ph(cophh_fetch_pv(a, "foo_1", 0, 0)Perl_refcounted_he_fetch_pv( a, "foo_1", 0, 0)); |
| 5611 | check_ph(cophh_fetch_sv(a, msvpvs("foo_1"), 0, 0)Perl_refcounted_he_fetch_sv( a, msvpvs("foo_1"), 0, 0)); |
| 5612 | a = cophh_store_pvn(a, "foo_1abc", 5, 0, msviv(111), 0)Perl_refcounted_he_new_pvn( a, "foo_1abc", 5, 0, msviv(111), 0 ); |
| 5613 | a = cophh_store_pvs(a, "foo_2", msviv(222), 0)Perl_refcounted_he_new_pvn( a, ("" "foo_2" ""), (sizeof("foo_2" )-1), 0, msviv(222), 0); |
| 5614 | a = cophh_store_pv(a, "foo_3", 0, msviv(333), 0)Perl_refcounted_he_new_pv( a, "foo_3", 0, msviv(333), 0); |
| 5615 | a = cophh_store_sv(a, msvpvs("foo_4"), 0, msviv(444), 0)Perl_refcounted_he_new_sv( a, msvpvs("foo_4"), 0, msviv(444), 0); |
| 5616 | check_iv(cophh_fetch_pvn(a, "foo_1xyz", 5, 0, 0)Perl_refcounted_he_fetch_pvn( a, "foo_1xyz", 5, 0, 0), 111); |
| 5617 | check_iv(cophh_fetch_pvs(a, "foo_1", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_1" ""), (sizeof("foo_1" )-1), 0, 0), 111); |
| 5618 | check_iv(cophh_fetch_pv(a, "foo_1", 0, 0)Perl_refcounted_he_fetch_pv( a, "foo_1", 0, 0), 111); |
| 5619 | check_iv(cophh_fetch_sv(a, msvpvs("foo_1"), 0, 0)Perl_refcounted_he_fetch_sv( a, msvpvs("foo_1"), 0, 0), 111); |
| 5620 | check_iv(cophh_fetch_pvs(a, "foo_2", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_2" ""), (sizeof("foo_2" )-1), 0, 0), 222); |
| 5621 | check_iv(cophh_fetch_pvs(a, "foo_3", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_3" ""), (sizeof("foo_3" )-1), 0, 0), 333); |
| 5622 | check_iv(cophh_fetch_pvs(a, "foo_4", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_4" ""), (sizeof("foo_4" )-1), 0, 0), 444); |
| 5623 | check_ph(cophh_fetch_pvs(a, "foo_5", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_5" ""), (sizeof("foo_5" )-1), 0, 0)); |
| 5624 | b = cophh_copy(a)Perl_refcounted_he_inc( a); |
| 5625 | b = cophh_store_pvs(b, "foo_1", msviv(1111), 0)Perl_refcounted_he_new_pvn( b, ("" "foo_1" ""), (sizeof("foo_1" )-1), 0, msviv(1111), 0); |
| 5626 | check_iv(cophh_fetch_pvs(a, "foo_1", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_1" ""), (sizeof("foo_1" )-1), 0, 0), 111); |
| 5627 | check_iv(cophh_fetch_pvs(a, "foo_2", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_2" ""), (sizeof("foo_2" )-1), 0, 0), 222); |
| 5628 | check_iv(cophh_fetch_pvs(a, "foo_3", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_3" ""), (sizeof("foo_3" )-1), 0, 0), 333); |
| 5629 | check_iv(cophh_fetch_pvs(a, "foo_4", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_4" ""), (sizeof("foo_4" )-1), 0, 0), 444); |
| 5630 | check_ph(cophh_fetch_pvs(a, "foo_5", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_5" ""), (sizeof("foo_5" )-1), 0, 0)); |
| 5631 | check_iv(cophh_fetch_pvs(b, "foo_1", 0)Perl_refcounted_he_fetch_pvn( b, ("" "foo_1" ""), (sizeof("foo_1" )-1), 0, 0), 1111); |
| 5632 | check_iv(cophh_fetch_pvs(b, "foo_2", 0)Perl_refcounted_he_fetch_pvn( b, ("" "foo_2" ""), (sizeof("foo_2" )-1), 0, 0), 222); |
| 5633 | check_iv(cophh_fetch_pvs(b, "foo_3", 0)Perl_refcounted_he_fetch_pvn( b, ("" "foo_3" ""), (sizeof("foo_3" )-1), 0, 0), 333); |
| 5634 | check_iv(cophh_fetch_pvs(b, "foo_4", 0)Perl_refcounted_he_fetch_pvn( b, ("" "foo_4" ""), (sizeof("foo_4" )-1), 0, 0), 444); |
| 5635 | check_ph(cophh_fetch_pvs(b, "foo_5", 0)Perl_refcounted_he_fetch_pvn( b, ("" "foo_5" ""), (sizeof("foo_5" )-1), 0, 0)); |
| 5636 | a = cophh_delete_pvn(a, "foo_1abc", 5, 0, 0)Perl_refcounted_he_new_pvn( a, "foo_1abc", 5, 0, (SV *)((void *)0), 0); |
| 5637 | a = cophh_delete_pvs(a, "foo_2", 0)Perl_refcounted_he_new_pvn( a, ("" "foo_2" ""), (sizeof("foo_2" )-1), 0, (SV *)((void*)0), 0); |
| 5638 | b = cophh_delete_pv(b, "foo_3", 0, 0)Perl_refcounted_he_new_pv( b, "foo_3", 0, (SV *)((void*)0), 0 ); |
| 5639 | b = cophh_delete_sv(b, msvpvs("foo_4"), 0, 0)Perl_refcounted_he_new_sv( b, msvpvs("foo_4"), 0, (SV *)((void *)0), 0); |
| 5640 | check_ph(cophh_fetch_pvs(a, "foo_1", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_1" ""), (sizeof("foo_1" )-1), 0, 0)); |
| 5641 | check_ph(cophh_fetch_pvs(a, "foo_2", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_2" ""), (sizeof("foo_2" )-1), 0, 0)); |
| 5642 | check_iv(cophh_fetch_pvs(a, "foo_3", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_3" ""), (sizeof("foo_3" )-1), 0, 0), 333); |
| 5643 | check_iv(cophh_fetch_pvs(a, "foo_4", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_4" ""), (sizeof("foo_4" )-1), 0, 0), 444); |
| 5644 | check_ph(cophh_fetch_pvs(a, "foo_5", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_5" ""), (sizeof("foo_5" )-1), 0, 0)); |
| 5645 | check_iv(cophh_fetch_pvs(b, "foo_1", 0)Perl_refcounted_he_fetch_pvn( b, ("" "foo_1" ""), (sizeof("foo_1" )-1), 0, 0), 1111); |
| 5646 | check_iv(cophh_fetch_pvs(b, "foo_2", 0)Perl_refcounted_he_fetch_pvn( b, ("" "foo_2" ""), (sizeof("foo_2" )-1), 0, 0), 222); |
| 5647 | check_ph(cophh_fetch_pvs(b, "foo_3", 0)Perl_refcounted_he_fetch_pvn( b, ("" "foo_3" ""), (sizeof("foo_3" )-1), 0, 0)); |
| 5648 | check_ph(cophh_fetch_pvs(b, "foo_4", 0)Perl_refcounted_he_fetch_pvn( b, ("" "foo_4" ""), (sizeof("foo_4" )-1), 0, 0)); |
| 5649 | check_ph(cophh_fetch_pvs(b, "foo_5", 0)Perl_refcounted_he_fetch_pvn( b, ("" "foo_5" ""), (sizeof("foo_5" )-1), 0, 0)); |
| 5650 | b = cophh_delete_pvs(b, "foo_3", 0)Perl_refcounted_he_new_pvn( b, ("" "foo_3" ""), (sizeof("foo_3" )-1), 0, (SV *)((void*)0), 0); |
| 5651 | b = cophh_delete_pvs(b, "foo_5", 0)Perl_refcounted_he_new_pvn( b, ("" "foo_5" ""), (sizeof("foo_5" )-1), 0, (SV *)((void*)0), 0); |
| 5652 | check_iv(cophh_fetch_pvs(b, "foo_1", 0)Perl_refcounted_he_fetch_pvn( b, ("" "foo_1" ""), (sizeof("foo_1" )-1), 0, 0), 1111); |
| 5653 | check_iv(cophh_fetch_pvs(b, "foo_2", 0)Perl_refcounted_he_fetch_pvn( b, ("" "foo_2" ""), (sizeof("foo_2" )-1), 0, 0), 222); |
| 5654 | check_ph(cophh_fetch_pvs(b, "foo_3", 0)Perl_refcounted_he_fetch_pvn( b, ("" "foo_3" ""), (sizeof("foo_3" )-1), 0, 0)); |
| 5655 | check_ph(cophh_fetch_pvs(b, "foo_4", 0)Perl_refcounted_he_fetch_pvn( b, ("" "foo_4" ""), (sizeof("foo_4" )-1), 0, 0)); |
| 5656 | check_ph(cophh_fetch_pvs(b, "foo_5", 0)Perl_refcounted_he_fetch_pvn( b, ("" "foo_5" ""), (sizeof("foo_5" )-1), 0, 0)); |
| 5657 | cophh_free(b)Perl_refcounted_he_free( b); |
| 5658 | check_ph(cophh_fetch_pvs(a, "foo_1", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_1" ""), (sizeof("foo_1" )-1), 0, 0)); |
| 5659 | check_ph(cophh_fetch_pvs(a, "foo_2", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_2" ""), (sizeof("foo_2" )-1), 0, 0)); |
| 5660 | check_iv(cophh_fetch_pvs(a, "foo_3", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_3" ""), (sizeof("foo_3" )-1), 0, 0), 333); |
| 5661 | check_iv(cophh_fetch_pvs(a, "foo_4", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_4" ""), (sizeof("foo_4" )-1), 0, 0), 444); |
| 5662 | check_ph(cophh_fetch_pvs(a, "foo_5", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_5" ""), (sizeof("foo_5" )-1), 0, 0)); |
| 5663 | a = cophh_store_pvs(a, "foo_1", msviv(11111), COPHH_KEY_UTF8)Perl_refcounted_he_new_pvn( a, ("" "foo_1" ""), (sizeof("foo_1" )-1), 0, msviv(11111), 0x00000001); |
| 5664 | a = cophh_store_pvs(a, "foo_\xaa", msviv(123), 0)Perl_refcounted_he_new_pvn( a, ("" "foo_\xaa" ""), (sizeof("foo_\xaa" )-1), 0, msviv(123), 0); |
| 5665 | #ifndef EBCDIC |
| 5666 | a = cophh_store_pvs(a, "foo_\xc2\xbb", msviv(456), COPHH_KEY_UTF8)Perl_refcounted_he_new_pvn( a, ("" "foo_\xc2\xbb" ""), (sizeof ("foo_\xc2\xbb")-1), 0, msviv(456), 0x00000001); |
| 5667 | #else |
| 5668 | /* On EBCDIC, we need to translate the UTF-8 in the ASCII test to the |
| 5669 | * equivalent UTF-EBCDIC for the code page. This is done at runtime |
| 5670 | * (with the helper function in this file). Therefore we can't use |
| 5671 | * cophhh_store_pvs(), as we don't have literal string */ |
| 5672 | key_sv = sv_2mortal(newSVpvs("foo_"))Perl_sv_2mortal( Perl_newSVpvn( ("" "foo_" ""), (sizeof("foo_" )-1))); |
| 5673 | cat_utf8a2n(key_sv, STR_WITH_LEN("\xc2\xbb")("" "\xc2\xbb" ""), (sizeof("\xc2\xbb")-1)); |
| 5674 | key_name = SvPV(key_sv, key_len)((((key_sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((key_len = ((XPV*) (key_sv)->sv_any)->xpv_cur), (( key_sv)->sv_u.svu_pv)) : Perl_sv_2pv_flags( key_sv,&key_len ,2)); |
| 5675 | a = cophh_store_pvn(a, key_name, key_len, 0, msviv(456), COPHH_KEY_UTF8)Perl_refcounted_he_new_pvn( a, key_name, key_len, 0, msviv(456 ), 0x00000001); |
| 5676 | #endif |
| 5677 | #ifndef EBCDIC |
| 5678 | a = cophh_store_pvs(a, "foo_\xc3\x8c", msviv(789), COPHH_KEY_UTF8)Perl_refcounted_he_new_pvn( a, ("" "foo_\xc3\x8c" ""), (sizeof ("foo_\xc3\x8c")-1), 0, msviv(789), 0x00000001); |
| 5679 | #else |
| 5680 | sv_setpvs(key_sv, "foo_")Perl_sv_setpvn( key_sv, ("" "foo_" ""), (sizeof("foo_")-1)); |
| 5681 | cat_utf8a2n(key_sv, STR_WITH_LEN("\xc3\x8c")("" "\xc3\x8c" ""), (sizeof("\xc3\x8c")-1)); |
| 5682 | key_name = SvPV(key_sv, key_len)((((key_sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((key_len = ((XPV*) (key_sv)->sv_any)->xpv_cur), (( key_sv)->sv_u.svu_pv)) : Perl_sv_2pv_flags( key_sv,&key_len ,2)); |
| 5683 | a = cophh_store_pvn(a, key_name, key_len, 0, msviv(789), COPHH_KEY_UTF8)Perl_refcounted_he_new_pvn( a, key_name, key_len, 0, msviv(789 ), 0x00000001); |
| 5684 | #endif |
| 5685 | #ifndef EBCDIC |
| 5686 | a = cophh_store_pvs(a, "foo_\xd9\xa6", msviv(666), COPHH_KEY_UTF8)Perl_refcounted_he_new_pvn( a, ("" "foo_\xd9\xa6" ""), (sizeof ("foo_\xd9\xa6")-1), 0, msviv(666), 0x00000001); |
| 5687 | #else |
| 5688 | sv_setpvs(key_sv, "foo_")Perl_sv_setpvn( key_sv, ("" "foo_" ""), (sizeof("foo_")-1)); |
| 5689 | cat_utf8a2n(key_sv, STR_WITH_LEN("\xd9\xa6")("" "\xd9\xa6" ""), (sizeof("\xd9\xa6")-1)); |
| 5690 | key_name = SvPV(key_sv, key_len)((((key_sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((key_len = ((XPV*) (key_sv)->sv_any)->xpv_cur), (( key_sv)->sv_u.svu_pv)) : Perl_sv_2pv_flags( key_sv,&key_len ,2)); |
| 5691 | a = cophh_store_pvn(a, key_name, key_len, 0, msviv(666), COPHH_KEY_UTF8)Perl_refcounted_he_new_pvn( a, key_name, key_len, 0, msviv(666 ), 0x00000001); |
| 5692 | #endif |
| 5693 | check_iv(cophh_fetch_pvs(a, "foo_1", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_1" ""), (sizeof("foo_1" )-1), 0, 0), 11111); |
| 5694 | check_iv(cophh_fetch_pvs(a, "foo_1", COPHH_KEY_UTF8)Perl_refcounted_he_fetch_pvn( a, ("" "foo_1" ""), (sizeof("foo_1" )-1), 0, 0x00000001), 11111); |
| 5695 | check_iv(cophh_fetch_pvs(a, "foo_\xaa", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_\xaa" ""), (sizeof( "foo_\xaa")-1), 0, 0), 123); |
| 5696 | #ifndef EBCDIC |
| 5697 | check_iv(cophh_fetch_pvs(a, "foo_\xc2\xaa", COPHH_KEY_UTF8)Perl_refcounted_he_fetch_pvn( a, ("" "foo_\xc2\xaa" ""), (sizeof ("foo_\xc2\xaa")-1), 0, 0x00000001), 123); |
| 5698 | check_ph(cophh_fetch_pvs(a, "foo_\xc2\xaa", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_\xc2\xaa" ""), (sizeof ("foo_\xc2\xaa")-1), 0, 0)); |
| 5699 | #else |
| 5700 | sv_setpvs(key_sv, "foo_")Perl_sv_setpvn( key_sv, ("" "foo_" ""), (sizeof("foo_")-1)); |
| 5701 | cat_utf8a2n(key_sv, STR_WITH_LEN("\xc2\xaa")("" "\xc2\xaa" ""), (sizeof("\xc2\xaa")-1)); |
| 5702 | key_name = SvPV(key_sv, key_len)((((key_sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((key_len = ((XPV*) (key_sv)->sv_any)->xpv_cur), (( key_sv)->sv_u.svu_pv)) : Perl_sv_2pv_flags( key_sv,&key_len ,2)); |
| 5703 | check_iv(cophh_fetch_pvn(a, key_name, key_len, 0, COPHH_KEY_UTF8)Perl_refcounted_he_fetch_pvn( a, key_name, key_len, 0, 0x00000001 ), 123); |
| 5704 | check_ph(cophh_fetch_pvn(a, key_name, key_len, 0, 0)Perl_refcounted_he_fetch_pvn( a, key_name, key_len, 0, 0)); |
| 5705 | #endif |
| 5706 | check_iv(cophh_fetch_pvs(a, "foo_\xbb", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_\xbb" ""), (sizeof( "foo_\xbb")-1), 0, 0), 456); |
| 5707 | #ifndef EBCDIC |
| 5708 | check_iv(cophh_fetch_pvs(a, "foo_\xc2\xbb", COPHH_KEY_UTF8)Perl_refcounted_he_fetch_pvn( a, ("" "foo_\xc2\xbb" ""), (sizeof ("foo_\xc2\xbb")-1), 0, 0x00000001), 456); |
| 5709 | check_ph(cophh_fetch_pvs(a, "foo_\xc2\xbb", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_\xc2\xbb" ""), (sizeof ("foo_\xc2\xbb")-1), 0, 0)); |
| 5710 | #else |
| 5711 | sv_setpvs(key_sv, "foo_")Perl_sv_setpvn( key_sv, ("" "foo_" ""), (sizeof("foo_")-1)); |
| 5712 | cat_utf8a2n(key_sv, STR_WITH_LEN("\xc2\xbb")("" "\xc2\xbb" ""), (sizeof("\xc2\xbb")-1)); |
| 5713 | key_name = SvPV(key_sv, key_len)((((key_sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((key_len = ((XPV*) (key_sv)->sv_any)->xpv_cur), (( key_sv)->sv_u.svu_pv)) : Perl_sv_2pv_flags( key_sv,&key_len ,2)); |
| 5714 | check_iv(cophh_fetch_pvn(a, key_name, key_len, 0, COPHH_KEY_UTF8)Perl_refcounted_he_fetch_pvn( a, key_name, key_len, 0, 0x00000001 ), 456); |
| 5715 | check_ph(cophh_fetch_pvn(a, key_name, key_len, 0, 0)Perl_refcounted_he_fetch_pvn( a, key_name, key_len, 0, 0)); |
| 5716 | #endif |
| 5717 | check_iv(cophh_fetch_pvs(a, "foo_\xcc", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_\xcc" ""), (sizeof( "foo_\xcc")-1), 0, 0), 789); |
| 5718 | #ifndef EBCDIC |
| 5719 | check_iv(cophh_fetch_pvs(a, "foo_\xc3\x8c", COPHH_KEY_UTF8)Perl_refcounted_he_fetch_pvn( a, ("" "foo_\xc3\x8c" ""), (sizeof ("foo_\xc3\x8c")-1), 0, 0x00000001), 789); |
| 5720 | check_ph(cophh_fetch_pvs(a, "foo_\xc2\x8c", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_\xc2\x8c" ""), (sizeof ("foo_\xc2\x8c")-1), 0, 0)); |
| 5721 | #else |
| 5722 | sv_setpvs(key_sv, "foo_")Perl_sv_setpvn( key_sv, ("" "foo_" ""), (sizeof("foo_")-1)); |
| 5723 | cat_utf8a2n(key_sv, STR_WITH_LEN("\xc3\x8c")("" "\xc3\x8c" ""), (sizeof("\xc3\x8c")-1)); |
| 5724 | key_name = SvPV(key_sv, key_len)((((key_sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((key_len = ((XPV*) (key_sv)->sv_any)->xpv_cur), (( key_sv)->sv_u.svu_pv)) : Perl_sv_2pv_flags( key_sv,&key_len ,2)); |
| 5725 | check_iv(cophh_fetch_pvn(a, key_name, key_len, 0, COPHH_KEY_UTF8)Perl_refcounted_he_fetch_pvn( a, key_name, key_len, 0, 0x00000001 ), 789); |
| 5726 | check_ph(cophh_fetch_pvn(a, key_name, key_len, 0, 0)Perl_refcounted_he_fetch_pvn( a, key_name, key_len, 0, 0)); |
| 5727 | #endif |
| 5728 | #ifndef EBCDIC |
| 5729 | check_iv(cophh_fetch_pvs(a, "foo_\xd9\xa6", COPHH_KEY_UTF8)Perl_refcounted_he_fetch_pvn( a, ("" "foo_\xd9\xa6" ""), (sizeof ("foo_\xd9\xa6")-1), 0, 0x00000001), 666); |
| 5730 | check_ph(cophh_fetch_pvs(a, "foo_\xd9\xa6", 0)Perl_refcounted_he_fetch_pvn( a, ("" "foo_\xd9\xa6" ""), (sizeof ("foo_\xd9\xa6")-1), 0, 0)); |
| 5731 | #else |
| 5732 | sv_setpvs(key_sv, "foo_")Perl_sv_setpvn( key_sv, ("" "foo_" ""), (sizeof("foo_")-1)); |
| 5733 | cat_utf8a2n(key_sv, STR_WITH_LEN("\xd9\xa6")("" "\xd9\xa6" ""), (sizeof("\xd9\xa6")-1)); |
| 5734 | key_name = SvPV(key_sv, key_len)((((key_sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((key_len = ((XPV*) (key_sv)->sv_any)->xpv_cur), (( key_sv)->sv_u.svu_pv)) : Perl_sv_2pv_flags( key_sv,&key_len ,2)); |
| 5735 | check_iv(cophh_fetch_pvn(a, key_name, key_len, 0, COPHH_KEY_UTF8)Perl_refcounted_he_fetch_pvn( a, key_name, key_len, 0, 0x00000001 ), 666); |
| 5736 | check_ph(cophh_fetch_pvn(a, key_name, key_len, 0, 0)Perl_refcounted_he_fetch_pvn( a, key_name, key_len, 0, 0)); |
| 5737 | #endif |
| 5738 | ENTERPerl_push_scope(); |
| 5739 | SAVEFREECOPHH(a)Perl_save_pushptr( (void *)(a),8); |
| 5740 | LEAVEPerl_pop_scope(); |
| 5741 | #undef check_ph |
| 5742 | #undef check_iv |
| 5743 | #undef msvpvs |
| 5744 | #undef msviv |
| 5745 | #line 5746 "APItest.c" |
| 5746 | } |
| 5747 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 5748 | } |
| 5749 | |
| 5750 | |
| 5751 | XS_EUPXS(XS_XS__APItest_test_coplabel)static void XS_XS__APItest_test_coplabel( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 5752 | XS_EUPXS(XS_XS__APItest_test_coplabel)static void XS_XS__APItest_test_coplabel( CV* cv __attribute__ ((unused))) |
| 5753 | { |
| 5754 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 5755 | if (items != 0) |
| 5756 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 5757 | { |
| 5758 | #line 3507 "APItest.xs" |
| 5759 | COP *cop; |
| 5760 | const char *label; |
| 5761 | STRLEN len; |
| 5762 | U32 utf8; |
| 5763 | #line 5764 "APItest.c" |
| 5764 | #line 3512 "APItest.xs" |
| 5765 | cop = &PL_compiling; |
| 5766 | Perl_cop_store_label(aTHX_ cop, "foo", 3, 0); |
| 5767 | label = Perl_cop_fetch_label(aTHX_ cop, &len, &utf8); |
| 5768 | if (strNE(label,"foo")(strcmp(label,"foo") != 0)) croakPerl_croak("fail # cop_fetch_label label"); |
| 5769 | if (len != 3) croakPerl_croak("fail # cop_fetch_label len"); |
| 5770 | if (utf8) croakPerl_croak("fail # cop_fetch_label utf8"); |
| 5771 | /* SMALL GERMAN UMLAUT A */ |
| 5772 | Perl_cop_store_label(aTHX_ cop, "fo\xc3\xa4", 4, SVf_UTF80x20000000); |
| 5773 | label = Perl_cop_fetch_label(aTHX_ cop, &len, &utf8); |
| 5774 | if (strNE(label,"fo\xc3\xa4")(strcmp(label,"fo\xc3\xa4") != 0)) croakPerl_croak("fail # cop_fetch_label label"); |
| 5775 | if (len != 4) croakPerl_croak("fail # cop_fetch_label len"); |
| 5776 | if (!utf8) croakPerl_croak("fail # cop_fetch_label utf8"); |
| 5777 | #line 5778 "APItest.c" |
| 5778 | } |
| 5779 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 5780 | } |
| 5781 | |
| 5782 | |
| 5783 | XS_EUPXS(XS_XS__APItest_example_cophh_2hv)static void XS_XS__APItest_example_cophh_2hv( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 5784 | XS_EUPXS(XS_XS__APItest_example_cophh_2hv)static void XS_XS__APItest_example_cophh_2hv( CV* cv __attribute__ ((unused))) |
| 5785 | { |
| 5786 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 5787 | if (items != 0) |
| 5788 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 5789 | { |
| 5790 | #line 3529 "APItest.xs" |
| 5791 | COPHH *a; |
| 5792 | #ifdef EBCDIC |
| 5793 | SV* key_sv; |
| 5794 | char * key_name; |
| 5795 | STRLEN key_len; |
| 5796 | #endif |
| 5797 | #line 5798 "APItest.c" |
| 5798 | HV * RETVAL; |
| 5799 | #line 3536 "APItest.xs" |
| 5800 | #define msviv(VALUE) sv_2mortal(newSViv(VALUE))Perl_sv_2mortal( Perl_newSViv( VALUE)) |
| 5801 | a = cophh_new_empty()((COPHH *)((void*)0)); |
| 5802 | a = cophh_store_pvs(a, "foo_0", msviv(999), 0)Perl_refcounted_he_new_pvn( a, ("" "foo_0" ""), (sizeof("foo_0" )-1), 0, msviv(999), 0); |
| 5803 | a = cophh_store_pvs(a, "foo_1", msviv(111), 0)Perl_refcounted_he_new_pvn( a, ("" "foo_1" ""), (sizeof("foo_1" )-1), 0, msviv(111), 0); |
| 5804 | a = cophh_store_pvs(a, "foo_\xaa", msviv(123), 0)Perl_refcounted_he_new_pvn( a, ("" "foo_\xaa" ""), (sizeof("foo_\xaa" )-1), 0, msviv(123), 0); |
| 5805 | #ifndef EBCDIC |
| 5806 | a = cophh_store_pvs(a, "foo_\xc2\xbb", msviv(456), COPHH_KEY_UTF8)Perl_refcounted_he_new_pvn( a, ("" "foo_\xc2\xbb" ""), (sizeof ("foo_\xc2\xbb")-1), 0, msviv(456), 0x00000001); |
| 5807 | #else |
| 5808 | key_sv = sv_2mortal(newSVpvs("foo_"))Perl_sv_2mortal( Perl_newSVpvn( ("" "foo_" ""), (sizeof("foo_" )-1))); |
| 5809 | cat_utf8a2n(key_sv, STR_WITH_LEN("\xc2\xbb")("" "\xc2\xbb" ""), (sizeof("\xc2\xbb")-1)); |
| 5810 | key_name = SvPV(key_sv, key_len)((((key_sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((key_len = ((XPV*) (key_sv)->sv_any)->xpv_cur), (( key_sv)->sv_u.svu_pv)) : Perl_sv_2pv_flags( key_sv,&key_len ,2)); |
| 5811 | a = cophh_store_pvn(a, key_name, key_len, 0, msviv(456), COPHH_KEY_UTF8)Perl_refcounted_he_new_pvn( a, key_name, key_len, 0, msviv(456 ), 0x00000001); |
| 5812 | #endif |
| 5813 | #ifndef EBCDIC |
| 5814 | a = cophh_store_pvs(a, "foo_\xc3\x8c", msviv(789), COPHH_KEY_UTF8)Perl_refcounted_he_new_pvn( a, ("" "foo_\xc3\x8c" ""), (sizeof ("foo_\xc3\x8c")-1), 0, msviv(789), 0x00000001); |
| 5815 | #else |
| 5816 | sv_setpvs(key_sv, "foo_")Perl_sv_setpvn( key_sv, ("" "foo_" ""), (sizeof("foo_")-1)); |
| 5817 | cat_utf8a2n(key_sv, STR_WITH_LEN("\xc3\x8c")("" "\xc3\x8c" ""), (sizeof("\xc3\x8c")-1)); |
| 5818 | key_name = SvPV(key_sv, key_len)((((key_sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((key_len = ((XPV*) (key_sv)->sv_any)->xpv_cur), (( key_sv)->sv_u.svu_pv)) : Perl_sv_2pv_flags( key_sv,&key_len ,2)); |
| 5819 | a = cophh_store_pvn(a, key_name, key_len, 0, msviv(789), COPHH_KEY_UTF8)Perl_refcounted_he_new_pvn( a, key_name, key_len, 0, msviv(789 ), 0x00000001); |
| 5820 | #endif |
| 5821 | #ifndef EBCDIC |
| 5822 | a = cophh_store_pvs(a, "foo_\xd9\xa6", msviv(666), COPHH_KEY_UTF8)Perl_refcounted_he_new_pvn( a, ("" "foo_\xd9\xa6" ""), (sizeof ("foo_\xd9\xa6")-1), 0, msviv(666), 0x00000001); |
| 5823 | #else |
| 5824 | sv_setpvs(key_sv, "foo_")Perl_sv_setpvn( key_sv, ("" "foo_" ""), (sizeof("foo_")-1)); |
| 5825 | cat_utf8a2n(key_sv, STR_WITH_LEN("\xd9\xa6")("" "\xd9\xa6" ""), (sizeof("\xd9\xa6")-1)); |
| 5826 | key_name = SvPV(key_sv, key_len)((((key_sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((key_len = ((XPV*) (key_sv)->sv_any)->xpv_cur), (( key_sv)->sv_u.svu_pv)) : Perl_sv_2pv_flags( key_sv,&key_len ,2)); |
| 5827 | a = cophh_store_pvn(a, key_name, key_len, 0, msviv(666), COPHH_KEY_UTF8)Perl_refcounted_he_new_pvn( a, key_name, key_len, 0, msviv(666 ), 0x00000001); |
| 5828 | #endif |
| 5829 | a = cophh_delete_pvs(a, "foo_0", 0)Perl_refcounted_he_new_pvn( a, ("" "foo_0" ""), (sizeof("foo_0" )-1), 0, (SV *)((void*)0), 0); |
| 5830 | a = cophh_delete_pvs(a, "foo_2", 0)Perl_refcounted_he_new_pvn( a, ("" "foo_2" ""), (sizeof("foo_2" )-1), 0, (SV *)((void*)0), 0); |
| 5831 | RETVAL = cophh_2hv(a, 0)Perl_refcounted_he_chain_2hv( a, 0); |
| 5832 | cophh_free(a)Perl_refcounted_he_free( a); |
| 5833 | #undef msviv |
| 5834 | #line 5835 "APItest.c" |
| 5835 | { |
| 5836 | SV * RETVALSV; |
| 5837 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 5838 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 5839 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 5840 | } |
| 5841 | } |
| 5842 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 5843 | } |
| 5844 | |
| 5845 | |
| 5846 | XS_EUPXS(XS_XS__APItest_test_savehints)static void XS_XS__APItest_test_savehints( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 5847 | XS_EUPXS(XS_XS__APItest_test_savehints)static void XS_XS__APItest_test_savehints( CV* cv __attribute__ ((unused))) |
| 5848 | { |
| 5849 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 5850 | if (items != 0) |
| 5851 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 5852 | { |
| 5853 | #line 3576 "APItest.xs" |
| 5854 | SV **svp, *sv; |
| 5855 | #line 5856 "APItest.c" |
| 5856 | #line 3578 "APItest.xs" |
| 5857 | #define store_hint(KEY, VALUE) \ |
| 5858 | sv_setiv_mg(*hv_fetchs(GvHV(PL_hintgv), KEY, 1), (VALUE))Perl_sv_setiv_mg( *((SV**) Perl_hv_common_key_len( (((((0+(PL_hintgv )->sv_u.svu_gp))->gp_hv))),(("" KEY "")),((sizeof(KEY)- 1)),((1)) ? (0x20 | 0x10) : 0x20,((void*)0),0)),(VALUE)) |
| 5859 | #define hint_ok(KEY, EXPECT) \ |
| 5860 | ((svp = hv_fetchs(GvHV(PL_hintgv), KEY, 0)((SV**) Perl_hv_common_key_len( (((((0+(PL_hintgv)->sv_u.svu_gp ))->gp_hv))),(("" KEY "")),((sizeof(KEY)-1)),((0)) ? (0x20 | 0x10) : 0x20,((void*)0),0))) && \ |
| 5861 | (sv = *svp) && SvIV(sv)((((sv)->sv_flags & (0x00000100|0x00200000)) == 0x00000100 ) ? ((XPVIV*) (sv)->sv_any)->xiv_u.xivu_iv : Perl_sv_2iv_flags ( sv,2)) == (EXPECT) && \ |
| 5862 | (sv = cop_hints_fetch_pvs(&PL_compiling, KEY, 0)Perl_refcounted_he_fetch_pvn( ((COPHH*)((&PL_compiling)-> cop_hints_hash)), ("" KEY ""), (sizeof(KEY)-1), 0, 0)) && \ |
| 5863 | SvIV(sv)((((sv)->sv_flags & (0x00000100|0x00200000)) == 0x00000100 ) ? ((XPVIV*) (sv)->sv_any)->xiv_u.xivu_iv : Perl_sv_2iv_flags ( sv,2)) == (EXPECT)) |
| 5864 | #define check_hint(KEY, EXPECT) \ |
| 5865 | do { if (!hint_ok(KEY, EXPECT)) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3586); } while(0) |
| 5866 | PL_hintsPL_compiling.cop_hints |= HINT_LOCALIZE_HH0x00020000; |
| 5867 | ENTERPerl_push_scope(); |
| 5868 | SAVEHINTS()Perl_save_hints(); |
| 5869 | PL_hintsPL_compiling.cop_hints &= HINT_INTEGER0x00000001; |
| 5870 | store_hint("t0", 123); |
| 5871 | store_hint("t1", 456); |
| 5872 | if (PL_hintsPL_compiling.cop_hints & HINT_INTEGER0x00000001) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3593); |
| 5873 | check_hint("t0", 123); check_hint("t1", 456); |
| 5874 | ENTERPerl_push_scope(); |
| 5875 | SAVEHINTS()Perl_save_hints(); |
| 5876 | if (PL_hintsPL_compiling.cop_hints & HINT_INTEGER0x00000001) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3597); |
| 5877 | check_hint("t0", 123); check_hint("t1", 456); |
| 5878 | PL_hintsPL_compiling.cop_hints |= HINT_INTEGER0x00000001; |
| 5879 | store_hint("t0", 321); |
| 5880 | if (!(PL_hintsPL_compiling.cop_hints & HINT_INTEGER0x00000001)) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3601); |
| 5881 | check_hint("t0", 321); check_hint("t1", 456); |
| 5882 | LEAVEPerl_pop_scope(); |
| 5883 | if (PL_hintsPL_compiling.cop_hints & HINT_INTEGER0x00000001) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3604); |
| 5884 | check_hint("t0", 123); check_hint("t1", 456); |
| 5885 | ENTERPerl_push_scope(); |
| 5886 | SAVEHINTS()Perl_save_hints(); |
| 5887 | if (PL_hintsPL_compiling.cop_hints & HINT_INTEGER0x00000001) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3608); |
| 5888 | check_hint("t0", 123); check_hint("t1", 456); |
| 5889 | store_hint("t1", 654); |
| 5890 | if (PL_hintsPL_compiling.cop_hints & HINT_INTEGER0x00000001) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3611); |
| 5891 | check_hint("t0", 123); check_hint("t1", 654); |
| 5892 | LEAVEPerl_pop_scope(); |
| 5893 | if (PL_hintsPL_compiling.cop_hints & HINT_INTEGER0x00000001) croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3614); |
| 5894 | check_hint("t0", 123); check_hint("t1", 456); |
| 5895 | LEAVEPerl_pop_scope(); |
| 5896 | #undef store_hint |
| 5897 | #undef hint_ok |
| 5898 | #undef check_hint |
| 5899 | #line 5900 "APItest.c" |
| 5900 | } |
| 5901 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 5902 | } |
| 5903 | |
| 5904 | |
| 5905 | XS_EUPXS(XS_XS__APItest_test_copyhints)static void XS_XS__APItest_test_copyhints( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 5906 | XS_EUPXS(XS_XS__APItest_test_copyhints)static void XS_XS__APItest_test_copyhints( CV* cv __attribute__ ((unused))) |
| 5907 | { |
| 5908 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 5909 | if (items != 0) |
| 5910 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 5911 | { |
| 5912 | #line 3624 "APItest.xs" |
| 5913 | HV *a, *b; |
| 5914 | #line 5915 "APItest.c" |
| 5915 | #line 3626 "APItest.xs" |
| 5916 | PL_hintsPL_compiling.cop_hints |= HINT_LOCALIZE_HH0x00020000; |
| 5917 | ENTERPerl_push_scope(); |
| 5918 | SAVEHINTS()Perl_save_hints(); |
| 5919 | sv_setiv_mg(*hv_fetchs(GvHV(PL_hintgv), "t0", 1), 123)Perl_sv_setiv_mg( *((SV**) Perl_hv_common_key_len( (((((0+(PL_hintgv )->sv_u.svu_gp))->gp_hv))),(("" "t0" "")),((sizeof("t0" )-1)),((1)) ? (0x20 | 0x10) : 0x20,((void*)0),0)),123); |
| 5920 | if (SvIV(cop_hints_fetch_pvs(&PL_compiling, "t0", 0))((((Perl_refcounted_he_fetch_pvn( ((COPHH*)((&PL_compiling )->cop_hints_hash)), ("" "t0" ""), (sizeof("t0")-1), 0, 0) )->sv_flags & (0x00000100|0x00200000)) == 0x00000100) ? ((XPVIV*) (Perl_refcounted_he_fetch_pvn( ((COPHH*)((&PL_compiling )->cop_hints_hash)), ("" "t0" ""), (sizeof("t0")-1), 0, 0) )->sv_any)->xiv_u.xivu_iv : Perl_sv_2iv_flags( Perl_refcounted_he_fetch_pvn ( ((COPHH*)((&PL_compiling)->cop_hints_hash)), ("" "t0" ""), (sizeof("t0")-1), 0, 0),2)) != 123) |
| 5921 | croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3631); |
| 5922 | a = newHVhv(GvHV(PL_hintgv))Perl_newHVhv( (((0+(PL_hintgv)->sv_u.svu_gp))->gp_hv)); |
| 5923 | sv_2mortal((SV*)a)Perl_sv_2mortal( (SV*)a); |
| 5924 | sv_setiv_mg(*hv_fetchs(a, "t0", 1), 456)Perl_sv_setiv_mg( *((SV**) Perl_hv_common_key_len( ((a)),(("" "t0" "")),((sizeof("t0")-1)),((1)) ? (0x20 | 0x10) : 0x20,(( void*)0),0)),456); |
| 5925 | if (SvIV(cop_hints_fetch_pvs(&PL_compiling, "t0", 0))((((Perl_refcounted_he_fetch_pvn( ((COPHH*)((&PL_compiling )->cop_hints_hash)), ("" "t0" ""), (sizeof("t0")-1), 0, 0) )->sv_flags & (0x00000100|0x00200000)) == 0x00000100) ? ((XPVIV*) (Perl_refcounted_he_fetch_pvn( ((COPHH*)((&PL_compiling )->cop_hints_hash)), ("" "t0" ""), (sizeof("t0")-1), 0, 0) )->sv_any)->xiv_u.xivu_iv : Perl_sv_2iv_flags( Perl_refcounted_he_fetch_pvn ( ((COPHH*)((&PL_compiling)->cop_hints_hash)), ("" "t0" ""), (sizeof("t0")-1), 0, 0),2)) != 123) |
| 5926 | croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3636); |
| 5927 | b = hv_copy_hints_hv(a)Perl_hv_copy_hints_hv( a); |
| 5928 | sv_2mortal((SV*)b)Perl_sv_2mortal( (SV*)b); |
| 5929 | sv_setiv_mg(*hv_fetchs(b, "t0", 1), 789)Perl_sv_setiv_mg( *((SV**) Perl_hv_common_key_len( ((b)),(("" "t0" "")),((sizeof("t0")-1)),((1)) ? (0x20 | 0x10) : 0x20,(( void*)0),0)),789); |
| 5930 | if (SvIV(cop_hints_fetch_pvs(&PL_compiling, "t0", 0))((((Perl_refcounted_he_fetch_pvn( ((COPHH*)((&PL_compiling )->cop_hints_hash)), ("" "t0" ""), (sizeof("t0")-1), 0, 0) )->sv_flags & (0x00000100|0x00200000)) == 0x00000100) ? ((XPVIV*) (Perl_refcounted_he_fetch_pvn( ((COPHH*)((&PL_compiling )->cop_hints_hash)), ("" "t0" ""), (sizeof("t0")-1), 0, 0) )->sv_any)->xiv_u.xivu_iv : Perl_sv_2iv_flags( Perl_refcounted_he_fetch_pvn ( ((COPHH*)((&PL_compiling)->cop_hints_hash)), ("" "t0" ""), (sizeof("t0")-1), 0, 0),2)) != 789) |
| 5931 | croak_fail()Perl_croak("fail at " "APItest.xs" " line %d", 3641); |
| 5932 | LEAVEPerl_pop_scope(); |
| 5933 | #line 5934 "APItest.c" |
| 5934 | } |
| 5935 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 5936 | } |
| 5937 | |
| 5938 | |
| 5939 | XS_EUPXS(XS_XS__APItest_test_op_list)static void XS_XS__APItest_test_op_list( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 5940 | XS_EUPXS(XS_XS__APItest_test_op_list)static void XS_XS__APItest_test_op_list( CV* cv __attribute__ ((unused))) |
| 5941 | { |
| 5942 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 5943 | if (items != 0) |
| 5944 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 5945 | { |
| 5946 | #line 3647 "APItest.xs" |
| 5947 | OP *a; |
| 5948 | #line 5949 "APItest.c" |
| 5949 | #line 3649 "APItest.xs" |
| 5950 | #define iv_op(iv) newSVOP(OP_CONST, 0, newSViv(iv))Perl_newSVOP( OP_CONST,0,Perl_newSViv( iv)) |
| 5951 | #define check_op(o, expect) \ |
| 5952 | do { \ |
| 5953 | if (strNE(test_op_list_describe(o), (expect))(strcmp(test_op_list_describe(o),(expect)) != 0)) \ |
| 5954 | croakPerl_croak("fail %s %s", test_op_list_describe(o), (expect)); \ |
| 5955 | } while(0) |
| 5956 | a = op_append_elem(OP_LIST, NULL, NULL)Perl_op_append_elem( OP_LIST,((void*)0),((void*)0)); |
| 5957 | check_op(a, ""); |
| 5958 | a = op_append_elem(OP_LIST, iv_op(1), a)Perl_op_append_elem( OP_LIST,iv_op(1),a); |
| 5959 | check_op(a, "const(1)."); |
| 5960 | a = op_append_elem(OP_LIST, NULL, a)Perl_op_append_elem( OP_LIST,((void*)0),a); |
| 5961 | check_op(a, "const(1)."); |
| 5962 | a = op_append_elem(OP_LIST, a, iv_op(2))Perl_op_append_elem( OP_LIST,a,iv_op(2)); |
| 5963 | check_op(a, "list[pushmark.const(1).const(2).]"); |
| 5964 | a = op_append_elem(OP_LIST, a, iv_op(3))Perl_op_append_elem( OP_LIST,a,iv_op(3)); |
| 5965 | check_op(a, "list[pushmark.const(1).const(2).const(3).]"); |
| 5966 | a = op_append_elem(OP_LIST, a, NULL)Perl_op_append_elem( OP_LIST,a,((void*)0)); |
| 5967 | check_op(a, "list[pushmark.const(1).const(2).const(3).]"); |
| 5968 | a = op_append_elem(OP_LIST, NULL, a)Perl_op_append_elem( OP_LIST,((void*)0),a); |
| 5969 | check_op(a, "list[pushmark.const(1).const(2).const(3).]"); |
| 5970 | a = op_append_elem(OP_LIST, iv_op(4), a)Perl_op_append_elem( OP_LIST,iv_op(4),a); |
| 5971 | check_op(a, "list[pushmark.const(4)." |
| 5972 | "list[pushmark.const(1).const(2).const(3).]]"); |
| 5973 | a = op_append_elem(OP_LIST, a, iv_op(5))Perl_op_append_elem( OP_LIST,a,iv_op(5)); |
| 5974 | check_op(a, "list[pushmark.const(4)." |
| 5975 | "list[pushmark.const(1).const(2).const(3).]const(5).]"); |
| 5976 | a = op_append_elem(OP_LIST, a,Perl_op_append_elem( OP_LIST,a,Perl_op_append_elem( OP_LIST,iv_op (7),iv_op(6))) |
| 5977 | op_append_elem(OP_LIST, iv_op(7), iv_op(6)))Perl_op_append_elem( OP_LIST,a,Perl_op_append_elem( OP_LIST,iv_op (7),iv_op(6))); |
| 5978 | check_op(a, "list[pushmark.const(4)." |
| 5979 | "list[pushmark.const(1).const(2).const(3).]const(5)." |
| 5980 | "list[pushmark.const(7).const(6).]]"); |
| 5981 | op_free(a)Perl_op_free( a); |
| 5982 | a = op_append_elem(OP_LINESEQ, iv_op(1), iv_op(2))Perl_op_append_elem( OP_LINESEQ,iv_op(1),iv_op(2)); |
| 5983 | check_op(a, "lineseq[const(1).const(2).]"); |
| 5984 | a = op_append_elem(OP_LINESEQ, a, iv_op(3))Perl_op_append_elem( OP_LINESEQ,a,iv_op(3)); |
| 5985 | check_op(a, "lineseq[const(1).const(2).const(3).]"); |
| 5986 | op_free(a)Perl_op_free( a); |
| 5987 | a = op_append_elem(OP_LINESEQ,Perl_op_append_elem( OP_LINESEQ,Perl_op_append_elem( OP_LIST, iv_op(1),iv_op(2)),iv_op(3)) |
| 5988 | op_append_elem(OP_LIST, iv_op(1), iv_op(2)),Perl_op_append_elem( OP_LINESEQ,Perl_op_append_elem( OP_LIST, iv_op(1),iv_op(2)),iv_op(3)) |
| 5989 | iv_op(3))Perl_op_append_elem( OP_LINESEQ,Perl_op_append_elem( OP_LIST, iv_op(1),iv_op(2)),iv_op(3)); |
| 5990 | check_op(a, "lineseq[list[pushmark.const(1).const(2).]const(3).]"); |
| 5991 | op_free(a)Perl_op_free( a); |
| 5992 | a = op_prepend_elem(OP_LIST, NULL, NULL)Perl_op_prepend_elem( OP_LIST,((void*)0),((void*)0)); |
| 5993 | check_op(a, ""); |
| 5994 | a = op_prepend_elem(OP_LIST, a, iv_op(1))Perl_op_prepend_elem( OP_LIST,a,iv_op(1)); |
| 5995 | check_op(a, "const(1)."); |
| 5996 | a = op_prepend_elem(OP_LIST, a, NULL)Perl_op_prepend_elem( OP_LIST,a,((void*)0)); |
| 5997 | check_op(a, "const(1)."); |
| 5998 | a = op_prepend_elem(OP_LIST, iv_op(2), a)Perl_op_prepend_elem( OP_LIST,iv_op(2),a); |
| 5999 | check_op(a, "list[pushmark.const(2).const(1).]"); |
| 6000 | a = op_prepend_elem(OP_LIST, iv_op(3), a)Perl_op_prepend_elem( OP_LIST,iv_op(3),a); |
| 6001 | check_op(a, "list[pushmark.const(3).const(2).const(1).]"); |
| 6002 | a = op_prepend_elem(OP_LIST, NULL, a)Perl_op_prepend_elem( OP_LIST,((void*)0),a); |
| 6003 | check_op(a, "list[pushmark.const(3).const(2).const(1).]"); |
| 6004 | a = op_prepend_elem(OP_LIST, a, NULL)Perl_op_prepend_elem( OP_LIST,a,((void*)0)); |
| 6005 | check_op(a, "list[pushmark.const(3).const(2).const(1).]"); |
| 6006 | a = op_prepend_elem(OP_LIST, a, iv_op(4))Perl_op_prepend_elem( OP_LIST,a,iv_op(4)); |
| 6007 | check_op(a, "list[pushmark." |
| 6008 | "list[pushmark.const(3).const(2).const(1).]const(4).]"); |
| 6009 | a = op_prepend_elem(OP_LIST, iv_op(5), a)Perl_op_prepend_elem( OP_LIST,iv_op(5),a); |
| 6010 | check_op(a, "list[pushmark.const(5)." |
| 6011 | "list[pushmark.const(3).const(2).const(1).]const(4).]"); |
| 6012 | a = op_prepend_elem(OP_LIST,Perl_op_prepend_elem( OP_LIST,Perl_op_prepend_elem( OP_LIST,iv_op (6),iv_op(7)),a) |
| 6013 | op_prepend_elem(OP_LIST, iv_op(6), iv_op(7)), a)Perl_op_prepend_elem( OP_LIST,Perl_op_prepend_elem( OP_LIST,iv_op (6),iv_op(7)),a); |
| 6014 | check_op(a, "list[pushmark.list[pushmark.const(6).const(7).]const(5)." |
| 6015 | "list[pushmark.const(3).const(2).const(1).]const(4).]"); |
| 6016 | op_free(a)Perl_op_free( a); |
| 6017 | a = op_prepend_elem(OP_LINESEQ, iv_op(2), iv_op(1))Perl_op_prepend_elem( OP_LINESEQ,iv_op(2),iv_op(1)); |
| 6018 | check_op(a, "lineseq[const(2).const(1).]"); |
| 6019 | a = op_prepend_elem(OP_LINESEQ, iv_op(3), a)Perl_op_prepend_elem( OP_LINESEQ,iv_op(3),a); |
| 6020 | check_op(a, "lineseq[const(3).const(2).const(1).]"); |
| 6021 | op_free(a)Perl_op_free( a); |
| 6022 | a = op_prepend_elem(OP_LINESEQ, iv_op(3),Perl_op_prepend_elem( OP_LINESEQ,iv_op(3),Perl_op_prepend_elem ( OP_LIST,iv_op(2),iv_op(1))) |
| 6023 | op_prepend_elem(OP_LIST, iv_op(2), iv_op(1)))Perl_op_prepend_elem( OP_LINESEQ,iv_op(3),Perl_op_prepend_elem ( OP_LIST,iv_op(2),iv_op(1))); |
| 6024 | check_op(a, "lineseq[const(3).list[pushmark.const(2).const(1).]]"); |
| 6025 | op_free(a)Perl_op_free( a); |
| 6026 | a = op_append_list(OP_LINESEQ, NULL, NULL)Perl_op_append_list( OP_LINESEQ,((void*)0),((void*)0)); |
| 6027 | check_op(a, ""); |
| 6028 | a = op_append_list(OP_LINESEQ, iv_op(1), a)Perl_op_append_list( OP_LINESEQ,iv_op(1),a); |
| 6029 | check_op(a, "const(1)."); |
| 6030 | a = op_append_list(OP_LINESEQ, NULL, a)Perl_op_append_list( OP_LINESEQ,((void*)0),a); |
| 6031 | check_op(a, "const(1)."); |
| 6032 | a = op_append_list(OP_LINESEQ, a, iv_op(2))Perl_op_append_list( OP_LINESEQ,a,iv_op(2)); |
| 6033 | check_op(a, "lineseq[const(1).const(2).]"); |
| 6034 | a = op_append_list(OP_LINESEQ, a, iv_op(3))Perl_op_append_list( OP_LINESEQ,a,iv_op(3)); |
| 6035 | check_op(a, "lineseq[const(1).const(2).const(3).]"); |
| 6036 | a = op_append_list(OP_LINESEQ, iv_op(4), a)Perl_op_append_list( OP_LINESEQ,iv_op(4),a); |
| 6037 | check_op(a, "lineseq[const(4).const(1).const(2).const(3).]"); |
| 6038 | a = op_append_list(OP_LINESEQ, a, NULL)Perl_op_append_list( OP_LINESEQ,a,((void*)0)); |
| 6039 | check_op(a, "lineseq[const(4).const(1).const(2).const(3).]"); |
| 6040 | a = op_append_list(OP_LINESEQ, NULL, a)Perl_op_append_list( OP_LINESEQ,((void*)0),a); |
| 6041 | check_op(a, "lineseq[const(4).const(1).const(2).const(3).]"); |
| 6042 | a = op_append_list(OP_LINESEQ, a,Perl_op_append_list( OP_LINESEQ,a,Perl_op_append_list( OP_LINESEQ ,iv_op(5),iv_op(6))) |
| 6043 | op_append_list(OP_LINESEQ, iv_op(5), iv_op(6)))Perl_op_append_list( OP_LINESEQ,a,Perl_op_append_list( OP_LINESEQ ,iv_op(5),iv_op(6))); |
| 6044 | check_op(a, "lineseq[const(4).const(1).const(2).const(3)." |
| 6045 | "const(5).const(6).]"); |
| 6046 | op_free(a)Perl_op_free( a); |
| 6047 | a = op_append_list(OP_LINESEQ,Perl_op_append_list( OP_LINESEQ,Perl_op_append_list( OP_LINESEQ ,iv_op(1),iv_op(2)),Perl_op_append_list( OP_LIST,iv_op(3),iv_op (4))) |
| 6048 | op_append_list(OP_LINESEQ, iv_op(1), iv_op(2)),Perl_op_append_list( OP_LINESEQ,Perl_op_append_list( OP_LINESEQ ,iv_op(1),iv_op(2)),Perl_op_append_list( OP_LIST,iv_op(3),iv_op (4))) |
| 6049 | op_append_list(OP_LIST, iv_op(3), iv_op(4)))Perl_op_append_list( OP_LINESEQ,Perl_op_append_list( OP_LINESEQ ,iv_op(1),iv_op(2)),Perl_op_append_list( OP_LIST,iv_op(3),iv_op (4))); |
| 6050 | check_op(a, "lineseq[const(1).const(2)." |
| 6051 | "list[pushmark.const(3).const(4).]]"); |
| 6052 | op_free(a)Perl_op_free( a); |
| 6053 | a = op_append_list(OP_LINESEQ,Perl_op_append_list( OP_LINESEQ,Perl_op_append_list( OP_LIST, iv_op(1),iv_op(2)),Perl_op_append_list( OP_LINESEQ,iv_op(3),iv_op (4))) |
| 6054 | op_append_list(OP_LIST, iv_op(1), iv_op(2)),Perl_op_append_list( OP_LINESEQ,Perl_op_append_list( OP_LIST, iv_op(1),iv_op(2)),Perl_op_append_list( OP_LINESEQ,iv_op(3),iv_op (4))) |
| 6055 | op_append_list(OP_LINESEQ, iv_op(3), iv_op(4)))Perl_op_append_list( OP_LINESEQ,Perl_op_append_list( OP_LIST, iv_op(1),iv_op(2)),Perl_op_append_list( OP_LINESEQ,iv_op(3),iv_op (4))); |
| 6056 | check_op(a, "lineseq[list[pushmark.const(1).const(2).]" |
| 6057 | "const(3).const(4).]"); |
| 6058 | op_free(a)Perl_op_free( a); |
| 6059 | #undef check_op |
| 6060 | #line 6061 "APItest.c" |
| 6061 | } |
| 6062 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 6063 | } |
| 6064 | |
| 6065 | |
| 6066 | XS_EUPXS(XS_XS__APItest_test_op_linklist)static void XS_XS__APItest_test_op_linklist( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6067 | XS_EUPXS(XS_XS__APItest_test_op_linklist)static void XS_XS__APItest_test_op_linklist( CV* cv __attribute__ ((unused))) |
| 6068 | { |
| 6069 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6070 | if (items != 0) |
| 6071 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 6072 | { |
| 6073 | #line 3763 "APItest.xs" |
| 6074 | OP *o; |
| 6075 | #line 6076 "APItest.c" |
| 6076 | #line 3765 "APItest.xs" |
| 6077 | #define check_ll(o, expect) \ |
| 6078 | STMT_STARTdo { \ |
| 6079 | if (strNE(test_op_linklist_describe(o), (expect))(strcmp(test_op_linklist_describe(o),(expect)) != 0)) \ |
| 6080 | croakPerl_croak("fail %s %s", test_op_linklist_describe(o), (expect)); \ |
| 6081 | } STMT_ENDwhile (0) |
| 6082 | o = iv_op(1); |
| 6083 | check_ll(o, ".const1"); |
| 6084 | op_free(o)Perl_op_free( o); |
| 6085 | |
| 6086 | o = mkUNOP(OP_NOT, iv_op(1))THX_mkUNOP( (OP_NOT), (iv_op(1))); |
| 6087 | check_ll(o, ".const1.not"); |
| 6088 | op_free(o)Perl_op_free( o); |
| 6089 | |
| 6090 | o = mkUNOP(OP_NOT, mkUNOP(OP_NEGATE, iv_op(1)))THX_mkUNOP( (OP_NOT), (THX_mkUNOP( (OP_NEGATE), (iv_op(1))))); |
| 6091 | check_ll(o, ".const1.negate.not"); |
| 6092 | op_free(o)Perl_op_free( o); |
| 6093 | |
| 6094 | o = mkBINOP(OP_ADD, iv_op(1), iv_op(2))THX_mkBINOP( (OP_ADD), (iv_op(1)), (iv_op(2))); |
| 6095 | check_ll(o, ".const1.const2.add"); |
| 6096 | op_free(o)Perl_op_free( o); |
| 6097 | |
| 6098 | o = mkBINOP(OP_ADD, mkUNOP(OP_NOT, iv_op(1)), iv_op(2))THX_mkBINOP( (OP_ADD), (THX_mkUNOP( (OP_NOT), (iv_op(1)))), ( iv_op(2))); |
| 6099 | check_ll(o, ".const1.not.const2.add"); |
| 6100 | op_free(o)Perl_op_free( o); |
| 6101 | |
| 6102 | o = mkUNOP(OP_NOT, mkBINOP(OP_ADD, iv_op(1), iv_op(2)))THX_mkUNOP( (OP_NOT), (THX_mkBINOP( (OP_ADD), (iv_op(1)), (iv_op (2))))); |
| 6103 | check_ll(o, ".const1.const2.add.not"); |
| 6104 | op_free(o)Perl_op_free( o); |
| 6105 | |
| 6106 | o = mkLISTOP(OP_LINESEQ, iv_op(1), iv_op(2), iv_op(3))THX_mkLISTOP( (OP_LINESEQ), (iv_op(1)), (iv_op(2)), (iv_op(3) )); |
| 6107 | check_ll(o, ".const1.const2.const3.lineseq"); |
| 6108 | op_free(o)Perl_op_free( o); |
| 6109 | |
| 6110 | o = mkLISTOP(OP_LINESEQ,THX_mkLISTOP( (OP_LINESEQ), (THX_mkBINOP( (OP_ADD), (iv_op(1) ), (iv_op(2)))), (THX_mkUNOP( (OP_NOT), (iv_op(3)))), (THX_mkLISTOP ( (OP_SUBSTR), (iv_op(4)), (iv_op(5)), (iv_op(6))))) |
| 6111 | mkBINOP(OP_ADD, iv_op(1), iv_op(2)),THX_mkLISTOP( (OP_LINESEQ), (THX_mkBINOP( (OP_ADD), (iv_op(1) ), (iv_op(2)))), (THX_mkUNOP( (OP_NOT), (iv_op(3)))), (THX_mkLISTOP ( (OP_SUBSTR), (iv_op(4)), (iv_op(5)), (iv_op(6))))) |
| 6112 | mkUNOP(OP_NOT, iv_op(3)),THX_mkLISTOP( (OP_LINESEQ), (THX_mkBINOP( (OP_ADD), (iv_op(1) ), (iv_op(2)))), (THX_mkUNOP( (OP_NOT), (iv_op(3)))), (THX_mkLISTOP ( (OP_SUBSTR), (iv_op(4)), (iv_op(5)), (iv_op(6))))) |
| 6113 | mkLISTOP(OP_SUBSTR, iv_op(4), iv_op(5), iv_op(6)))THX_mkLISTOP( (OP_LINESEQ), (THX_mkBINOP( (OP_ADD), (iv_op(1) ), (iv_op(2)))), (THX_mkUNOP( (OP_NOT), (iv_op(3)))), (THX_mkLISTOP ( (OP_SUBSTR), (iv_op(4)), (iv_op(5)), (iv_op(6))))); |
| 6114 | check_ll(o, ".const1.const2.add.const3.not" |
| 6115 | ".const4.const5.const6.substr.lineseq"); |
| 6116 | op_free(o)Perl_op_free( o); |
| 6117 | |
| 6118 | o = mkBINOP(OP_ADD, iv_op(1), iv_op(2))THX_mkBINOP( (OP_ADD), (iv_op(1)), (iv_op(2))); |
| 6119 | LINKLIST(o)((o)->op_next ? (o)->op_next : Perl_op_linklist( (OP*)o )); |
| 6120 | o = mkBINOP(OP_SUBTRACT, o, iv_op(3))THX_mkBINOP( (OP_SUBTRACT), (o), (iv_op(3))); |
| 6121 | check_ll(o, ".const1.const2.add.const3.subtract"); |
| 6122 | op_free(o)Perl_op_free( o); |
| 6123 | #undef check_ll |
| 6124 | #undef iv_op |
| 6125 | #line 6126 "APItest.c" |
| 6126 | } |
| 6127 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 6128 | } |
| 6129 | |
| 6130 | |
| 6131 | XS_EUPXS(XS_XS__APItest_peep_enable)static void XS_XS__APItest_peep_enable( CV* cv __attribute__( (unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6132 | XS_EUPXS(XS_XS__APItest_peep_enable)static void XS_XS__APItest_peep_enable( CV* cv __attribute__( (unused))) |
| 6133 | { |
| 6134 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6135 | if (items != 0) |
| 6136 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 6137 | { |
| 6138 | #line 3817 "APItest.xs" |
| 6139 | dMY_CXTstruct Perl___notused_struct; |
| 6140 | #line 6141 "APItest.c" |
| 6141 | #line 3819 "APItest.xs" |
| 6142 | av_clear(MY_CXT.peep_recorder)Perl_av_clear( my_cxt.peep_recorder); |
| 6143 | av_clear(MY_CXT.rpeep_recorder)Perl_av_clear( my_cxt.rpeep_recorder); |
| 6144 | MY_CXTmy_cxt.peep_recording = 1; |
| 6145 | #line 6146 "APItest.c" |
| 6146 | } |
| 6147 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 6148 | } |
| 6149 | |
| 6150 | |
| 6151 | XS_EUPXS(XS_XS__APItest_peep_disable)static void XS_XS__APItest_peep_disable( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6152 | XS_EUPXS(XS_XS__APItest_peep_disable)static void XS_XS__APItest_peep_disable( CV* cv __attribute__ ((unused))) |
| 6153 | { |
| 6154 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6155 | if (items != 0) |
| 6156 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 6157 | { |
| 6158 | #line 3826 "APItest.xs" |
| 6159 | dMY_CXTstruct Perl___notused_struct; |
| 6160 | #line 6161 "APItest.c" |
| 6161 | #line 3828 "APItest.xs" |
| 6162 | MY_CXTmy_cxt.peep_recording = 0; |
| 6163 | #line 6164 "APItest.c" |
| 6164 | } |
| 6165 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 6166 | } |
| 6167 | |
| 6168 | |
| 6169 | XS_EUPXS(XS_XS__APItest_peep_record)static void XS_XS__APItest_peep_record( CV* cv __attribute__( (unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6170 | XS_EUPXS(XS_XS__APItest_peep_record)static void XS_XS__APItest_peep_record( CV* cv __attribute__( (unused))) |
| 6171 | { |
| 6172 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6173 | if (items != 0) |
| 6174 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 6175 | { |
| 6176 | #line 3833 "APItest.xs" |
| 6177 | dMY_CXTstruct Perl___notused_struct; |
| 6178 | #line 6179 "APItest.c" |
| 6179 | SV * RETVAL; |
| 6180 | #line 3835 "APItest.xs" |
| 6181 | RETVAL = newRV_inc((SV *)MY_CXT.peep_recorder)Perl_newRV( (SV *)my_cxt.peep_recorder); |
| 6182 | #line 6183 "APItest.c" |
| 6183 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 6184 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 6185 | } |
| 6186 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 6187 | } |
| 6188 | |
| 6189 | |
| 6190 | XS_EUPXS(XS_XS__APItest_rpeep_record)static void XS_XS__APItest_rpeep_record( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6191 | XS_EUPXS(XS_XS__APItest_rpeep_record)static void XS_XS__APItest_rpeep_record( CV* cv __attribute__ ((unused))) |
| 6192 | { |
| 6193 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6194 | if (items != 0) |
| 6195 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 6196 | { |
| 6197 | #line 3842 "APItest.xs" |
| 6198 | dMY_CXTstruct Perl___notused_struct; |
| 6199 | #line 6200 "APItest.c" |
| 6200 | SV * RETVAL; |
| 6201 | #line 3844 "APItest.xs" |
| 6202 | RETVAL = newRV_inc((SV *)MY_CXT.rpeep_recorder)Perl_newRV( (SV *)my_cxt.rpeep_recorder); |
| 6203 | #line 6204 "APItest.c" |
| 6204 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 6205 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 6206 | } |
| 6207 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 6208 | } |
| 6209 | |
| 6210 | |
| 6211 | XS_EUPXS(XS_XS__APItest_multicall_each)static void XS_XS__APItest_multicall_each( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6212 | XS_EUPXS(XS_XS__APItest_multicall_each)static void XS_XS__APItest_multicall_each( CV* cv __attribute__ ((unused))) |
| 6213 | { |
| 6214 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6215 | if (items < 1) |
| 6216 | croak_xs_usagePerl_croak_xs_usage(cv, "block, ..."); |
| 6217 | { |
| 6218 | SV * block = ST(0)PL_stack_base[ax + (0)] |
| 6219 | ; |
| 6220 | #line 3859 "APItest.xs" |
| 6221 | { |
| 6222 | dMULTICALLOP *multicall_cop; _Bool multicall_oldcatch; |
| 6223 | int index; |
| 6224 | GV *gv; |
| 6225 | HV *stash; |
| 6226 | I32 gimme = G_SCALAR2; |
| 6227 | SV **args = &PL_stack_base[ax]; |
| 6228 | CV *cv; |
| 6229 | |
| 6230 | if(items <= 1) { |
| 6231 | XSRETURN_UNDEFdo { (PL_stack_base[ax + (0)] = &(PL_sv_immortals[1])); do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 6232 | } |
| 6233 | cv = sv_2cv(block, &stash, &gv, 0)Perl_sv_2cv( block,&stash,&gv,0); |
| 6234 | if (cv == Nullcv((CV*)((void*)0))) { |
| 6235 | croakPerl_croak("multicall_each: not a subroutine reference"); |
| 6236 | } |
| 6237 | PUSH_MULTICALL(cv)do { PERL_CONTEXT *cx; CV * const _nOnclAshIngNamE_ = cv; CV * const cv = _nOnclAshIngNamE_; PADLIST * const padlist = (*( & (((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))->xcv_padlist_u .xcv_padlist))); multicall_oldcatch = (PL_top_env->je_mustcatch ); do { PL_top_env->je_mustcatch = ((1)); } while (0); do { PERL_SI *next = PL_curstackinfo->si_next; if (!next) { next = Perl_new_stackinfo( 32,2048/sizeof(PERL_CONTEXT) - 1); next ->si_prev = PL_curstackinfo; PL_curstackinfo->si_next = next; } next->si_type = 10; next->si_cxix = -1; next-> si_cxsubix = -1; (void)0; ((XPVAV*) (next->si_stack)->sv_any )->xav_fill = 0; do { ((XPVAV*) (PL_curstack)->sv_any)-> xav_fill = sp - PL_stack_base; PL_stack_base = ((next->si_stack )->sv_u.svu_array); PL_stack_max = PL_stack_base + ((XPVAV *) (next->si_stack)->sv_any)->xav_max; sp = PL_stack_sp = PL_stack_base + ((XPVAV*) (next->si_stack)->sv_any)-> xav_fill; PL_curstack = next->si_stack; } while (0); PL_curstackinfo = next; (void)0; } while (0); cx = Perl_cx_pushblock( (9|0x10 |0),(U8)gimme,PL_stack_sp,PL_savestack_ix); Perl_cx_pushsub( cx ,cv,((void*)0),0); Perl_save_pushptr( (void *)(PL_op),18); if (!(0 & 0x80)) (*Perl_CvDEPTH((const CV *)cv))++; if ((*Perl_CvDEPTH ((const CV *)cv)) >= 2) Perl_pad_push( padlist, (*Perl_CvDEPTH ((const CV *)cv))); PL_comppad = (PAD*) ((padlist)->xpadl_arr .xpadlarr_alloc[(*Perl_CvDEPTH((const CV *)cv))]); PL_curpad = ((PL_comppad)->sv_u.svu_array); ;; multicall_cop = ((XPVCV *)({ void *_p = ((cv)->sv_any); _p; }))->xcv_start_u.xcv_start ; } while (0); |
| 6238 | SAVESPTR(GvSV(PL_defgv))Perl_save_sptr( (SV**)&(((0+(PL_defgv)->sv_u.svu_gp)-> gp_sv))); |
| 6239 | |
| 6240 | for(index = 1 ; index < items ; index++) { |
| 6241 | GvSV(PL_defgv)((0+(PL_defgv)->sv_u.svu_gp)->gp_sv) = args[index]; |
| 6242 | MULTICALLdo { PL_op = multicall_cop; PL_runops(); } while (0); |
| 6243 | } |
| 6244 | POP_MULTICALLdo { PERL_CONTEXT *cx; cx = (&(PL_curstackinfo->si_cxstack )[(PL_curstackinfo->si_cxix)]); do { if (PL_savestack_ix > cx->cx_u.cx_blk.blku_oldsaveix) Perl_leave_scope( cx-> cx_u.cx_blk.blku_oldsaveix); } while (0); Perl_cx_popsub_common ( cx); gimme = cx->cx_u.cx_blk.blku_gimme; ((void)sizeof(gimme )); Perl_cx_popblock( cx); (PL_curstackinfo->si_cxix)--;; do { SV **sp = PL_stack_sp; PERL_SI * const prev = PL_curstackinfo ->si_prev; if (!prev) { Perl_croak_popstack(); } do { ((XPVAV *) (PL_curstack)->sv_any)->xav_fill = sp - PL_stack_base ; PL_stack_base = ((prev->si_stack)->sv_u.svu_array); PL_stack_max = PL_stack_base + ((XPVAV*) (prev->si_stack)->sv_any)-> xav_max; sp = PL_stack_sp = PL_stack_base + ((XPVAV*) (prev-> si_stack)->sv_any)->xav_fill; PL_curstack = prev->si_stack ; } while (0); PL_curstackinfo = prev; } while (0); do { PL_top_env ->je_mustcatch = (multicall_oldcatch); } while (0); sp = PL_stack_sp ; } while (0); |
| 6245 | XSRETURN_UNDEFdo { (PL_stack_base[ax + (0)] = &(PL_sv_immortals[1])); do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 6246 | } |
| 6247 | #line 6248 "APItest.c" |
| 6248 | } |
| 6249 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 6250 | } |
| 6251 | |
| 6252 | |
| 6253 | XS_EUPXS(XS_XS__APItest_multicall_return)static void XS_XS__APItest_multicall_return( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6254 | XS_EUPXS(XS_XS__APItest_multicall_return)static void XS_XS__APItest_multicall_return( CV* cv __attribute__ ((unused))) |
| 6255 | { |
| 6256 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6257 | if (items != 2) |
| 6258 | croak_xs_usagePerl_croak_xs_usage(cv, "block, context"); |
| 6259 | { |
| 6260 | SV * block = ST(0)PL_stack_base[ax + (0)] |
| 6261 | ; |
| 6262 | I32 context = (I32)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 6263 | ; |
| 6264 | #line 3899 "APItest.xs" |
| 6265 | { |
| 6266 | dSPSV **sp = PL_stack_sp; |
| 6267 | dMULTICALLOP *multicall_cop; _Bool multicall_oldcatch; |
| 6268 | GV *gv; |
| 6269 | HV *stash; |
| 6270 | I32 gimme = context; |
| 6271 | CV *cv; |
| 6272 | AV *av; |
| 6273 | SV **p; |
| 6274 | SSize_tssize_t i, size; |
| 6275 | |
| 6276 | cv = sv_2cv(block, &stash, &gv, 0)Perl_sv_2cv( block,&stash,&gv,0); |
| 6277 | if (cv == Nullcv((CV*)((void*)0))) { |
| 6278 | croakPerl_croak("multicall_return not a subroutine reference"); |
| 6279 | } |
| 6280 | PUSH_MULTICALL(cv)do { PERL_CONTEXT *cx; CV * const _nOnclAshIngNamE_ = cv; CV * const cv = _nOnclAshIngNamE_; PADLIST * const padlist = (*( & (((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))->xcv_padlist_u .xcv_padlist))); multicall_oldcatch = (PL_top_env->je_mustcatch ); do { PL_top_env->je_mustcatch = ((1)); } while (0); do { PERL_SI *next = PL_curstackinfo->si_next; if (!next) { next = Perl_new_stackinfo( 32,2048/sizeof(PERL_CONTEXT) - 1); next ->si_prev = PL_curstackinfo; PL_curstackinfo->si_next = next; } next->si_type = 10; next->si_cxix = -1; next-> si_cxsubix = -1; (void)0; ((XPVAV*) (next->si_stack)->sv_any )->xav_fill = 0; do { ((XPVAV*) (PL_curstack)->sv_any)-> xav_fill = sp - PL_stack_base; PL_stack_base = ((next->si_stack )->sv_u.svu_array); PL_stack_max = PL_stack_base + ((XPVAV *) (next->si_stack)->sv_any)->xav_max; sp = PL_stack_sp = PL_stack_base + ((XPVAV*) (next->si_stack)->sv_any)-> xav_fill; PL_curstack = next->si_stack; } while (0); PL_curstackinfo = next; (void)0; } while (0); cx = Perl_cx_pushblock( (9|0x10 |0),(U8)gimme,PL_stack_sp,PL_savestack_ix); Perl_cx_pushsub( cx ,cv,((void*)0),0); Perl_save_pushptr( (void *)(PL_op),18); if (!(0 & 0x80)) (*Perl_CvDEPTH((const CV *)cv))++; if ((*Perl_CvDEPTH ((const CV *)cv)) >= 2) Perl_pad_push( padlist, (*Perl_CvDEPTH ((const CV *)cv))); PL_comppad = (PAD*) ((padlist)->xpadl_arr .xpadlarr_alloc[(*Perl_CvDEPTH((const CV *)cv))]); PL_curpad = ((PL_comppad)->sv_u.svu_array); ;; multicall_cop = ((XPVCV *)({ void *_p = ((cv)->sv_any); _p; }))->xcv_start_u.xcv_start ; } while (0); |
| 6281 | |
| 6282 | MULTICALLdo { PL_op = multicall_cop; PL_runops(); } while (0); |
| 6283 | |
| 6284 | /* copy returned values into an array so they're not freed during |
| 6285 | * POP_MULTICALL */ |
| 6286 | |
| 6287 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 6288 | SPAGAINsp = PL_stack_sp; |
| 6289 | |
| 6290 | switch (context) { |
| 6291 | case G_VOID1: |
| 6292 | break; |
| 6293 | |
| 6294 | case G_SCALAR2: |
| 6295 | av_push(av, SvREFCNT_inc(TOPs))Perl_av_push( av,Perl_SvREFCNT_inc(((SV *)({ void *_p = ((*sp )); _p; })))); |
| 6296 | break; |
| 6297 | |
| 6298 | case G_ARRAY3: |
| 6299 | for (p = PL_stack_base + 1; p <= SPsp; p++) |
| 6300 | av_push(av, SvREFCNT_inc(*p))Perl_av_push( av,Perl_SvREFCNT_inc(((SV *)({ void *_p = (*p); _p; })))); |
| 6301 | break; |
| 6302 | } |
| 6303 | |
| 6304 | POP_MULTICALLdo { PERL_CONTEXT *cx; cx = (&(PL_curstackinfo->si_cxstack )[(PL_curstackinfo->si_cxix)]); do { if (PL_savestack_ix > cx->cx_u.cx_blk.blku_oldsaveix) Perl_leave_scope( cx-> cx_u.cx_blk.blku_oldsaveix); } while (0); Perl_cx_popsub_common ( cx); gimme = cx->cx_u.cx_blk.blku_gimme; ((void)sizeof(gimme )); Perl_cx_popblock( cx); (PL_curstackinfo->si_cxix)--;; do { SV **sp = PL_stack_sp; PERL_SI * const prev = PL_curstackinfo ->si_prev; if (!prev) { Perl_croak_popstack(); } do { ((XPVAV *) (PL_curstack)->sv_any)->xav_fill = sp - PL_stack_base ; PL_stack_base = ((prev->si_stack)->sv_u.svu_array); PL_stack_max = PL_stack_base + ((XPVAV*) (prev->si_stack)->sv_any)-> xav_max; sp = PL_stack_sp = PL_stack_base + ((XPVAV*) (prev-> si_stack)->sv_any)->xav_fill; PL_curstack = prev->si_stack ; } while (0); PL_curstackinfo = prev; } while (0); do { PL_top_env ->je_mustcatch = (multicall_oldcatch); } while (0); sp = PL_stack_sp ; } while (0); |
| 6305 | |
| 6306 | size = AvFILLp(av)((XPVAV*) (av)->sv_any)->xav_fill + 1; |
| 6307 | EXTEND(SP, size)do { (void)0; if (__builtin_expect(((((size) < 0 || PL_stack_max - (sp) < (size))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(size) > sizeof(ssize_t) && ((ssize_t )(size) != (size)) ? -1 : (size))); ((void)sizeof(sp)); } } while (0); |
| 6308 | for (i = 0; i < size; i++) |
| 6309 | ST(i)PL_stack_base[ax + (i)] = *av_fetch(av, i, FALSE)Perl_av_fetch( av,i,(0)); |
| 6310 | sv_2mortal((SV*)av)Perl_sv_2mortal( (SV*)av); |
| 6311 | XSRETURN(size)do { const IV tmpXSoff = (size); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 6312 | } |
| 6313 | #line 6314 "APItest.c" |
| 6314 | } |
| 6315 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 6316 | } |
| 6317 | |
| 6318 | #ifdef USE_ITHREADS |
| 6319 | #define XSubPPtmpAAAC 1 |
| 6320 | |
| 6321 | |
| 6322 | XS_EUPXS(XS_XS__APItest_clone_with_stack)static void XS_XS__APItest_clone_with_stack( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6323 | XS_EUPXS(XS_XS__APItest_clone_with_stack)static void XS_XS__APItest_clone_with_stack( CV* cv __attribute__ ((unused))) |
| 6324 | { |
| 6325 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6326 | if (items != 0) |
| 6327 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 6328 | { |
| 6329 | #line 3954 "APItest.xs" |
| 6330 | { |
| 6331 | PerlInterpreter *interp = aTHX; /* The original interpreter */ |
| 6332 | PerlInterpreter *interp_dup; /* The duplicate interpreter */ |
| 6333 | int oldscope = 1; /* We are responsible for all scopes */ |
| 6334 | |
| 6335 | interp_dup = perl_clone(interp, CLONEf_COPY_STACKS1 | CLONEf_CLONE_HOST4 ); |
| 6336 | |
| 6337 | /* destroy old perl */ |
| 6338 | PERL_SET_CONTEXT(interp)(PL_curinterp = (PerlInterpreter*)(interp)); |
| 6339 | |
| 6340 | POPSTACK_TO(PL_mainstack)do { while (PL_curstack != PL_mainstack) { Perl_dounwind( -1) ; do { SV **sp = PL_stack_sp; PERL_SI * const prev = PL_curstackinfo ->si_prev; if (!prev) { Perl_croak_popstack(); } do { ((XPVAV *) (PL_curstack)->sv_any)->xav_fill = sp - PL_stack_base ; PL_stack_base = ((prev->si_stack)->sv_u.svu_array); PL_stack_max = PL_stack_base + ((XPVAV*) (prev->si_stack)->sv_any)-> xav_max; sp = PL_stack_sp = PL_stack_base + ((XPVAV*) (prev-> si_stack)->sv_any)->xav_fill; PL_curstack = prev->si_stack ; } while (0); PL_curstackinfo = prev; } while (0); } } while (0); |
| 6341 | if (cxstack_ix(PL_curstackinfo->si_cxix) >= 0) { |
| 6342 | dounwind(-1)Perl_dounwind( -1); |
| 6343 | cx_popblock(cxstack)Perl_cx_popblock( (PL_curstackinfo->si_cxstack)); |
| 6344 | } |
| 6345 | LEAVE_SCOPE(0)do { if (PL_savestack_ix > 0) Perl_leave_scope( 0); } while (0); |
| 6346 | PL_scopestack_ix = oldscope; |
| 6347 | FREETMPSif (PL_tmps_ix > PL_tmps_floor) Perl_free_tmps(); |
| 6348 | |
| 6349 | perl_destruct(interp); |
| 6350 | perl_free(interp); |
| 6351 | |
| 6352 | /* switch to new perl */ |
| 6353 | PERL_SET_CONTEXT(interp_dup)(PL_curinterp = (PerlInterpreter*)(interp_dup)); |
| 6354 | |
| 6355 | /* continue after 'clone_with_stack' */ |
| 6356 | if (interp_dup->Iop) |
| 6357 | interp_dup->Iop = interp_dup->Iop->op_next; |
| 6358 | |
| 6359 | /* run with new perl */ |
| 6360 | Perl_runops_standard(interp_dup); |
| 6361 | |
| 6362 | /* We may have additional unclosed scopes if fork() was called |
| 6363 | * from within a BEGIN block. See perlfork.pod for more details. |
| 6364 | * We cannot clean up these other scopes because they belong to a |
| 6365 | * different interpreter, but we also cannot leave PL_scopestack_ix |
| 6366 | * dangling because that can trigger an assertion in perl_destruct(). |
| 6367 | */ |
| 6368 | if (PL_scopestack_ix > oldscope) { |
| 6369 | PL_scopestack[oldscope-1] = PL_scopestack[PL_scopestack_ix-1]; |
| 6370 | PL_scopestack_ix = oldscope; |
| 6371 | } |
| 6372 | |
| 6373 | perl_destruct(interp_dup); |
| 6374 | perl_free(interp_dup); |
| 6375 | |
| 6376 | /* call the real 'exit' not PerlProc_exit */ |
| 6377 | #undef exit |
| 6378 | exit(0); |
| 6379 | } |
| 6380 | #line 6381 "APItest.c" |
| 6381 | } |
| 6382 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 6383 | } |
| 6384 | |
| 6385 | #endif /* USE_ITHREDS */ |
| 6386 | |
| 6387 | XS_EUPXS(XS_XS__APItest_take_svref)static void XS_XS__APItest_take_svref( CV* cv __attribute__(( unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6388 | XS_EUPXS(XS_XS__APItest_take_svref)static void XS_XS__APItest_take_svref( CV* cv __attribute__(( unused))) |
| 6389 | { |
| 6390 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6391 | if (items != 1) |
| 6392 | croak_xs_usagePerl_croak_xs_usage(cv, "sv"); |
| 6393 | { |
| 6394 | SV * RETVAL; |
| 6395 | SVREF sv; |
| 6396 | |
| 6397 | STMT_STARTdo { |
| 6398 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 6399 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 6400 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800)){ |
| 6401 | sv = SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 6402 | } |
| 6403 | else{ |
| 6404 | Perl_croak_nocontextPerl_croak("%s: %s is not a reference", |
| 6405 | "XS::APItest::take_svref", |
| 6406 | "sv"); |
| 6407 | } |
| 6408 | } STMT_ENDwhile (0) |
| 6409 | ; |
| 6410 | #line 4010 "APItest.xs" |
| 6411 | RETVAL = newRV_inc(sv)Perl_newRV( sv); |
| 6412 | #line 6413 "APItest.c" |
| 6413 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 6414 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 6415 | } |
| 6416 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 6417 | } |
| 6418 | |
| 6419 | |
| 6420 | XS_EUPXS(XS_XS__APItest_take_avref)static void XS_XS__APItest_take_avref( CV* cv __attribute__(( unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6421 | XS_EUPXS(XS_XS__APItest_take_avref)static void XS_XS__APItest_take_avref( CV* cv __attribute__(( unused))) |
| 6422 | { |
| 6423 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6424 | if (items != 1) |
| 6425 | croak_xs_usagePerl_croak_xs_usage(cv, "av"); |
| 6426 | { |
| 6427 | SV * RETVAL; |
| 6428 | AV* av; |
| 6429 | |
| 6430 | STMT_STARTdo { |
| 6431 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 6432 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 6433 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800) && SvTYPE(SvRV(xsub_tmp_sv))((svtype)((((xsub_tmp_sv)->sv_u.svu_rv))->sv_flags & 0xff)) == SVt_PVAV){ |
| 6434 | av = (AV*)SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 6435 | } |
| 6436 | else{ |
| 6437 | Perl_croak_nocontextPerl_croak("%s: %s is not an ARRAY reference", |
| 6438 | "XS::APItest::take_avref", |
| 6439 | "av"); |
| 6440 | } |
| 6441 | } STMT_ENDwhile (0) |
| 6442 | ; |
| 6443 | #line 4017 "APItest.xs" |
| 6444 | RETVAL = newRV_inc((SV*)av)Perl_newRV( (SV*)av); |
| 6445 | #line 6446 "APItest.c" |
| 6446 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 6447 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 6448 | } |
| 6449 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 6450 | } |
| 6451 | |
| 6452 | |
| 6453 | XS_EUPXS(XS_XS__APItest_take_hvref)static void XS_XS__APItest_take_hvref( CV* cv __attribute__(( unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6454 | XS_EUPXS(XS_XS__APItest_take_hvref)static void XS_XS__APItest_take_hvref( CV* cv __attribute__(( unused))) |
| 6455 | { |
| 6456 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6457 | if (items != 1) |
| 6458 | croak_xs_usagePerl_croak_xs_usage(cv, "hv"); |
| 6459 | { |
| 6460 | SV * RETVAL; |
| 6461 | HV* hv; |
| 6462 | |
| 6463 | STMT_STARTdo { |
| 6464 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 6465 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 6466 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800) && SvTYPE(SvRV(xsub_tmp_sv))((svtype)((((xsub_tmp_sv)->sv_u.svu_rv))->sv_flags & 0xff)) == SVt_PVHV){ |
| 6467 | hv = (HV*)SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 6468 | } |
| 6469 | else{ |
| 6470 | Perl_croak_nocontextPerl_croak("%s: %s is not a HASH reference", |
| 6471 | "XS::APItest::take_hvref", |
| 6472 | "hv"); |
| 6473 | } |
| 6474 | } STMT_ENDwhile (0) |
| 6475 | ; |
| 6476 | #line 4024 "APItest.xs" |
| 6477 | RETVAL = newRV_inc((SV*)hv)Perl_newRV( (SV*)hv); |
| 6478 | #line 6479 "APItest.c" |
| 6479 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 6480 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 6481 | } |
| 6482 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 6483 | } |
| 6484 | |
| 6485 | |
| 6486 | XS_EUPXS(XS_XS__APItest_take_cvref)static void XS_XS__APItest_take_cvref( CV* cv __attribute__(( unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6487 | XS_EUPXS(XS_XS__APItest_take_cvref)static void XS_XS__APItest_take_cvref( CV* cv __attribute__(( unused))) |
| 6488 | { |
| 6489 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6490 | if (items != 1) |
| 6491 | croak_xs_usagePerl_croak_xs_usage(cv, "cv"); |
| 6492 | { |
| 6493 | SV * RETVAL; |
| 6494 | CV* cv; |
| 6495 | |
| 6496 | STMT_STARTdo { |
| 6497 | HV *st; |
| 6498 | GV *gvp; |
| 6499 | SV * const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 6500 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 6501 | cv = sv_2cv(xsub_tmp_sv, &st, &gvp, 0)Perl_sv_2cv( xsub_tmp_sv,&st,&gvp,0); |
| 6502 | if (!cv) { |
| 6503 | Perl_croak_nocontextPerl_croak("%s: %s is not a CODE reference", |
| 6504 | "XS::APItest::take_cvref", |
| 6505 | "cv"); |
| 6506 | } |
| 6507 | } STMT_ENDwhile (0) |
| 6508 | ; |
| 6509 | #line 4032 "APItest.xs" |
| 6510 | RETVAL = newRV_inc((SV*)cv)Perl_newRV( (SV*)cv); |
| 6511 | #line 6512 "APItest.c" |
| 6512 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 6513 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 6514 | } |
| 6515 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 6516 | } |
| 6517 | |
| 6518 | |
| 6519 | XS_EUPXS(XS_XS__APItest_establish_cleanup)static void XS_XS__APItest_establish_cleanup( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6520 | XS_EUPXS(XS_XS__APItest_establish_cleanup)static void XS_XS__APItest_establish_cleanup( CV* cv __attribute__ ((unused))) |
| 6521 | { |
| 6522 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6523 | PERL_UNUSED_VAR(cv)((void)sizeof(cv)); /* -W */ |
| 6524 | PERL_UNUSED_VAR(items)((void)sizeof(items)); /* -W */ |
| 6525 | { |
| 6526 | #line 4081 "APItest.xs" |
| 6527 | PERL_UNUSED_VAR(items)((void)sizeof(items)); |
| 6528 | croakPerl_croak("establish_cleanup called as a function"); |
| 6529 | #line 6530 "APItest.c" |
| 6530 | } |
| 6531 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 6532 | } |
| 6533 | |
| 6534 | |
| 6535 | XS_EUPXS(XS_XS__APItest_postinc)static void XS_XS__APItest_postinc( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 6536 | XS_EUPXS(XS_XS__APItest_postinc)static void XS_XS__APItest_postinc( CV* cv __attribute__((unused ))) |
| 6537 | { |
| 6538 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6539 | PERL_UNUSED_VAR(cv)((void)sizeof(cv)); /* -W */ |
| 6540 | PERL_UNUSED_VAR(items)((void)sizeof(items)); /* -W */ |
| 6541 | { |
| 6542 | #line 4094 "APItest.xs" |
| 6543 | PERL_UNUSED_VAR(items)((void)sizeof(items)); |
| 6544 | croakPerl_croak("postinc called as a function"); |
| 6545 | #line 6546 "APItest.c" |
| 6546 | } |
| 6547 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 6548 | } |
| 6549 | |
| 6550 | |
| 6551 | XS_EUPXS(XS_XS__APItest_filter)static void XS_XS__APItest_filter( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 6552 | XS_EUPXS(XS_XS__APItest_filter)static void XS_XS__APItest_filter( CV* cv __attribute__((unused ))) |
| 6553 | { |
| 6554 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6555 | if (items != 0) |
| 6556 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 6557 | { |
| 6558 | #line 4100 "APItest.xs" |
| 6559 | filter_add(filter_call, NULL)Perl_filter_add( filter_call,((void*)0)); |
| 6560 | #line 6561 "APItest.c" |
| 6561 | } |
| 6562 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 6563 | } |
| 6564 | |
| 6565 | |
| 6566 | XS_EUPXS(XS_XS__APItest_lv_temp_object)static void XS_XS__APItest_lv_temp_object( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6567 | XS_EUPXS(XS_XS__APItest_lv_temp_object)static void XS_XS__APItest_lv_temp_object( CV* cv __attribute__ ((unused))) |
| 6568 | { |
| 6569 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6570 | if (items != 0) |
| 6571 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 6572 | { |
| 6573 | SV * RETVAL; |
| 6574 | #line 4111 "APItest.xs" |
| 6575 | RETVAL = |
| 6576 | sv_bless(Perl_sv_bless( Perl_newRV_noinc( Perl_newSV( 0)),Perl_gv_stashpvn ( ("" "XS::APItest::TempObj" ""), (sizeof("XS::APItest::TempObj" )-1), 0x01)) |
| 6577 | newRV_noinc(newSV(0)),Perl_sv_bless( Perl_newRV_noinc( Perl_newSV( 0)),Perl_gv_stashpvn ( ("" "XS::APItest::TempObj" ""), (sizeof("XS::APItest::TempObj" )-1), 0x01)) |
| 6578 | gv_stashpvs("XS::APItest::TempObj",GV_ADD)Perl_sv_bless( Perl_newRV_noinc( Perl_newSV( 0)),Perl_gv_stashpvn ( ("" "XS::APItest::TempObj" ""), (sizeof("XS::APItest::TempObj" )-1), 0x01)) |
| 6579 | )Perl_sv_bless( Perl_newRV_noinc( Perl_newSV( 0)),Perl_gv_stashpvn ( ("" "XS::APItest::TempObj" ""), (sizeof("XS::APItest::TempObj" )-1), 0x01)); /* Package defined in test script */ |
| 6580 | #line 6581 "APItest.c" |
| 6581 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 6582 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 6583 | } |
| 6584 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 6585 | } |
| 6586 | |
| 6587 | |
| 6588 | XS_EUPXS(XS_XS__APItest_fill_hash_with_nulls)static void XS_XS__APItest_fill_hash_with_nulls( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6589 | XS_EUPXS(XS_XS__APItest_fill_hash_with_nulls)static void XS_XS__APItest_fill_hash_with_nulls( CV* cv __attribute__ ((unused))) |
| 6590 | { |
| 6591 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6592 | if (items != 1) |
| 6593 | croak_xs_usagePerl_croak_xs_usage(cv, "hv"); |
| 6594 | { |
| 6595 | #line 4122 "APItest.xs" |
| 6596 | UV i = 0; |
| 6597 | #line 6598 "APItest.c" |
| 6598 | HV * hv; |
| 6599 | |
| 6600 | STMT_STARTdo { |
| 6601 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 6602 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 6603 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800) && SvTYPE(SvRV(xsub_tmp_sv))((svtype)((((xsub_tmp_sv)->sv_u.svu_rv))->sv_flags & 0xff)) == SVt_PVHV){ |
| 6604 | hv = (HV*)SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 6605 | } |
| 6606 | else{ |
| 6607 | Perl_croak_nocontextPerl_croak("%s: %s is not a HASH reference", |
| 6608 | "XS::APItest::fill_hash_with_nulls", |
| 6609 | "hv"); |
| 6610 | } |
| 6611 | } STMT_ENDwhile (0) |
| 6612 | ; |
| 6613 | #line 4124 "APItest.xs" |
| 6614 | for(; i < 1000; ++i) { |
| 6615 | HE *entry = hv_fetch_ent(hv, sv_2mortal(newSVuv(i)), 1, 0)((HE *) Perl_hv_common( (hv),(Perl_sv_2mortal( Perl_newSVuv( i ))),((void*)0),0,0,((1) ? 0x10 : 0),((void*)0),(0))); |
| 6616 | SvREFCNT_dec(HeVAL(entry))Perl_SvREFCNT_dec( ((SV *)({ void *_p = ((entry)->he_valu. hent_val); _p; }))); |
| 6617 | HeVAL(entry)(entry)->he_valu.hent_val = NULL((void*)0); |
| 6618 | } |
| 6619 | #line 6620 "APItest.c" |
| 6620 | } |
| 6621 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 6622 | } |
| 6623 | |
| 6624 | |
| 6625 | XS_EUPXS(XS_XS__APItest_newHVhv)static void XS_XS__APItest_newHVhv( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 6626 | XS_EUPXS(XS_XS__APItest_newHVhv)static void XS_XS__APItest_newHVhv( CV* cv __attribute__((unused ))) |
| 6627 | { |
| 6628 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6629 | if (items != 1) |
| 6630 | croak_xs_usagePerl_croak_xs_usage(cv, "hv"); |
| 6631 | { |
| 6632 | HV * RETVAL; |
| 6633 | HV * hv; |
| 6634 | |
| 6635 | STMT_STARTdo { |
| 6636 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 6637 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 6638 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800) && SvTYPE(SvRV(xsub_tmp_sv))((svtype)((((xsub_tmp_sv)->sv_u.svu_rv))->sv_flags & 0xff)) == SVt_PVHV){ |
| 6639 | hv = (HV*)SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 6640 | } |
| 6641 | else{ |
| 6642 | Perl_croak_nocontextPerl_croak("%s: %s is not a HASH reference", |
| 6643 | "XS::APItest::newHVhv", |
| 6644 | "hv"); |
| 6645 | } |
| 6646 | } STMT_ENDwhile (0) |
| 6647 | ; |
| 6648 | #line 4133 "APItest.xs" |
| 6649 | RETVAL = newHVhv(hv)Perl_newHVhv( hv); |
| 6650 | #line 6651 "APItest.c" |
| 6651 | { |
| 6652 | SV * RETVALSV; |
| 6653 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 6654 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 6655 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 6656 | } |
| 6657 | } |
| 6658 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 6659 | } |
| 6660 | |
| 6661 | |
| 6662 | XS_EUPXS(XS_XS__APItest_SvIsCOW)static void XS_XS__APItest_SvIsCOW( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 6663 | XS_EUPXS(XS_XS__APItest_SvIsCOW)static void XS_XS__APItest_SvIsCOW( CV* cv __attribute__((unused ))) |
| 6664 | { |
| 6665 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6666 | if (items != 1) |
| 6667 | croak_xs_usagePerl_croak_xs_usage(cv, "sv"); |
| 6668 | { |
| 6669 | U32 RETVAL; |
| 6670 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 6671 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 6672 | ; |
| 6673 | #line 4140 "APItest.xs" |
| 6674 | RETVAL = SvIsCOW(sv)((sv)->sv_flags & 0x10000000); |
| 6675 | #line 6676 "APItest.c" |
| 6676 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 6677 | } |
| 6678 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 6679 | } |
| 6680 | |
| 6681 | |
| 6682 | XS_EUPXS(XS_XS__APItest_pad_scalar)static void XS_XS__APItest_pad_scalar( CV* cv __attribute__(( unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6683 | XS_EUPXS(XS_XS__APItest_pad_scalar)static void XS_XS__APItest_pad_scalar( CV* cv __attribute__(( unused))) |
| 6684 | { |
| 6685 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6686 | PERL_UNUSED_VAR(cv)((void)sizeof(cv)); /* -W */ |
| 6687 | PERL_UNUSED_VAR(items)((void)sizeof(items)); /* -W */ |
| 6688 | { |
| 6689 | #line 4148 "APItest.xs" |
| 6690 | PERL_UNUSED_VAR(items)((void)sizeof(items)); |
| 6691 | croakPerl_croak("pad_scalar called as a function"); |
| 6692 | #line 6693 "APItest.c" |
| 6693 | } |
| 6694 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 6695 | } |
| 6696 | |
| 6697 | |
| 6698 | XS_EUPXS(XS_XS__APItest_fetch_pad_names)static void XS_XS__APItest_fetch_pad_names( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6699 | XS_EUPXS(XS_XS__APItest_fetch_pad_names)static void XS_XS__APItest_fetch_pad_names( CV* cv __attribute__ ((unused))) |
| 6700 | { |
| 6701 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6702 | if (items != 1) |
| 6703 | croak_xs_usagePerl_croak_xs_usage(cv, "cv"); |
| 6704 | { |
| 6705 | CV* cv; |
| 6706 | #line 4161 "APItest.xs" |
| 6707 | I32 i; |
| 6708 | PADNAMELIST *pad_namelist; |
| 6709 | AV *retav = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 6710 | #line 6711 "APItest.c" |
| 6711 | SV * RETVAL; |
| 6712 | |
| 6713 | STMT_STARTdo { |
| 6714 | HV *st; |
| 6715 | GV *gvp; |
| 6716 | SV * const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 6717 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 6718 | cv = sv_2cv(xsub_tmp_sv, &st, &gvp, 0)Perl_sv_2cv( xsub_tmp_sv,&st,&gvp,0); |
| 6719 | if (!cv) { |
| 6720 | Perl_croak_nocontextPerl_croak("%s: %s is not a CODE reference", |
| 6721 | "XS::APItest::fetch_pad_names", |
| 6722 | "cv"); |
| 6723 | } |
| 6724 | } STMT_ENDwhile (0) |
| 6725 | ; |
| 6726 | #line 4165 "APItest.xs" |
| 6727 | pad_namelist = PadlistNAMES(CvPADLIST(cv))*((PADNAMELIST **)((*( &(((XPVCV*)({ void *_p = ((cv)-> sv_any); _p; }))->xcv_padlist_u.xcv_padlist))))->xpadl_arr .xpadlarr_alloc); |
| 6728 | |
| 6729 | for ( i = PadnamelistMAX(pad_namelist)(pad_namelist)->xpadnl_fill; i >= 0; i-- ) { |
| 6730 | PADNAME* name = PadnamelistARRAY(pad_namelist)(pad_namelist)->xpadnl_alloc[i]; |
| 6731 | |
| 6732 | if (PadnameLEN(name)(name)->xpadn_len) { |
| 6733 | av_push(retav, newSVpadname(name))Perl_av_push( retav,Perl_newSVpvn_flags( ((name)->xpadn_pv ),((name)->xpadn_len),((1)) ? 0x20000000 : 0)); |
| 6734 | } |
| 6735 | } |
| 6736 | RETVAL = newRV_noinc((SV*)retav)Perl_newRV_noinc( (SV*)retav); |
| 6737 | #line 6738 "APItest.c" |
| 6738 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 6739 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 6740 | } |
| 6741 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 6742 | } |
| 6743 | |
| 6744 | |
| 6745 | XS_EUPXS(XS_XS__APItest_underscore_length)static void XS_XS__APItest_underscore_length( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6746 | XS_EUPXS(XS_XS__APItest_underscore_length)static void XS_XS__APItest_underscore_length( CV* cv __attribute__ ((unused))) |
| 6747 | { |
| 6748 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6749 | if (items != 0) |
| 6750 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 6751 | { |
| 6752 | #line 4182 "APItest.xs" |
| 6753 | SV *u; |
| 6754 | U8 *pv; |
| 6755 | STRLEN bytelen; |
| 6756 | #line 6757 "APItest.c" |
| 6757 | STRLEN RETVAL; |
| 6758 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 6759 | #line 4186 "APItest.xs" |
| 6760 | u = find_rundefsv()Perl_find_rundefsv(); |
| 6761 | pv = (U8*)SvPV(u, bytelen)((((u)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((bytelen = ((XPV*) (u)->sv_any)->xpv_cur), ((u)-> sv_u.svu_pv)) : Perl_sv_2pv_flags( u,&bytelen,2)); |
| 6762 | RETVAL = SvUTF8(u)((u)->sv_flags & 0x20000000) ? utf8_length(pv, pv+bytelen)Perl_utf8_length( pv,pv+bytelen) : bytelen; |
| 6763 | #line 6764 "APItest.c" |
| 6764 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 6765 | } |
| 6766 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 6767 | } |
| 6768 | |
| 6769 | |
| 6770 | XS_EUPXS(XS_XS__APItest_stringify)static void XS_XS__APItest_stringify( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 6771 | XS_EUPXS(XS_XS__APItest_stringify)static void XS_XS__APItest_stringify( CV* cv __attribute__((unused ))) |
| 6772 | { |
| 6773 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6774 | if (items != 1) |
| 6775 | croak_xs_usagePerl_croak_xs_usage(cv, "sv"); |
| 6776 | { |
| 6777 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 6778 | ; |
| 6779 | #line 4195 "APItest.xs" |
| 6780 | (void)SvPV_nolen(sv)((((sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((sv)->sv_u.svu_pv) : Perl_sv_2pv_flags( sv,0,2)); |
| 6781 | #line 6782 "APItest.c" |
| 6782 | } |
| 6783 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 6784 | } |
| 6785 | |
| 6786 | |
| 6787 | XS_EUPXS(XS_XS__APItest_HvENAME)static void XS_XS__APItest_HvENAME( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 6788 | XS_EUPXS(XS_XS__APItest_HvENAME)static void XS_XS__APItest_HvENAME( CV* cv __attribute__((unused ))) |
| 6789 | { |
| 6790 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6791 | if (items != 1) |
| 6792 | croak_xs_usagePerl_croak_xs_usage(cv, "hv"); |
| 6793 | { |
| 6794 | SV * RETVAL; |
| 6795 | HV * hv; |
| 6796 | |
| 6797 | STMT_STARTdo { |
| 6798 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 6799 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 6800 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800) && SvTYPE(SvRV(xsub_tmp_sv))((svtype)((((xsub_tmp_sv)->sv_u.svu_rv))->sv_flags & 0xff)) == SVt_PVHV){ |
| 6801 | hv = (HV*)SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 6802 | } |
| 6803 | else{ |
| 6804 | Perl_croak_nocontextPerl_croak("%s: %s is not a HASH reference", |
| 6805 | "XS::APItest::HvENAME", |
| 6806 | "hv"); |
| 6807 | } |
| 6808 | } STMT_ENDwhile (0) |
| 6809 | ; |
| 6810 | #line 4200 "APItest.xs" |
| 6811 | RETVAL = hv && HvENAME(hv)((((hv)->sv_flags & 0x02000000) && ((struct xpvhv_aux *)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_u.xhvnameu_name && ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)-> sv_any)->xhv_max+1]))->xhv_name_count != -1) ? (( ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)-> sv_any)->xhv_max+1]))->xhv_name_count > 0 ? ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)-> sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_names[0] : ( (struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV*) ( hv)->sv_any)->xhv_max+1]))->xhv_name_count < -1 ? ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_names [1] : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_count == -1 ? ((void*)0) : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u. xhvnameu_name ))->hek_key : ((void*)0)) |
| 6812 | ? newSVpvn_flags(Perl_newSVpvn_flags( ((((hv)->sv_flags & 0x02000000) && ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_name && ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_count != -1) ? (( ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_count > 0 ? ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[ ((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_names [0] : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_count < - 1 ? ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_names [1] : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_count == -1 ? ((void*)0) : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u. xhvnameu_name ))->hek_key : ((void*)0)),((((hv)->sv_flags & 0x02000000) && ((struct xpvhv_aux*)&(((hv) ->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)->xhv_max+1] ))->xhv_name_u.xhvnameu_name && ((struct xpvhv_aux *)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count != -1) ? (( ((struct xpvhv_aux *)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count > 0 ? ((struct xpvhv_aux*) &(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_u.xhvnameu_names[0] : ((struct xpvhv_aux *)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count < -1 ? ((struct xpvhv_aux* )&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_u.xhvnameu_names[1] : ((struct xpvhv_aux *)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count == -1 ? ((void*)0) : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)-> sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_name ))-> hek_len : 0),(((((hv)->sv_flags & 0x02000000) && ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_name && ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_count != -1) ? ((*((unsigned char *)((( ((struct xpvhv_aux*)&( ((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)->xhv_max +1]))->xhv_name_count > 0 ? ((struct xpvhv_aux*)&(( (hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)->xhv_max +1]))->xhv_name_u.xhvnameu_names[0] : ((struct xpvhv_aux*) &(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count < -1 ? ((struct xpvhv_aux* )&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_u.xhvnameu_names[1] : ((struct xpvhv_aux *)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count == -1 ? ((void*)0) : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)-> sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_name ))-> hek_key)+(( ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_count > 0 ? ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[ ((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_names [0] : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_count < - 1 ? ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_names [1] : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_count == -1 ? ((void*)0) : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u. xhvnameu_name ))->hek_len+1)) & 0x01) : 0) ? 0x20000000 : 0)) |
| 6813 | HvENAME(hv),HvENAMELEN(hv),Perl_newSVpvn_flags( ((((hv)->sv_flags & 0x02000000) && ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_name && ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_count != -1) ? (( ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_count > 0 ? ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[ ((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_names [0] : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_count < - 1 ? ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_names [1] : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_count == -1 ? ((void*)0) : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u. xhvnameu_name ))->hek_key : ((void*)0)),((((hv)->sv_flags & 0x02000000) && ((struct xpvhv_aux*)&(((hv) ->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)->xhv_max+1] ))->xhv_name_u.xhvnameu_name && ((struct xpvhv_aux *)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count != -1) ? (( ((struct xpvhv_aux *)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count > 0 ? ((struct xpvhv_aux*) &(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_u.xhvnameu_names[0] : ((struct xpvhv_aux *)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count < -1 ? ((struct xpvhv_aux* )&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_u.xhvnameu_names[1] : ((struct xpvhv_aux *)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count == -1 ? ((void*)0) : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)-> sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_name ))-> hek_len : 0),(((((hv)->sv_flags & 0x02000000) && ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_name && ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_count != -1) ? ((*((unsigned char *)((( ((struct xpvhv_aux*)&( ((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)->xhv_max +1]))->xhv_name_count > 0 ? ((struct xpvhv_aux*)&(( (hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)->xhv_max +1]))->xhv_name_u.xhvnameu_names[0] : ((struct xpvhv_aux*) &(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count < -1 ? ((struct xpvhv_aux* )&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_u.xhvnameu_names[1] : ((struct xpvhv_aux *)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count == -1 ? ((void*)0) : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)-> sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_name ))-> hek_key)+(( ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_count > 0 ? ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[ ((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_names [0] : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_count < - 1 ? ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_names [1] : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_count == -1 ? ((void*)0) : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u. xhvnameu_name ))->hek_len+1)) & 0x01) : 0) ? 0x20000000 : 0)) |
| 6814 | (HvENAMEUTF8(hv) ? SVf_UTF8 : 0)Perl_newSVpvn_flags( ((((hv)->sv_flags & 0x02000000) && ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_name && ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_count != -1) ? (( ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_count > 0 ? ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[ ((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_names [0] : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_count < - 1 ? ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_names [1] : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_count == -1 ? ((void*)0) : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u. xhvnameu_name ))->hek_key : ((void*)0)),((((hv)->sv_flags & 0x02000000) && ((struct xpvhv_aux*)&(((hv) ->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)->xhv_max+1] ))->xhv_name_u.xhvnameu_name && ((struct xpvhv_aux *)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count != -1) ? (( ((struct xpvhv_aux *)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count > 0 ? ((struct xpvhv_aux*) &(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_u.xhvnameu_names[0] : ((struct xpvhv_aux *)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count < -1 ? ((struct xpvhv_aux* )&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_u.xhvnameu_names[1] : ((struct xpvhv_aux *)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count == -1 ? ((void*)0) : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)-> sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_name ))-> hek_len : 0),(((((hv)->sv_flags & 0x02000000) && ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_name && ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_count != -1) ? ((*((unsigned char *)((( ((struct xpvhv_aux*)&( ((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)->xhv_max +1]))->xhv_name_count > 0 ? ((struct xpvhv_aux*)&(( (hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)->xhv_max +1]))->xhv_name_u.xhvnameu_names[0] : ((struct xpvhv_aux*) &(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count < -1 ? ((struct xpvhv_aux* )&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_u.xhvnameu_names[1] : ((struct xpvhv_aux *)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count == -1 ? ((void*)0) : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)-> sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_name ))-> hek_key)+(( ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_count > 0 ? ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[ ((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_names [0] : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_count < - 1 ? ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_names [1] : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_count == -1 ? ((void*)0) : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u. xhvnameu_name ))->hek_len+1)) & 0x01) : 0) ? 0x20000000 : 0)) |
| 6815 | )Perl_newSVpvn_flags( ((((hv)->sv_flags & 0x02000000) && ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_name && ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_count != -1) ? (( ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_count > 0 ? ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[ ((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_names [0] : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_count < - 1 ? ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_names [1] : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_count == -1 ? ((void*)0) : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u. xhvnameu_name ))->hek_key : ((void*)0)),((((hv)->sv_flags & 0x02000000) && ((struct xpvhv_aux*)&(((hv) ->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)->xhv_max+1] ))->xhv_name_u.xhvnameu_name && ((struct xpvhv_aux *)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count != -1) ? (( ((struct xpvhv_aux *)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count > 0 ? ((struct xpvhv_aux*) &(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_u.xhvnameu_names[0] : ((struct xpvhv_aux *)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count < -1 ? ((struct xpvhv_aux* )&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_u.xhvnameu_names[1] : ((struct xpvhv_aux *)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count == -1 ? ((void*)0) : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)-> sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_name ))-> hek_len : 0),(((((hv)->sv_flags & 0x02000000) && ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_name && ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_count != -1) ? ((*((unsigned char *)((( ((struct xpvhv_aux*)&( ((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)->xhv_max +1]))->xhv_name_count > 0 ? ((struct xpvhv_aux*)&(( (hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)->xhv_max +1]))->xhv_name_u.xhvnameu_names[0] : ((struct xpvhv_aux*) &(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count < -1 ? ((struct xpvhv_aux* )&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_u.xhvnameu_names[1] : ((struct xpvhv_aux *)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)->sv_any)-> xhv_max+1]))->xhv_name_count == -1 ? ((void*)0) : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV*) (hv)-> sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_name ))-> hek_key)+(( ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_count > 0 ? ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[ ((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_names [0] : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_count < - 1 ? ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_u.xhvnameu_names [1] : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash)[((XPVHV *) (hv)->sv_any)->xhv_max+1]))->xhv_name_count == -1 ? ((void*)0) : ((struct xpvhv_aux*)&(((hv)->sv_u.svu_hash )[((XPVHV*) (hv)->sv_any)->xhv_max+1]))->xhv_name_u. xhvnameu_name ))->hek_len+1)) & 0x01) : 0) ? 0x20000000 : 0)) |
| 6816 | : NULL((void*)0); |
| 6817 | #line 6818 "APItest.c" |
| 6818 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 6819 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 6820 | } |
| 6821 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 6822 | } |
| 6823 | |
| 6824 | |
| 6825 | XS_EUPXS(XS_XS__APItest_xs_cmp)static void XS_XS__APItest_xs_cmp( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 6826 | XS_EUPXS(XS_XS__APItest_xs_cmp)static void XS_XS__APItest_xs_cmp( CV* cv __attribute__((unused ))) |
| 6827 | { |
| 6828 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6829 | if (items != 2) |
| 6830 | croak_xs_usagePerl_croak_xs_usage(cv, "a, b"); |
| 6831 | { |
| 6832 | int RETVAL; |
| 6833 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 6834 | int a = (int)SvIV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (0)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 0)],2)) |
| 6835 | ; |
| 6836 | int b = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 6837 | ; |
| 6838 | #line 4212 "APItest.xs" |
| 6839 | /* Odd sorting (odd numbers first), to make sure we are actually |
| 6840 | being called */ |
| 6841 | RETVAL = a % 2 != b % 2 |
| 6842 | ? a % 2 ? -1 : 1 |
| 6843 | : a < b ? -1 : a == b ? 0 : 1; |
| 6844 | #line 6845 "APItest.c" |
| 6845 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHi((IV)RETVAL)do { do { IV TARGi_iv = (IV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1)) ? (_Bool)1 : (_Bool)0) ,(1))) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000 ); targ->sv_u.svu_iv = TARGi_iv; } else Perl_sv_setiv_mg( targ ,TARGi_iv); } while (0); (*++sp = (targ)); } while (0); |
| 6846 | } |
| 6847 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 6848 | } |
| 6849 | |
| 6850 | |
| 6851 | XS_EUPXS(XS_XS__APItest_xs_cmp_undef)static void XS_XS__APItest_xs_cmp_undef( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6852 | XS_EUPXS(XS_XS__APItest_xs_cmp_undef)static void XS_XS__APItest_xs_cmp_undef( CV* cv __attribute__ ((unused))) |
| 6853 | { |
| 6854 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6855 | if (items != 2) |
| 6856 | croak_xs_usagePerl_croak_xs_usage(cv, "a, b"); |
| 6857 | { |
| 6858 | SV * RETVAL; |
| 6859 | SV * a = ST(0)PL_stack_base[ax + (0)] |
| 6860 | ; |
| 6861 | SV * b = ST(1)PL_stack_base[ax + (1)] |
| 6862 | ; |
| 6863 | #line 4223 "APItest.xs" |
| 6864 | PERL_UNUSED_ARG(a)((void)sizeof(a)); |
| 6865 | PERL_UNUSED_ARG(b)((void)sizeof(b)); |
| 6866 | RETVAL = &PL_sv_undef(PL_sv_immortals[1]); |
| 6867 | #line 6868 "APItest.c" |
| 6868 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 6869 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 6870 | } |
| 6871 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 6872 | } |
| 6873 | |
| 6874 | |
| 6875 | XS_EUPXS(XS_XS__APItest_SvPVbyte)static void XS_XS__APItest_SvPVbyte( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 6876 | XS_EUPXS(XS_XS__APItest_SvPVbyte)static void XS_XS__APItest_SvPVbyte( CV* cv __attribute__((unused ))) |
| 6877 | { |
| 6878 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6879 | if (items != 1) |
| 6880 | croak_xs_usagePerl_croak_xs_usage(cv, "sv"); |
| 6881 | { |
| 6882 | char * RETVAL; |
| 6883 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 6884 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 6885 | ; |
| 6886 | #line 4232 "APItest.xs" |
| 6887 | RETVAL = SvPVbyte_nolen(sv)((((sv)->sv_flags & (0x00000400|0x20000000|0x00200000) ) == 0x00000400) ? ((sv)->sv_u.svu_pv) : Perl_sv_2pvbyte_flags ( sv,0,2)); |
| 6888 | #line 6889 "APItest.c" |
| 6889 | sv_setpv(TARG, RETVAL)Perl_sv_setpv( targ,RETVAL); XSprePUSH(sp = PL_stack_base + ax - 1); PUSHTARGdo { do { if (__builtin_expect(((((targ)->sv_flags & 0x00400000 )) ? (_Bool)1 : (_Bool)0),(0))) Perl_mg_set( targ); } while ( 0); (*++sp = (targ)); } while (0); |
| 6890 | } |
| 6891 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 6892 | } |
| 6893 | |
| 6894 | |
| 6895 | XS_EUPXS(XS_XS__APItest_SvPVbyte_nomg)static void XS_XS__APItest_SvPVbyte_nomg( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6896 | XS_EUPXS(XS_XS__APItest_SvPVbyte_nomg)static void XS_XS__APItest_SvPVbyte_nomg( CV* cv __attribute__ ((unused))) |
| 6897 | { |
| 6898 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6899 | if (items != 1) |
| 6900 | croak_xs_usagePerl_croak_xs_usage(cv, "sv"); |
| 6901 | { |
| 6902 | char * RETVAL; |
| 6903 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 6904 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 6905 | ; |
| 6906 | #line 4239 "APItest.xs" |
| 6907 | RETVAL = SvPVbyte_nomg(sv, PL_na)((((sv)->sv_flags & (0x00000400|0x20000000|0x00200000) ) == 0x00000400) ? ((PL_na = ((XPV*) (sv)->sv_any)->xpv_cur ), ((sv)->sv_u.svu_pv)) : Perl_sv_2pvbyte_flags( sv,&PL_na ,0)); |
| 6908 | #line 6909 "APItest.c" |
| 6909 | sv_setpv(TARG, RETVAL)Perl_sv_setpv( targ,RETVAL); XSprePUSH(sp = PL_stack_base + ax - 1); PUSHTARGdo { do { if (__builtin_expect(((((targ)->sv_flags & 0x00400000 )) ? (_Bool)1 : (_Bool)0),(0))) Perl_mg_set( targ); } while ( 0); (*++sp = (targ)); } while (0); |
| 6910 | } |
| 6911 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 6912 | } |
| 6913 | |
| 6914 | |
| 6915 | XS_EUPXS(XS_XS__APItest_SvPVutf8)static void XS_XS__APItest_SvPVutf8( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 6916 | XS_EUPXS(XS_XS__APItest_SvPVutf8)static void XS_XS__APItest_SvPVutf8( CV* cv __attribute__((unused ))) |
| 6917 | { |
| 6918 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6919 | if (items != 1) |
| 6920 | croak_xs_usagePerl_croak_xs_usage(cv, "sv"); |
| 6921 | { |
| 6922 | char * RETVAL; |
| 6923 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 6924 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 6925 | ; |
| 6926 | #line 4246 "APItest.xs" |
| 6927 | RETVAL = SvPVutf8_nolen(sv)((((sv)->sv_flags & (0x00000400|0x20000000|0x00200000) ) == (0x00000400|0x20000000)) ? ((sv)->sv_u.svu_pv) : Perl_sv_2pvutf8_flags ( sv,0,2)); |
| 6928 | #line 6929 "APItest.c" |
| 6929 | sv_setpv(TARG, RETVAL)Perl_sv_setpv( targ,RETVAL); XSprePUSH(sp = PL_stack_base + ax - 1); PUSHTARGdo { do { if (__builtin_expect(((((targ)->sv_flags & 0x00400000 )) ? (_Bool)1 : (_Bool)0),(0))) Perl_mg_set( targ); } while ( 0); (*++sp = (targ)); } while (0); |
| 6930 | } |
| 6931 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 6932 | } |
| 6933 | |
| 6934 | |
| 6935 | XS_EUPXS(XS_XS__APItest_SvPVutf8_nomg)static void XS_XS__APItest_SvPVutf8_nomg( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6936 | XS_EUPXS(XS_XS__APItest_SvPVutf8_nomg)static void XS_XS__APItest_SvPVutf8_nomg( CV* cv __attribute__ ((unused))) |
| 6937 | { |
| 6938 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6939 | if (items != 1) |
| 6940 | croak_xs_usagePerl_croak_xs_usage(cv, "sv"); |
| 6941 | { |
| 6942 | char * RETVAL; |
| 6943 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 6944 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 6945 | ; |
| 6946 | #line 4253 "APItest.xs" |
| 6947 | RETVAL = SvPVutf8_nomg(sv, PL_na)((((sv)->sv_flags & (0x00000400|0x20000000|0x00200000) ) == (0x00000400|0x20000000)) ? ((PL_na = ((XPV*) (sv)->sv_any )->xpv_cur), ((sv)->sv_u.svu_pv)) : Perl_sv_2pvutf8_flags ( sv,&PL_na,0)); |
| 6948 | #line 6949 "APItest.c" |
| 6949 | sv_setpv(TARG, RETVAL)Perl_sv_setpv( targ,RETVAL); XSprePUSH(sp = PL_stack_base + ax - 1); PUSHTARGdo { do { if (__builtin_expect(((((targ)->sv_flags & 0x00400000 )) ? (_Bool)1 : (_Bool)0),(0))) Perl_mg_set( targ); } while ( 0); (*++sp = (targ)); } while (0); |
| 6950 | } |
| 6951 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 6952 | } |
| 6953 | |
| 6954 | |
| 6955 | XS_EUPXS(XS_XS__APItest_setup_addissub)static void XS_XS__APItest_setup_addissub( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6956 | XS_EUPXS(XS_XS__APItest_setup_addissub)static void XS_XS__APItest_setup_addissub( CV* cv __attribute__ ((unused))) |
| 6957 | { |
| 6958 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6959 | if (items != 0) |
| 6960 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 6961 | { |
| 6962 | #line 4260 "APItest.xs" |
| 6963 | wrap_op_checker(OP_ADD, addissub_myck_add, &addissub_nxck_add)Perl_wrap_op_checker( OP_ADD,addissub_myck_add,&addissub_nxck_add ); |
| 6964 | #line 6965 "APItest.c" |
| 6965 | } |
| 6966 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 6967 | } |
| 6968 | |
| 6969 | |
| 6970 | XS_EUPXS(XS_XS__APItest_setup_rv2cv_addunderbar)static void XS_XS__APItest_setup_rv2cv_addunderbar( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6971 | XS_EUPXS(XS_XS__APItest_setup_rv2cv_addunderbar)static void XS_XS__APItest_setup_rv2cv_addunderbar( CV* cv __attribute__ ((unused))) |
| 6972 | { |
| 6973 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6974 | if (items != 0) |
| 6975 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 6976 | { |
| 6977 | #line 4265 "APItest.xs" |
| 6978 | wrap_op_checker(OP_RV2CV, my_ck_rv2cv, &old_ck_rv2cv)Perl_wrap_op_checker( OP_RV2CV,my_ck_rv2cv,&old_ck_rv2cv); |
| 6979 | #line 6980 "APItest.c" |
| 6980 | } |
| 6981 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 6982 | } |
| 6983 | |
| 6984 | #ifdef USE_ITHREADS |
| 6985 | #define XSubPPtmpAAAD 1 |
| 6986 | |
| 6987 | |
| 6988 | XS_EUPXS(XS_XS__APItest_test_alloccopstash)static void XS_XS__APItest_test_alloccopstash( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 6989 | XS_EUPXS(XS_XS__APItest_test_alloccopstash)static void XS_XS__APItest_test_alloccopstash( CV* cv __attribute__ ((unused))) |
| 6990 | { |
| 6991 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 6992 | if (items != 0) |
| 6993 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 6994 | { |
| 6995 | bool_Bool RETVAL; |
| 6996 | #line 4272 "APItest.xs" |
| 6997 | RETVAL = PL_stashpad[alloccopstash(PL_defstash)] == PL_defstash; |
| 6998 | #line 6999 "APItest.c" |
| 6999 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 7000 | } |
| 7001 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7002 | } |
| 7003 | |
| 7004 | #endif |
| 7005 | |
| 7006 | XS_EUPXS(XS_XS__APItest_test_newFOROP_without_slab)static void XS_XS__APItest_test_newFOROP_without_slab( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7007 | XS_EUPXS(XS_XS__APItest_test_newFOROP_without_slab)static void XS_XS__APItest_test_newFOROP_without_slab( CV* cv __attribute__((unused))) |
| 7008 | { |
| 7009 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7010 | if (items != 0) |
| 7011 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 7012 | { |
| 7013 | bool_Bool RETVAL; |
| 7014 | #line 4281 "APItest.xs" |
| 7015 | { |
| 7016 | const I32 floor = start_subparse(0,0)Perl_start_subparse( 0,0); |
| 7017 | OP *o; |
| 7018 | /* The slab allocator does not like CvROOT being set. */ |
| 7019 | CvROOT(PL_compcv)((XPVCV*)({ void *_p = ((PL_compcv)->sv_any); _p; }))-> xcv_root_u.xcv_root = (OP *)1; |
| 7020 | o = newFOROP(0, 0, newOP(OP_PUSHMARK, 0), 0, 0)Perl_newFOROP( 0,0,Perl_newOP( OP_PUSHMARK,0),0,0); |
| 7021 | if (cLOOPx(cUNOPo->op_first)((LOOP*)(((UNOP*)(o))->op_first))->op_last->op_sibparent |
| 7022 | != cUNOPo((UNOP*)(o))->op_first) |
| 7023 | { |
| 7024 | Perl_warn(aTHX_ "Op parent pointer is stale"); |
| 7025 | RETVAL = FALSE(0); |
| 7026 | } |
| 7027 | else |
| 7028 | /* If we do not crash before returning, the test passes. */ |
| 7029 | RETVAL = TRUE(1); |
| 7030 | op_free(o)Perl_op_free( o); |
| 7031 | CvROOT(PL_compcv)((XPVCV*)({ void *_p = ((PL_compcv)->sv_any); _p; }))-> xcv_root_u.xcv_root = NULL((void*)0); |
| 7032 | SvREFCNT_dec(PL_compcv)Perl_SvREFCNT_dec( ((SV *)({ void *_p = (PL_compcv); _p; }))); |
| 7033 | LEAVE_SCOPE(floor)do { if (PL_savestack_ix > floor) Perl_leave_scope( floor) ; } while (0); |
| 7034 | } |
| 7035 | #line 7036 "APItest.c" |
| 7036 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 7037 | } |
| 7038 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7039 | } |
| 7040 | |
| 7041 | |
| 7042 | XS_EUPXS(XS_XS__APItest_callregexec)static void XS_XS__APItest_callregexec( CV* cv __attribute__( (unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7043 | XS_EUPXS(XS_XS__APItest_callregexec)static void XS_XS__APItest_callregexec( CV* cv __attribute__( (unused))) |
| 7044 | { |
| 7045 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7046 | if (items != 6) |
| 7047 | croak_xs_usagePerl_croak_xs_usage(cv, "prog, stringarg, strend, minend, sv, nosave"); |
| 7048 | { |
| 7049 | I32 RETVAL; |
| 7050 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 7051 | SV * prog = ST(0)PL_stack_base[ax + (0)] |
| 7052 | ; |
| 7053 | STRLEN stringarg = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 7054 | ; |
| 7055 | STRLEN strend = (STRLEN)SvUV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (2)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (2)],2)) |
| 7056 | ; |
| 7057 | I32 minend = (I32)SvIV(ST(3))((((PL_stack_base[ax + (3)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (3)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 3)],2)) |
| 7058 | ; |
| 7059 | SV * sv = ST(4)PL_stack_base[ax + (4)] |
| 7060 | ; |
| 7061 | U32 nosave = (unsigned long)SvUV(ST(5))((((PL_stack_base[ax + (5)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (5)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (5)],2)) |
| 7062 | ; |
| 7063 | #line 4310 "APItest.xs" |
| 7064 | { |
| 7065 | STRLEN len; |
| 7066 | char *strbeg; |
| 7067 | if (SvROK(prog)((prog)->sv_flags & 0x00000800)) |
| 7068 | prog = SvRV(prog)((prog)->sv_u.svu_rv); |
| 7069 | strbeg = SvPV_force(sv, len)((((sv)->sv_flags & (0x00000400|0x00000100|0x00000200| 0x00000800|0x00008000|(0x08000000|0x00010000|0x00000800|0x01000000 |0x00800000|0x10000000)|0x00200000)) == 0x00000400) ? ((len = ((XPV*) (sv)->sv_any)->xpv_cur), ((sv)->sv_u.svu_pv )) : Perl_sv_pvn_force_flags( sv,&len,2)); |
| 7070 | RETVAL = CALLREGEXEC((REGEXP *)prog,(((Perl_ReANY((const REGEXP *)((REGEXP *)prog)))->engine)) ->exec( ((REGEXP *)prog),(strbeg + stringarg),(strbeg + strend ), (strbeg),(minend),(sv),(((void*)0)),(nosave)) |
| 7071 | strbeg + stringarg,(((Perl_ReANY((const REGEXP *)((REGEXP *)prog)))->engine)) ->exec( ((REGEXP *)prog),(strbeg + stringarg),(strbeg + strend ), (strbeg),(minend),(sv),(((void*)0)),(nosave)) |
| 7072 | strbeg + strend,(((Perl_ReANY((const REGEXP *)((REGEXP *)prog)))->engine)) ->exec( ((REGEXP *)prog),(strbeg + stringarg),(strbeg + strend ), (strbeg),(minend),(sv),(((void*)0)),(nosave)) |
| 7073 | strbeg,(((Perl_ReANY((const REGEXP *)((REGEXP *)prog)))->engine)) ->exec( ((REGEXP *)prog),(strbeg + stringarg),(strbeg + strend ), (strbeg),(minend),(sv),(((void*)0)),(nosave)) |
| 7074 | minend,(((Perl_ReANY((const REGEXP *)((REGEXP *)prog)))->engine)) ->exec( ((REGEXP *)prog),(strbeg + stringarg),(strbeg + strend ), (strbeg),(minend),(sv),(((void*)0)),(nosave)) |
| 7075 | sv,(((Perl_ReANY((const REGEXP *)((REGEXP *)prog)))->engine)) ->exec( ((REGEXP *)prog),(strbeg + stringarg),(strbeg + strend ), (strbeg),(minend),(sv),(((void*)0)),(nosave)) |
| 7076 | NULL, /* data */(((Perl_ReANY((const REGEXP *)((REGEXP *)prog)))->engine)) ->exec( ((REGEXP *)prog),(strbeg + stringarg),(strbeg + strend ), (strbeg),(minend),(sv),(((void*)0)),(nosave)) |
| 7077 | nosave)(((Perl_ReANY((const REGEXP *)((REGEXP *)prog)))->engine)) ->exec( ((REGEXP *)prog),(strbeg + stringarg),(strbeg + strend ), (strbeg),(minend),(sv),(((void*)0)),(nosave)); |
| 7078 | } |
| 7079 | #line 7080 "APItest.c" |
| 7080 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHi((IV)RETVAL)do { do { IV TARGi_iv = (IV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1)) ? (_Bool)1 : (_Bool)0) ,(1))) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000 ); targ->sv_u.svu_iv = TARGi_iv; } else Perl_sv_setiv_mg( targ ,TARGi_iv); } while (0); (*++sp = (targ)); } while (0); |
| 7081 | } |
| 7082 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7083 | } |
| 7084 | |
| 7085 | |
| 7086 | XS_EUPXS(XS_XS__APItest_lexical_import)static void XS_XS__APItest_lexical_import( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7087 | XS_EUPXS(XS_XS__APItest_lexical_import)static void XS_XS__APItest_lexical_import( CV* cv __attribute__ ((unused))) |
| 7088 | { |
| 7089 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7090 | if (items != 2) |
| 7091 | croak_xs_usagePerl_croak_xs_usage(cv, "name, cv"); |
| 7092 | { |
| 7093 | SV * name = ST(0)PL_stack_base[ax + (0)] |
| 7094 | ; |
| 7095 | CV * cv; |
| 7096 | |
| 7097 | STMT_STARTdo { |
| 7098 | HV *st; |
| 7099 | GV *gvp; |
| 7100 | SV * const xsub_tmp_sv = ST(1)PL_stack_base[ax + (1)]; |
| 7101 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 7102 | cv = sv_2cv(xsub_tmp_sv, &st, &gvp, 0)Perl_sv_2cv( xsub_tmp_sv,&st,&gvp,0); |
| 7103 | if (!cv) { |
| 7104 | Perl_croak_nocontextPerl_croak("%s: %s is not a CODE reference", |
| 7105 | "XS::APItest::lexical_import", |
| 7106 | "cv"); |
| 7107 | } |
| 7108 | } STMT_ENDwhile (0) |
| 7109 | ; |
| 7110 | #line 4331 "APItest.xs" |
| 7111 | { |
| 7112 | PADLIST *pl; |
| 7113 | PADOFFSET off; |
| 7114 | if (!PL_compcv) |
| 7115 | Perl_croak(aTHX_ |
| 7116 | "lexical_import can only be called at compile time"); |
| 7117 | pl = CvPADLIST(PL_compcv)(*( &(((XPVCV*)({ void *_p = ((PL_compcv)->sv_any); _p ; }))->xcv_padlist_u.xcv_padlist))); |
| 7118 | ENTERPerl_push_scope(); |
| 7119 | SAVESPTR(PL_comppad_name)Perl_save_sptr( (SV**)&(PL_comppad_name)); PL_comppad_name = PadlistNAMES(pl)*((PADNAMELIST **)(pl)->xpadl_arr.xpadlarr_alloc); |
| 7120 | SAVESPTR(PL_comppad)Perl_save_sptr( (SV**)&(PL_comppad)); PL_comppad = PadlistARRAY(pl)(pl)->xpadl_arr.xpadlarr_alloc[1]; |
| 7121 | SAVESPTR(PL_curpad)Perl_save_sptr( (SV**)&(PL_curpad)); PL_curpad = PadARRAY(PL_comppad)((PL_comppad)->sv_u.svu_array); |
| 7122 | off = pad_add_name_sv(sv_2mortal(newSVpvf("&%" SVf,name)),Perl_pad_add_name_sv( Perl_sv_2mortal( Perl_newSVpvf("&%" "-p",name)),0x02,0,0) |
| 7123 | padadd_STATE, 0, 0)Perl_pad_add_name_sv( Perl_sv_2mortal( Perl_newSVpvf("&%" "-p",name)),0x02,0,0); |
| 7124 | SvREFCNT_dec(PL_curpad[off])Perl_SvREFCNT_dec( ((SV *)({ void *_p = (PL_curpad[off]); _p; }))); |
| 7125 | PL_curpad[off] = SvREFCNT_inc(cv)Perl_SvREFCNT_inc(((SV *)({ void *_p = (cv); _p; }))); |
| 7126 | intro_my()Perl_intro_my(); |
| 7127 | LEAVEPerl_pop_scope(); |
| 7128 | } |
| 7129 | #line 7130 "APItest.c" |
| 7130 | } |
| 7131 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 7132 | } |
| 7133 | |
| 7134 | |
| 7135 | XS_EUPXS(XS_XS__APItest_sv_mortalcopy)static void XS_XS__APItest_sv_mortalcopy( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7136 | XS_EUPXS(XS_XS__APItest_sv_mortalcopy)static void XS_XS__APItest_sv_mortalcopy( CV* cv __attribute__ ((unused))) |
| 7137 | { |
| 7138 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7139 | if (items != 1) |
| 7140 | croak_xs_usagePerl_croak_xs_usage(cv, "sv"); |
| 7141 | { |
| 7142 | SV * RETVAL; |
| 7143 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 7144 | ; |
| 7145 | #line 4353 "APItest.xs" |
| 7146 | RETVAL = SvREFCNT_inc(sv_mortalcopy(sv))Perl_SvREFCNT_inc(((SV *)({ void *_p = (Perl_sv_mortalcopy_flags ( sv, 2|0)); _p; }))); |
| 7147 | #line 7148 "APItest.c" |
| 7148 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 7149 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 7150 | } |
| 7151 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7152 | } |
| 7153 | |
| 7154 | |
| 7155 | XS_EUPXS(XS_XS__APItest_newRV)static void XS_XS__APItest_newRV( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 7156 | XS_EUPXS(XS_XS__APItest_newRV)static void XS_XS__APItest_newRV( CV* cv __attribute__((unused ))) |
| 7157 | { |
| 7158 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7159 | if (items != 1) |
| 7160 | croak_xs_usagePerl_croak_xs_usage(cv, "sv"); |
| 7161 | { |
| 7162 | SV * RETVAL; |
| 7163 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 7164 | ; |
| 7165 | |
| 7166 | RETVAL = newRV(sv)Perl_newRV( sv); |
| 7167 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 7168 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 7169 | } |
| 7170 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7171 | } |
| 7172 | |
| 7173 | |
| 7174 | XS_EUPXS(XS_XS__APItest_alias_av)static void XS_XS__APItest_alias_av( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 7175 | XS_EUPXS(XS_XS__APItest_alias_av)static void XS_XS__APItest_alias_av( CV* cv __attribute__((unused ))) |
| 7176 | { |
| 7177 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7178 | if (items != 3) |
| 7179 | croak_xs_usagePerl_croak_xs_usage(cv, "av, ix, sv"); |
| 7180 | { |
| 7181 | AV * av; |
| 7182 | IV ix = (IV)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 7183 | ; |
| 7184 | SV * sv = ST(2)PL_stack_base[ax + (2)] |
| 7185 | ; |
| 7186 | |
| 7187 | STMT_STARTdo { |
| 7188 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 7189 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 7190 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800) && SvTYPE(SvRV(xsub_tmp_sv))((svtype)((((xsub_tmp_sv)->sv_u.svu_rv))->sv_flags & 0xff)) == SVt_PVAV){ |
| 7191 | av = (AV*)SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 7192 | } |
| 7193 | else{ |
| 7194 | Perl_croak_nocontextPerl_croak("%s: %s is not an ARRAY reference", |
| 7195 | "XS::APItest::alias_av", |
| 7196 | "av"); |
| 7197 | } |
| 7198 | } STMT_ENDwhile (0) |
| 7199 | ; |
| 7200 | #line 4363 "APItest.xs" |
| 7201 | av_store(av, ix, SvREFCNT_inc(sv))Perl_av_store( av,ix,Perl_SvREFCNT_inc(((SV *)({ void *_p = ( sv); _p; })))); |
| 7202 | #line 7203 "APItest.c" |
| 7203 | } |
| 7204 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 7205 | } |
| 7206 | |
| 7207 | |
| 7208 | XS_EUPXS(XS_XS__APItest_cv_name)static void XS_XS__APItest_cv_name( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 7209 | XS_EUPXS(XS_XS__APItest_cv_name)static void XS_XS__APItest_cv_name( CV* cv __attribute__((unused ))) |
| 7210 | { |
| 7211 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7212 | if (items < 1) |
| 7213 | croak_xs_usagePerl_croak_xs_usage(cv, "ref, ..."); |
| 7214 | { |
| 7215 | SV * RETVAL; |
| 7216 | SVREF ref; |
| 7217 | |
| 7218 | STMT_STARTdo { |
| 7219 | SV* const xsub_tmp_sv = ST(0)PL_stack_base[ax + (0)]; |
| 7220 | SvGETMAGIC(xsub_tmp_sv)((void)(__builtin_expect(((((xsub_tmp_sv)->sv_flags & 0x00200000 )) ? (_Bool)1 : (_Bool)0),(0)) && Perl_mg_get( xsub_tmp_sv ))); |
| 7221 | if (SvROK(xsub_tmp_sv)((xsub_tmp_sv)->sv_flags & 0x00000800)){ |
| 7222 | ref = SvRV(xsub_tmp_sv)((xsub_tmp_sv)->sv_u.svu_rv); |
| 7223 | } |
| 7224 | else{ |
| 7225 | Perl_croak_nocontextPerl_croak("%s: %s is not a reference", |
| 7226 | "XS::APItest::cv_name", |
| 7227 | "ref"); |
| 7228 | } |
| 7229 | } STMT_ENDwhile (0) |
| 7230 | ; |
| 7231 | #line 4368 "APItest.xs" |
| 7232 | RETVAL = SvREFCNT_inc(cv_name((CV *)ref,Perl_SvREFCNT_inc(((SV *)({ void *_p = (Perl_cv_name( (CV *)ref ,items>1 && PL_stack_base[ax + (1)] != &(PL_sv_immortals [1]) ? PL_stack_base[ax + (1)] : ((void*)0),items>2 ? (((( PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (2)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (2)],2)) : 0)); _p; }))) |
| 7233 | items>1 && ST(1) != &PL_sv_undefPerl_SvREFCNT_inc(((SV *)({ void *_p = (Perl_cv_name( (CV *)ref ,items>1 && PL_stack_base[ax + (1)] != &(PL_sv_immortals [1]) ? PL_stack_base[ax + (1)] : ((void*)0),items>2 ? (((( PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (2)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (2)],2)) : 0)); _p; }))) |
| 7234 | ? ST(1)Perl_SvREFCNT_inc(((SV *)({ void *_p = (Perl_cv_name( (CV *)ref ,items>1 && PL_stack_base[ax + (1)] != &(PL_sv_immortals [1]) ? PL_stack_base[ax + (1)] : ((void*)0),items>2 ? (((( PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (2)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (2)],2)) : 0)); _p; }))) |
| 7235 | : NULL,Perl_SvREFCNT_inc(((SV *)({ void *_p = (Perl_cv_name( (CV *)ref ,items>1 && PL_stack_base[ax + (1)] != &(PL_sv_immortals [1]) ? PL_stack_base[ax + (1)] : ((void*)0),items>2 ? (((( PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (2)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (2)],2)) : 0)); _p; }))) |
| 7236 | items>2 ? SvUV(ST(2)) : 0))Perl_SvREFCNT_inc(((SV *)({ void *_p = (Perl_cv_name( (CV *)ref ,items>1 && PL_stack_base[ax + (1)] != &(PL_sv_immortals [1]) ? PL_stack_base[ax + (1)] : ((void*)0),items>2 ? (((( PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (2)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (2)],2)) : 0)); _p; }))); |
| 7237 | #line 7238 "APItest.c" |
| 7238 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 7239 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 7240 | } |
| 7241 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7242 | } |
| 7243 | |
| 7244 | |
| 7245 | XS_EUPXS(XS_XS__APItest_sv_catpvn)static void XS_XS__APItest_sv_catpvn( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 7246 | XS_EUPXS(XS_XS__APItest_sv_catpvn)static void XS_XS__APItest_sv_catpvn( CV* cv __attribute__((unused ))) |
| 7247 | { |
| 7248 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7249 | if (items != 2) |
| 7250 | croak_xs_usagePerl_croak_xs_usage(cv, "sv, sv2"); |
| 7251 | { |
| 7252 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 7253 | ; |
| 7254 | SV * sv2 = ST(1)PL_stack_base[ax + (1)] |
| 7255 | ; |
| 7256 | #line 4379 "APItest.xs" |
| 7257 | { |
| 7258 | STRLEN len; |
| 7259 | const char *s = SvPV(sv2,len)((((sv2)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (sv2)->sv_any)->xpv_cur), ((sv2)-> sv_u.svu_pv)) : Perl_sv_2pv_flags( sv2,&len,2)); |
| 7260 | sv_catpvn_flags(sv,s,len, SvUTF8(sv2) ? SV_CATUTF8 : SV_CATBYTES)Perl_sv_catpvn_flags( sv,s,len,((sv2)->sv_flags & 0x20000000 ) ? 32768 : 16384); |
| 7261 | } |
| 7262 | #line 7263 "APItest.c" |
| 7263 | } |
| 7264 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 7265 | } |
| 7266 | |
| 7267 | |
| 7268 | XS_EUPXS(XS_XS__APItest_test_newOP_CUSTOM)static void XS_XS__APItest_test_newOP_CUSTOM( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7269 | XS_EUPXS(XS_XS__APItest_test_newOP_CUSTOM)static void XS_XS__APItest_test_newOP_CUSTOM( CV* cv __attribute__ ((unused))) |
| 7270 | { |
| 7271 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7272 | if (items != 0) |
| 7273 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 7274 | { |
| 7275 | bool_Bool RETVAL; |
| 7276 | #line 4388 "APItest.xs" |
| 7277 | { |
| 7278 | OP *o = newLISTOP(OP_CUSTOM, 0, NULL, NULL)Perl_newLISTOP( OP_CUSTOM,0,((void*)0),((void*)0)); |
| 7279 | op_free(o)Perl_op_free( o); |
| 7280 | o = newOP(OP_CUSTOM, 0)Perl_newOP( OP_CUSTOM,0); |
| 7281 | op_free(o)Perl_op_free( o); |
| 7282 | o = newUNOP(OP_CUSTOM, 0, NULL)Perl_newUNOP( OP_CUSTOM,0,((void*)0)); |
| 7283 | op_free(o)Perl_op_free( o); |
| 7284 | o = newUNOP_AUX(OP_CUSTOM, 0, NULL, NULL)Perl_newUNOP_AUX( OP_CUSTOM,0,((void*)0),((void*)0)); |
| 7285 | op_free(o)Perl_op_free( o); |
| 7286 | o = newMETHOP(OP_CUSTOM, 0, newOP(OP_NULL,0))Perl_newMETHOP( OP_CUSTOM,0,Perl_newOP( OP_NULL,0)); |
| 7287 | op_free(o)Perl_op_free( o); |
| 7288 | o = newMETHOP_named(OP_CUSTOM, 0, newSV(0))Perl_newMETHOP_named( OP_CUSTOM,0,Perl_newSV( 0)); |
| 7289 | op_free(o)Perl_op_free( o); |
| 7290 | o = newBINOP(OP_CUSTOM, 0, NULL, NULL)Perl_newBINOP( OP_CUSTOM,0,((void*)0),((void*)0)); |
| 7291 | op_free(o)Perl_op_free( o); |
| 7292 | o = newPMOP(OP_CUSTOM, 0)Perl_newPMOP( OP_CUSTOM,0); |
| 7293 | op_free(o)Perl_op_free( o); |
| 7294 | o = newSVOP(OP_CUSTOM, 0, newSV(0))Perl_newSVOP( OP_CUSTOM,0,Perl_newSV( 0)); |
| 7295 | op_free(o)Perl_op_free( o); |
| 7296 | #ifdef USE_ITHREADS |
| 7297 | ENTERPerl_push_scope(); |
| 7298 | lex_start(NULL, NULL, 0)Perl_lex_start( ((void*)0),((void*)0),0); |
| 7299 | { |
| 7300 | I32 ix = start_subparse(FALSE,0)Perl_start_subparse( (0),0); |
| 7301 | o = newPADOP(OP_CUSTOM, 0, newSV(0)Perl_newSV( 0)); |
| 7302 | op_free(o)Perl_op_free( o); |
| 7303 | LEAVE_SCOPE(ix)do { if (PL_savestack_ix > ix) Perl_leave_scope( ix); } while (0); |
| 7304 | } |
| 7305 | LEAVEPerl_pop_scope(); |
| 7306 | #endif |
| 7307 | o = newPVOP(OP_CUSTOM, 0, NULL)Perl_newPVOP( OP_CUSTOM,0,((void*)0)); |
| 7308 | op_free(o)Perl_op_free( o); |
| 7309 | o = newLOGOP(OP_CUSTOM, 0, newOP(OP_NULL,0), newOP(OP_NULL,0))Perl_newLOGOP( OP_CUSTOM,0,Perl_newOP( OP_NULL,0),Perl_newOP( OP_NULL,0)); |
| 7310 | op_free(o)Perl_op_free( o); |
| 7311 | o = newLOOPEX(OP_CUSTOM, newOP(OP_NULL,0))Perl_newLOOPEX( OP_CUSTOM,Perl_newOP( OP_NULL,0)); |
| 7312 | op_free(o)Perl_op_free( o); |
| 7313 | RETVAL = TRUE(1); |
| 7314 | } |
| 7315 | #line 7316 "APItest.c" |
| 7316 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 7317 | } |
| 7318 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7319 | } |
| 7320 | |
| 7321 | |
| 7322 | XS_EUPXS(XS_XS__APItest_test_sv_catpvf)static void XS_XS__APItest_test_sv_catpvf( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7323 | XS_EUPXS(XS_XS__APItest_test_sv_catpvf)static void XS_XS__APItest_test_sv_catpvf( CV* cv __attribute__ ((unused))) |
| 7324 | { |
| 7325 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7326 | if (items != 1) |
| 7327 | croak_xs_usagePerl_croak_xs_usage(cv, "fmtsv"); |
| 7328 | { |
| 7329 | #line 4432 "APItest.xs" |
| 7330 | SV *sv; |
| 7331 | char *fmt; |
| 7332 | #line 7333 "APItest.c" |
| 7333 | SV * fmtsv = ST(0)PL_stack_base[ax + (0)] |
| 7334 | ; |
| 7335 | #line 4435 "APItest.xs" |
| 7336 | fmt = SvPV_nolen(fmtsv)((((fmtsv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((fmtsv)->sv_u.svu_pv) : Perl_sv_2pv_flags( fmtsv,0,2) ); |
| 7337 | sv = sv_2mortal(newSVpvn("", 0))Perl_sv_2mortal( Perl_newSVpvn( "",0)); |
| 7338 | sv_catpvfPerl_sv_catpvf(sv, fmt, 5, 6, 7, 8); |
| 7339 | #line 7340 "APItest.c" |
| 7340 | } |
| 7341 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 7342 | } |
| 7343 | |
| 7344 | |
| 7345 | XS_EUPXS(XS_XS__APItest_load_module)static void XS_XS__APItest_load_module( CV* cv __attribute__( (unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7346 | XS_EUPXS(XS_XS__APItest_load_module)static void XS_XS__APItest_load_module( CV* cv __attribute__( (unused))) |
| 7347 | { |
| 7348 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7349 | if (items < 2) |
| 7350 | croak_xs_usagePerl_croak_xs_usage(cv, "flags, name, ..."); |
| 7351 | { |
| 7352 | U32 flags = (unsigned long)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 7353 | ; |
| 7354 | SV * name = ST(1)PL_stack_base[ax + (1)] |
| 7355 | ; |
| 7356 | #line 4444 "APItest.xs" |
| 7357 | if (items == 2) { |
| 7358 | Perl_load_module(aTHX_ flags, SvREFCNT_inc(name)Perl_SvREFCNT_inc(((SV *)({ void *_p = (name); _p; }))), NULL((void*)0)); |
| 7359 | } else if (items == 3) { |
| 7360 | Perl_load_module(aTHX_ flags, SvREFCNT_inc(name)Perl_SvREFCNT_inc(((SV *)({ void *_p = (name); _p; }))), SvREFCNT_inc(ST(2))Perl_SvREFCNT_inc(((SV *)({ void *_p = (PL_stack_base[ax + (2 )]); _p; })))); |
| 7361 | } else |
| 7362 | Perl_croak(aTHX_ "load_module can't yet support %" IVdf"ld" " items", |
| 7363 | (IV)items); |
| 7364 | #line 7365 "APItest.c" |
| 7365 | } |
| 7366 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 7367 | } |
| 7368 | |
| 7369 | |
| 7370 | XS_EUPXS(XS_XS__APItest_string_without_null)static void XS_XS__APItest_string_without_null( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7371 | XS_EUPXS(XS_XS__APItest_string_without_null)static void XS_XS__APItest_string_without_null( CV* cv __attribute__ ((unused))) |
| 7372 | { |
| 7373 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7374 | if (items != 1) |
| 7375 | croak_xs_usagePerl_croak_xs_usage(cv, "sv"); |
| 7376 | { |
| 7377 | SV * RETVAL; |
| 7378 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 7379 | ; |
| 7380 | #line 4455 "APItest.xs" |
| 7381 | { |
| 7382 | STRLEN len; |
| 7383 | const char *s = SvPV(sv, len)((((sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (sv)->sv_any)->xpv_cur), ((sv)-> sv_u.svu_pv)) : Perl_sv_2pv_flags( sv,&len,2)); |
| 7384 | RETVAL = newSVpvn_flags(s, len, SvUTF8(sv))Perl_newSVpvn_flags( s,len,((sv)->sv_flags & 0x20000000 )); |
| 7385 | *SvEND(RETVAL)((RETVAL)->sv_u.svu_pv + ((XPV*)(RETVAL)->sv_any)->xpv_cur ) = 0xff; |
| 7386 | } |
| 7387 | #line 7388 "APItest.c" |
| 7388 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 7389 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 7390 | } |
| 7391 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7392 | } |
| 7393 | |
| 7394 | |
| 7395 | XS_EUPXS(XS_XS__APItest_get_cv)static void XS_XS__APItest_get_cv( CV* cv __attribute__((unused ))); /* prototype to pass -Wmissing-prototypes */ |
| 7396 | XS_EUPXS(XS_XS__APItest_get_cv)static void XS_XS__APItest_get_cv( CV* cv __attribute__((unused ))) |
| 7397 | { |
| 7398 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7399 | if (items != 1) |
| 7400 | croak_xs_usagePerl_croak_xs_usage(cv, "sv"); |
| 7401 | { |
| 7402 | CV * RETVAL; |
| 7403 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 7404 | ; |
| 7405 | #line 4467 "APItest.xs" |
| 7406 | { |
| 7407 | STRLEN len; |
| 7408 | const char *s = SvPV(sv, len)((((sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (sv)->sv_any)->xpv_cur), ((sv)-> sv_u.svu_pv)) : Perl_sv_2pv_flags( sv,&len,2)); |
| 7409 | RETVAL = get_cvn_flags(s, len, 0)Perl_get_cvn_flags( s,len,0); |
| 7410 | } |
| 7411 | #line 7412 "APItest.c" |
| 7412 | { |
| 7413 | SV * RETVALSV; |
| 7414 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 7415 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 7416 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 7417 | } |
| 7418 | } |
| 7419 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7420 | } |
| 7421 | |
| 7422 | |
| 7423 | XS_EUPXS(XS_XS__APItest_get_cv_flags)static void XS_XS__APItest_get_cv_flags( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7424 | XS_EUPXS(XS_XS__APItest_get_cv_flags)static void XS_XS__APItest_get_cv_flags( CV* cv __attribute__ ((unused))) |
| 7425 | { |
| 7426 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7427 | if (items != 2) |
| 7428 | croak_xs_usagePerl_croak_xs_usage(cv, "sv, flags"); |
| 7429 | { |
| 7430 | CV * RETVAL; |
| 7431 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 7432 | ; |
| 7433 | UV flags = (UV)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 7434 | ; |
| 7435 | #line 4478 "APItest.xs" |
| 7436 | { |
| 7437 | STRLEN len; |
| 7438 | const char *s = SvPV(sv, len)((((sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (sv)->sv_any)->xpv_cur), ((sv)-> sv_u.svu_pv)) : Perl_sv_2pv_flags( sv,&len,2)); |
| 7439 | RETVAL = get_cvn_flags(s, len, flags)Perl_get_cvn_flags( s,len,flags); |
| 7440 | } |
| 7441 | #line 7442 "APItest.c" |
| 7442 | { |
| 7443 | SV * RETVALSV; |
| 7444 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 7445 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 7446 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 7447 | } |
| 7448 | } |
| 7449 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7450 | } |
| 7451 | |
| 7452 | |
| 7453 | XS_EUPXS(XS_XS__APItest_unshift_and_set_defav)static void XS_XS__APItest_unshift_and_set_defav( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7454 | XS_EUPXS(XS_XS__APItest_unshift_and_set_defav)static void XS_XS__APItest_unshift_and_set_defav( CV* cv __attribute__ ((unused))) |
| 7455 | { |
| 7456 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7457 | if (items < 1) |
| 7458 | croak_xs_usagePerl_croak_xs_usage(cv, "sv, ..."); |
| 7459 | { |
| 7460 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 7461 | ; |
| 7462 | #line 4489 "APItest.xs" |
| 7463 | av_unshift(GvAVn(PL_defgv), 1)Perl_av_unshift( ((0+(PL_defgv)->sv_u.svu_gp)->gp_av ? ( 0+(PL_defgv)->sv_u.svu_gp)->gp_av : (0+(Perl_gv_add_by_type ( (PL_defgv),SVt_PVAV))->sv_u.svu_gp)->gp_av),1); |
| 7464 | av_store(GvAV(PL_defgv), 0, newSVuv(42))Perl_av_store( ((0+(PL_defgv)->sv_u.svu_gp)->gp_av),0,Perl_newSVuv ( 42)); |
| 7465 | sv_setuv(sv, 43)Perl_sv_setuv( sv,43); |
| 7466 | #line 7467 "APItest.c" |
| 7467 | } |
| 7468 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 7469 | } |
| 7470 | |
| 7471 | |
| 7472 | XS_EUPXS(XS_XS__APItest_PerlIO_stderr)static void XS_XS__APItest_PerlIO_stderr( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7473 | XS_EUPXS(XS_XS__APItest_PerlIO_stderr)static void XS_XS__APItest_PerlIO_stderr( CV* cv __attribute__ ((unused))) |
| 7474 | { |
| 7475 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7476 | if (items != 0) |
| 7477 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 7478 | { |
| 7479 | PerlIOPerlIO * RETVAL; |
| 7480 | |
| 7481 | RETVAL = PerlIO_stderr()Perl_PerlIO_stderr(); |
| 7482 | { |
| 7483 | SV * RETVALSV; |
| 7484 | RETVALSV = sv_newmortal()Perl_sv_newmortal(); |
| 7485 | { |
| 7486 | GV *gv = (GV *)sv_newmortal()Perl_sv_newmortal(); |
| 7487 | gv_init_pvn(gv, gv_stashpvs("XS::APItest",1),"__ANONIO__",10,0)Perl_gv_init_pvn( gv,Perl_gv_stashpvn( ("" "XS::APItest" ""), (sizeof("XS::APItest")-1), 1),"__ANONIO__",10,0); |
| 7488 | if ( do_open(gv, "+<&", 3, FALSE, 0, 0, RETVAL)Perl_do_openn( gv,"+<&",3,(0),0,0,RETVAL,(SV **) ((void *)0),0) ) { |
| 7489 | SV *rv = newRV_inc((SV*)gv)Perl_newRV( (SV*)gv); |
| 7490 | rv = sv_bless(rv, GvSTASH(gv))Perl_sv_bless( rv,(((XPVGV*)(gv)->sv_any)->xnv_u.xgv_stash )); |
| 7491 | RETVALSV = sv_2mortal(rv)Perl_sv_2mortal( rv); |
| 7492 | } |
| 7493 | } |
| 7494 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 7495 | } |
| 7496 | } |
| 7497 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7498 | } |
| 7499 | |
| 7500 | |
| 7501 | XS_EUPXS(XS_XS__APItest_PerlIO_stdout)static void XS_XS__APItest_PerlIO_stdout( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7502 | XS_EUPXS(XS_XS__APItest_PerlIO_stdout)static void XS_XS__APItest_PerlIO_stdout( CV* cv __attribute__ ((unused))) |
| 7503 | { |
| 7504 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7505 | if (items != 0) |
| 7506 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 7507 | { |
| 7508 | OutputStream RETVAL; |
| 7509 | |
| 7510 | RETVAL = PerlIO_stdout()Perl_PerlIO_stdout(); |
| 7511 | { |
| 7512 | SV * RETVALSV; |
| 7513 | RETVALSV = sv_newmortal()Perl_sv_newmortal(); |
| 7514 | { |
| 7515 | GV *gv = (GV *)sv_newmortal()Perl_sv_newmortal(); |
| 7516 | gv_init_pvn(gv, gv_stashpvs("XS::APItest",1),"__ANONIO__",10,0)Perl_gv_init_pvn( gv,Perl_gv_stashpvn( ("" "XS::APItest" ""), (sizeof("XS::APItest")-1), 1),"__ANONIO__",10,0); |
| 7517 | if ( do_open(gv, "+>&", 3, FALSE, 0, 0, RETVAL)Perl_do_openn( gv,"+>&",3,(0),0,0,RETVAL,(SV **) ((void *)0),0) ) { |
| 7518 | SV *rv = newRV_inc((SV*)gv)Perl_newRV( (SV*)gv); |
| 7519 | rv = sv_bless(rv, GvSTASH(gv))Perl_sv_bless( rv,(((XPVGV*)(gv)->sv_any)->xnv_u.xgv_stash )); |
| 7520 | RETVALSV = sv_2mortal(rv)Perl_sv_2mortal( rv); |
| 7521 | } |
| 7522 | } |
| 7523 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 7524 | } |
| 7525 | } |
| 7526 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7527 | } |
| 7528 | |
| 7529 | |
| 7530 | XS_EUPXS(XS_XS__APItest_PerlIO_stdin)static void XS_XS__APItest_PerlIO_stdin( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7531 | XS_EUPXS(XS_XS__APItest_PerlIO_stdin)static void XS_XS__APItest_PerlIO_stdin( CV* cv __attribute__ ((unused))) |
| 7532 | { |
| 7533 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7534 | if (items != 0) |
| 7535 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 7536 | { |
| 7537 | InputStream RETVAL; |
| 7538 | |
| 7539 | RETVAL = PerlIO_stdin()Perl_PerlIO_stdin(); |
| 7540 | { |
| 7541 | SV * RETVALSV; |
| 7542 | RETVALSV = sv_newmortal()Perl_sv_newmortal(); |
| 7543 | { |
| 7544 | GV *gv = (GV *)sv_newmortal()Perl_sv_newmortal(); |
| 7545 | gv_init_pvn(gv, gv_stashpvs("XS::APItest",1),"__ANONIO__",10,0)Perl_gv_init_pvn( gv,Perl_gv_stashpvn( ("" "XS::APItest" ""), (sizeof("XS::APItest")-1), 1),"__ANONIO__",10,0); |
| 7546 | if ( do_open(gv, "<&", 2, FALSE, 0, 0, RETVAL)Perl_do_openn( gv,"<&",2,(0),0,0,RETVAL,(SV **) ((void *)0),0) ) { |
| 7547 | SV *rv = newRV_inc((SV*)gv)Perl_newRV( (SV*)gv); |
| 7548 | rv = sv_bless(rv, GvSTASH(gv))Perl_sv_bless( rv,(((XPVGV*)(gv)->sv_any)->xnv_u.xgv_stash )); |
| 7549 | RETVALSV = sv_2mortal(rv)Perl_sv_2mortal( rv); |
| 7550 | } |
| 7551 | } |
| 7552 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 7553 | } |
| 7554 | } |
| 7555 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7556 | } |
| 7557 | |
| 7558 | #undef FILENativeFile |
| 7559 | #define FILENativeFile NativeFile |
| 7560 | |
| 7561 | XS_EUPXS(XS_XS__APItest_PerlIO_exportFILE)static void XS_XS__APItest_PerlIO_exportFILE( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7562 | XS_EUPXS(XS_XS__APItest_PerlIO_exportFILE)static void XS_XS__APItest_PerlIO_exportFILE( CV* cv __attribute__ ((unused))) |
| 7563 | { |
| 7564 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7565 | if (items != 2) |
| 7566 | croak_xs_usagePerl_croak_xs_usage(cv, "f, mode"); |
| 7567 | { |
| 7568 | FILENativeFile * RETVAL; |
| 7569 | PerlIOPerlIO * f = IoIFP(sv_2io(ST(0)))(Perl_sv_2io( PL_stack_base[ax + (0)]))->sv_u.svu_fp |
| 7570 | ; |
| 7571 | const char * mode = (const char *)SvPV_nolen(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (1)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (1)],0,2)) |
| 7572 | ; |
| 7573 | |
| 7574 | RETVAL = PerlIO_exportFILE(f, mode); |
| 7575 | { |
| 7576 | SV * RETVALSV; |
| 7577 | RETVALSV = sv_newmortal()Perl_sv_newmortal(); |
| 7578 | { |
| 7579 | GV *gv = (GV *)sv_newmortal()Perl_sv_newmortal(); |
| 7580 | PerlIOPerlIO *fp = PerlIO_importFILE(RETVAL,0); |
| 7581 | gv_init_pvn(gv, gv_stashpvs("XS::APItest",1),"__ANONIO__",10,0)Perl_gv_init_pvn( gv,Perl_gv_stashpvn( ("" "XS::APItest" ""), (sizeof("XS::APItest")-1), 1),"__ANONIO__",10,0); |
| 7582 | if ( fp && do_open(gv, "+<&", 3, FALSE, 0, 0, fp)Perl_do_openn( gv,"+<&",3,(0),0,0,fp,(SV **) ((void*)0 ),0) ) { |
| 7583 | SV *rv = newRV_inc((SV*)gv)Perl_newRV( (SV*)gv); |
| 7584 | rv = sv_bless(rv, GvSTASH(gv))Perl_sv_bless( rv,(((XPVGV*)(gv)->sv_any)->xnv_u.xgv_stash )); |
| 7585 | RETVALSV = sv_2mortal(rv)Perl_sv_2mortal( rv); |
| 7586 | } |
| 7587 | } |
| 7588 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 7589 | } |
| 7590 | } |
| 7591 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7592 | } |
| 7593 | |
| 7594 | |
| 7595 | XS_EUPXS(XS_XS__APItest_test_MAX_types)static void XS_XS__APItest_test_MAX_types( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7596 | XS_EUPXS(XS_XS__APItest_test_MAX_types)static void XS_XS__APItest_test_MAX_types( CV* cv __attribute__ ((unused))) |
| 7597 | { |
| 7598 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7599 | if (items != 0) |
| 7600 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 7601 | { |
| 7602 | SV * RETVAL; |
| 7603 | #line 4511 "APItest.xs" |
| 7604 | /* tests that IV_MAX and UV_MAX have types suitable |
| 7605 | for the IVdf and UVdf formats. |
| 7606 | If this warns then don't add casts here. |
| 7607 | */ |
| 7608 | RETVAL = newSVpvfPerl_newSVpvf("iv %" IVdf"ld" " uv %" UVuf"lu", IV_MAX((IV) ((~(UV)0) >> 1)), UV_MAX(~(UV)0)); |
| 7609 | #line 7610 "APItest.c" |
| 7610 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 7611 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 7612 | } |
| 7613 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7614 | } |
| 7615 | |
| 7616 | |
| 7617 | XS_EUPXS(XS_XS__APItest__AUTOLOADtest_AUTOLOAD)static void XS_XS__APItest__AUTOLOADtest_AUTOLOAD( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7618 | XS_EUPXS(XS_XS__APItest__AUTOLOADtest_AUTOLOAD)static void XS_XS__APItest__AUTOLOADtest_AUTOLOAD( CV* cv __attribute__ ((unused))) |
| 7619 | { |
| 7620 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7621 | PERL_UNUSED_VAR(cv)((void)sizeof(cv)); /* -W */ |
| 7622 | PERL_UNUSED_VAR(items)((void)sizeof(items)); /* -W */ |
| 7623 | { |
| 7624 | int RETVAL; |
| 7625 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 7626 | #line 4524 "APItest.xs" |
| 7627 | SV* comms; |
| 7628 | SV* class_and_method; |
| 7629 | #line 7630 "APItest.c" |
| 7630 | #line 4527 "APItest.xs" |
| 7631 | PERL_UNUSED_ARG(items)((void)sizeof(items)); |
| 7632 | class_and_method = GvSV(CvGV(cv))((0+(Perl_CvGV( (CV *)(cv)))->sv_u.svu_gp)->gp_sv); |
| 7633 | comms = get_sv("main::the_method", 1)Perl_get_sv( "main::the_method",1); |
| 7634 | if (class_and_method == NULL((void*)0)) { |
| 7635 | RETVAL = 1; |
| 7636 | } else if (!SvOK(class_and_method)((class_and_method)->sv_flags & (0x00000100|0x00000200 |0x00000400|0x00000800| 0x00001000|0x00002000|0x00004000|0x00008000 ))) { |
| 7637 | RETVAL = 2; |
| 7638 | } else if (!SvPOK(class_and_method)((class_and_method)->sv_flags & 0x00000400)) { |
| 7639 | RETVAL = 3; |
| 7640 | } else { |
| 7641 | sv_setsv(comms, class_and_method)Perl_sv_setsv_flags( comms,class_and_method,2|0); |
| 7642 | RETVAL = 0; |
| 7643 | } |
| 7644 | #line 7645 "APItest.c" |
| 7645 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHi((IV)RETVAL)do { do { IV TARGi_iv = (IV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1)) ? (_Bool)1 : (_Bool)0) ,(1))) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000 ); targ->sv_u.svu_iv = TARGi_iv; } else Perl_sv_setiv_mg( targ ,TARGi_iv); } while (0); (*++sp = (targ)); } while (0); |
| 7646 | } |
| 7647 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7648 | } |
| 7649 | |
| 7650 | |
| 7651 | XS_EUPXS(XS_XS__APItest__Magic_sv_magic_foo)static void XS_XS__APItest__Magic_sv_magic_foo( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7652 | XS_EUPXS(XS_XS__APItest__Magic_sv_magic_foo)static void XS_XS__APItest__Magic_sv_magic_foo( CV* cv __attribute__ ((unused))) |
| 7653 | { |
| 7654 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7655 | dXSI32I32 ix = ((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))-> xcv_start_u.xcv_xsubany.any_i32; |
| 7656 | if (items != 2) |
| 7657 | croak_xs_usagePerl_croak_xs_usage(cv, "sv, thingy"); |
| 7658 | { |
| 7659 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 7660 | ; |
| 7661 | SV * thingy = ST(1)PL_stack_base[ax + (1)] |
| 7662 | ; |
| 7663 | #line 4552 "APItest.xs" |
| 7664 | sv_magicext(SvRV(sv), NULL, PERL_MAGIC_ext, ix ? &vtbl_bar : &vtbl_foo, (const char *)thingy, 0)Perl_sv_magicext( ((sv)->sv_u.svu_rv),((void*)0),'~',ix ? & vtbl_bar : &vtbl_foo,(const char *)thingy,0); |
| 7665 | #line 7666 "APItest.c" |
| 7666 | } |
| 7667 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 7668 | } |
| 7669 | |
| 7670 | |
| 7671 | XS_EUPXS(XS_XS__APItest__Magic_mg_find_foo)static void XS_XS__APItest__Magic_mg_find_foo( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7672 | XS_EUPXS(XS_XS__APItest__Magic_mg_find_foo)static void XS_XS__APItest__Magic_mg_find_foo( CV* cv __attribute__ ((unused))) |
| 7673 | { |
| 7674 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7675 | dXSI32I32 ix = ((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))-> xcv_start_u.xcv_xsubany.any_i32; |
| 7676 | if (items != 1) |
| 7677 | croak_xs_usagePerl_croak_xs_usage(cv, "sv"); |
| 7678 | { |
| 7679 | SV * RETVAL; |
| 7680 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 7681 | ; |
| 7682 | #line 4559 "APItest.xs" |
| 7683 | MAGIC *mg = mg_findextPerl_mg_findext(SvRV(sv)((sv)->sv_u.svu_rv), PERL_MAGIC_ext'~', ix ? &vtbl_bar : &vtbl_foo); |
| 7684 | RETVAL = mg ? SvREFCNT_inc((SV *)mg->mg_ptr)Perl_SvREFCNT_inc(((SV *)({ void *_p = ((SV *)mg->mg_ptr); _p; }))) : &PL_sv_undef(PL_sv_immortals[1]); |
| 7685 | #line 7686 "APItest.c" |
| 7686 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 7687 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 7688 | } |
| 7689 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7690 | } |
| 7691 | |
| 7692 | |
| 7693 | XS_EUPXS(XS_XS__APItest__Magic_sv_unmagic_foo)static void XS_XS__APItest__Magic_sv_unmagic_foo( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7694 | XS_EUPXS(XS_XS__APItest__Magic_sv_unmagic_foo)static void XS_XS__APItest__Magic_sv_unmagic_foo( CV* cv __attribute__ ((unused))) |
| 7695 | { |
| 7696 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7697 | dXSI32I32 ix = ((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))-> xcv_start_u.xcv_xsubany.any_i32; |
| 7698 | if (items != 1) |
| 7699 | croak_xs_usagePerl_croak_xs_usage(cv, "sv"); |
| 7700 | { |
| 7701 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 7702 | ; |
| 7703 | #line 4569 "APItest.xs" |
| 7704 | sv_unmagicext(SvRV(sv), PERL_MAGIC_ext, ix ? &vtbl_bar : &vtbl_foo)Perl_sv_unmagicext( ((sv)->sv_u.svu_rv),'~',ix ? &vtbl_bar : &vtbl_foo); |
| 7705 | #line 7706 "APItest.c" |
| 7706 | } |
| 7707 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 7708 | } |
| 7709 | |
| 7710 | |
| 7711 | XS_EUPXS(XS_XS__APItest__Magic_sv_magic)static void XS_XS__APItest__Magic_sv_magic( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7712 | XS_EUPXS(XS_XS__APItest__Magic_sv_magic)static void XS_XS__APItest__Magic_sv_magic( CV* cv __attribute__ ((unused))) |
| 7713 | { |
| 7714 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7715 | if (items != 2) |
| 7716 | croak_xs_usagePerl_croak_xs_usage(cv, "sv, thingy"); |
| 7717 | { |
| 7718 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 7719 | ; |
| 7720 | SV * thingy = ST(1)PL_stack_base[ax + (1)] |
| 7721 | ; |
| 7722 | #line 4574 "APItest.xs" |
| 7723 | sv_magic(SvRV(sv), NULL, PERL_MAGIC_ext, (const char *)thingy, 0)Perl_sv_magic( ((sv)->sv_u.svu_rv),((void*)0),'~',(const char *)thingy,0); |
| 7724 | #line 7725 "APItest.c" |
| 7725 | } |
| 7726 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 7727 | } |
| 7728 | |
| 7729 | |
| 7730 | XS_EUPXS(XS_XS__APItest__Magic_test_get_vtbl)static void XS_XS__APItest__Magic_test_get_vtbl( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7731 | XS_EUPXS(XS_XS__APItest__Magic_test_get_vtbl)static void XS_XS__APItest__Magic_test_get_vtbl( CV* cv __attribute__ ((unused))) |
| 7732 | { |
| 7733 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7734 | if (items != 0) |
| 7735 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 7736 | { |
| 7737 | #line 4579 "APItest.xs" |
| 7738 | MGVTBL *have; |
| 7739 | MGVTBL *want; |
| 7740 | #line 7741 "APItest.c" |
| 7741 | UV RETVAL; |
| 7742 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 7743 | #line 4582 "APItest.xs" |
| 7744 | #define test_get_this_vtable(name)want = (MGVTBL*)&PL_vtbl_name; have = Perl_get_vtbl( want_vtbl_name ); if (have != want) Perl_croak("fail %p!=%p for get_vtbl(want_vtbl_" "name" ") at " "APItest.xs" " line %d", have, want, 4582) \ |
| 7745 | want = (MGVTBL*)CAT2(&PL_vtbl_, name)&PL_vtbl_name; \ |
| 7746 | have = get_vtbl(CAT2(want_vtbl_, name))Perl_get_vtbl( want_vtbl_name); \ |
| 7747 | if (have != want) \ |
| 7748 | croakPerl_croak("fail %p!=%p for get_vtbl(want_vtbl_" STRINGIFY(name)"name" ") at " __FILE__"APItest.xs" " line %d", have, want, __LINE__4586) |
| 7749 | |
| 7750 | test_get_this_vtable(sv)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_sv]; have = Perl_get_vtbl ( want_vtbl_sv); if (have != want) Perl_croak("fail %p!=%p for get_vtbl(want_vtbl_" "sv" ") at " "APItest.xs" " line %d", have, want, 4588); |
| 7751 | test_get_this_vtable(env)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_env]; have = Perl_get_vtbl ( want_vtbl_env); if (have != want) Perl_croak("fail %p!=%p for get_vtbl(want_vtbl_" "env" ") at " "APItest.xs" " line %d", have, want, 4589); |
| 7752 | test_get_this_vtable(envelem)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_envelem]; have = Perl_get_vtbl( want_vtbl_envelem); if (have != want) Perl_croak ("fail %p!=%p for get_vtbl(want_vtbl_" "envelem" ") at " "APItest.xs" " line %d", have, want, 4590); |
| 7753 | test_get_this_vtable(sigelem)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_sigelem]; have = Perl_get_vtbl( want_vtbl_sigelem); if (have != want) Perl_croak ("fail %p!=%p for get_vtbl(want_vtbl_" "sigelem" ") at " "APItest.xs" " line %d", have, want, 4591); |
| 7754 | test_get_this_vtable(pack)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_pack]; have = Perl_get_vtbl( want_vtbl_pack); if (have != want) Perl_croak ("fail %p!=%p for get_vtbl(want_vtbl_" "pack" ") at " "APItest.xs" " line %d", have, want, 4592); |
| 7755 | test_get_this_vtable(packelem)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_packelem]; have = Perl_get_vtbl( want_vtbl_packelem); if (have != want) Perl_croak ("fail %p!=%p for get_vtbl(want_vtbl_" "packelem" ") at " "APItest.xs" " line %d", have, want, 4593); |
| 7756 | test_get_this_vtable(dbline)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_dbline]; have = Perl_get_vtbl( want_vtbl_dbline); if (have != want) Perl_croak ("fail %p!=%p for get_vtbl(want_vtbl_" "dbline" ") at " "APItest.xs" " line %d", have, want, 4594); |
| 7757 | test_get_this_vtable(isa)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_isa]; have = Perl_get_vtbl ( want_vtbl_isa); if (have != want) Perl_croak("fail %p!=%p for get_vtbl(want_vtbl_" "isa" ") at " "APItest.xs" " line %d", have, want, 4595); |
| 7758 | test_get_this_vtable(isaelem)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_isaelem]; have = Perl_get_vtbl( want_vtbl_isaelem); if (have != want) Perl_croak ("fail %p!=%p for get_vtbl(want_vtbl_" "isaelem" ") at " "APItest.xs" " line %d", have, want, 4596); |
| 7759 | test_get_this_vtable(arylen)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_arylen]; have = Perl_get_vtbl( want_vtbl_arylen); if (have != want) Perl_croak ("fail %p!=%p for get_vtbl(want_vtbl_" "arylen" ") at " "APItest.xs" " line %d", have, want, 4597); |
| 7760 | test_get_this_vtable(mglob)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_mglob]; have = Perl_get_vtbl( want_vtbl_mglob); if (have != want) Perl_croak ("fail %p!=%p for get_vtbl(want_vtbl_" "mglob" ") at " "APItest.xs" " line %d", have, want, 4598); |
| 7761 | test_get_this_vtable(nkeys)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_nkeys]; have = Perl_get_vtbl( want_vtbl_nkeys); if (have != want) Perl_croak ("fail %p!=%p for get_vtbl(want_vtbl_" "nkeys" ") at " "APItest.xs" " line %d", have, want, 4599); |
| 7762 | test_get_this_vtable(taint)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_taint]; have = Perl_get_vtbl( want_vtbl_taint); if (have != want) Perl_croak ("fail %p!=%p for get_vtbl(want_vtbl_" "taint" ") at " "APItest.xs" " line %d", have, want, 4600); |
| 7763 | test_get_this_vtable(substr)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_substr]; have = Perl_get_vtbl( want_vtbl_substr); if (have != want) Perl_croak ("fail %p!=%p for get_vtbl(want_vtbl_" "substr" ") at " "APItest.xs" " line %d", have, want, 4601); |
| 7764 | test_get_this_vtable(vec)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_vec]; have = Perl_get_vtbl ( want_vtbl_vec); if (have != want) Perl_croak("fail %p!=%p for get_vtbl(want_vtbl_" "vec" ") at " "APItest.xs" " line %d", have, want, 4602); |
| 7765 | test_get_this_vtable(pos)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_pos]; have = Perl_get_vtbl ( want_vtbl_pos); if (have != want) Perl_croak("fail %p!=%p for get_vtbl(want_vtbl_" "pos" ") at " "APItest.xs" " line %d", have, want, 4603); |
| 7766 | test_get_this_vtable(bm)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_regexp]; have = Perl_get_vtbl( want_vtbl_regexp); if (have != want) Perl_croak ("fail %p!=%p for get_vtbl(want_vtbl_" "bm" ") at " "APItest.xs" " line %d", have, want, 4604); |
| 7767 | test_get_this_vtable(fm)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_regexp]; have = Perl_get_vtbl( want_vtbl_regexp); if (have != want) Perl_croak ("fail %p!=%p for get_vtbl(want_vtbl_" "fm" ") at " "APItest.xs" " line %d", have, want, 4605); |
| 7768 | test_get_this_vtable(uvar)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_uvar]; have = Perl_get_vtbl( want_vtbl_uvar); if (have != want) Perl_croak ("fail %p!=%p for get_vtbl(want_vtbl_" "uvar" ") at " "APItest.xs" " line %d", have, want, 4606); |
| 7769 | test_get_this_vtable(defelem)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_defelem]; have = Perl_get_vtbl( want_vtbl_defelem); if (have != want) Perl_croak ("fail %p!=%p for get_vtbl(want_vtbl_" "defelem" ") at " "APItest.xs" " line %d", have, want, 4607); |
| 7770 | test_get_this_vtable(regexp)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_regexp]; have = Perl_get_vtbl( want_vtbl_regexp); if (have != want) Perl_croak ("fail %p!=%p for get_vtbl(want_vtbl_" "regexp" ") at " "APItest.xs" " line %d", have, want, 4608); |
| 7771 | test_get_this_vtable(regdata)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_regdata]; have = Perl_get_vtbl( want_vtbl_regdata); if (have != want) Perl_croak ("fail %p!=%p for get_vtbl(want_vtbl_" "regdata" ") at " "APItest.xs" " line %d", have, want, 4609); |
| 7772 | test_get_this_vtable(regdatum)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_regdatum]; have = Perl_get_vtbl( want_vtbl_regdatum); if (have != want) Perl_croak ("fail %p!=%p for get_vtbl(want_vtbl_" "regdatum" ") at " "APItest.xs" " line %d", have, want, 4610); |
| 7773 | #ifdef USE_LOCALE_COLLATE |
| 7774 | test_get_this_vtable(collxfrm)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_collxfrm]; have = Perl_get_vtbl( want_vtbl_collxfrm); if (have != want) Perl_croak ("fail %p!=%p for get_vtbl(want_vtbl_" "collxfrm" ") at " "APItest.xs" " line %d", have, want, 4612); |
| 7775 | #endif |
| 7776 | test_get_this_vtable(backref)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_backref]; have = Perl_get_vtbl( want_vtbl_backref); if (have != want) Perl_croak ("fail %p!=%p for get_vtbl(want_vtbl_" "backref" ") at " "APItest.xs" " line %d", have, want, 4614); |
| 7777 | test_get_this_vtable(utf8)want = (MGVTBL*)&PL_magic_vtables[want_vtbl_utf8]; have = Perl_get_vtbl( want_vtbl_utf8); if (have != want) Perl_croak ("fail %p!=%p for get_vtbl(want_vtbl_" "utf8" ") at " "APItest.xs" " line %d", have, want, 4615); |
| 7778 | |
| 7779 | RETVAL = PTR2UV(get_vtbl(-1))(UV)(Perl_get_vtbl( -1)); |
| 7780 | #line 7781 "APItest.c" |
| 7781 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 7782 | } |
| 7783 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7784 | } |
| 7785 | |
| 7786 | |
| 7787 | XS_EUPXS(XS_XS__APItest__Magic_sv_magic_myset)static void XS_XS__APItest__Magic_sv_magic_myset( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7788 | XS_EUPXS(XS_XS__APItest__Magic_sv_magic_myset)static void XS_XS__APItest__Magic_sv_magic_myset( CV* cv __attribute__ ((unused))) |
| 7789 | { |
| 7790 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7791 | if (items != 2) |
| 7792 | croak_xs_usagePerl_croak_xs_usage(cv, "rsv, thingy"); |
| 7793 | { |
| 7794 | SV * rsv = ST(0)PL_stack_base[ax + (0)] |
| 7795 | ; |
| 7796 | SV * thingy = ST(1)PL_stack_base[ax + (1)] |
| 7797 | ; |
| 7798 | #line 4628 "APItest.xs" |
| 7799 | sv_magicext(SvRV(rsv), NULL, PERL_MAGIC_ext, &vtbl_myset,Perl_sv_magicext( ((rsv)->sv_u.svu_rv),((void*)0),'~',& vtbl_myset,(const char *)thingy,0) |
| 7800 | (const char *)thingy, 0)Perl_sv_magicext( ((rsv)->sv_u.svu_rv),((void*)0),'~',& vtbl_myset,(const char *)thingy,0); |
| 7801 | #line 7802 "APItest.c" |
| 7802 | } |
| 7803 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 7804 | } |
| 7805 | |
| 7806 | |
| 7807 | XS_EUPXS(XS_XS__APItest__Magic_test_isBLANK_uni)static void XS_XS__APItest__Magic_test_isBLANK_uni( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7808 | XS_EUPXS(XS_XS__APItest__Magic_test_isBLANK_uni)static void XS_XS__APItest__Magic_test_isBLANK_uni( CV* cv __attribute__ ((unused))) |
| 7809 | { |
| 7810 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7811 | if (items != 1) |
| 7812 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 7813 | { |
| 7814 | bool_Bool RETVAL; |
| 7815 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 7816 | ; |
| 7817 | #line 4636 "APItest.xs" |
| 7818 | RETVAL = isBLANK_uni(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (11)))) ? (_Bool)1 : (_Bool)0) : ( 0x1680 == ord || ( 0x1680 < ord && ( ( ( (sizeof(ord) == sizeof(U8 )) ? ( (((U64) (((((U8) (ord)))) - (((0x2000)) | 0))) <= ( ((U64) ((((0x200A) - (0x2000))) | 0))))) : (sizeof(ord) == sizeof (U32)) ? ( (((U64) (((((U32) (ord)))) - (((0x2000)) | 0))) <= (((U64) ((((0x200A) - (0x2000))) | 0))))) : ( ( (((U64) (((( (U64) (ord)))) - (((0x2000)) | 0))) <= (((U64) ((((0x200A) - (0x2000))) | 0)))))))) || ( 0x200A < ord && ( 0x202F == ord || ( 0x202F < ord && ( 0x205F == ord || 0x3000 == ord ) ) ) ) ) ) )); |
| 7819 | #line 7820 "APItest.c" |
| 7820 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 7821 | } |
| 7822 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7823 | } |
| 7824 | |
| 7825 | |
| 7826 | XS_EUPXS(XS_XS__APItest__Magic_test_isBLANK_uvchr)static void XS_XS__APItest__Magic_test_isBLANK_uvchr( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7827 | XS_EUPXS(XS_XS__APItest__Magic_test_isBLANK_uvchr)static void XS_XS__APItest__Magic_test_isBLANK_uvchr( CV* cv __attribute__ ((unused))) |
| 7828 | { |
| 7829 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7830 | if (items != 1) |
| 7831 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 7832 | { |
| 7833 | bool_Bool RETVAL; |
| 7834 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 7835 | ; |
| 7836 | #line 4643 "APItest.xs" |
| 7837 | RETVAL = isBLANK_uvchr(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (11)))) ? (_Bool)1 : (_Bool)0) : ( 0x1680 == ord || ( 0x1680 < ord && ( ( ( (sizeof(ord) == sizeof(U8 )) ? ( (((U64) (((((U8) (ord)))) - (((0x2000)) | 0))) <= ( ((U64) ((((0x200A) - (0x2000))) | 0))))) : (sizeof(ord) == sizeof (U32)) ? ( (((U64) (((((U32) (ord)))) - (((0x2000)) | 0))) <= (((U64) ((((0x200A) - (0x2000))) | 0))))) : ( ( (((U64) (((( (U64) (ord)))) - (((0x2000)) | 0))) <= (((U64) ((((0x200A) - (0x2000))) | 0)))))))) || ( 0x200A < ord && ( 0x202F == ord || ( 0x202F < ord && ( 0x205F == ord || 0x3000 == ord ) ) ) ) ) ) )); |
| 7838 | #line 7839 "APItest.c" |
| 7839 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 7840 | } |
| 7841 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7842 | } |
| 7843 | |
| 7844 | |
| 7845 | XS_EUPXS(XS_XS__APItest__Magic_test_isBLANK_LC_uvchr)static void XS_XS__APItest__Magic_test_isBLANK_LC_uvchr( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7846 | XS_EUPXS(XS_XS__APItest__Magic_test_isBLANK_LC_uvchr)static void XS_XS__APItest__Magic_test_isBLANK_LC_uvchr( CV* cv __attribute__((unused))) |
| 7847 | { |
| 7848 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7849 | if (items != 1) |
| 7850 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 7851 | { |
| 7852 | bool_Bool RETVAL; |
| 7853 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 7854 | ; |
| 7855 | #line 4650 "APItest.xs" |
| 7856 | RETVAL = isBLANK_LC_uvchr(ord)(ord < 256 ? (! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (ord)] & (1U << (11))) ? (_Bool)1 : (_Bool)0) : ((isblank( (U8) (ord))) ? (_Bool)1 : (_Bool)0)) : ( 0x1680 == ord || ( 0x1680 < ord && ( ( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord)))) - (((0x2000)) | 0) )) <= (((U64) ((((0x200A) - (0x2000))) | 0))))) : (sizeof( ord) == sizeof(U32)) ? ( (((U64) (((((U32) (ord)))) - (((0x2000 )) | 0))) <= (((U64) ((((0x200A) - (0x2000))) | 0))))) : ( ( (((U64) (((((U64) (ord)))) - (((0x2000)) | 0))) <= (((U64 ) ((((0x200A) - (0x2000))) | 0)))))))) || ( 0x200A < ord && ( 0x202F == ord || ( 0x202F < ord && ( 0x205F == ord || 0x3000 == ord ) ) ) ) ) ) )); |
| 7857 | #line 7858 "APItest.c" |
| 7858 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 7859 | } |
| 7860 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7861 | } |
| 7862 | |
| 7863 | |
| 7864 | XS_EUPXS(XS_XS__APItest__Magic_test_isBLANK)static void XS_XS__APItest__Magic_test_isBLANK( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7865 | XS_EUPXS(XS_XS__APItest__Magic_test_isBLANK)static void XS_XS__APItest__Magic_test_isBLANK( CV* cv __attribute__ ((unused))) |
| 7866 | { |
| 7867 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7868 | if (items != 1) |
| 7869 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 7870 | { |
| 7871 | bool_Bool RETVAL; |
| 7872 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 7873 | ; |
| 7874 | #line 4657 "APItest.xs" |
| 7875 | RETVAL = isBLANK(ord)(( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && ((PL_charclass[(U8) (ord)] & ((1U << (11)) | (1U << (14)))) == ((1U << (11)) | (1U << (14))))); |
| 7876 | #line 7877 "APItest.c" |
| 7877 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 7878 | } |
| 7879 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7880 | } |
| 7881 | |
| 7882 | |
| 7883 | XS_EUPXS(XS_XS__APItest__Magic_test_isBLANK_A)static void XS_XS__APItest__Magic_test_isBLANK_A( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7884 | XS_EUPXS(XS_XS__APItest__Magic_test_isBLANK_A)static void XS_XS__APItest__Magic_test_isBLANK_A( CV* cv __attribute__ ((unused))) |
| 7885 | { |
| 7886 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7887 | if (items != 1) |
| 7888 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 7889 | { |
| 7890 | bool_Bool RETVAL; |
| 7891 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 7892 | ; |
| 7893 | #line 4664 "APItest.xs" |
| 7894 | RETVAL = isBLANK_A(ord)(( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && ((PL_charclass[(U8) (ord)] & ((1U << (11)) | (1U << (14)))) == ((1U << (11)) | (1U << (14))))); |
| 7895 | #line 7896 "APItest.c" |
| 7896 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 7897 | } |
| 7898 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7899 | } |
| 7900 | |
| 7901 | |
| 7902 | XS_EUPXS(XS_XS__APItest__Magic_test_isBLANK_L1)static void XS_XS__APItest__Magic_test_isBLANK_L1( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7903 | XS_EUPXS(XS_XS__APItest__Magic_test_isBLANK_L1)static void XS_XS__APItest__Magic_test_isBLANK_L1( CV* cv __attribute__ ((unused))) |
| 7904 | { |
| 7905 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7906 | if (items != 1) |
| 7907 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 7908 | { |
| 7909 | bool_Bool RETVAL; |
| 7910 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 7911 | ; |
| 7912 | #line 4671 "APItest.xs" |
| 7913 | RETVAL = isBLANK_L1(ord)((( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && (PL_charclass[(U8) (ord)] & (1U << (11)))) ? (_Bool )1 : (_Bool)0); |
| 7914 | #line 7915 "APItest.c" |
| 7915 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 7916 | } |
| 7917 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7918 | } |
| 7919 | |
| 7920 | |
| 7921 | XS_EUPXS(XS_XS__APItest__Magic_test_isBLANK_LC)static void XS_XS__APItest__Magic_test_isBLANK_LC( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7922 | XS_EUPXS(XS_XS__APItest__Magic_test_isBLANK_LC)static void XS_XS__APItest__Magic_test_isBLANK_LC( CV* cv __attribute__ ((unused))) |
| 7923 | { |
| 7924 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7925 | if (items != 1) |
| 7926 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 7927 | { |
| 7928 | bool_Bool RETVAL; |
| 7929 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 7930 | ; |
| 7931 | #line 4678 "APItest.xs" |
| 7932 | RETVAL = isBLANK_LC(ord)(! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (ord)] & (1U << (11))) ? (_Bool)1 : (_Bool)0) : ((isblank( (U8) (ord))) ? (_Bool)1 : (_Bool)0)); |
| 7933 | #line 7934 "APItest.c" |
| 7934 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 7935 | } |
| 7936 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7937 | } |
| 7938 | |
| 7939 | |
| 7940 | XS_EUPXS(XS_XS__APItest__Magic_test_isBLANK_utf8)static void XS_XS__APItest__Magic_test_isBLANK_utf8( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7941 | XS_EUPXS(XS_XS__APItest__Magic_test_isBLANK_utf8)static void XS_XS__APItest__Magic_test_isBLANK_utf8( CV* cv __attribute__ ((unused))) |
| 7942 | { |
| 7943 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7944 | if (items != 2) |
| 7945 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 7946 | { |
| 7947 | #line 4685 "APItest.xs" |
| 7948 | const U8 * e; |
| 7949 | #line 7950 "APItest.c" |
| 7950 | bool_Bool RETVAL; |
| 7951 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 7952 | ; |
| 7953 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 7954 | ; |
| 7955 | #line 4688 "APItest.xs" |
| 7956 | /* In this function and those that follow, the boolean 'type' |
| 7957 | * indicates if to pass a malformed UTF-8 string to the tested macro |
| 7958 | * (malformed by making it too short) */ |
| 7959 | if (type >= 0) { |
| 7960 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 7961 | RETVAL = isBLANK_utf8_safe(p, e)((! ((e) > (p))) ? (Perl__force_out_malformed_utf8_message ( (U8 *) (p),(U8 *) (e),0,1), 0) : (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? ( (( (sizeof(*(p)) == 1) || !(((U64)((*(p)) | 0)) & ~0xFF)) && (PL_charclass[(U8) (*(p))] & (1U << (11 )))) ? (_Bool)1 : (_Bool)0) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) (((((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) )) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7 ) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ( (U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | ((( 2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0)) ))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0))))))) - ((( (((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= ( ((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6 )) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect((( (e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0))) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6)) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? ((( (sizeof(( ( ((U8 ) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+ 1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6 ) | ((( ((U8) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) && (PL_charclass [(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8 ) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1)))) ) | 0)))))] & (1U << (11)))) ? (_Bool)1 : (_Bool)0) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) (e),0,1), 0)) : (__builtin_expect((((e) - (p) < PL_utf8skip [*(const U8*)(p)]) ? (_Bool)1 : (_Bool)0),(0)) ? (Perl__force_out_malformed_utf8_message ( (U8 *) (p),(U8 *) (e),0,1), 0) : ( ( 0xE1 == ((const U8*)p) [0] ) ? ( ( ( 0x9A == ((const U8*)p)[1] ) && ( 0x80 == ((const U8*)p)[2] ) ) ? 3 : 0 ): ( 0xE2 == ((const U8*)p)[0] ) ? ( ( 0x80 == ((const U8*)p)[1] ) ? ( ( ( ( (sizeof(((const U8*)p)[2]) == sizeof(U8)) ? ( (((U64) (((((U8) (((const U8*) p)[2])))) - (((0x80)) | 0))) <= (((U64) ((((0x8A) - (0x80) )) | 0))))) : (sizeof(((const U8*)p)[2]) == sizeof(U32)) ? ( ( ((U64) (((((U32) (((const U8*)p)[2])))) - (((0x80)) | 0))) <= (((U64) ((((0x8A) - (0x80))) | 0))))) : ( ( (((U64) (((((U64 ) (((const U8*)p)[2])))) - (((0x80)) | 0))) <= (((U64) ((( (0x8A) - (0x80))) | 0)))))))) || 0xAF == ((const U8*)p)[2] ) ? 3 : 0 ) : ( ( 0x81 == ((const U8*)p)[1] ) && ( 0x9F == ((const U8*)p)[2] ) ) ? 3 : 0 ): ( ( ( 0xE3 == ((const U8*)p )[0] ) && ( 0x80 == ((const U8*)p)[1] ) ) && ( 0x80 == ((const U8*)p)[2] ) ) ? 3 : 0 )))); |
| 7962 | } |
| 7963 | else { |
| 7964 | RETVAL = 0; |
| 7965 | } |
| 7966 | #line 7967 "APItest.c" |
| 7967 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 7968 | } |
| 7969 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 7970 | } |
| 7971 | |
| 7972 | |
| 7973 | XS_EUPXS(XS_XS__APItest__Magic_test_isBLANK_LC_utf8)static void XS_XS__APItest__Magic_test_isBLANK_LC_utf8( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 7974 | XS_EUPXS(XS_XS__APItest__Magic_test_isBLANK_LC_utf8)static void XS_XS__APItest__Magic_test_isBLANK_LC_utf8( CV* cv __attribute__((unused))) |
| 7975 | { |
| 7976 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 7977 | if (items != 2) |
| 7978 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 7979 | { |
| 7980 | #line 4704 "APItest.xs" |
| 7981 | const U8 * e; |
| 7982 | #line 7983 "APItest.c" |
| 7983 | bool_Bool RETVAL; |
| 7984 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 7985 | ; |
| 7986 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 7987 | ; |
| 7988 | #line 4706 "APItest.xs" |
| 7989 | if (type >= 0) { |
| 7990 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 7991 | RETVAL = isBLANK_LC_utf8_safe(p, e)( (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? (! ( (sizeof(*(p)) == 1) || !(((U64)((* (p)) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (*(p))] & (1U << (11))) ? (_Bool)1 : (_Bool)0 ) : ((isblank( (U8) (*(p)))) ? (_Bool)1 : (_Bool)0)) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) ( ((((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) (( ((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) ))) | 0))))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0)))) ))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0 ))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect ((((e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0)) ) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6) ) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? (! ( (sizeof (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7 ) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2)))) ) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ( (1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0 ))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0)))))] & (1U << (11))) ? (_Bool)1 : (_Bool)0) : ((isblank( (U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p )) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2 ))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8 ) ((1U << 6) - 1))))) | 0))))))) ? (_Bool)1 : (_Bool)0) ) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 * ) (e),0,1), 0)) : (__builtin_expect((((e) - (p) < PL_utf8skip [*(const U8*)(p)]) ? (_Bool)1 : (_Bool)0),(0)) ? (Perl__force_out_malformed_utf8_message ( (U8 *) (p),(U8 *) (e),0,1), 0) : ( ( 0xE1 == ((const U8*)p) [0] ) ? ( ( ( 0x9A == ((const U8*)p)[1] ) && ( 0x80 == ((const U8*)p)[2] ) ) ? 3 : 0 ): ( 0xE2 == ((const U8*)p)[0] ) ? ( ( 0x80 == ((const U8*)p)[1] ) ? ( ( ( ( (sizeof(((const U8*)p)[2]) == sizeof(U8)) ? ( (((U64) (((((U8) (((const U8*) p)[2])))) - (((0x80)) | 0))) <= (((U64) ((((0x8A) - (0x80) )) | 0))))) : (sizeof(((const U8*)p)[2]) == sizeof(U32)) ? ( ( ((U64) (((((U32) (((const U8*)p)[2])))) - (((0x80)) | 0))) <= (((U64) ((((0x8A) - (0x80))) | 0))))) : ( ( (((U64) (((((U64 ) (((const U8*)p)[2])))) - (((0x80)) | 0))) <= (((U64) ((( (0x8A) - (0x80))) | 0)))))))) || 0xAF == ((const U8*)p)[2] ) ? 3 : 0 ) : ( ( 0x81 == ((const U8*)p)[1] ) && ( 0x9F == ((const U8*)p)[2] ) ) ? 3 : 0 ): ( ( ( 0xE3 == ((const U8*)p )[0] ) && ( 0x80 == ((const U8*)p)[1] ) ) && ( 0x80 == ((const U8*)p)[2] ) ) ? 3 : 0 )))); |
| 7992 | } |
| 7993 | else { |
| 7994 | RETVAL = 0; |
| 7995 | } |
| 7996 | #line 7997 "APItest.c" |
| 7997 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 7998 | } |
| 7999 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8000 | } |
| 8001 | |
| 8002 | |
| 8003 | XS_EUPXS(XS_XS__APItest__Magic_test_isVERTWS_uni)static void XS_XS__APItest__Magic_test_isVERTWS_uni( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8004 | XS_EUPXS(XS_XS__APItest__Magic_test_isVERTWS_uni)static void XS_XS__APItest__Magic_test_isVERTWS_uni( CV* cv __attribute__ ((unused))) |
| 8005 | { |
| 8006 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8007 | if (items != 1) |
| 8008 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8009 | { |
| 8010 | bool_Bool RETVAL; |
| 8011 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8012 | ; |
| 8013 | #line 4719 "APItest.xs" |
| 8014 | RETVAL = isVERTWS_uni(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (15)))) ? (_Bool)1 : (_Bool)0) : ( 0x2028 == ord || 0x2029 == ord )); |
| 8015 | #line 8016 "APItest.c" |
| 8016 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8017 | } |
| 8018 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8019 | } |
| 8020 | |
| 8021 | |
| 8022 | XS_EUPXS(XS_XS__APItest__Magic_test_isVERTWS_uvchr)static void XS_XS__APItest__Magic_test_isVERTWS_uvchr( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8023 | XS_EUPXS(XS_XS__APItest__Magic_test_isVERTWS_uvchr)static void XS_XS__APItest__Magic_test_isVERTWS_uvchr( CV* cv __attribute__((unused))) |
| 8024 | { |
| 8025 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8026 | if (items != 1) |
| 8027 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8028 | { |
| 8029 | bool_Bool RETVAL; |
| 8030 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8031 | ; |
| 8032 | #line 4726 "APItest.xs" |
| 8033 | RETVAL = isVERTWS_uvchr(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (15)))) ? (_Bool)1 : (_Bool)0) : ( 0x2028 == ord || 0x2029 == ord )); |
| 8034 | #line 8035 "APItest.c" |
| 8035 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8036 | } |
| 8037 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8038 | } |
| 8039 | |
| 8040 | |
| 8041 | XS_EUPXS(XS_XS__APItest__Magic_test_isVERTWS_utf8)static void XS_XS__APItest__Magic_test_isVERTWS_utf8( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8042 | XS_EUPXS(XS_XS__APItest__Magic_test_isVERTWS_utf8)static void XS_XS__APItest__Magic_test_isVERTWS_utf8( CV* cv __attribute__ ((unused))) |
| 8043 | { |
| 8044 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8045 | if (items != 2) |
| 8046 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 8047 | { |
| 8048 | #line 4733 "APItest.xs" |
| 8049 | const U8 * e; |
| 8050 | #line 8051 "APItest.c" |
| 8051 | bool_Bool RETVAL; |
| 8052 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 8053 | ; |
| 8054 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 8055 | ; |
| 8056 | #line 4735 "APItest.xs" |
| 8057 | if (type >= 0) { |
| 8058 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 8059 | RETVAL = isVERTWS_utf8_safe(p, e)((! ((e) > (p))) ? (Perl__force_out_malformed_utf8_message ( (U8 *) (p),(U8 *) (e),0,1), 0) : (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? ( (( (sizeof(*(p)) == 1) || !(((U64)((*(p)) | 0)) & ~0xFF)) && (PL_charclass[(U8) (*(p))] & (1U << (15 )))) ? (_Bool)1 : (_Bool)0) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) (((((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) )) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7 ) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ( (U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | ((( 2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0)) ))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0))))))) - ((( (((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= ( ((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6 )) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect((( (e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0))) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6)) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? ((( (sizeof(( ( ((U8 ) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+ 1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6 ) | ((( ((U8) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) && (PL_charclass [(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8 ) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1)))) ) | 0)))))] & (1U << (15)))) ? (_Bool)1 : (_Bool)0) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) (e),0,1), 0)) : (__builtin_expect((((e) - (p) < PL_utf8skip [*(const U8*)(p)]) ? (_Bool)1 : (_Bool)0),(0)) ? (Perl__force_out_malformed_utf8_message ( (U8 *) (p),(U8 *) (e),0,1), 0) : ( ( ( ( 0xE2 == ((const U8 *)p)[0] ) && ( 0x80 == ((const U8*)p)[1] ) ) && ( ( ( (sizeof(((const U8*)p)[2]) == sizeof(U8)) ? ( (((U64) ( ((((U8) (((const U8*)p)[2])))) - (((0xA8)) | 0))) <= (((U64 ) ((((0xA9) - (0xA8))) | 0))))) : (sizeof(((const U8*)p)[2]) == sizeof(U32)) ? ( (((U64) (((((U32) (((const U8*)p)[2])))) - ( ((0xA8)) | 0))) <= (((U64) ((((0xA9) - (0xA8))) | 0))))) : ( ( (((U64) (((((U64) (((const U8*)p)[2])))) - (((0xA8)) | 0 ))) <= (((U64) ((((0xA9) - (0xA8))) | 0)))))))) ) ) ? 3 : 0 )))); |
| 8060 | } |
| 8061 | else { |
| 8062 | RETVAL = 0; |
| 8063 | } |
| 8064 | #line 8065 "APItest.c" |
| 8065 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8066 | } |
| 8067 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8068 | } |
| 8069 | |
| 8070 | |
| 8071 | XS_EUPXS(XS_XS__APItest__Magic_test_isUPPER_uni)static void XS_XS__APItest__Magic_test_isUPPER_uni( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8072 | XS_EUPXS(XS_XS__APItest__Magic_test_isUPPER_uni)static void XS_XS__APItest__Magic_test_isUPPER_uni( CV* cv __attribute__ ((unused))) |
| 8073 | { |
| 8074 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8075 | if (items != 1) |
| 8076 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8077 | { |
| 8078 | bool_Bool RETVAL; |
| 8079 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8080 | ; |
| 8081 | #line 4748 "APItest.xs" |
| 8082 | RETVAL = isUPPER_uni(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (4)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_FOO( 4,ord)); |
| 8083 | #line 8084 "APItest.c" |
| 8084 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8085 | } |
| 8086 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8087 | } |
| 8088 | |
| 8089 | |
| 8090 | XS_EUPXS(XS_XS__APItest__Magic_test_isUPPER_uvchr)static void XS_XS__APItest__Magic_test_isUPPER_uvchr( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8091 | XS_EUPXS(XS_XS__APItest__Magic_test_isUPPER_uvchr)static void XS_XS__APItest__Magic_test_isUPPER_uvchr( CV* cv __attribute__ ((unused))) |
| 8092 | { |
| 8093 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8094 | if (items != 1) |
| 8095 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8096 | { |
| 8097 | bool_Bool RETVAL; |
| 8098 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8099 | ; |
| 8100 | #line 4755 "APItest.xs" |
| 8101 | RETVAL = isUPPER_uvchr(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (4)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_FOO( 4,ord)); |
| 8102 | #line 8103 "APItest.c" |
| 8103 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8104 | } |
| 8105 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8106 | } |
| 8107 | |
| 8108 | |
| 8109 | XS_EUPXS(XS_XS__APItest__Magic_test_isUPPER_LC_uvchr)static void XS_XS__APItest__Magic_test_isUPPER_LC_uvchr( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8110 | XS_EUPXS(XS_XS__APItest__Magic_test_isUPPER_LC_uvchr)static void XS_XS__APItest__Magic_test_isUPPER_LC_uvchr( CV* cv __attribute__((unused))) |
| 8111 | { |
| 8112 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8113 | if (items != 1) |
| 8114 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8115 | { |
| 8116 | bool_Bool RETVAL; |
| 8117 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8118 | ; |
| 8119 | #line 4762 "APItest.xs" |
| 8120 | RETVAL = isUPPER_LC_uvchr(ord)(ord < 256 ? (! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (ord)] & (1U << (4))) ? (_Bool)1 : (_Bool)0) : ((isupper( (U8) (ord))) ? (_Bool)1 : (_Bool)0)) : Perl__is_uni_FOO ( 4,ord)); |
| 8121 | #line 8122 "APItest.c" |
| 8122 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8123 | } |
| 8124 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8125 | } |
| 8126 | |
| 8127 | |
| 8128 | XS_EUPXS(XS_XS__APItest__Magic_test_isUPPER)static void XS_XS__APItest__Magic_test_isUPPER( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8129 | XS_EUPXS(XS_XS__APItest__Magic_test_isUPPER)static void XS_XS__APItest__Magic_test_isUPPER( CV* cv __attribute__ ((unused))) |
| 8130 | { |
| 8131 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8132 | if (items != 1) |
| 8133 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8134 | { |
| 8135 | bool_Bool RETVAL; |
| 8136 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8137 | ; |
| 8138 | #line 4769 "APItest.xs" |
| 8139 | RETVAL = isUPPER(ord)( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord)))) - ((('A')) | 0))) <= (((U64) (((('Z') - ('A'))) | 0))))) : (sizeof(ord) == sizeof(U32)) ? ( (((U64) (((((U32) (ord)))) - ((('A')) | 0))) <= (((U64) (((('Z') - ('A'))) | 0))))) : ( ( (((U64) (((((U64) (ord)))) - ((('A')) | 0))) <= (((U64) (((('Z') - ('A'))) | 0)))))))); |
| 8140 | #line 8141 "APItest.c" |
| 8141 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8142 | } |
| 8143 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8144 | } |
| 8145 | |
| 8146 | |
| 8147 | XS_EUPXS(XS_XS__APItest__Magic_test_isUPPER_A)static void XS_XS__APItest__Magic_test_isUPPER_A( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8148 | XS_EUPXS(XS_XS__APItest__Magic_test_isUPPER_A)static void XS_XS__APItest__Magic_test_isUPPER_A( CV* cv __attribute__ ((unused))) |
| 8149 | { |
| 8150 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8151 | if (items != 1) |
| 8152 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8153 | { |
| 8154 | bool_Bool RETVAL; |
| 8155 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8156 | ; |
| 8157 | #line 4776 "APItest.xs" |
| 8158 | RETVAL = isUPPER_A(ord)( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord)))) - ((('A')) | 0))) <= (((U64) (((('Z') - ('A'))) | 0))))) : (sizeof(ord) == sizeof(U32)) ? ( (((U64) (((((U32) (ord)))) - ((('A')) | 0))) <= (((U64) (((('Z') - ('A'))) | 0))))) : ( ( (((U64) (((((U64) (ord)))) - ((('A')) | 0))) <= (((U64) (((('Z') - ('A'))) | 0)))))))); |
| 8159 | #line 8160 "APItest.c" |
| 8160 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8161 | } |
| 8162 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8163 | } |
| 8164 | |
| 8165 | |
| 8166 | XS_EUPXS(XS_XS__APItest__Magic_test_isUPPER_L1)static void XS_XS__APItest__Magic_test_isUPPER_L1( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8167 | XS_EUPXS(XS_XS__APItest__Magic_test_isUPPER_L1)static void XS_XS__APItest__Magic_test_isUPPER_L1( CV* cv __attribute__ ((unused))) |
| 8168 | { |
| 8169 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8170 | if (items != 1) |
| 8171 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8172 | { |
| 8173 | bool_Bool RETVAL; |
| 8174 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8175 | ; |
| 8176 | #line 4783 "APItest.xs" |
| 8177 | RETVAL = isUPPER_L1(ord)((( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && (PL_charclass[(U8) (ord)] & (1U << (4)))) ? (_Bool )1 : (_Bool)0); |
| 8178 | #line 8179 "APItest.c" |
| 8179 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8180 | } |
| 8181 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8182 | } |
| 8183 | |
| 8184 | |
| 8185 | XS_EUPXS(XS_XS__APItest__Magic_test_isUPPER_LC)static void XS_XS__APItest__Magic_test_isUPPER_LC( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8186 | XS_EUPXS(XS_XS__APItest__Magic_test_isUPPER_LC)static void XS_XS__APItest__Magic_test_isUPPER_LC( CV* cv __attribute__ ((unused))) |
| 8187 | { |
| 8188 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8189 | if (items != 1) |
| 8190 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8191 | { |
| 8192 | bool_Bool RETVAL; |
| 8193 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8194 | ; |
| 8195 | #line 4790 "APItest.xs" |
| 8196 | RETVAL = isUPPER_LC(ord)(! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (ord)] & (1U << (4))) ? (_Bool)1 : (_Bool)0) : ((isupper( (U8) ( ord))) ? (_Bool)1 : (_Bool)0)); |
| 8197 | #line 8198 "APItest.c" |
| 8198 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8199 | } |
| 8200 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8201 | } |
| 8202 | |
| 8203 | |
| 8204 | XS_EUPXS(XS_XS__APItest__Magic_test_isUPPER_utf8)static void XS_XS__APItest__Magic_test_isUPPER_utf8( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8205 | XS_EUPXS(XS_XS__APItest__Magic_test_isUPPER_utf8)static void XS_XS__APItest__Magic_test_isUPPER_utf8( CV* cv __attribute__ ((unused))) |
| 8206 | { |
| 8207 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8208 | if (items != 2) |
| 8209 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 8210 | { |
| 8211 | #line 4797 "APItest.xs" |
| 8212 | const U8 * e; |
| 8213 | #line 8214 "APItest.c" |
| 8214 | bool_Bool RETVAL; |
| 8215 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 8216 | ; |
| 8217 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 8218 | ; |
| 8219 | #line 4799 "APItest.xs" |
| 8220 | if (type >= 0) { |
| 8221 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 8222 | RETVAL = isUPPER_utf8_safe(p, e)((! ((e) > (p))) ? (Perl__force_out_malformed_utf8_message ( (U8 *) (p),(U8 *) (e),0,1), 0) : (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? ( (( (sizeof(*(p)) == 1) || !(((U64)((*(p)) | 0)) & ~0xFF)) && (PL_charclass[(U8) (*(p))] & (1U << (4) ))) ? (_Bool)1 : (_Bool)0) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) (((((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) )) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7 ) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ( (U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | ((( 2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0)) ))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0))))))) - ((( (((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= ( ((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6 )) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect((( (e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0))) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6)) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? ((( (sizeof(( ( ((U8 ) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+ 1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6 ) | ((( ((U8) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) && (PL_charclass [(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8 ) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1)))) ) | 0)))))] & (1U << (4)))) ? (_Bool)1 : (_Bool)0) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) ( e),0,1), 0)) : Perl__is_utf8_FOO( 4,p,e))); |
| 8223 | } |
| 8224 | else { |
| 8225 | RETVAL = 0; |
| 8226 | } |
| 8227 | #line 8228 "APItest.c" |
| 8228 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8229 | } |
| 8230 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8231 | } |
| 8232 | |
| 8233 | |
| 8234 | XS_EUPXS(XS_XS__APItest__Magic_test_isUPPER_LC_utf8)static void XS_XS__APItest__Magic_test_isUPPER_LC_utf8( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8235 | XS_EUPXS(XS_XS__APItest__Magic_test_isUPPER_LC_utf8)static void XS_XS__APItest__Magic_test_isUPPER_LC_utf8( CV* cv __attribute__((unused))) |
| 8236 | { |
| 8237 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8238 | if (items != 2) |
| 8239 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 8240 | { |
| 8241 | #line 4812 "APItest.xs" |
| 8242 | const U8 * e; |
| 8243 | #line 8244 "APItest.c" |
| 8244 | bool_Bool RETVAL; |
| 8245 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 8246 | ; |
| 8247 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 8248 | ; |
| 8249 | #line 4814 "APItest.xs" |
| 8250 | if (type >= 0) { |
| 8251 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 8252 | RETVAL = isUPPER_LC_utf8_safe(p, e)( (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? (! ( (sizeof(*(p)) == 1) || !(((U64)((* (p)) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (*(p))] & (1U << (4))) ? (_Bool)1 : (_Bool)0) : ((isupper( (U8) (*(p)))) ? (_Bool)1 : (_Bool)0)) : (( ( ( ( sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) ((( ((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) (( ((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) ))) | 0))))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0)))) ))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0 ))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect ((((e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0)) ) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6) ) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? (! ( (sizeof (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7 ) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2)))) ) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ( (1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0 ))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0)))))] & (1U << (4))) ? (_Bool)1 : ( _Bool)0) : ((isupper( (U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2)) ))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))))) ? (_Bool)1 : (_Bool)0)) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) (e),0,1), 0)) : Perl__is_utf8_FOO( 4,p,e))); |
| 8253 | } |
| 8254 | else { |
| 8255 | RETVAL = 0; |
| 8256 | } |
| 8257 | #line 8258 "APItest.c" |
| 8258 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8259 | } |
| 8260 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8261 | } |
| 8262 | |
| 8263 | |
| 8264 | XS_EUPXS(XS_XS__APItest__Magic_test_isLOWER_uni)static void XS_XS__APItest__Magic_test_isLOWER_uni( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8265 | XS_EUPXS(XS_XS__APItest__Magic_test_isLOWER_uni)static void XS_XS__APItest__Magic_test_isLOWER_uni( CV* cv __attribute__ ((unused))) |
| 8266 | { |
| 8267 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8268 | if (items != 1) |
| 8269 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8270 | { |
| 8271 | bool_Bool RETVAL; |
| 8272 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8273 | ; |
| 8274 | #line 4827 "APItest.xs" |
| 8275 | RETVAL = isLOWER_uni(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (3)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_FOO( 3,ord)); |
| 8276 | #line 8277 "APItest.c" |
| 8277 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8278 | } |
| 8279 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8280 | } |
| 8281 | |
| 8282 | |
| 8283 | XS_EUPXS(XS_XS__APItest__Magic_test_isLOWER_uvchr)static void XS_XS__APItest__Magic_test_isLOWER_uvchr( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8284 | XS_EUPXS(XS_XS__APItest__Magic_test_isLOWER_uvchr)static void XS_XS__APItest__Magic_test_isLOWER_uvchr( CV* cv __attribute__ ((unused))) |
| 8285 | { |
| 8286 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8287 | if (items != 1) |
| 8288 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8289 | { |
| 8290 | bool_Bool RETVAL; |
| 8291 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8292 | ; |
| 8293 | #line 4834 "APItest.xs" |
| 8294 | RETVAL = isLOWER_uvchr(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (3)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_FOO( 3,ord)); |
| 8295 | #line 8296 "APItest.c" |
| 8296 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8297 | } |
| 8298 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8299 | } |
| 8300 | |
| 8301 | |
| 8302 | XS_EUPXS(XS_XS__APItest__Magic_test_isLOWER_LC_uvchr)static void XS_XS__APItest__Magic_test_isLOWER_LC_uvchr( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8303 | XS_EUPXS(XS_XS__APItest__Magic_test_isLOWER_LC_uvchr)static void XS_XS__APItest__Magic_test_isLOWER_LC_uvchr( CV* cv __attribute__((unused))) |
| 8304 | { |
| 8305 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8306 | if (items != 1) |
| 8307 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8308 | { |
| 8309 | bool_Bool RETVAL; |
| 8310 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8311 | ; |
| 8312 | #line 4841 "APItest.xs" |
| 8313 | RETVAL = isLOWER_LC_uvchr(ord)(ord < 256 ? (! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (ord)] & (1U << (3))) ? (_Bool)1 : (_Bool)0) : ((islower( (U8) (ord))) ? (_Bool)1 : (_Bool)0)) : Perl__is_uni_FOO ( 3,ord)); |
| 8314 | #line 8315 "APItest.c" |
| 8315 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8316 | } |
| 8317 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8318 | } |
| 8319 | |
| 8320 | |
| 8321 | XS_EUPXS(XS_XS__APItest__Magic_test_isLOWER)static void XS_XS__APItest__Magic_test_isLOWER( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8322 | XS_EUPXS(XS_XS__APItest__Magic_test_isLOWER)static void XS_XS__APItest__Magic_test_isLOWER( CV* cv __attribute__ ((unused))) |
| 8323 | { |
| 8324 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8325 | if (items != 1) |
| 8326 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8327 | { |
| 8328 | bool_Bool RETVAL; |
| 8329 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8330 | ; |
| 8331 | #line 4848 "APItest.xs" |
| 8332 | RETVAL = isLOWER(ord)( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord)))) - ((('a')) | 0))) <= (((U64) (((('z') - ('a'))) | 0))))) : (sizeof(ord) == sizeof(U32)) ? ( (((U64) (((((U32) (ord)))) - ((('a')) | 0))) <= (((U64) (((('z') - ('a'))) | 0))))) : ( ( (((U64) (((((U64) (ord)))) - ((('a')) | 0))) <= (((U64) (((('z') - ('a'))) | 0)))))))); |
| 8333 | #line 8334 "APItest.c" |
| 8334 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8335 | } |
| 8336 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8337 | } |
| 8338 | |
| 8339 | |
| 8340 | XS_EUPXS(XS_XS__APItest__Magic_test_isLOWER_A)static void XS_XS__APItest__Magic_test_isLOWER_A( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8341 | XS_EUPXS(XS_XS__APItest__Magic_test_isLOWER_A)static void XS_XS__APItest__Magic_test_isLOWER_A( CV* cv __attribute__ ((unused))) |
| 8342 | { |
| 8343 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8344 | if (items != 1) |
| 8345 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8346 | { |
| 8347 | bool_Bool RETVAL; |
| 8348 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8349 | ; |
| 8350 | #line 4855 "APItest.xs" |
| 8351 | RETVAL = isLOWER_A(ord)( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord)))) - ((('a')) | 0))) <= (((U64) (((('z') - ('a'))) | 0))))) : (sizeof(ord) == sizeof(U32)) ? ( (((U64) (((((U32) (ord)))) - ((('a')) | 0))) <= (((U64) (((('z') - ('a'))) | 0))))) : ( ( (((U64) (((((U64) (ord)))) - ((('a')) | 0))) <= (((U64) (((('z') - ('a'))) | 0)))))))); |
| 8352 | #line 8353 "APItest.c" |
| 8353 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8354 | } |
| 8355 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8356 | } |
| 8357 | |
| 8358 | |
| 8359 | XS_EUPXS(XS_XS__APItest__Magic_test_isLOWER_L1)static void XS_XS__APItest__Magic_test_isLOWER_L1( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8360 | XS_EUPXS(XS_XS__APItest__Magic_test_isLOWER_L1)static void XS_XS__APItest__Magic_test_isLOWER_L1( CV* cv __attribute__ ((unused))) |
| 8361 | { |
| 8362 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8363 | if (items != 1) |
| 8364 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8365 | { |
| 8366 | bool_Bool RETVAL; |
| 8367 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8368 | ; |
| 8369 | #line 4862 "APItest.xs" |
| 8370 | RETVAL = isLOWER_L1(ord)((( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && (PL_charclass[(U8) (ord)] & (1U << (3)))) ? (_Bool )1 : (_Bool)0); |
| 8371 | #line 8372 "APItest.c" |
| 8372 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8373 | } |
| 8374 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8375 | } |
| 8376 | |
| 8377 | |
| 8378 | XS_EUPXS(XS_XS__APItest__Magic_test_isLOWER_LC)static void XS_XS__APItest__Magic_test_isLOWER_LC( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8379 | XS_EUPXS(XS_XS__APItest__Magic_test_isLOWER_LC)static void XS_XS__APItest__Magic_test_isLOWER_LC( CV* cv __attribute__ ((unused))) |
| 8380 | { |
| 8381 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8382 | if (items != 1) |
| 8383 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8384 | { |
| 8385 | bool_Bool RETVAL; |
| 8386 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8387 | ; |
| 8388 | #line 4869 "APItest.xs" |
| 8389 | RETVAL = isLOWER_LC(ord)(! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (ord)] & (1U << (3))) ? (_Bool)1 : (_Bool)0) : ((islower( (U8) ( ord))) ? (_Bool)1 : (_Bool)0)); |
| 8390 | #line 8391 "APItest.c" |
| 8391 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8392 | } |
| 8393 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8394 | } |
| 8395 | |
| 8396 | |
| 8397 | XS_EUPXS(XS_XS__APItest__Magic_test_isLOWER_utf8)static void XS_XS__APItest__Magic_test_isLOWER_utf8( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8398 | XS_EUPXS(XS_XS__APItest__Magic_test_isLOWER_utf8)static void XS_XS__APItest__Magic_test_isLOWER_utf8( CV* cv __attribute__ ((unused))) |
| 8399 | { |
| 8400 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8401 | if (items != 2) |
| 8402 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 8403 | { |
| 8404 | #line 4876 "APItest.xs" |
| 8405 | const U8 * e; |
| 8406 | #line 8407 "APItest.c" |
| 8407 | bool_Bool RETVAL; |
| 8408 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 8409 | ; |
| 8410 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 8411 | ; |
| 8412 | #line 4878 "APItest.xs" |
| 8413 | if (type >= 0) { |
| 8414 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 8415 | RETVAL = isLOWER_utf8_safe(p, e)((! ((e) > (p))) ? (Perl__force_out_malformed_utf8_message ( (U8 *) (p),(U8 *) (e),0,1), 0) : (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? ( (( (sizeof(*(p)) == 1) || !(((U64)((*(p)) | 0)) & ~0xFF)) && (PL_charclass[(U8) (*(p))] & (1U << (3) ))) ? (_Bool)1 : (_Bool)0) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) (((((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) )) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7 ) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ( (U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | ((( 2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0)) ))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0))))))) - ((( (((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= ( ((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6 )) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect((( (e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0))) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6)) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? ((( (sizeof(( ( ((U8 ) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+ 1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6 ) | ((( ((U8) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) && (PL_charclass [(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8 ) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1)))) ) | 0)))))] & (1U << (3)))) ? (_Bool)1 : (_Bool)0) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) ( e),0,1), 0)) : Perl__is_utf8_FOO( 3,p,e))); |
| 8416 | } |
| 8417 | else { |
| 8418 | RETVAL = 0; |
| 8419 | } |
| 8420 | #line 8421 "APItest.c" |
| 8421 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8422 | } |
| 8423 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8424 | } |
| 8425 | |
| 8426 | |
| 8427 | XS_EUPXS(XS_XS__APItest__Magic_test_isLOWER_LC_utf8)static void XS_XS__APItest__Magic_test_isLOWER_LC_utf8( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8428 | XS_EUPXS(XS_XS__APItest__Magic_test_isLOWER_LC_utf8)static void XS_XS__APItest__Magic_test_isLOWER_LC_utf8( CV* cv __attribute__((unused))) |
| 8429 | { |
| 8430 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8431 | if (items != 2) |
| 8432 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 8433 | { |
| 8434 | #line 4891 "APItest.xs" |
| 8435 | const U8 * e; |
| 8436 | #line 8437 "APItest.c" |
| 8437 | bool_Bool RETVAL; |
| 8438 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 8439 | ; |
| 8440 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 8441 | ; |
| 8442 | #line 4893 "APItest.xs" |
| 8443 | if (type >= 0) { |
| 8444 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 8445 | RETVAL = isLOWER_LC_utf8_safe(p, e)( (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? (! ( (sizeof(*(p)) == 1) || !(((U64)((* (p)) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (*(p))] & (1U << (3))) ? (_Bool)1 : (_Bool)0) : ((islower( (U8) (*(p)))) ? (_Bool)1 : (_Bool)0)) : (( ( ( ( sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) ((( ((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) (( ((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) ))) | 0))))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0)))) ))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0 ))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect ((((e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0)) ) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6) ) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? (! ( (sizeof (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7 ) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2)))) ) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ( (1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0 ))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0)))))] & (1U << (3))) ? (_Bool)1 : ( _Bool)0) : ((islower( (U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2)) ))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))))) ? (_Bool)1 : (_Bool)0)) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) (e),0,1), 0)) : Perl__is_utf8_FOO( 3,p,e))); |
| 8446 | } |
| 8447 | else { |
| 8448 | RETVAL = 0; |
| 8449 | } |
| 8450 | #line 8451 "APItest.c" |
| 8451 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8452 | } |
| 8453 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8454 | } |
| 8455 | |
| 8456 | |
| 8457 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHA_uni)static void XS_XS__APItest__Magic_test_isALPHA_uni( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8458 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHA_uni)static void XS_XS__APItest__Magic_test_isALPHA_uni( CV* cv __attribute__ ((unused))) |
| 8459 | { |
| 8460 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8461 | if (items != 1) |
| 8462 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8463 | { |
| 8464 | bool_Bool RETVAL; |
| 8465 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8466 | ; |
| 8467 | #line 4906 "APItest.xs" |
| 8468 | RETVAL = isALPHA_uni(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (2)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_FOO( 2,ord)); |
| 8469 | #line 8470 "APItest.c" |
| 8470 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8471 | } |
| 8472 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8473 | } |
| 8474 | |
| 8475 | |
| 8476 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHA_uvchr)static void XS_XS__APItest__Magic_test_isALPHA_uvchr( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8477 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHA_uvchr)static void XS_XS__APItest__Magic_test_isALPHA_uvchr( CV* cv __attribute__ ((unused))) |
| 8478 | { |
| 8479 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8480 | if (items != 1) |
| 8481 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8482 | { |
| 8483 | bool_Bool RETVAL; |
| 8484 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8485 | ; |
| 8486 | #line 4913 "APItest.xs" |
| 8487 | RETVAL = isALPHA_uvchr(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (2)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_FOO( 2,ord)); |
| 8488 | #line 8489 "APItest.c" |
| 8489 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8490 | } |
| 8491 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8492 | } |
| 8493 | |
| 8494 | |
| 8495 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHA_LC_uvchr)static void XS_XS__APItest__Magic_test_isALPHA_LC_uvchr( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8496 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHA_LC_uvchr)static void XS_XS__APItest__Magic_test_isALPHA_LC_uvchr( CV* cv __attribute__((unused))) |
| 8497 | { |
| 8498 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8499 | if (items != 1) |
| 8500 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8501 | { |
| 8502 | bool_Bool RETVAL; |
| 8503 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8504 | ; |
| 8505 | #line 4920 "APItest.xs" |
| 8506 | RETVAL = isALPHA_LC_uvchr(ord)(ord < 256 ? (! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (ord)] & (1U << (2))) ? (_Bool)1 : (_Bool)0) : ((isalpha( (U8) (ord))) ? (_Bool)1 : (_Bool)0)) : Perl__is_uni_FOO ( 2,ord)); |
| 8507 | #line 8508 "APItest.c" |
| 8508 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8509 | } |
| 8510 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8511 | } |
| 8512 | |
| 8513 | |
| 8514 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHA)static void XS_XS__APItest__Magic_test_isALPHA( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8515 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHA)static void XS_XS__APItest__Magic_test_isALPHA( CV* cv __attribute__ ((unused))) |
| 8516 | { |
| 8517 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8518 | if (items != 1) |
| 8519 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8520 | { |
| 8521 | bool_Bool RETVAL; |
| 8522 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8523 | ; |
| 8524 | #line 4927 "APItest.xs" |
| 8525 | RETVAL = isALPHA(ord)( ( (sizeof((~('A' ^ 'a') & (ord))) == sizeof(U8)) ? ( (( (U64) (((((U8) ((~('A' ^ 'a') & (ord)))))) - ((('A')) | 0 ))) <= (((U64) (((('Z') - ('A'))) | 0))))) : (sizeof((~('A' ^ 'a') & (ord))) == sizeof(U32)) ? ( (((U64) (((((U32) ( (~('A' ^ 'a') & (ord)))))) - ((('A')) | 0))) <= (((U64 ) (((('Z') - ('A'))) | 0))))) : ( ( (((U64) (((((U64) ((~('A' ^ 'a') & (ord)))))) - ((('A')) | 0))) <= (((U64) (((( 'Z') - ('A'))) | 0)))))))); |
| 8526 | #line 8527 "APItest.c" |
| 8527 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8528 | } |
| 8529 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8530 | } |
| 8531 | |
| 8532 | |
| 8533 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHA_A)static void XS_XS__APItest__Magic_test_isALPHA_A( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8534 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHA_A)static void XS_XS__APItest__Magic_test_isALPHA_A( CV* cv __attribute__ ((unused))) |
| 8535 | { |
| 8536 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8537 | if (items != 1) |
| 8538 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8539 | { |
| 8540 | bool_Bool RETVAL; |
| 8541 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8542 | ; |
| 8543 | #line 4934 "APItest.xs" |
| 8544 | RETVAL = isALPHA_A(ord)( ( (sizeof((~('A' ^ 'a') & (ord))) == sizeof(U8)) ? ( (( (U64) (((((U8) ((~('A' ^ 'a') & (ord)))))) - ((('A')) | 0 ))) <= (((U64) (((('Z') - ('A'))) | 0))))) : (sizeof((~('A' ^ 'a') & (ord))) == sizeof(U32)) ? ( (((U64) (((((U32) ( (~('A' ^ 'a') & (ord)))))) - ((('A')) | 0))) <= (((U64 ) (((('Z') - ('A'))) | 0))))) : ( ( (((U64) (((((U64) ((~('A' ^ 'a') & (ord)))))) - ((('A')) | 0))) <= (((U64) (((( 'Z') - ('A'))) | 0)))))))); |
| 8545 | #line 8546 "APItest.c" |
| 8546 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8547 | } |
| 8548 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8549 | } |
| 8550 | |
| 8551 | |
| 8552 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHA_L1)static void XS_XS__APItest__Magic_test_isALPHA_L1( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8553 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHA_L1)static void XS_XS__APItest__Magic_test_isALPHA_L1( CV* cv __attribute__ ((unused))) |
| 8554 | { |
| 8555 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8556 | if (items != 1) |
| 8557 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8558 | { |
| 8559 | bool_Bool RETVAL; |
| 8560 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8561 | ; |
| 8562 | #line 4941 "APItest.xs" |
| 8563 | RETVAL = isALPHA_L1(ord)((( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && (PL_charclass[(U8) (ord)] & (1U << (2)))) ? (_Bool )1 : (_Bool)0); |
| 8564 | #line 8565 "APItest.c" |
| 8565 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8566 | } |
| 8567 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8568 | } |
| 8569 | |
| 8570 | |
| 8571 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHA_LC)static void XS_XS__APItest__Magic_test_isALPHA_LC( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8572 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHA_LC)static void XS_XS__APItest__Magic_test_isALPHA_LC( CV* cv __attribute__ ((unused))) |
| 8573 | { |
| 8574 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8575 | if (items != 1) |
| 8576 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8577 | { |
| 8578 | bool_Bool RETVAL; |
| 8579 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8580 | ; |
| 8581 | #line 4948 "APItest.xs" |
| 8582 | RETVAL = isALPHA_LC(ord)(! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (ord)] & (1U << (2))) ? (_Bool)1 : (_Bool)0) : ((isalpha( (U8) ( ord))) ? (_Bool)1 : (_Bool)0)); |
| 8583 | #line 8584 "APItest.c" |
| 8584 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8585 | } |
| 8586 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8587 | } |
| 8588 | |
| 8589 | |
| 8590 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHA_utf8)static void XS_XS__APItest__Magic_test_isALPHA_utf8( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8591 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHA_utf8)static void XS_XS__APItest__Magic_test_isALPHA_utf8( CV* cv __attribute__ ((unused))) |
| 8592 | { |
| 8593 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8594 | if (items != 2) |
| 8595 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 8596 | { |
| 8597 | #line 4955 "APItest.xs" |
| 8598 | const U8 * e; |
| 8599 | #line 8600 "APItest.c" |
| 8600 | bool_Bool RETVAL; |
| 8601 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 8602 | ; |
| 8603 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 8604 | ; |
| 8605 | #line 4957 "APItest.xs" |
| 8606 | if (type >= 0) { |
| 8607 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 8608 | RETVAL = isALPHA_utf8_safe(p, e)((! ((e) > (p))) ? (Perl__force_out_malformed_utf8_message ( (U8 *) (p),(U8 *) (e),0,1), 0) : (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? ( (( (sizeof(*(p)) == 1) || !(((U64)((*(p)) | 0)) & ~0xFF)) && (PL_charclass[(U8) (*(p))] & (1U << (2) ))) ? (_Bool)1 : (_Bool)0) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) (((((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) )) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7 ) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ( (U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | ((( 2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0)) ))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0))))))) - ((( (((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= ( ((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6 )) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect((( (e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0))) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6)) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? ((( (sizeof(( ( ((U8 ) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+ 1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6 ) | ((( ((U8) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) && (PL_charclass [(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8 ) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1)))) ) | 0)))))] & (1U << (2)))) ? (_Bool)1 : (_Bool)0) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) ( e),0,1), 0)) : Perl__is_utf8_FOO( 2,p,e))); |
| 8609 | } |
| 8610 | else { |
| 8611 | RETVAL = 0; |
| 8612 | } |
| 8613 | #line 8614 "APItest.c" |
| 8614 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8615 | } |
| 8616 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8617 | } |
| 8618 | |
| 8619 | |
| 8620 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHA_LC_utf8)static void XS_XS__APItest__Magic_test_isALPHA_LC_utf8( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8621 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHA_LC_utf8)static void XS_XS__APItest__Magic_test_isALPHA_LC_utf8( CV* cv __attribute__((unused))) |
| 8622 | { |
| 8623 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8624 | if (items != 2) |
| 8625 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 8626 | { |
| 8627 | #line 4970 "APItest.xs" |
| 8628 | const U8 * e; |
| 8629 | #line 8630 "APItest.c" |
| 8630 | bool_Bool RETVAL; |
| 8631 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 8632 | ; |
| 8633 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 8634 | ; |
| 8635 | #line 4972 "APItest.xs" |
| 8636 | if (type >= 0) { |
| 8637 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 8638 | RETVAL = isALPHA_LC_utf8_safe(p, e)( (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? (! ( (sizeof(*(p)) == 1) || !(((U64)((* (p)) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (*(p))] & (1U << (2))) ? (_Bool)1 : (_Bool)0) : ((isalpha( (U8) (*(p)))) ? (_Bool)1 : (_Bool)0)) : (( ( ( ( sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) ((( ((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) (( ((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) ))) | 0))))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0)))) ))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0 ))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect ((((e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0)) ) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6) ) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? (! ( (sizeof (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7 ) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2)))) ) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ( (1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0 ))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0)))))] & (1U << (2))) ? (_Bool)1 : ( _Bool)0) : ((isalpha( (U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2)) ))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))))) ? (_Bool)1 : (_Bool)0)) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) (e),0,1), 0)) : Perl__is_utf8_FOO( 2,p,e))); |
| 8639 | } |
| 8640 | else { |
| 8641 | RETVAL = 0; |
| 8642 | } |
| 8643 | #line 8644 "APItest.c" |
| 8644 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8645 | } |
| 8646 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8647 | } |
| 8648 | |
| 8649 | |
| 8650 | XS_EUPXS(XS_XS__APItest__Magic_test_isWORDCHAR_uni)static void XS_XS__APItest__Magic_test_isWORDCHAR_uni( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8651 | XS_EUPXS(XS_XS__APItest__Magic_test_isWORDCHAR_uni)static void XS_XS__APItest__Magic_test_isWORDCHAR_uni( CV* cv __attribute__((unused))) |
| 8652 | { |
| 8653 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8654 | if (items != 1) |
| 8655 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8656 | { |
| 8657 | bool_Bool RETVAL; |
| 8658 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8659 | ; |
| 8660 | #line 4985 "APItest.xs" |
| 8661 | RETVAL = isWORDCHAR_uni(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (0)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_FOO( 0,ord)); |
| 8662 | #line 8663 "APItest.c" |
| 8663 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8664 | } |
| 8665 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8666 | } |
| 8667 | |
| 8668 | |
| 8669 | XS_EUPXS(XS_XS__APItest__Magic_test_isWORDCHAR_uvchr)static void XS_XS__APItest__Magic_test_isWORDCHAR_uvchr( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8670 | XS_EUPXS(XS_XS__APItest__Magic_test_isWORDCHAR_uvchr)static void XS_XS__APItest__Magic_test_isWORDCHAR_uvchr( CV* cv __attribute__((unused))) |
| 8671 | { |
| 8672 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8673 | if (items != 1) |
| 8674 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8675 | { |
| 8676 | bool_Bool RETVAL; |
| 8677 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8678 | ; |
| 8679 | #line 4992 "APItest.xs" |
| 8680 | RETVAL = isWORDCHAR_uvchr(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (0)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_FOO( 0,ord)); |
| 8681 | #line 8682 "APItest.c" |
| 8682 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8683 | } |
| 8684 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8685 | } |
| 8686 | |
| 8687 | |
| 8688 | XS_EUPXS(XS_XS__APItest__Magic_test_isWORDCHAR_LC_uvchr)static void XS_XS__APItest__Magic_test_isWORDCHAR_LC_uvchr( CV * cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8689 | XS_EUPXS(XS_XS__APItest__Magic_test_isWORDCHAR_LC_uvchr)static void XS_XS__APItest__Magic_test_isWORDCHAR_LC_uvchr( CV * cv __attribute__((unused))) |
| 8690 | { |
| 8691 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8692 | if (items != 1) |
| 8693 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8694 | { |
| 8695 | bool_Bool RETVAL; |
| 8696 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8697 | ; |
| 8698 | #line 4999 "APItest.xs" |
| 8699 | RETVAL = isWORDCHAR_LC_uvchr(ord)(ord < 256 ? (! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (ord)] & (1U << (0))) ? (_Bool)1 : (_Bool)0) : (((isalnum( (U8) (ord)) || (char)(ord) == '_')) ? (_Bool)1 : (_Bool)0)) : Perl__is_uni_FOO( 0,ord)); |
| 8700 | #line 8701 "APItest.c" |
| 8701 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8702 | } |
| 8703 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8704 | } |
| 8705 | |
| 8706 | |
| 8707 | XS_EUPXS(XS_XS__APItest__Magic_test_isWORDCHAR)static void XS_XS__APItest__Magic_test_isWORDCHAR( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8708 | XS_EUPXS(XS_XS__APItest__Magic_test_isWORDCHAR)static void XS_XS__APItest__Magic_test_isWORDCHAR( CV* cv __attribute__ ((unused))) |
| 8709 | { |
| 8710 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8711 | if (items != 1) |
| 8712 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8713 | { |
| 8714 | bool_Bool RETVAL; |
| 8715 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8716 | ; |
| 8717 | #line 5006 "APItest.xs" |
| 8718 | RETVAL = isWORDCHAR(ord)(( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && ((PL_charclass[(U8) (ord)] & ((1U << (0)) | (1U << (14)))) == ((1U << (0)) | (1U << (14))))); |
| 8719 | #line 8720 "APItest.c" |
| 8720 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8721 | } |
| 8722 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8723 | } |
| 8724 | |
| 8725 | |
| 8726 | XS_EUPXS(XS_XS__APItest__Magic_test_isWORDCHAR_A)static void XS_XS__APItest__Magic_test_isWORDCHAR_A( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8727 | XS_EUPXS(XS_XS__APItest__Magic_test_isWORDCHAR_A)static void XS_XS__APItest__Magic_test_isWORDCHAR_A( CV* cv __attribute__ ((unused))) |
| 8728 | { |
| 8729 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8730 | if (items != 1) |
| 8731 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8732 | { |
| 8733 | bool_Bool RETVAL; |
| 8734 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8735 | ; |
| 8736 | #line 5013 "APItest.xs" |
| 8737 | RETVAL = isWORDCHAR_A(ord)(( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && ((PL_charclass[(U8) (ord)] & ((1U << (0)) | (1U << (14)))) == ((1U << (0)) | (1U << (14))))); |
| 8738 | #line 8739 "APItest.c" |
| 8739 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8740 | } |
| 8741 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8742 | } |
| 8743 | |
| 8744 | |
| 8745 | XS_EUPXS(XS_XS__APItest__Magic_test_isWORDCHAR_L1)static void XS_XS__APItest__Magic_test_isWORDCHAR_L1( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8746 | XS_EUPXS(XS_XS__APItest__Magic_test_isWORDCHAR_L1)static void XS_XS__APItest__Magic_test_isWORDCHAR_L1( CV* cv __attribute__ ((unused))) |
| 8747 | { |
| 8748 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8749 | if (items != 1) |
| 8750 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8751 | { |
| 8752 | bool_Bool RETVAL; |
| 8753 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8754 | ; |
| 8755 | #line 5020 "APItest.xs" |
| 8756 | RETVAL = isWORDCHAR_L1(ord)((( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && (PL_charclass[(U8) (ord)] & (1U << (0)))) ? (_Bool )1 : (_Bool)0); |
| 8757 | #line 8758 "APItest.c" |
| 8758 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8759 | } |
| 8760 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8761 | } |
| 8762 | |
| 8763 | |
| 8764 | XS_EUPXS(XS_XS__APItest__Magic_test_isWORDCHAR_LC)static void XS_XS__APItest__Magic_test_isWORDCHAR_LC( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8765 | XS_EUPXS(XS_XS__APItest__Magic_test_isWORDCHAR_LC)static void XS_XS__APItest__Magic_test_isWORDCHAR_LC( CV* cv __attribute__ ((unused))) |
| 8766 | { |
| 8767 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8768 | if (items != 1) |
| 8769 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8770 | { |
| 8771 | bool_Bool RETVAL; |
| 8772 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8773 | ; |
| 8774 | #line 5027 "APItest.xs" |
| 8775 | RETVAL = isWORDCHAR_LC(ord)(! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (ord)] & (1U << (0))) ? (_Bool)1 : (_Bool)0) : (((isalnum( (U8) (ord)) || (char)(ord) == '_')) ? (_Bool)1 : (_Bool)0)); |
| 8776 | #line 8777 "APItest.c" |
| 8777 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8778 | } |
| 8779 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8780 | } |
| 8781 | |
| 8782 | |
| 8783 | XS_EUPXS(XS_XS__APItest__Magic_test_isWORDCHAR_utf8)static void XS_XS__APItest__Magic_test_isWORDCHAR_utf8( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8784 | XS_EUPXS(XS_XS__APItest__Magic_test_isWORDCHAR_utf8)static void XS_XS__APItest__Magic_test_isWORDCHAR_utf8( CV* cv __attribute__((unused))) |
| 8785 | { |
| 8786 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8787 | if (items != 2) |
| 8788 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 8789 | { |
| 8790 | #line 5034 "APItest.xs" |
| 8791 | const U8 * e; |
| 8792 | #line 8793 "APItest.c" |
| 8793 | bool_Bool RETVAL; |
| 8794 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 8795 | ; |
| 8796 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 8797 | ; |
| 8798 | #line 5036 "APItest.xs" |
| 8799 | if (type >= 0) { |
| 8800 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 8801 | RETVAL = isWORDCHAR_utf8_safe(p, e)((! ((e) > (p))) ? (Perl__force_out_malformed_utf8_message ( (U8 *) (p),(U8 *) (e),0,1), 0) : (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? ( (( (sizeof(*(p)) == 1) || !(((U64)((*(p)) | 0)) & ~0xFF)) && (PL_charclass[(U8) (*(p))] & (1U << (0) ))) ? (_Bool)1 : (_Bool)0) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) (((((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) )) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7 ) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ( (U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | ((( 2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0)) ))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0))))))) - ((( (((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= ( ((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6 )) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect((( (e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0))) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6)) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? ((( (sizeof(( ( ((U8 ) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+ 1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6 ) | ((( ((U8) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) && (PL_charclass [(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8 ) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1)))) ) | 0)))))] & (1U << (0)))) ? (_Bool)1 : (_Bool)0) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) ( e),0,1), 0)) : Perl__is_utf8_FOO( 0,p,e))); |
| 8802 | } |
| 8803 | else { |
| 8804 | RETVAL = 0; |
| 8805 | } |
| 8806 | #line 8807 "APItest.c" |
| 8807 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8808 | } |
| 8809 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8810 | } |
| 8811 | |
| 8812 | |
| 8813 | XS_EUPXS(XS_XS__APItest__Magic_test_isWORDCHAR_LC_utf8)static void XS_XS__APItest__Magic_test_isWORDCHAR_LC_utf8( CV * cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8814 | XS_EUPXS(XS_XS__APItest__Magic_test_isWORDCHAR_LC_utf8)static void XS_XS__APItest__Magic_test_isWORDCHAR_LC_utf8( CV * cv __attribute__((unused))) |
| 8815 | { |
| 8816 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8817 | if (items != 2) |
| 8818 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 8819 | { |
| 8820 | #line 5049 "APItest.xs" |
| 8821 | const U8 * e; |
| 8822 | #line 8823 "APItest.c" |
| 8823 | bool_Bool RETVAL; |
| 8824 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 8825 | ; |
| 8826 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 8827 | ; |
| 8828 | #line 5051 "APItest.xs" |
| 8829 | if (type >= 0) { |
| 8830 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 8831 | RETVAL = isWORDCHAR_LC_utf8_safe(p, e)( (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? (! ( (sizeof(*(p)) == 1) || !(((U64)((* (p)) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (*(p))] & (1U << (0))) ? (_Bool)1 : (_Bool)0) : (((isalnum( (U8) (*(p))) || (char)(*(p)) == '_')) ? (_Bool )1 : (_Bool)0)) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof (U8)) ? ( (((U64) (((((U8) (( ((U8) ((*(p)) | 0))))))) - (((( ((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= ( ((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6 )) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) )) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7 ) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect((((e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0))) & ((U8) (0xFF << 6 ))) == (((U8) (0xFF << 6)) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? (! ( (sizeof(( ( ((U8) ((( ((( ( ((U8) ((* (p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2) -2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ( (U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p )+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8 ) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0)))))] & (1U << (0))) ? (_Bool)1 : (_Bool)0) : ( ((isalnum( (U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6 ) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0)))))) || (char)(( ( ((U8) ((( ((( ( ((U8) (( *(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2 )-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ( (U8) ((1U << 6) - 1))))) | 0))))) == '_')) ? (_Bool)1 : (_Bool)0)) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) (e),0,1), 0)) : Perl__is_utf8_FOO( 0,p,e))); |
| 8832 | } |
| 8833 | else { |
| 8834 | RETVAL = 0; |
| 8835 | } |
| 8836 | #line 8837 "APItest.c" |
| 8837 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8838 | } |
| 8839 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8840 | } |
| 8841 | |
| 8842 | |
| 8843 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHANUMERIC_uni)static void XS_XS__APItest__Magic_test_isALPHANUMERIC_uni( CV * cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8844 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHANUMERIC_uni)static void XS_XS__APItest__Magic_test_isALPHANUMERIC_uni( CV * cv __attribute__((unused))) |
| 8845 | { |
| 8846 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8847 | if (items != 1) |
| 8848 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8849 | { |
| 8850 | bool_Bool RETVAL; |
| 8851 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8852 | ; |
| 8853 | #line 5064 "APItest.xs" |
| 8854 | RETVAL = isALPHANUMERIC_uni(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (7)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_FOO( 7,ord)); |
| 8855 | #line 8856 "APItest.c" |
| 8856 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8857 | } |
| 8858 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8859 | } |
| 8860 | |
| 8861 | |
| 8862 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHANUMERIC_uvchr)static void XS_XS__APItest__Magic_test_isALPHANUMERIC_uvchr( CV * cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8863 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHANUMERIC_uvchr)static void XS_XS__APItest__Magic_test_isALPHANUMERIC_uvchr( CV * cv __attribute__((unused))) |
| 8864 | { |
| 8865 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8866 | if (items != 1) |
| 8867 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8868 | { |
| 8869 | bool_Bool RETVAL; |
| 8870 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8871 | ; |
| 8872 | #line 5071 "APItest.xs" |
| 8873 | RETVAL = isALPHANUMERIC_uvchr(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (7)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_FOO( 7,ord)); |
| 8874 | #line 8875 "APItest.c" |
| 8875 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8876 | } |
| 8877 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8878 | } |
| 8879 | |
| 8880 | |
| 8881 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHANUMERIC_LC_uvchr)static void XS_XS__APItest__Magic_test_isALPHANUMERIC_LC_uvchr ( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8882 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHANUMERIC_LC_uvchr)static void XS_XS__APItest__Magic_test_isALPHANUMERIC_LC_uvchr ( CV* cv __attribute__((unused))) |
| 8883 | { |
| 8884 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8885 | if (items != 1) |
| 8886 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8887 | { |
| 8888 | bool_Bool RETVAL; |
| 8889 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8890 | ; |
| 8891 | #line 5078 "APItest.xs" |
| 8892 | RETVAL = isALPHANUMERIC_LC_uvchr(ord)(ord < 256 ? (! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (ord)] & (1U << (7))) ? (_Bool)1 : (_Bool)0) : ((isalnum( (U8) (ord))) ? (_Bool)1 : (_Bool)0)) : Perl__is_uni_FOO ( 7,ord)); |
| 8893 | #line 8894 "APItest.c" |
| 8894 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8895 | } |
| 8896 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8897 | } |
| 8898 | |
| 8899 | |
| 8900 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHANUMERIC)static void XS_XS__APItest__Magic_test_isALPHANUMERIC( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8901 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHANUMERIC)static void XS_XS__APItest__Magic_test_isALPHANUMERIC( CV* cv __attribute__((unused))) |
| 8902 | { |
| 8903 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8904 | if (items != 1) |
| 8905 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8906 | { |
| 8907 | bool_Bool RETVAL; |
| 8908 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8909 | ; |
| 8910 | #line 5085 "APItest.xs" |
| 8911 | RETVAL = isALPHANUMERIC(ord)(( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && ((PL_charclass[(U8) (ord)] & ((1U << (7)) | (1U << (14)))) == ((1U << (7)) | (1U << (14))))); |
| 8912 | #line 8913 "APItest.c" |
| 8913 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8914 | } |
| 8915 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8916 | } |
| 8917 | |
| 8918 | |
| 8919 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHANUMERIC_A)static void XS_XS__APItest__Magic_test_isALPHANUMERIC_A( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8920 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHANUMERIC_A)static void XS_XS__APItest__Magic_test_isALPHANUMERIC_A( CV* cv __attribute__((unused))) |
| 8921 | { |
| 8922 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8923 | if (items != 1) |
| 8924 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8925 | { |
| 8926 | bool_Bool RETVAL; |
| 8927 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8928 | ; |
| 8929 | #line 5092 "APItest.xs" |
| 8930 | RETVAL = isALPHANUMERIC_A(ord)(( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && ((PL_charclass[(U8) (ord)] & ((1U << (7)) | (1U << (14)))) == ((1U << (7)) | (1U << (14))))); |
| 8931 | #line 8932 "APItest.c" |
| 8932 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8933 | } |
| 8934 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8935 | } |
| 8936 | |
| 8937 | |
| 8938 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHANUMERIC_L1)static void XS_XS__APItest__Magic_test_isALPHANUMERIC_L1( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8939 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHANUMERIC_L1)static void XS_XS__APItest__Magic_test_isALPHANUMERIC_L1( CV* cv __attribute__((unused))) |
| 8940 | { |
| 8941 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8942 | if (items != 1) |
| 8943 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8944 | { |
| 8945 | bool_Bool RETVAL; |
| 8946 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8947 | ; |
| 8948 | #line 5099 "APItest.xs" |
| 8949 | RETVAL = isALPHANUMERIC_L1(ord)((( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && (PL_charclass[(U8) (ord)] & (1U << (7)))) ? (_Bool )1 : (_Bool)0); |
| 8950 | #line 8951 "APItest.c" |
| 8951 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8952 | } |
| 8953 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8954 | } |
| 8955 | |
| 8956 | |
| 8957 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHANUMERIC_LC)static void XS_XS__APItest__Magic_test_isALPHANUMERIC_LC( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8958 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHANUMERIC_LC)static void XS_XS__APItest__Magic_test_isALPHANUMERIC_LC( CV* cv __attribute__((unused))) |
| 8959 | { |
| 8960 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8961 | if (items != 1) |
| 8962 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 8963 | { |
| 8964 | bool_Bool RETVAL; |
| 8965 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 8966 | ; |
| 8967 | #line 5106 "APItest.xs" |
| 8968 | RETVAL = isALPHANUMERIC_LC(ord)(! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (ord)] & (1U << (7))) ? (_Bool)1 : (_Bool)0) : ((isalnum( (U8) ( ord))) ? (_Bool)1 : (_Bool)0)); |
| 8969 | #line 8970 "APItest.c" |
| 8970 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 8971 | } |
| 8972 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 8973 | } |
| 8974 | |
| 8975 | |
| 8976 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHANUMERIC_utf8)static void XS_XS__APItest__Magic_test_isALPHANUMERIC_utf8( CV * cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 8977 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHANUMERIC_utf8)static void XS_XS__APItest__Magic_test_isALPHANUMERIC_utf8( CV * cv __attribute__((unused))) |
| 8978 | { |
| 8979 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 8980 | if (items != 2) |
| 8981 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 8982 | { |
| 8983 | #line 5113 "APItest.xs" |
| 8984 | const U8 * e; |
| 8985 | #line 8986 "APItest.c" |
| 8986 | bool_Bool RETVAL; |
| 8987 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 8988 | ; |
| 8989 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 8990 | ; |
| 8991 | #line 5115 "APItest.xs" |
| 8992 | if (type >= 0) { |
| 8993 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 8994 | RETVAL = isALPHANUMERIC_utf8_safe(p, e)((! ((e) > (p))) ? (Perl__force_out_malformed_utf8_message ( (U8 *) (p),(U8 *) (e),0,1), 0) : (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? ( (( (sizeof(*(p)) == 1) || !(((U64)((*(p)) | 0)) & ~0xFF)) && (PL_charclass[(U8) (*(p))] & (1U << (7) ))) ? (_Bool)1 : (_Bool)0) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) (((((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) )) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7 ) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ( (U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | ((( 2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0)) ))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0))))))) - ((( (((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= ( ((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6 )) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect((( (e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0))) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6)) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? ((( (sizeof(( ( ((U8 ) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+ 1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6 ) | ((( ((U8) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) && (PL_charclass [(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8 ) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1)))) ) | 0)))))] & (1U << (7)))) ? (_Bool)1 : (_Bool)0) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) ( e),0,1), 0)) : Perl__is_utf8_FOO( 7,p,e))); |
| 8995 | } |
| 8996 | else { |
| 8997 | RETVAL = 0; |
| 8998 | } |
| 8999 | #line 9000 "APItest.c" |
| 9000 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9001 | } |
| 9002 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9003 | } |
| 9004 | |
| 9005 | |
| 9006 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHANUMERIC_LC_utf8)static void XS_XS__APItest__Magic_test_isALPHANUMERIC_LC_utf8 ( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9007 | XS_EUPXS(XS_XS__APItest__Magic_test_isALPHANUMERIC_LC_utf8)static void XS_XS__APItest__Magic_test_isALPHANUMERIC_LC_utf8 ( CV* cv __attribute__((unused))) |
| 9008 | { |
| 9009 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9010 | if (items != 2) |
| 9011 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 9012 | { |
| 9013 | #line 5128 "APItest.xs" |
| 9014 | const U8 * e; |
| 9015 | #line 9016 "APItest.c" |
| 9016 | bool_Bool RETVAL; |
| 9017 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 9018 | ; |
| 9019 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 9020 | ; |
| 9021 | #line 5130 "APItest.xs" |
| 9022 | if (type >= 0) { |
| 9023 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 9024 | RETVAL = isALPHANUMERIC_LC_utf8_safe(p, e)( (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? (! ( (sizeof(*(p)) == 1) || !(((U64)((* (p)) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (*(p))] & (1U << (7))) ? (_Bool)1 : (_Bool)0) : ((isalnum( (U8) (*(p)))) ? (_Bool)1 : (_Bool)0)) : (( ( ( ( sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) ((( ((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) (( ((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) ))) | 0))))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0)))) ))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0 ))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect ((((e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0)) ) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6) ) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? (! ( (sizeof (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7 ) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2)))) ) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ( (1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0 ))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0)))))] & (1U << (7))) ? (_Bool)1 : ( _Bool)0) : ((isalnum( (U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2)) ))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))))) ? (_Bool)1 : (_Bool)0)) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) (e),0,1), 0)) : Perl__is_utf8_FOO( 7,p,e))); |
| 9025 | } |
| 9026 | else { |
| 9027 | RETVAL = 0; |
| 9028 | } |
| 9029 | #line 9030 "APItest.c" |
| 9030 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9031 | } |
| 9032 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9033 | } |
| 9034 | |
| 9035 | |
| 9036 | XS_EUPXS(XS_XS__APItest__Magic_test_isALNUM)static void XS_XS__APItest__Magic_test_isALNUM( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9037 | XS_EUPXS(XS_XS__APItest__Magic_test_isALNUM)static void XS_XS__APItest__Magic_test_isALNUM( CV* cv __attribute__ ((unused))) |
| 9038 | { |
| 9039 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9040 | if (items != 1) |
| 9041 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9042 | { |
| 9043 | bool_Bool RETVAL; |
| 9044 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9045 | ; |
| 9046 | #line 5143 "APItest.xs" |
| 9047 | RETVAL = isALNUM(ord)(( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && ((PL_charclass[(U8) (ord)] & ((1U << (0)) | (1U << (14)))) == ((1U << (0)) | (1U << (14))))); |
| 9048 | #line 9049 "APItest.c" |
| 9049 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9050 | } |
| 9051 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9052 | } |
| 9053 | |
| 9054 | |
| 9055 | XS_EUPXS(XS_XS__APItest__Magic_test_isALNUM_uni)static void XS_XS__APItest__Magic_test_isALNUM_uni( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9056 | XS_EUPXS(XS_XS__APItest__Magic_test_isALNUM_uni)static void XS_XS__APItest__Magic_test_isALNUM_uni( CV* cv __attribute__ ((unused))) |
| 9057 | { |
| 9058 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9059 | if (items != 1) |
| 9060 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9061 | { |
| 9062 | bool_Bool RETVAL; |
| 9063 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9064 | ; |
| 9065 | #line 5150 "APItest.xs" |
| 9066 | RETVAL = isALNUM_uni(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (0)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_FOO( 0,ord)); |
| 9067 | #line 9068 "APItest.c" |
| 9068 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9069 | } |
| 9070 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9071 | } |
| 9072 | |
| 9073 | |
| 9074 | XS_EUPXS(XS_XS__APItest__Magic_test_isALNUM_LC_uvchr)static void XS_XS__APItest__Magic_test_isALNUM_LC_uvchr( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9075 | XS_EUPXS(XS_XS__APItest__Magic_test_isALNUM_LC_uvchr)static void XS_XS__APItest__Magic_test_isALNUM_LC_uvchr( CV* cv __attribute__((unused))) |
| 9076 | { |
| 9077 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9078 | if (items != 1) |
| 9079 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9080 | { |
| 9081 | bool_Bool RETVAL; |
| 9082 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9083 | ; |
| 9084 | #line 5157 "APItest.xs" |
| 9085 | RETVAL = isALNUM_LC_uvchr(ord)(ord < 256 ? (! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (ord)] & (1U << (0))) ? (_Bool)1 : (_Bool)0) : (((isalnum( (U8) (ord)) || (char)(ord) == '_')) ? (_Bool)1 : (_Bool)0)) : Perl__is_uni_FOO( 0,ord)); |
| 9086 | #line 9087 "APItest.c" |
| 9087 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9088 | } |
| 9089 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9090 | } |
| 9091 | |
| 9092 | |
| 9093 | XS_EUPXS(XS_XS__APItest__Magic_test_isALNUM_LC)static void XS_XS__APItest__Magic_test_isALNUM_LC( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9094 | XS_EUPXS(XS_XS__APItest__Magic_test_isALNUM_LC)static void XS_XS__APItest__Magic_test_isALNUM_LC( CV* cv __attribute__ ((unused))) |
| 9095 | { |
| 9096 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9097 | if (items != 1) |
| 9098 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9099 | { |
| 9100 | bool_Bool RETVAL; |
| 9101 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9102 | ; |
| 9103 | #line 5164 "APItest.xs" |
| 9104 | RETVAL = isALNUM_LC(ord)(! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (ord)] & (1U << (0))) ? (_Bool)1 : (_Bool)0) : (((isalnum( (U8) (ord)) || (char)(ord) == '_')) ? (_Bool)1 : (_Bool)0)); |
| 9105 | #line 9106 "APItest.c" |
| 9106 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9107 | } |
| 9108 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9109 | } |
| 9110 | |
| 9111 | |
| 9112 | XS_EUPXS(XS_XS__APItest__Magic_test_isALNUM_utf8)static void XS_XS__APItest__Magic_test_isALNUM_utf8( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9113 | XS_EUPXS(XS_XS__APItest__Magic_test_isALNUM_utf8)static void XS_XS__APItest__Magic_test_isALNUM_utf8( CV* cv __attribute__ ((unused))) |
| 9114 | { |
| 9115 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9116 | if (items != 2) |
| 9117 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 9118 | { |
| 9119 | #line 5171 "APItest.xs" |
| 9120 | const U8 * e; |
| 9121 | #line 9122 "APItest.c" |
| 9122 | bool_Bool RETVAL; |
| 9123 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 9124 | ; |
| 9125 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 9126 | ; |
| 9127 | #line 5173 "APItest.xs" |
| 9128 | if (type >= 0) { |
| 9129 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 9130 | RETVAL = isWORDCHAR_utf8_safe(p, e)((! ((e) > (p))) ? (Perl__force_out_malformed_utf8_message ( (U8 *) (p),(U8 *) (e),0,1), 0) : (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? ( (( (sizeof(*(p)) == 1) || !(((U64)((*(p)) | 0)) & ~0xFF)) && (PL_charclass[(U8) (*(p))] & (1U << (0) ))) ? (_Bool)1 : (_Bool)0) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) (((((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) )) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7 ) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ( (U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | ((( 2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0)) ))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0))))))) - ((( (((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= ( ((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6 )) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect((( (e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0))) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6)) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? ((( (sizeof(( ( ((U8 ) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+ 1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6 ) | ((( ((U8) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) && (PL_charclass [(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8 ) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1)))) ) | 0)))))] & (1U << (0)))) ? (_Bool)1 : (_Bool)0) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) ( e),0,1), 0)) : Perl__is_utf8_FOO( 0,p,e))); |
| 9131 | } |
| 9132 | else { |
| 9133 | RETVAL = 0; |
| 9134 | } |
| 9135 | #line 9136 "APItest.c" |
| 9136 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9137 | } |
| 9138 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9139 | } |
| 9140 | |
| 9141 | |
| 9142 | XS_EUPXS(XS_XS__APItest__Magic_test_isALNUM_LC_utf8)static void XS_XS__APItest__Magic_test_isALNUM_LC_utf8( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9143 | XS_EUPXS(XS_XS__APItest__Magic_test_isALNUM_LC_utf8)static void XS_XS__APItest__Magic_test_isALNUM_LC_utf8( CV* cv __attribute__((unused))) |
| 9144 | { |
| 9145 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9146 | if (items != 2) |
| 9147 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 9148 | { |
| 9149 | #line 5186 "APItest.xs" |
| 9150 | const U8 * e; |
| 9151 | #line 9152 "APItest.c" |
| 9152 | bool_Bool RETVAL; |
| 9153 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 9154 | ; |
| 9155 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 9156 | ; |
| 9157 | #line 5188 "APItest.xs" |
| 9158 | if (type >= 0) { |
| 9159 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 9160 | RETVAL = isWORDCHAR_LC_utf8_safe(p, e)( (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? (! ( (sizeof(*(p)) == 1) || !(((U64)((* (p)) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (*(p))] & (1U << (0))) ? (_Bool)1 : (_Bool)0) : (((isalnum( (U8) (*(p))) || (char)(*(p)) == '_')) ? (_Bool )1 : (_Bool)0)) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof (U8)) ? ( (((U64) (((((U8) (( ((U8) ((*(p)) | 0))))))) - (((( ((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= ( ((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6 )) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) )) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7 ) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect((((e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0))) & ((U8) (0xFF << 6 ))) == (((U8) (0xFF << 6)) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? (! ( (sizeof(( ( ((U8) ((( ((( ( ((U8) ((* (p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2) -2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ( (U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p )+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8 ) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0)))))] & (1U << (0))) ? (_Bool)1 : (_Bool)0) : ( ((isalnum( (U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6 ) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0)))))) || (char)(( ( ((U8) ((( ((( ( ((U8) (( *(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2 )-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ( (U8) ((1U << 6) - 1))))) | 0))))) == '_')) ? (_Bool)1 : (_Bool)0)) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) (e),0,1), 0)) : Perl__is_utf8_FOO( 0,p,e))); |
| 9161 | } |
| 9162 | else { |
| 9163 | RETVAL = 0; |
| 9164 | } |
| 9165 | #line 9166 "APItest.c" |
| 9166 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9167 | } |
| 9168 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9169 | } |
| 9170 | |
| 9171 | |
| 9172 | XS_EUPXS(XS_XS__APItest__Magic_test_isDIGIT_uni)static void XS_XS__APItest__Magic_test_isDIGIT_uni( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9173 | XS_EUPXS(XS_XS__APItest__Magic_test_isDIGIT_uni)static void XS_XS__APItest__Magic_test_isDIGIT_uni( CV* cv __attribute__ ((unused))) |
| 9174 | { |
| 9175 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9176 | if (items != 1) |
| 9177 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9178 | { |
| 9179 | bool_Bool RETVAL; |
| 9180 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9181 | ; |
| 9182 | #line 5201 "APItest.xs" |
| 9183 | RETVAL = isDIGIT_uni(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (1)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_FOO( 1,ord)); |
| 9184 | #line 9185 "APItest.c" |
| 9185 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9186 | } |
| 9187 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9188 | } |
| 9189 | |
| 9190 | |
| 9191 | XS_EUPXS(XS_XS__APItest__Magic_test_isDIGIT_uvchr)static void XS_XS__APItest__Magic_test_isDIGIT_uvchr( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9192 | XS_EUPXS(XS_XS__APItest__Magic_test_isDIGIT_uvchr)static void XS_XS__APItest__Magic_test_isDIGIT_uvchr( CV* cv __attribute__ ((unused))) |
| 9193 | { |
| 9194 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9195 | if (items != 1) |
| 9196 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9197 | { |
| 9198 | bool_Bool RETVAL; |
| 9199 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9200 | ; |
| 9201 | #line 5208 "APItest.xs" |
| 9202 | RETVAL = isDIGIT_uvchr(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (1)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_FOO( 1,ord)); |
| 9203 | #line 9204 "APItest.c" |
| 9204 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9205 | } |
| 9206 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9207 | } |
| 9208 | |
| 9209 | |
| 9210 | XS_EUPXS(XS_XS__APItest__Magic_test_isDIGIT_LC_uvchr)static void XS_XS__APItest__Magic_test_isDIGIT_LC_uvchr( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9211 | XS_EUPXS(XS_XS__APItest__Magic_test_isDIGIT_LC_uvchr)static void XS_XS__APItest__Magic_test_isDIGIT_LC_uvchr( CV* cv __attribute__((unused))) |
| 9212 | { |
| 9213 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9214 | if (items != 1) |
| 9215 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9216 | { |
| 9217 | bool_Bool RETVAL; |
| 9218 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9219 | ; |
| 9220 | #line 5215 "APItest.xs" |
| 9221 | RETVAL = isDIGIT_LC_uvchr(ord)(ord < 256 ? (! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (ord)] & (1U << (1))) ? (_Bool)1 : (_Bool)0) : ((isdigit( (U8) (ord))) ? (_Bool)1 : (_Bool)0)) : Perl__is_uni_FOO ( 1,ord)); |
| 9222 | #line 9223 "APItest.c" |
| 9223 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9224 | } |
| 9225 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9226 | } |
| 9227 | |
| 9228 | |
| 9229 | XS_EUPXS(XS_XS__APItest__Magic_test_isDIGIT_utf8)static void XS_XS__APItest__Magic_test_isDIGIT_utf8( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9230 | XS_EUPXS(XS_XS__APItest__Magic_test_isDIGIT_utf8)static void XS_XS__APItest__Magic_test_isDIGIT_utf8( CV* cv __attribute__ ((unused))) |
| 9231 | { |
| 9232 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9233 | if (items != 2) |
| 9234 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 9235 | { |
| 9236 | #line 5222 "APItest.xs" |
| 9237 | const U8 * e; |
| 9238 | #line 9239 "APItest.c" |
| 9239 | bool_Bool RETVAL; |
| 9240 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 9241 | ; |
| 9242 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 9243 | ; |
| 9244 | #line 5224 "APItest.xs" |
| 9245 | if (type >= 0) { |
| 9246 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 9247 | RETVAL = isDIGIT_utf8_safe(p, e)( (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? ((( (sizeof(*(p)) == 1) || !(((U64)((*( p)) | 0)) & ~0xFF)) && (PL_charclass[(U8) (*(p))] & (1U << (1)))) ? (_Bool)1 : (_Bool)0) : (( ( ( (sizeof (( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) (((((U8) ( ( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | ((( 2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0)) ))) : (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( ((( U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) (((( ((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) ))) | 0))))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0)))) ))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0 ))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2))))))))) | 0)))))))))) ? 0 : Perl__is_utf8_FOO ( 1,p,e)); |
| 9248 | } |
| 9249 | else { |
| 9250 | RETVAL = 0; |
| 9251 | } |
| 9252 | #line 9253 "APItest.c" |
| 9253 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9254 | } |
| 9255 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9256 | } |
| 9257 | |
| 9258 | |
| 9259 | XS_EUPXS(XS_XS__APItest__Magic_test_isDIGIT_LC_utf8)static void XS_XS__APItest__Magic_test_isDIGIT_LC_utf8( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9260 | XS_EUPXS(XS_XS__APItest__Magic_test_isDIGIT_LC_utf8)static void XS_XS__APItest__Magic_test_isDIGIT_LC_utf8( CV* cv __attribute__((unused))) |
| 9261 | { |
| 9262 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9263 | if (items != 2) |
| 9264 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 9265 | { |
| 9266 | #line 5237 "APItest.xs" |
| 9267 | const U8 * e; |
| 9268 | #line 9269 "APItest.c" |
| 9269 | bool_Bool RETVAL; |
| 9270 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 9271 | ; |
| 9272 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 9273 | ; |
| 9274 | #line 5239 "APItest.xs" |
| 9275 | if (type >= 0) { |
| 9276 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 9277 | RETVAL = isDIGIT_LC_utf8_safe(p, e)( (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? (! ( (sizeof(*(p)) == 1) || !(((U64)((* (p)) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (*(p))] & (1U << (1))) ? (_Bool)1 : (_Bool)0) : ((isdigit( (U8) (*(p)))) ? (_Bool)1 : (_Bool)0)) : (( ( ( ( sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) ((( ((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) (( ((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) ))) | 0))))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0)))) ))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0 ))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect ((((e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0)) ) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6) ) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? (! ( (sizeof (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7 ) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2)))) ) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ( (1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0 ))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0)))))] & (1U << (1))) ? (_Bool)1 : ( _Bool)0) : ((isdigit( (U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2)) ))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))))) ? (_Bool)1 : (_Bool)0)) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) (e),0,1), 0)) : Perl__is_utf8_FOO( 1,p,e))); |
| 9278 | } |
| 9279 | else { |
| 9280 | RETVAL = 0; |
| 9281 | } |
| 9282 | #line 9283 "APItest.c" |
| 9283 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9284 | } |
| 9285 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9286 | } |
| 9287 | |
| 9288 | |
| 9289 | XS_EUPXS(XS_XS__APItest__Magic_test_isDIGIT)static void XS_XS__APItest__Magic_test_isDIGIT( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9290 | XS_EUPXS(XS_XS__APItest__Magic_test_isDIGIT)static void XS_XS__APItest__Magic_test_isDIGIT( CV* cv __attribute__ ((unused))) |
| 9291 | { |
| 9292 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9293 | if (items != 1) |
| 9294 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9295 | { |
| 9296 | bool_Bool RETVAL; |
| 9297 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9298 | ; |
| 9299 | #line 5252 "APItest.xs" |
| 9300 | RETVAL = isDIGIT(ord)( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord)))) - ((('0')) | 0))) <= (((U64) (((('9') - ('0'))) | 0))))) : (sizeof(ord) == sizeof(U32)) ? ( (((U64) (((((U32) (ord)))) - ((('0')) | 0))) <= (((U64) (((('9') - ('0'))) | 0))))) : ( ( (((U64) (((((U64) (ord)))) - ((('0')) | 0))) <= (((U64) (((('9') - ('0'))) | 0)))))))); |
| 9301 | #line 9302 "APItest.c" |
| 9302 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9303 | } |
| 9304 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9305 | } |
| 9306 | |
| 9307 | |
| 9308 | XS_EUPXS(XS_XS__APItest__Magic_test_isDIGIT_A)static void XS_XS__APItest__Magic_test_isDIGIT_A( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9309 | XS_EUPXS(XS_XS__APItest__Magic_test_isDIGIT_A)static void XS_XS__APItest__Magic_test_isDIGIT_A( CV* cv __attribute__ ((unused))) |
| 9310 | { |
| 9311 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9312 | if (items != 1) |
| 9313 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9314 | { |
| 9315 | bool_Bool RETVAL; |
| 9316 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9317 | ; |
| 9318 | #line 5259 "APItest.xs" |
| 9319 | RETVAL = isDIGIT_A(ord)( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord)))) - ((('0')) | 0))) <= (((U64) (((('9') - ('0'))) | 0))))) : (sizeof(ord) == sizeof(U32)) ? ( (((U64) (((((U32) (ord)))) - ((('0')) | 0))) <= (((U64) (((('9') - ('0'))) | 0))))) : ( ( (((U64) (((((U64) (ord)))) - ((('0')) | 0))) <= (((U64) (((('9') - ('0'))) | 0)))))))); |
| 9320 | #line 9321 "APItest.c" |
| 9321 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9322 | } |
| 9323 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9324 | } |
| 9325 | |
| 9326 | |
| 9327 | XS_EUPXS(XS_XS__APItest__Magic_test_isDIGIT_L1)static void XS_XS__APItest__Magic_test_isDIGIT_L1( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9328 | XS_EUPXS(XS_XS__APItest__Magic_test_isDIGIT_L1)static void XS_XS__APItest__Magic_test_isDIGIT_L1( CV* cv __attribute__ ((unused))) |
| 9329 | { |
| 9330 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9331 | if (items != 1) |
| 9332 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9333 | { |
| 9334 | bool_Bool RETVAL; |
| 9335 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9336 | ; |
| 9337 | #line 5266 "APItest.xs" |
| 9338 | RETVAL = isDIGIT_L1(ord)( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord)))) - ((('0')) | 0))) <= (((U64) (((('9') - ('0'))) | 0))))) : (sizeof(ord) == sizeof(U32)) ? ( (((U64) (((((U32) (ord)))) - ((('0')) | 0))) <= (((U64) (((('9') - ('0'))) | 0))))) : ( ( (((U64) (((((U64) (ord)))) - ((('0')) | 0))) <= (((U64) (((('9') - ('0'))) | 0)))))))); |
| 9339 | #line 9340 "APItest.c" |
| 9340 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9341 | } |
| 9342 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9343 | } |
| 9344 | |
| 9345 | |
| 9346 | XS_EUPXS(XS_XS__APItest__Magic_test_isDIGIT_LC)static void XS_XS__APItest__Magic_test_isDIGIT_LC( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9347 | XS_EUPXS(XS_XS__APItest__Magic_test_isDIGIT_LC)static void XS_XS__APItest__Magic_test_isDIGIT_LC( CV* cv __attribute__ ((unused))) |
| 9348 | { |
| 9349 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9350 | if (items != 1) |
| 9351 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9352 | { |
| 9353 | bool_Bool RETVAL; |
| 9354 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9355 | ; |
| 9356 | #line 5273 "APItest.xs" |
| 9357 | RETVAL = isDIGIT_LC(ord)(! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (ord)] & (1U << (1))) ? (_Bool)1 : (_Bool)0) : ((isdigit( (U8) ( ord))) ? (_Bool)1 : (_Bool)0)); |
| 9358 | #line 9359 "APItest.c" |
| 9359 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9360 | } |
| 9361 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9362 | } |
| 9363 | |
| 9364 | |
| 9365 | XS_EUPXS(XS_XS__APItest__Magic_test_isOCTAL)static void XS_XS__APItest__Magic_test_isOCTAL( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9366 | XS_EUPXS(XS_XS__APItest__Magic_test_isOCTAL)static void XS_XS__APItest__Magic_test_isOCTAL( CV* cv __attribute__ ((unused))) |
| 9367 | { |
| 9368 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9369 | if (items != 1) |
| 9370 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9371 | { |
| 9372 | bool_Bool RETVAL; |
| 9373 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9374 | ; |
| 9375 | #line 5280 "APItest.xs" |
| 9376 | RETVAL = isOCTAL(ord)(((U64)((ord) | 0) & ~7) == '0'); |
| 9377 | #line 9378 "APItest.c" |
| 9378 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9379 | } |
| 9380 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9381 | } |
| 9382 | |
| 9383 | |
| 9384 | XS_EUPXS(XS_XS__APItest__Magic_test_isOCTAL_A)static void XS_XS__APItest__Magic_test_isOCTAL_A( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9385 | XS_EUPXS(XS_XS__APItest__Magic_test_isOCTAL_A)static void XS_XS__APItest__Magic_test_isOCTAL_A( CV* cv __attribute__ ((unused))) |
| 9386 | { |
| 9387 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9388 | if (items != 1) |
| 9389 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9390 | { |
| 9391 | bool_Bool RETVAL; |
| 9392 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9393 | ; |
| 9394 | #line 5287 "APItest.xs" |
| 9395 | RETVAL = isOCTAL_A(ord)(((U64)((ord) | 0) & ~7) == '0'); |
| 9396 | #line 9397 "APItest.c" |
| 9397 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9398 | } |
| 9399 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9400 | } |
| 9401 | |
| 9402 | |
| 9403 | XS_EUPXS(XS_XS__APItest__Magic_test_isOCTAL_L1)static void XS_XS__APItest__Magic_test_isOCTAL_L1( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9404 | XS_EUPXS(XS_XS__APItest__Magic_test_isOCTAL_L1)static void XS_XS__APItest__Magic_test_isOCTAL_L1( CV* cv __attribute__ ((unused))) |
| 9405 | { |
| 9406 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9407 | if (items != 1) |
| 9408 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9409 | { |
| 9410 | bool_Bool RETVAL; |
| 9411 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9412 | ; |
| 9413 | #line 5294 "APItest.xs" |
| 9414 | RETVAL = isOCTAL_L1(ord)(((U64)((ord) | 0) & ~7) == '0'); |
| 9415 | #line 9416 "APItest.c" |
| 9416 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9417 | } |
| 9418 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9419 | } |
| 9420 | |
| 9421 | |
| 9422 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDFIRST_uni)static void XS_XS__APItest__Magic_test_isIDFIRST_uni( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9423 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDFIRST_uni)static void XS_XS__APItest__Magic_test_isIDFIRST_uni( CV* cv __attribute__ ((unused))) |
| 9424 | { |
| 9425 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9426 | if (items != 1) |
| 9427 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9428 | { |
| 9429 | bool_Bool RETVAL; |
| 9430 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9431 | ; |
| 9432 | #line 5301 "APItest.xs" |
| 9433 | RETVAL = isIDFIRST_uni(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (16)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_perl_idstart ( ord)); |
| 9434 | #line 9435 "APItest.c" |
| 9435 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9436 | } |
| 9437 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9438 | } |
| 9439 | |
| 9440 | |
| 9441 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDFIRST_uvchr)static void XS_XS__APItest__Magic_test_isIDFIRST_uvchr( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9442 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDFIRST_uvchr)static void XS_XS__APItest__Magic_test_isIDFIRST_uvchr( CV* cv __attribute__((unused))) |
| 9443 | { |
| 9444 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9445 | if (items != 1) |
| 9446 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9447 | { |
| 9448 | bool_Bool RETVAL; |
| 9449 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9450 | ; |
| 9451 | #line 5308 "APItest.xs" |
| 9452 | RETVAL = isIDFIRST_uvchr(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (16)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_perl_idstart ( ord)); |
| 9453 | #line 9454 "APItest.c" |
| 9454 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9455 | } |
| 9456 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9457 | } |
| 9458 | |
| 9459 | |
| 9460 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDFIRST_LC_uvchr)static void XS_XS__APItest__Magic_test_isIDFIRST_LC_uvchr( CV * cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9461 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDFIRST_LC_uvchr)static void XS_XS__APItest__Magic_test_isIDFIRST_LC_uvchr( CV * cv __attribute__((unused))) |
| 9462 | { |
| 9463 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9464 | if (items != 1) |
| 9465 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9466 | { |
| 9467 | bool_Bool RETVAL; |
| 9468 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9469 | ; |
| 9470 | #line 5315 "APItest.xs" |
| 9471 | RETVAL = isIDFIRST_LC_uvchr(ord)(ord < 256 ? (! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (ord)] & (1U << (16))) ? (_Bool)1 : (_Bool)0) : (((isalpha( (U8) (ord)) || (char)(ord) == '_')) ? (_Bool)1 : (_Bool)0)) : Perl__is_uni_perl_idstart( ord)); |
| 9472 | #line 9473 "APItest.c" |
| 9473 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9474 | } |
| 9475 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9476 | } |
| 9477 | |
| 9478 | |
| 9479 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDFIRST)static void XS_XS__APItest__Magic_test_isIDFIRST( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9480 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDFIRST)static void XS_XS__APItest__Magic_test_isIDFIRST( CV* cv __attribute__ ((unused))) |
| 9481 | { |
| 9482 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9483 | if (items != 1) |
| 9484 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9485 | { |
| 9486 | bool_Bool RETVAL; |
| 9487 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9488 | ; |
| 9489 | #line 5322 "APItest.xs" |
| 9490 | RETVAL = isIDFIRST(ord)(( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && ((PL_charclass[(U8) (ord)] & ((1U << (16)) | (1U << (14)))) == ((1U << (16)) | (1U << (14))))); |
| 9491 | #line 9492 "APItest.c" |
| 9492 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9493 | } |
| 9494 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9495 | } |
| 9496 | |
| 9497 | |
| 9498 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDFIRST_A)static void XS_XS__APItest__Magic_test_isIDFIRST_A( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9499 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDFIRST_A)static void XS_XS__APItest__Magic_test_isIDFIRST_A( CV* cv __attribute__ ((unused))) |
| 9500 | { |
| 9501 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9502 | if (items != 1) |
| 9503 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9504 | { |
| 9505 | bool_Bool RETVAL; |
| 9506 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9507 | ; |
| 9508 | #line 5329 "APItest.xs" |
| 9509 | RETVAL = isIDFIRST_A(ord)(( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && ((PL_charclass[(U8) (ord)] & ((1U << (16)) | (1U << (14)))) == ((1U << (16)) | (1U << (14))))); |
| 9510 | #line 9511 "APItest.c" |
| 9511 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9512 | } |
| 9513 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9514 | } |
| 9515 | |
| 9516 | |
| 9517 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDFIRST_L1)static void XS_XS__APItest__Magic_test_isIDFIRST_L1( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9518 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDFIRST_L1)static void XS_XS__APItest__Magic_test_isIDFIRST_L1( CV* cv __attribute__ ((unused))) |
| 9519 | { |
| 9520 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9521 | if (items != 1) |
| 9522 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9523 | { |
| 9524 | bool_Bool RETVAL; |
| 9525 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9526 | ; |
| 9527 | #line 5336 "APItest.xs" |
| 9528 | RETVAL = isIDFIRST_L1(ord)((( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && (PL_charclass[(U8) (ord)] & (1U << (16)))) ? (_Bool )1 : (_Bool)0); |
| 9529 | #line 9530 "APItest.c" |
| 9530 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9531 | } |
| 9532 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9533 | } |
| 9534 | |
| 9535 | |
| 9536 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDFIRST_LC)static void XS_XS__APItest__Magic_test_isIDFIRST_LC( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9537 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDFIRST_LC)static void XS_XS__APItest__Magic_test_isIDFIRST_LC( CV* cv __attribute__ ((unused))) |
| 9538 | { |
| 9539 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9540 | if (items != 1) |
| 9541 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9542 | { |
| 9543 | bool_Bool RETVAL; |
| 9544 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9545 | ; |
| 9546 | #line 5343 "APItest.xs" |
| 9547 | RETVAL = isIDFIRST_LC(ord)(! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (ord)] & (1U << (16))) ? (_Bool)1 : (_Bool)0) : (((isalpha( (U8 ) (ord)) || (char)(ord) == '_')) ? (_Bool)1 : (_Bool)0)); |
| 9548 | #line 9549 "APItest.c" |
| 9549 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9550 | } |
| 9551 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9552 | } |
| 9553 | |
| 9554 | |
| 9555 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDFIRST_utf8)static void XS_XS__APItest__Magic_test_isIDFIRST_utf8( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9556 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDFIRST_utf8)static void XS_XS__APItest__Magic_test_isIDFIRST_utf8( CV* cv __attribute__((unused))) |
| 9557 | { |
| 9558 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9559 | if (items != 2) |
| 9560 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 9561 | { |
| 9562 | #line 5350 "APItest.xs" |
| 9563 | const U8 * e; |
| 9564 | #line 9565 "APItest.c" |
| 9565 | bool_Bool RETVAL; |
| 9566 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 9567 | ; |
| 9568 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 9569 | ; |
| 9570 | #line 5352 "APItest.xs" |
| 9571 | if (type >= 0) { |
| 9572 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 9573 | RETVAL = isIDFIRST_utf8_safe(p, e)((! (((U8 *) (e)) > ((U8 *) (p)))) ? (Perl__force_out_malformed_utf8_message ( (U8 *) ((U8 *) (p)),(U8 *) ((U8 *) (e)),0,1), 0) : (((((U64 )(((UV) (((*((U8 *) (p))) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? ((( (sizeof(*((U8 *) (p))) == 1) || !(( (U64)((*((U8 *) (p))) | 0)) & ~0xFF)) && (PL_charclass [(U8) (*((U8 *) (p)))] & (1U << (16)))) ? (_Bool)1 : (_Bool)0) : (( ( ( (sizeof(( ((U8) ((*((U8 *) (p))) | 0)))) == sizeof(U8)) ? ( (((U64) (((((U8) (( ((U8) ((*((U8 *) (p))) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) )) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7 ) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ( (U8) ((*((U8 *) (p))) | 0)))) == sizeof(U32)) ? ( (((U64) ((( ((U32) (( ((U8) ((*((U8 *) (p))) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) (((( ((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) ))) | 0))))) : ( ( (((U64) (((((U64) (( ((U8) ((*((U8 *) (p)) ) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) )) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7 ) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect (((((U8 *) (e)) - ((U8 *) (p)) > 1 && ( (((( ((U8) ((*(((U8 *) (p))+1)) | 0))) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6)) & 0xB0))))) ? (_Bool)1 : (_Bool )0),(1))) ? ((( (sizeof(( ( ((U8) ((( ((( ( ((U8) ((*((U8 *) ( p))) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2) -2))))) << 6) | ((( ((U8) (((*(((U8 *) (p))+1 ))) | 0)) )) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !( ((U64)((( ( ((U8) ((( ((( ( ((U8) ((*((U8 *) (p))) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6 ) | ((( ((U8) (((*(((U8 *) (p))+1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) && (PL_charclass[(U8) (( ( ((U8) ((( ((( ( ((U8) ((*((U8 *) (p) )) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2 ))))) << 6) | ((( ((U8) (((*(((U8 *) (p))+1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0)))))] & (1U << (16)))) ? (_Bool)1 : (_Bool)0) : (Perl__force_out_malformed_utf8_message ( (U8 *) ((U8 *) (p)),(U8 *) ((U8 *) (e)),0,1), 0)) : Perl__is_utf8_perl_idstart ( (U8 *) (p),(U8 *) (e)))); |
| 9574 | } |
| 9575 | else { |
| 9576 | RETVAL = 0; |
| 9577 | } |
| 9578 | #line 9579 "APItest.c" |
| 9579 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9580 | } |
| 9581 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9582 | } |
| 9583 | |
| 9584 | |
| 9585 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDFIRST_LC_utf8)static void XS_XS__APItest__Magic_test_isIDFIRST_LC_utf8( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9586 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDFIRST_LC_utf8)static void XS_XS__APItest__Magic_test_isIDFIRST_LC_utf8( CV* cv __attribute__((unused))) |
| 9587 | { |
| 9588 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9589 | if (items != 2) |
| 9590 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 9591 | { |
| 9592 | #line 5365 "APItest.xs" |
| 9593 | const U8 * e; |
| 9594 | #line 9595 "APItest.c" |
| 9595 | bool_Bool RETVAL; |
| 9596 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 9597 | ; |
| 9598 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 9599 | ; |
| 9600 | #line 5367 "APItest.xs" |
| 9601 | if (type >= 0) { |
| 9602 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 9603 | RETVAL = isIDFIRST_LC_utf8_safe(p, e)( (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? (! ( (sizeof(*(p)) == 1) || !(((U64)((* (p)) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (*(p))] & (1U << (16))) ? (_Bool)1 : (_Bool)0 ) : (((isalpha( (U8) (*(p))) || (char)(*(p)) == '_')) ? (_Bool )1 : (_Bool)0)) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof (U8)) ? ( (((U64) (((((U8) (( ((U8) ((*(p)) | 0))))))) - (((( ((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= ( ((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6 )) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) )) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7 ) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect((((e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0))) & ((U8) (0xFF << 6 ))) == (((U8) (0xFF << 6)) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? (! ( (sizeof(( ( ((U8) ((( ((( ( ((U8) ((* (p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2) -2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ( (U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p )+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8 ) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0)))))] & (1U << (16))) ? (_Bool)1 : (_Bool)0) : (((isalpha( (U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6 ) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0)))))) || (char)(( ( ((U8) ((( ((( ( ((U8) (( *(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2 )-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ( (U8) ((1U << 6) - 1))))) | 0))))) == '_')) ? (_Bool)1 : (_Bool)0)) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) (e),0,1), 0)) : Perl__is_utf8_perl_idstart( p,e)) ); |
| 9604 | } |
| 9605 | else { |
| 9606 | RETVAL = 0; |
| 9607 | } |
| 9608 | #line 9609 "APItest.c" |
| 9609 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9610 | } |
| 9611 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9612 | } |
| 9613 | |
| 9614 | |
| 9615 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDCONT_uni)static void XS_XS__APItest__Magic_test_isIDCONT_uni( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9616 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDCONT_uni)static void XS_XS__APItest__Magic_test_isIDCONT_uni( CV* cv __attribute__ ((unused))) |
| 9617 | { |
| 9618 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9619 | if (items != 1) |
| 9620 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9621 | { |
| 9622 | bool_Bool RETVAL; |
| 9623 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9624 | ; |
| 9625 | #line 5380 "APItest.xs" |
| 9626 | RETVAL = isIDCONT_uni(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (0)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_perl_idcont ( ord)); |
| 9627 | #line 9628 "APItest.c" |
| 9628 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9629 | } |
| 9630 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9631 | } |
| 9632 | |
| 9633 | |
| 9634 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDCONT_uvchr)static void XS_XS__APItest__Magic_test_isIDCONT_uvchr( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9635 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDCONT_uvchr)static void XS_XS__APItest__Magic_test_isIDCONT_uvchr( CV* cv __attribute__((unused))) |
| 9636 | { |
| 9637 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9638 | if (items != 1) |
| 9639 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9640 | { |
| 9641 | bool_Bool RETVAL; |
| 9642 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9643 | ; |
| 9644 | #line 5387 "APItest.xs" |
| 9645 | RETVAL = isIDCONT_uvchr(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (0)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_perl_idcont ( ord)); |
| 9646 | #line 9647 "APItest.c" |
| 9647 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9648 | } |
| 9649 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9650 | } |
| 9651 | |
| 9652 | |
| 9653 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDCONT_LC_uvchr)static void XS_XS__APItest__Magic_test_isIDCONT_LC_uvchr( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9654 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDCONT_LC_uvchr)static void XS_XS__APItest__Magic_test_isIDCONT_LC_uvchr( CV* cv __attribute__((unused))) |
| 9655 | { |
| 9656 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9657 | if (items != 1) |
| 9658 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9659 | { |
| 9660 | bool_Bool RETVAL; |
| 9661 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9662 | ; |
| 9663 | #line 5394 "APItest.xs" |
| 9664 | RETVAL = isIDCONT_LC_uvchr(ord)(ord < 256 ? (! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (ord)] & (1U << (0))) ? (_Bool)1 : (_Bool)0) : (((isalnum( (U8) (ord)) || (char)(ord) == '_')) ? (_Bool)1 : (_Bool)0)) : Perl__is_uni_perl_idcont( ord)); |
| 9665 | #line 9666 "APItest.c" |
| 9666 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9667 | } |
| 9668 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9669 | } |
| 9670 | |
| 9671 | |
| 9672 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDCONT)static void XS_XS__APItest__Magic_test_isIDCONT( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9673 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDCONT)static void XS_XS__APItest__Magic_test_isIDCONT( CV* cv __attribute__ ((unused))) |
| 9674 | { |
| 9675 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9676 | if (items != 1) |
| 9677 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9678 | { |
| 9679 | bool_Bool RETVAL; |
| 9680 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9681 | ; |
| 9682 | #line 5401 "APItest.xs" |
| 9683 | RETVAL = isIDCONT(ord)(( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && ((PL_charclass[(U8) (ord)] & ((1U << (0)) | (1U << (14)))) == ((1U << (0)) | (1U << (14))))); |
| 9684 | #line 9685 "APItest.c" |
| 9685 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9686 | } |
| 9687 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9688 | } |
| 9689 | |
| 9690 | |
| 9691 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDCONT_A)static void XS_XS__APItest__Magic_test_isIDCONT_A( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9692 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDCONT_A)static void XS_XS__APItest__Magic_test_isIDCONT_A( CV* cv __attribute__ ((unused))) |
| 9693 | { |
| 9694 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9695 | if (items != 1) |
| 9696 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9697 | { |
| 9698 | bool_Bool RETVAL; |
| 9699 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9700 | ; |
| 9701 | #line 5408 "APItest.xs" |
| 9702 | RETVAL = isIDCONT_A(ord)(( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && ((PL_charclass[(U8) (ord)] & ((1U << (0)) | (1U << (14)))) == ((1U << (0)) | (1U << (14))))); |
| 9703 | #line 9704 "APItest.c" |
| 9704 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9705 | } |
| 9706 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9707 | } |
| 9708 | |
| 9709 | |
| 9710 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDCONT_L1)static void XS_XS__APItest__Magic_test_isIDCONT_L1( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9711 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDCONT_L1)static void XS_XS__APItest__Magic_test_isIDCONT_L1( CV* cv __attribute__ ((unused))) |
| 9712 | { |
| 9713 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9714 | if (items != 1) |
| 9715 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9716 | { |
| 9717 | bool_Bool RETVAL; |
| 9718 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9719 | ; |
| 9720 | #line 5415 "APItest.xs" |
| 9721 | RETVAL = isIDCONT_L1(ord)((( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && (PL_charclass[(U8) (ord)] & (1U << (0)))) ? (_Bool )1 : (_Bool)0); |
| 9722 | #line 9723 "APItest.c" |
| 9723 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9724 | } |
| 9725 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9726 | } |
| 9727 | |
| 9728 | |
| 9729 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDCONT_LC)static void XS_XS__APItest__Magic_test_isIDCONT_LC( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9730 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDCONT_LC)static void XS_XS__APItest__Magic_test_isIDCONT_LC( CV* cv __attribute__ ((unused))) |
| 9731 | { |
| 9732 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9733 | if (items != 1) |
| 9734 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9735 | { |
| 9736 | bool_Bool RETVAL; |
| 9737 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9738 | ; |
| 9739 | #line 5422 "APItest.xs" |
| 9740 | RETVAL = isIDCONT_LC(ord)(! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (ord)] & (1U << (0))) ? (_Bool)1 : (_Bool)0) : (((isalnum( (U8) (ord)) || (char)(ord) == '_')) ? (_Bool)1 : (_Bool)0)); |
| 9741 | #line 9742 "APItest.c" |
| 9742 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9743 | } |
| 9744 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9745 | } |
| 9746 | |
| 9747 | |
| 9748 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDCONT_utf8)static void XS_XS__APItest__Magic_test_isIDCONT_utf8( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9749 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDCONT_utf8)static void XS_XS__APItest__Magic_test_isIDCONT_utf8( CV* cv __attribute__ ((unused))) |
| 9750 | { |
| 9751 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9752 | if (items != 2) |
| 9753 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 9754 | { |
| 9755 | #line 5429 "APItest.xs" |
| 9756 | const U8 * e; |
| 9757 | #line 9758 "APItest.c" |
| 9758 | bool_Bool RETVAL; |
| 9759 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 9760 | ; |
| 9761 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 9762 | ; |
| 9763 | #line 5431 "APItest.xs" |
| 9764 | if (type >= 0) { |
| 9765 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 9766 | RETVAL = isIDCONT_utf8_safe(p, e)((! ((e) > (p))) ? (Perl__force_out_malformed_utf8_message ( (U8 *) (p),(U8 *) (e),0,1), 0) : (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? ( (( (sizeof(*(p)) == 1) || !(((U64)((*(p)) | 0)) & ~0xFF)) && (PL_charclass[(U8) (*(p))] & (1U << (0) ))) ? (_Bool)1 : (_Bool)0) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) (((((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) )) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7 ) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ( (U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | ((( 2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0)) ))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0))))))) - ((( (((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= ( ((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6 )) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect((( (e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0))) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6)) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? ((( (sizeof(( ( ((U8 ) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+ 1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6 ) | ((( ((U8) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) && (PL_charclass [(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8 ) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1)))) ) | 0)))))] & (1U << (0)))) ? (_Bool)1 : (_Bool)0) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) ( e),0,1), 0)) : Perl__is_utf8_perl_idcont( p,e))); |
| 9767 | } |
| 9768 | else { |
| 9769 | RETVAL = 0; |
| 9770 | } |
| 9771 | #line 9772 "APItest.c" |
| 9772 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9773 | } |
| 9774 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9775 | } |
| 9776 | |
| 9777 | |
| 9778 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDCONT_LC_utf8)static void XS_XS__APItest__Magic_test_isIDCONT_LC_utf8( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9779 | XS_EUPXS(XS_XS__APItest__Magic_test_isIDCONT_LC_utf8)static void XS_XS__APItest__Magic_test_isIDCONT_LC_utf8( CV* cv __attribute__((unused))) |
| 9780 | { |
| 9781 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9782 | if (items != 2) |
| 9783 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 9784 | { |
| 9785 | #line 5444 "APItest.xs" |
| 9786 | const U8 * e; |
| 9787 | #line 9788 "APItest.c" |
| 9788 | bool_Bool RETVAL; |
| 9789 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 9790 | ; |
| 9791 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 9792 | ; |
| 9793 | #line 5446 "APItest.xs" |
| 9794 | if (type >= 0) { |
| 9795 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 9796 | RETVAL = isIDCONT_LC_utf8_safe(p, e)( (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? (! ( (sizeof(*(p)) == 1) || !(((U64)((* (p)) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (*(p))] & (1U << (0))) ? (_Bool)1 : (_Bool)0) : (((isalnum( (U8) (*(p))) || (char)(*(p)) == '_')) ? (_Bool )1 : (_Bool)0)) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof (U8)) ? ( (((U64) (((((U8) (( ((U8) ((*(p)) | 0))))))) - (((( ((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= ( ((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6 )) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) )) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7 ) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect((((e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0))) & ((U8) (0xFF << 6 ))) == (((U8) (0xFF << 6)) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? (! ( (sizeof(( ( ((U8) ((( ((( ( ((U8) ((* (p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2) -2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ( (U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p )+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8 ) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0)))))] & (1U << (0))) ? (_Bool)1 : (_Bool)0) : ( ((isalnum( (U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6 ) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0)))))) || (char)(( ( ((U8) ((( ((( ( ((U8) (( *(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2 )-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ( (U8) ((1U << 6) - 1))))) | 0))))) == '_')) ? (_Bool)1 : (_Bool)0)) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) (e),0,1), 0)) : Perl__is_utf8_perl_idcont( p,e))); |
| 9797 | } |
| 9798 | else { |
| 9799 | RETVAL = 0; |
| 9800 | } |
| 9801 | #line 9802 "APItest.c" |
| 9802 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9803 | } |
| 9804 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9805 | } |
| 9806 | |
| 9807 | |
| 9808 | XS_EUPXS(XS_XS__APItest__Magic_test_isSPACE_uni)static void XS_XS__APItest__Magic_test_isSPACE_uni( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9809 | XS_EUPXS(XS_XS__APItest__Magic_test_isSPACE_uni)static void XS_XS__APItest__Magic_test_isSPACE_uni( CV* cv __attribute__ ((unused))) |
| 9810 | { |
| 9811 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9812 | if (items != 1) |
| 9813 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9814 | { |
| 9815 | bool_Bool RETVAL; |
| 9816 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9817 | ; |
| 9818 | #line 5459 "APItest.xs" |
| 9819 | RETVAL = isSPACE_uni(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (10)))) ? (_Bool)1 : (_Bool)0) : ( 0x1680 == ord || ( 0x1680 < ord && ( ( ( (sizeof(ord) == sizeof(U8 )) ? ( (((U64) (((((U8) (ord)))) - (((0x2000)) | 0))) <= ( ((U64) ((((0x200A) - (0x2000))) | 0))))) : (sizeof(ord) == sizeof (U32)) ? ( (((U64) (((((U32) (ord)))) - (((0x2000)) | 0))) <= (((U64) ((((0x200A) - (0x2000))) | 0))))) : ( ( (((U64) (((( (U64) (ord)))) - (((0x2000)) | 0))) <= (((U64) ((((0x200A) - (0x2000))) | 0)))))))) || ( 0x200A < ord && ( 0x2028 == ord || ( 0x2028 < ord && ( 0x2029 == ord || ( 0x2029 < ord && ( 0x202F == ord || ( 0x202F < ord && ( 0x205F == ord || 0x3000 == ord ) ) ) ) ) ) ) ) ) ) )); |
| 9820 | #line 9821 "APItest.c" |
| 9821 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9822 | } |
| 9823 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9824 | } |
| 9825 | |
| 9826 | |
| 9827 | XS_EUPXS(XS_XS__APItest__Magic_test_isSPACE_uvchr)static void XS_XS__APItest__Magic_test_isSPACE_uvchr( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9828 | XS_EUPXS(XS_XS__APItest__Magic_test_isSPACE_uvchr)static void XS_XS__APItest__Magic_test_isSPACE_uvchr( CV* cv __attribute__ ((unused))) |
| 9829 | { |
| 9830 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9831 | if (items != 1) |
| 9832 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9833 | { |
| 9834 | bool_Bool RETVAL; |
| 9835 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9836 | ; |
| 9837 | #line 5466 "APItest.xs" |
| 9838 | RETVAL = isSPACE_uvchr(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (10)))) ? (_Bool)1 : (_Bool)0) : ( 0x1680 == ord || ( 0x1680 < ord && ( ( ( (sizeof(ord) == sizeof(U8 )) ? ( (((U64) (((((U8) (ord)))) - (((0x2000)) | 0))) <= ( ((U64) ((((0x200A) - (0x2000))) | 0))))) : (sizeof(ord) == sizeof (U32)) ? ( (((U64) (((((U32) (ord)))) - (((0x2000)) | 0))) <= (((U64) ((((0x200A) - (0x2000))) | 0))))) : ( ( (((U64) (((( (U64) (ord)))) - (((0x2000)) | 0))) <= (((U64) ((((0x200A) - (0x2000))) | 0)))))))) || ( 0x200A < ord && ( 0x2028 == ord || ( 0x2028 < ord && ( 0x2029 == ord || ( 0x2029 < ord && ( 0x202F == ord || ( 0x202F < ord && ( 0x205F == ord || 0x3000 == ord ) ) ) ) ) ) ) ) ) ) )); |
| 9839 | #line 9840 "APItest.c" |
| 9840 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9841 | } |
| 9842 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9843 | } |
| 9844 | |
| 9845 | |
| 9846 | XS_EUPXS(XS_XS__APItest__Magic_test_isSPACE_LC_uvchr)static void XS_XS__APItest__Magic_test_isSPACE_LC_uvchr( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9847 | XS_EUPXS(XS_XS__APItest__Magic_test_isSPACE_LC_uvchr)static void XS_XS__APItest__Magic_test_isSPACE_LC_uvchr( CV* cv __attribute__((unused))) |
| 9848 | { |
| 9849 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9850 | if (items != 1) |
| 9851 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9852 | { |
| 9853 | bool_Bool RETVAL; |
| 9854 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9855 | ; |
| 9856 | #line 5473 "APItest.xs" |
| 9857 | RETVAL = isSPACE_LC_uvchr(ord)(ord < 256 ? (! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (ord)] & (1U << (10))) ? (_Bool)1 : (_Bool)0) : ((isspace( (U8) (ord))) ? (_Bool)1 : (_Bool)0)) : ( 0x1680 == ord || ( 0x1680 < ord && ( ( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord)))) - (((0x2000)) | 0) )) <= (((U64) ((((0x200A) - (0x2000))) | 0))))) : (sizeof( ord) == sizeof(U32)) ? ( (((U64) (((((U32) (ord)))) - (((0x2000 )) | 0))) <= (((U64) ((((0x200A) - (0x2000))) | 0))))) : ( ( (((U64) (((((U64) (ord)))) - (((0x2000)) | 0))) <= (((U64 ) ((((0x200A) - (0x2000))) | 0)))))))) || ( 0x200A < ord && ( 0x2028 == ord || ( 0x2028 < ord && ( 0x2029 == ord || ( 0x2029 < ord && ( 0x202F == ord || ( 0x202F < ord && ( 0x205F == ord || 0x3000 == ord ) ) ) ) ) ) ) ) ) ) )); |
| 9858 | #line 9859 "APItest.c" |
| 9859 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9860 | } |
| 9861 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9862 | } |
| 9863 | |
| 9864 | |
| 9865 | XS_EUPXS(XS_XS__APItest__Magic_test_isSPACE)static void XS_XS__APItest__Magic_test_isSPACE( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9866 | XS_EUPXS(XS_XS__APItest__Magic_test_isSPACE)static void XS_XS__APItest__Magic_test_isSPACE( CV* cv __attribute__ ((unused))) |
| 9867 | { |
| 9868 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9869 | if (items != 1) |
| 9870 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9871 | { |
| 9872 | bool_Bool RETVAL; |
| 9873 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9874 | ; |
| 9875 | #line 5480 "APItest.xs" |
| 9876 | RETVAL = isSPACE(ord)(( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && ((PL_charclass[(U8) (ord)] & ((1U << (10)) | (1U << (14)))) == ((1U << (10)) | (1U << (14))))); |
| 9877 | #line 9878 "APItest.c" |
| 9878 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9879 | } |
| 9880 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9881 | } |
| 9882 | |
| 9883 | |
| 9884 | XS_EUPXS(XS_XS__APItest__Magic_test_isSPACE_A)static void XS_XS__APItest__Magic_test_isSPACE_A( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9885 | XS_EUPXS(XS_XS__APItest__Magic_test_isSPACE_A)static void XS_XS__APItest__Magic_test_isSPACE_A( CV* cv __attribute__ ((unused))) |
| 9886 | { |
| 9887 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9888 | if (items != 1) |
| 9889 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9890 | { |
| 9891 | bool_Bool RETVAL; |
| 9892 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9893 | ; |
| 9894 | #line 5487 "APItest.xs" |
| 9895 | RETVAL = isSPACE_A(ord)(( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && ((PL_charclass[(U8) (ord)] & ((1U << (10)) | (1U << (14)))) == ((1U << (10)) | (1U << (14))))); |
| 9896 | #line 9897 "APItest.c" |
| 9897 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9898 | } |
| 9899 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9900 | } |
| 9901 | |
| 9902 | |
| 9903 | XS_EUPXS(XS_XS__APItest__Magic_test_isSPACE_L1)static void XS_XS__APItest__Magic_test_isSPACE_L1( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9904 | XS_EUPXS(XS_XS__APItest__Magic_test_isSPACE_L1)static void XS_XS__APItest__Magic_test_isSPACE_L1( CV* cv __attribute__ ((unused))) |
| 9905 | { |
| 9906 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9907 | if (items != 1) |
| 9908 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9909 | { |
| 9910 | bool_Bool RETVAL; |
| 9911 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9912 | ; |
| 9913 | #line 5494 "APItest.xs" |
| 9914 | RETVAL = isSPACE_L1(ord)((( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && (PL_charclass[(U8) (ord)] & (1U << (10)))) ? (_Bool )1 : (_Bool)0); |
| 9915 | #line 9916 "APItest.c" |
| 9916 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9917 | } |
| 9918 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9919 | } |
| 9920 | |
| 9921 | |
| 9922 | XS_EUPXS(XS_XS__APItest__Magic_test_isSPACE_LC)static void XS_XS__APItest__Magic_test_isSPACE_LC( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9923 | XS_EUPXS(XS_XS__APItest__Magic_test_isSPACE_LC)static void XS_XS__APItest__Magic_test_isSPACE_LC( CV* cv __attribute__ ((unused))) |
| 9924 | { |
| 9925 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9926 | if (items != 1) |
| 9927 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 9928 | { |
| 9929 | bool_Bool RETVAL; |
| 9930 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 9931 | ; |
| 9932 | #line 5501 "APItest.xs" |
| 9933 | RETVAL = isSPACE_LC(ord)(! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (ord)] & (1U << (10))) ? (_Bool)1 : (_Bool)0) : ((isspace( (U8) (ord))) ? (_Bool)1 : (_Bool)0)); |
| 9934 | #line 9935 "APItest.c" |
| 9935 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9936 | } |
| 9937 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9938 | } |
| 9939 | |
| 9940 | |
| 9941 | XS_EUPXS(XS_XS__APItest__Magic_test_isSPACE_utf8)static void XS_XS__APItest__Magic_test_isSPACE_utf8( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9942 | XS_EUPXS(XS_XS__APItest__Magic_test_isSPACE_utf8)static void XS_XS__APItest__Magic_test_isSPACE_utf8( CV* cv __attribute__ ((unused))) |
| 9943 | { |
| 9944 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9945 | if (items != 2) |
| 9946 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 9947 | { |
| 9948 | #line 5508 "APItest.xs" |
| 9949 | const U8 * e; |
| 9950 | #line 9951 "APItest.c" |
| 9951 | bool_Bool RETVAL; |
| 9952 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 9953 | ; |
| 9954 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 9955 | ; |
| 9956 | #line 5510 "APItest.xs" |
| 9957 | if (type >= 0) { |
| 9958 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 9959 | RETVAL = isSPACE_utf8_safe(p, e)((! ((e) > (p))) ? (Perl__force_out_malformed_utf8_message ( (U8 *) (p),(U8 *) (e),0,1), 0) : (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? ( (( (sizeof(*(p)) == 1) || !(((U64)((*(p)) | 0)) & ~0xFF)) && (PL_charclass[(U8) (*(p))] & (1U << (10 )))) ? (_Bool)1 : (_Bool)0) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) (((((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) )) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7 ) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ( (U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | ((( 2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0)) ))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0))))))) - ((( (((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= ( ((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6 )) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect((( (e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0))) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6)) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? ((( (sizeof(( ( ((U8 ) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+ 1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6 ) | ((( ((U8) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) && (PL_charclass [(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8 ) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1)))) ) | 0)))))] & (1U << (10)))) ? (_Bool)1 : (_Bool)0) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) (e),0,1), 0)) : (__builtin_expect((((e) - (p) < PL_utf8skip [*(const U8*)(p)]) ? (_Bool)1 : (_Bool)0),(0)) ? (Perl__force_out_malformed_utf8_message ( (U8 *) (p),(U8 *) (e),0,1), 0) : ( ( 0xE1 == ((const U8*)p) [0] ) ? ( ( ( 0x9A == ((const U8*)p)[1] ) && ( 0x80 == ((const U8*)p)[2] ) ) ? 3 : 0 ): ( 0xE2 == ((const U8*)p)[0] ) ? ( ( 0x80 == ((const U8*)p)[1] ) ? ( ( ( ( (sizeof(((const U8*)p)[2]) == sizeof(U8)) ? ( (((U64) (((((U8) (((const U8*) p)[2])))) - (((0x80)) | 0))) <= (((U64) ((((0x8A) - (0x80) )) | 0))))) : (sizeof(((const U8*)p)[2]) == sizeof(U32)) ? ( ( ((U64) (((((U32) (((const U8*)p)[2])))) - (((0x80)) | 0))) <= (((U64) ((((0x8A) - (0x80))) | 0))))) : ( ( (((U64) (((((U64 ) (((const U8*)p)[2])))) - (((0x80)) | 0))) <= (((U64) ((( (0x8A) - (0x80))) | 0)))))))) || ( ( (sizeof(((const U8*)p)[2 ]) == sizeof(U8)) ? ( (((U64) (((((U8) (((const U8*)p)[2])))) - (((0xA8)) | 0))) <= (((U64) ((((0xA9) - (0xA8))) | 0))) )) : (sizeof(((const U8*)p)[2]) == sizeof(U32)) ? ( (((U64) ( ((((U32) (((const U8*)p)[2])))) - (((0xA8)) | 0))) <= (((U64 ) ((((0xA9) - (0xA8))) | 0))))) : ( ( (((U64) (((((U64) (((const U8*)p)[2])))) - (((0xA8)) | 0))) <= (((U64) ((((0xA9) - ( 0xA8))) | 0)))))))) || 0xAF == ((const U8*)p)[2] ) ? 3 : 0 ) : ( ( 0x81 == ((const U8*)p)[1] ) && ( 0x9F == ((const U8*)p)[2] ) ) ? 3 : 0 ): ( ( ( 0xE3 == ((const U8*)p)[0] ) && ( 0x80 == ((const U8*)p)[1] ) ) && ( 0x80 == ((const U8*)p)[2] ) ) ? 3 : 0 )))); |
| 9960 | } |
| 9961 | else { |
| 9962 | RETVAL = 0; |
| 9963 | } |
| 9964 | #line 9965 "APItest.c" |
| 9965 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9966 | } |
| 9967 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9968 | } |
| 9969 | |
| 9970 | |
| 9971 | XS_EUPXS(XS_XS__APItest__Magic_test_isSPACE_LC_utf8)static void XS_XS__APItest__Magic_test_isSPACE_LC_utf8( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 9972 | XS_EUPXS(XS_XS__APItest__Magic_test_isSPACE_LC_utf8)static void XS_XS__APItest__Magic_test_isSPACE_LC_utf8( CV* cv __attribute__((unused))) |
| 9973 | { |
| 9974 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 9975 | if (items != 2) |
| 9976 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 9977 | { |
| 9978 | #line 5523 "APItest.xs" |
| 9979 | const U8 * e; |
| 9980 | #line 9981 "APItest.c" |
| 9981 | bool_Bool RETVAL; |
| 9982 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 9983 | ; |
| 9984 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 9985 | ; |
| 9986 | #line 5525 "APItest.xs" |
| 9987 | if (type >= 0) { |
| 9988 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 9989 | RETVAL = isSPACE_LC_utf8_safe(p, e)( (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? (! ( (sizeof(*(p)) == 1) || !(((U64)((* (p)) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (*(p))] & (1U << (10))) ? (_Bool)1 : (_Bool)0 ) : ((isspace( (U8) (*(p)))) ? (_Bool)1 : (_Bool)0)) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) ( ((((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) (( ((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) ))) | 0))))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0)))) ))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0 ))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect ((((e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0)) ) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6) ) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? (! ( (sizeof (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7 ) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2)))) ) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ( (1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0 ))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0)))))] & (1U << (10))) ? (_Bool)1 : (_Bool)0) : ((isspace( (U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p )) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2 ))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8 ) ((1U << 6) - 1))))) | 0))))))) ? (_Bool)1 : (_Bool)0) ) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 * ) (e),0,1), 0)) : (__builtin_expect((((e) - (p) < PL_utf8skip [*(const U8*)(p)]) ? (_Bool)1 : (_Bool)0),(0)) ? (Perl__force_out_malformed_utf8_message ( (U8 *) (p),(U8 *) (e),0,1), 0) : ( ( 0xE1 == ((const U8*)p) [0] ) ? ( ( ( 0x9A == ((const U8*)p)[1] ) && ( 0x80 == ((const U8*)p)[2] ) ) ? 3 : 0 ): ( 0xE2 == ((const U8*)p)[0] ) ? ( ( 0x80 == ((const U8*)p)[1] ) ? ( ( ( ( (sizeof(((const U8*)p)[2]) == sizeof(U8)) ? ( (((U64) (((((U8) (((const U8*) p)[2])))) - (((0x80)) | 0))) <= (((U64) ((((0x8A) - (0x80) )) | 0))))) : (sizeof(((const U8*)p)[2]) == sizeof(U32)) ? ( ( ((U64) (((((U32) (((const U8*)p)[2])))) - (((0x80)) | 0))) <= (((U64) ((((0x8A) - (0x80))) | 0))))) : ( ( (((U64) (((((U64 ) (((const U8*)p)[2])))) - (((0x80)) | 0))) <= (((U64) ((( (0x8A) - (0x80))) | 0)))))))) || ( ( (sizeof(((const U8*)p)[2 ]) == sizeof(U8)) ? ( (((U64) (((((U8) (((const U8*)p)[2])))) - (((0xA8)) | 0))) <= (((U64) ((((0xA9) - (0xA8))) | 0))) )) : (sizeof(((const U8*)p)[2]) == sizeof(U32)) ? ( (((U64) ( ((((U32) (((const U8*)p)[2])))) - (((0xA8)) | 0))) <= (((U64 ) ((((0xA9) - (0xA8))) | 0))))) : ( ( (((U64) (((((U64) (((const U8*)p)[2])))) - (((0xA8)) | 0))) <= (((U64) ((((0xA9) - ( 0xA8))) | 0)))))))) || 0xAF == ((const U8*)p)[2] ) ? 3 : 0 ) : ( ( 0x81 == ((const U8*)p)[1] ) && ( 0x9F == ((const U8*)p)[2] ) ) ? 3 : 0 ): ( ( ( 0xE3 == ((const U8*)p)[0] ) && ( 0x80 == ((const U8*)p)[1] ) ) && ( 0x80 == ((const U8*)p)[2] ) ) ? 3 : 0 )))); |
| 9990 | } |
| 9991 | else { |
| 9992 | RETVAL = 0; |
| 9993 | } |
| 9994 | #line 9995 "APItest.c" |
| 9995 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 9996 | } |
| 9997 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 9998 | } |
| 9999 | |
| 10000 | |
| 10001 | XS_EUPXS(XS_XS__APItest__Magic_test_isASCII_uni)static void XS_XS__APItest__Magic_test_isASCII_uni( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10002 | XS_EUPXS(XS_XS__APItest__Magic_test_isASCII_uni)static void XS_XS__APItest__Magic_test_isASCII_uni( CV* cv __attribute__ ((unused))) |
| 10003 | { |
| 10004 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10005 | if (items != 1) |
| 10006 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10007 | { |
| 10008 | bool_Bool RETVAL; |
| 10009 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10010 | ; |
| 10011 | #line 5538 "APItest.xs" |
| 10012 | RETVAL = isASCII_uni(ord)((U64)((ord) | 0) < 128); |
| 10013 | #line 10014 "APItest.c" |
| 10014 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10015 | } |
| 10016 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10017 | } |
| 10018 | |
| 10019 | |
| 10020 | XS_EUPXS(XS_XS__APItest__Magic_test_isASCII_uvchr)static void XS_XS__APItest__Magic_test_isASCII_uvchr( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10021 | XS_EUPXS(XS_XS__APItest__Magic_test_isASCII_uvchr)static void XS_XS__APItest__Magic_test_isASCII_uvchr( CV* cv __attribute__ ((unused))) |
| 10022 | { |
| 10023 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10024 | if (items != 1) |
| 10025 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10026 | { |
| 10027 | bool_Bool RETVAL; |
| 10028 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10029 | ; |
| 10030 | #line 5545 "APItest.xs" |
| 10031 | RETVAL = isASCII_uvchr(ord)((U64)((ord) | 0) < 128); |
| 10032 | #line 10033 "APItest.c" |
| 10033 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10034 | } |
| 10035 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10036 | } |
| 10037 | |
| 10038 | |
| 10039 | XS_EUPXS(XS_XS__APItest__Magic_test_isASCII_LC_uvchr)static void XS_XS__APItest__Magic_test_isASCII_LC_uvchr( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10040 | XS_EUPXS(XS_XS__APItest__Magic_test_isASCII_LC_uvchr)static void XS_XS__APItest__Magic_test_isASCII_LC_uvchr( CV* cv __attribute__((unused))) |
| 10041 | { |
| 10042 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10043 | if (items != 1) |
| 10044 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10045 | { |
| 10046 | bool_Bool RETVAL; |
| 10047 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10048 | ; |
| 10049 | #line 5552 "APItest.xs" |
| 10050 | RETVAL = isASCII_LC_uvchr(ord)(( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && isascii( (U8) (ord))); |
| 10051 | #line 10052 "APItest.c" |
| 10052 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10053 | } |
| 10054 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10055 | } |
| 10056 | |
| 10057 | |
| 10058 | XS_EUPXS(XS_XS__APItest__Magic_test_isASCII)static void XS_XS__APItest__Magic_test_isASCII( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10059 | XS_EUPXS(XS_XS__APItest__Magic_test_isASCII)static void XS_XS__APItest__Magic_test_isASCII( CV* cv __attribute__ ((unused))) |
| 10060 | { |
| 10061 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10062 | if (items != 1) |
| 10063 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10064 | { |
| 10065 | bool_Bool RETVAL; |
| 10066 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10067 | ; |
| 10068 | #line 5559 "APItest.xs" |
| 10069 | RETVAL = isASCII(ord)((U64)((ord) | 0) < 128); |
| 10070 | #line 10071 "APItest.c" |
| 10071 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10072 | } |
| 10073 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10074 | } |
| 10075 | |
| 10076 | |
| 10077 | XS_EUPXS(XS_XS__APItest__Magic_test_isASCII_A)static void XS_XS__APItest__Magic_test_isASCII_A( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10078 | XS_EUPXS(XS_XS__APItest__Magic_test_isASCII_A)static void XS_XS__APItest__Magic_test_isASCII_A( CV* cv __attribute__ ((unused))) |
| 10079 | { |
| 10080 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10081 | if (items != 1) |
| 10082 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10083 | { |
| 10084 | bool_Bool RETVAL; |
| 10085 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10086 | ; |
| 10087 | #line 5566 "APItest.xs" |
| 10088 | RETVAL = isASCII_A(ord)((U64)((ord) | 0) < 128); |
| 10089 | #line 10090 "APItest.c" |
| 10090 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10091 | } |
| 10092 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10093 | } |
| 10094 | |
| 10095 | |
| 10096 | XS_EUPXS(XS_XS__APItest__Magic_test_isASCII_L1)static void XS_XS__APItest__Magic_test_isASCII_L1( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10097 | XS_EUPXS(XS_XS__APItest__Magic_test_isASCII_L1)static void XS_XS__APItest__Magic_test_isASCII_L1( CV* cv __attribute__ ((unused))) |
| 10098 | { |
| 10099 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10100 | if (items != 1) |
| 10101 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10102 | { |
| 10103 | bool_Bool RETVAL; |
| 10104 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10105 | ; |
| 10106 | #line 5573 "APItest.xs" |
| 10107 | RETVAL = isASCII_L1(ord)((U64)((ord) | 0) < 128); |
| 10108 | #line 10109 "APItest.c" |
| 10109 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10110 | } |
| 10111 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10112 | } |
| 10113 | |
| 10114 | |
| 10115 | XS_EUPXS(XS_XS__APItest__Magic_test_isASCII_LC)static void XS_XS__APItest__Magic_test_isASCII_LC( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10116 | XS_EUPXS(XS_XS__APItest__Magic_test_isASCII_LC)static void XS_XS__APItest__Magic_test_isASCII_LC( CV* cv __attribute__ ((unused))) |
| 10117 | { |
| 10118 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10119 | if (items != 1) |
| 10120 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10121 | { |
| 10122 | bool_Bool RETVAL; |
| 10123 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10124 | ; |
| 10125 | #line 5580 "APItest.xs" |
| 10126 | RETVAL = isASCII_LC(ord)(( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && isascii( (U8) (ord))); |
| 10127 | #line 10128 "APItest.c" |
| 10128 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10129 | } |
| 10130 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10131 | } |
| 10132 | |
| 10133 | |
| 10134 | XS_EUPXS(XS_XS__APItest__Magic_test_isASCII_utf8)static void XS_XS__APItest__Magic_test_isASCII_utf8( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10135 | XS_EUPXS(XS_XS__APItest__Magic_test_isASCII_utf8)static void XS_XS__APItest__Magic_test_isASCII_utf8( CV* cv __attribute__ ((unused))) |
| 10136 | { |
| 10137 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10138 | if (items != 2) |
| 10139 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 10140 | { |
| 10141 | #line 5587 "APItest.xs" |
| 10142 | const U8 * e; |
| 10143 | #line 10144 "APItest.c" |
| 10144 | bool_Bool RETVAL; |
| 10145 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 10146 | ; |
| 10147 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 10148 | ; |
| 10149 | #line 5589 "APItest.xs" |
| 10150 | #ifndef DEBUGGING |
| 10151 | PERL_UNUSED_VAR(e)((void)sizeof(e)); |
| 10152 | #endif |
| 10153 | if (type >= 0) { |
| 10154 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
Value stored to 'e' is never read | |
| 10155 | RETVAL = isASCII_utf8_safe(p, e)( ((U64)((*(p)) | 0) < 128)); |
| 10156 | } |
| 10157 | else { |
| 10158 | RETVAL = 0; |
| 10159 | } |
| 10160 | #line 10161 "APItest.c" |
| 10161 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10162 | } |
| 10163 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10164 | } |
| 10165 | |
| 10166 | |
| 10167 | XS_EUPXS(XS_XS__APItest__Magic_test_isASCII_LC_utf8)static void XS_XS__APItest__Magic_test_isASCII_LC_utf8( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10168 | XS_EUPXS(XS_XS__APItest__Magic_test_isASCII_LC_utf8)static void XS_XS__APItest__Magic_test_isASCII_LC_utf8( CV* cv __attribute__((unused))) |
| 10169 | { |
| 10170 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10171 | if (items != 2) |
| 10172 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 10173 | { |
| 10174 | #line 5605 "APItest.xs" |
| 10175 | const U8 * e; |
| 10176 | #line 10177 "APItest.c" |
| 10177 | bool_Bool RETVAL; |
| 10178 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 10179 | ; |
| 10180 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 10181 | ; |
| 10182 | #line 5607 "APItest.xs" |
| 10183 | #ifndef DEBUGGING |
| 10184 | PERL_UNUSED_VAR(e)((void)sizeof(e)); |
| 10185 | #endif |
| 10186 | if (type >= 0) { |
| 10187 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 10188 | RETVAL = isASCII_LC_utf8_safe(p, e)( (( (sizeof(*(p)) == 1) || !(((U64)((*(p)) | 0)) & ~0xFF )) && isascii( (U8) (*(p))))); |
| 10189 | } |
| 10190 | else { |
| 10191 | RETVAL = 0; |
| 10192 | } |
| 10193 | #line 10194 "APItest.c" |
| 10194 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10195 | } |
| 10196 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10197 | } |
| 10198 | |
| 10199 | |
| 10200 | XS_EUPXS(XS_XS__APItest__Magic_test_isCNTRL_uni)static void XS_XS__APItest__Magic_test_isCNTRL_uni( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10201 | XS_EUPXS(XS_XS__APItest__Magic_test_isCNTRL_uni)static void XS_XS__APItest__Magic_test_isCNTRL_uni( CV* cv __attribute__ ((unused))) |
| 10202 | { |
| 10203 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10204 | if (items != 1) |
| 10205 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10206 | { |
| 10207 | bool_Bool RETVAL; |
| 10208 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10209 | ; |
| 10210 | #line 5623 "APItest.xs" |
| 10211 | RETVAL = isCNTRL_uni(ord)((( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && (PL_charclass[(U8) (ord)] & (1U << (13)))) ? (_Bool )1 : (_Bool)0); |
| 10212 | #line 10213 "APItest.c" |
| 10213 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10214 | } |
| 10215 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10216 | } |
| 10217 | |
| 10218 | |
| 10219 | XS_EUPXS(XS_XS__APItest__Magic_test_isCNTRL_uvchr)static void XS_XS__APItest__Magic_test_isCNTRL_uvchr( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10220 | XS_EUPXS(XS_XS__APItest__Magic_test_isCNTRL_uvchr)static void XS_XS__APItest__Magic_test_isCNTRL_uvchr( CV* cv __attribute__ ((unused))) |
| 10221 | { |
| 10222 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10223 | if (items != 1) |
| 10224 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10225 | { |
| 10226 | bool_Bool RETVAL; |
| 10227 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10228 | ; |
| 10229 | #line 5630 "APItest.xs" |
| 10230 | RETVAL = isCNTRL_uvchr(ord)((( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && (PL_charclass[(U8) (ord)] & (1U << (13)))) ? (_Bool )1 : (_Bool)0); |
| 10231 | #line 10232 "APItest.c" |
| 10232 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10233 | } |
| 10234 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10235 | } |
| 10236 | |
| 10237 | |
| 10238 | XS_EUPXS(XS_XS__APItest__Magic_test_isCNTRL_LC_uvchr)static void XS_XS__APItest__Magic_test_isCNTRL_LC_uvchr( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10239 | XS_EUPXS(XS_XS__APItest__Magic_test_isCNTRL_LC_uvchr)static void XS_XS__APItest__Magic_test_isCNTRL_LC_uvchr( CV* cv __attribute__((unused))) |
| 10240 | { |
| 10241 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10242 | if (items != 1) |
| 10243 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10244 | { |
| 10245 | bool_Bool RETVAL; |
| 10246 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10247 | ; |
| 10248 | #line 5637 "APItest.xs" |
| 10249 | RETVAL = isCNTRL_LC_uvchr(ord)(ord < 256 ? (! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (ord)] & (1U << (13))) ? (_Bool)1 : (_Bool)0) : ((iscntrl( (U8) (ord))) ? (_Bool)1 : (_Bool)0)) : 0); |
| 10250 | #line 10251 "APItest.c" |
| 10251 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10252 | } |
| 10253 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10254 | } |
| 10255 | |
| 10256 | |
| 10257 | XS_EUPXS(XS_XS__APItest__Magic_test_isCNTRL)static void XS_XS__APItest__Magic_test_isCNTRL( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10258 | XS_EUPXS(XS_XS__APItest__Magic_test_isCNTRL)static void XS_XS__APItest__Magic_test_isCNTRL( CV* cv __attribute__ ((unused))) |
| 10259 | { |
| 10260 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10261 | if (items != 1) |
| 10262 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10263 | { |
| 10264 | bool_Bool RETVAL; |
| 10265 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10266 | ; |
| 10267 | #line 5644 "APItest.xs" |
| 10268 | RETVAL = isCNTRL(ord)(( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && ((PL_charclass[(U8) (ord)] & ((1U << (13)) | (1U << (14)))) == ((1U << (13)) | (1U << (14))))); |
| 10269 | #line 10270 "APItest.c" |
| 10270 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10271 | } |
| 10272 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10273 | } |
| 10274 | |
| 10275 | |
| 10276 | XS_EUPXS(XS_XS__APItest__Magic_test_isCNTRL_A)static void XS_XS__APItest__Magic_test_isCNTRL_A( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10277 | XS_EUPXS(XS_XS__APItest__Magic_test_isCNTRL_A)static void XS_XS__APItest__Magic_test_isCNTRL_A( CV* cv __attribute__ ((unused))) |
| 10278 | { |
| 10279 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10280 | if (items != 1) |
| 10281 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10282 | { |
| 10283 | bool_Bool RETVAL; |
| 10284 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10285 | ; |
| 10286 | #line 5651 "APItest.xs" |
| 10287 | RETVAL = isCNTRL_A(ord)(( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && ((PL_charclass[(U8) (ord)] & ((1U << (13)) | (1U << (14)))) == ((1U << (13)) | (1U << (14))))); |
| 10288 | #line 10289 "APItest.c" |
| 10289 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10290 | } |
| 10291 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10292 | } |
| 10293 | |
| 10294 | |
| 10295 | XS_EUPXS(XS_XS__APItest__Magic_test_isCNTRL_L1)static void XS_XS__APItest__Magic_test_isCNTRL_L1( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10296 | XS_EUPXS(XS_XS__APItest__Magic_test_isCNTRL_L1)static void XS_XS__APItest__Magic_test_isCNTRL_L1( CV* cv __attribute__ ((unused))) |
| 10297 | { |
| 10298 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10299 | if (items != 1) |
| 10300 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10301 | { |
| 10302 | bool_Bool RETVAL; |
| 10303 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10304 | ; |
| 10305 | #line 5658 "APItest.xs" |
| 10306 | RETVAL = isCNTRL_L1(ord)((( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && (PL_charclass[(U8) (ord)] & (1U << (13)))) ? (_Bool )1 : (_Bool)0); |
| 10307 | #line 10308 "APItest.c" |
| 10308 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10309 | } |
| 10310 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10311 | } |
| 10312 | |
| 10313 | |
| 10314 | XS_EUPXS(XS_XS__APItest__Magic_test_isCNTRL_LC)static void XS_XS__APItest__Magic_test_isCNTRL_LC( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10315 | XS_EUPXS(XS_XS__APItest__Magic_test_isCNTRL_LC)static void XS_XS__APItest__Magic_test_isCNTRL_LC( CV* cv __attribute__ ((unused))) |
| 10316 | { |
| 10317 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10318 | if (items != 1) |
| 10319 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10320 | { |
| 10321 | bool_Bool RETVAL; |
| 10322 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10323 | ; |
| 10324 | #line 5665 "APItest.xs" |
| 10325 | RETVAL = isCNTRL_LC(ord)(! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (ord)] & (1U << (13))) ? (_Bool)1 : (_Bool)0) : ((iscntrl( (U8) (ord))) ? (_Bool)1 : (_Bool)0)); |
| 10326 | #line 10327 "APItest.c" |
| 10327 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10328 | } |
| 10329 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10330 | } |
| 10331 | |
| 10332 | |
| 10333 | XS_EUPXS(XS_XS__APItest__Magic_test_isCNTRL_utf8)static void XS_XS__APItest__Magic_test_isCNTRL_utf8( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10334 | XS_EUPXS(XS_XS__APItest__Magic_test_isCNTRL_utf8)static void XS_XS__APItest__Magic_test_isCNTRL_utf8( CV* cv __attribute__ ((unused))) |
| 10335 | { |
| 10336 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10337 | if (items != 2) |
| 10338 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 10339 | { |
| 10340 | #line 5672 "APItest.xs" |
| 10341 | const U8 * e; |
| 10342 | #line 10343 "APItest.c" |
| 10343 | bool_Bool RETVAL; |
| 10344 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 10345 | ; |
| 10346 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 10347 | ; |
| 10348 | #line 5674 "APItest.xs" |
| 10349 | if (type >= 0) { |
| 10350 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 10351 | RETVAL = isCNTRL_utf8_safe(p, e)((! ((e) > (p))) ? (Perl__force_out_malformed_utf8_message ( (U8 *) (p),(U8 *) (e),0,1), 0) : (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? ( (( (sizeof(*(p)) == 1) || !(((U64)((*(p)) | 0)) & ~0xFF)) && (PL_charclass[(U8) (*(p))] & (1U << (13 )))) ? (_Bool)1 : (_Bool)0) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) (((((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) )) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7 ) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ( (U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | ((( 2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0)) ))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0))))))) - ((( (((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= ( ((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6 )) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect((( (e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0))) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6)) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? ((( (sizeof(( ( ((U8 ) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+ 1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6 ) | ((( ((U8) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) && (PL_charclass [(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8 ) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1)))) ) | 0)))))] & (1U << (13)))) ? (_Bool)1 : (_Bool)0) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) (e),0,1), 0)) : 0)); |
| 10352 | } |
| 10353 | else { |
| 10354 | RETVAL = 0; |
| 10355 | } |
| 10356 | #line 10357 "APItest.c" |
| 10357 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10358 | } |
| 10359 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10360 | } |
| 10361 | |
| 10362 | |
| 10363 | XS_EUPXS(XS_XS__APItest__Magic_test_isCNTRL_LC_utf8)static void XS_XS__APItest__Magic_test_isCNTRL_LC_utf8( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10364 | XS_EUPXS(XS_XS__APItest__Magic_test_isCNTRL_LC_utf8)static void XS_XS__APItest__Magic_test_isCNTRL_LC_utf8( CV* cv __attribute__((unused))) |
| 10365 | { |
| 10366 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10367 | if (items != 2) |
| 10368 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 10369 | { |
| 10370 | #line 5687 "APItest.xs" |
| 10371 | const U8 * e; |
| 10372 | #line 10373 "APItest.c" |
| 10373 | bool_Bool RETVAL; |
| 10374 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 10375 | ; |
| 10376 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 10377 | ; |
| 10378 | #line 5689 "APItest.xs" |
| 10379 | if (type >= 0) { |
| 10380 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 10381 | RETVAL = isCNTRL_LC_utf8_safe(p, e)( (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? (! ( (sizeof(*(p)) == 1) || !(((U64)((* (p)) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (*(p))] & (1U << (13))) ? (_Bool)1 : (_Bool)0 ) : ((iscntrl( (U8) (*(p)))) ? (_Bool)1 : (_Bool)0)) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) ( ((((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) (( ((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) ))) | 0))))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0)))) ))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0 ))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect ((((e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0)) ) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6) ) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? (! ( (sizeof (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7 ) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2)))) ) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ( (1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0 ))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0)))))] & (1U << (13))) ? (_Bool)1 : (_Bool)0) : ((iscntrl( (U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p )) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2 ))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8 ) ((1U << 6) - 1))))) | 0))))))) ? (_Bool)1 : (_Bool)0) ) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 * ) (e),0,1), 0)) : 0)); |
| 10382 | } |
| 10383 | else { |
| 10384 | RETVAL = 0; |
| 10385 | } |
| 10386 | #line 10387 "APItest.c" |
| 10387 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10388 | } |
| 10389 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10390 | } |
| 10391 | |
| 10392 | |
| 10393 | XS_EUPXS(XS_XS__APItest__Magic_test_isPRINT_uni)static void XS_XS__APItest__Magic_test_isPRINT_uni( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10394 | XS_EUPXS(XS_XS__APItest__Magic_test_isPRINT_uni)static void XS_XS__APItest__Magic_test_isPRINT_uni( CV* cv __attribute__ ((unused))) |
| 10395 | { |
| 10396 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10397 | if (items != 1) |
| 10398 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10399 | { |
| 10400 | bool_Bool RETVAL; |
| 10401 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10402 | ; |
| 10403 | #line 5702 "APItest.xs" |
| 10404 | RETVAL = isPRINT_uni(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (6)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_FOO( 6,ord)); |
| 10405 | #line 10406 "APItest.c" |
| 10406 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10407 | } |
| 10408 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10409 | } |
| 10410 | |
| 10411 | |
| 10412 | XS_EUPXS(XS_XS__APItest__Magic_test_isPRINT_uvchr)static void XS_XS__APItest__Magic_test_isPRINT_uvchr( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10413 | XS_EUPXS(XS_XS__APItest__Magic_test_isPRINT_uvchr)static void XS_XS__APItest__Magic_test_isPRINT_uvchr( CV* cv __attribute__ ((unused))) |
| 10414 | { |
| 10415 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10416 | if (items != 1) |
| 10417 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10418 | { |
| 10419 | bool_Bool RETVAL; |
| 10420 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10421 | ; |
| 10422 | #line 5709 "APItest.xs" |
| 10423 | RETVAL = isPRINT_uvchr(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (6)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_FOO( 6,ord)); |
| 10424 | #line 10425 "APItest.c" |
| 10425 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10426 | } |
| 10427 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10428 | } |
| 10429 | |
| 10430 | |
| 10431 | XS_EUPXS(XS_XS__APItest__Magic_test_isPRINT_LC_uvchr)static void XS_XS__APItest__Magic_test_isPRINT_LC_uvchr( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10432 | XS_EUPXS(XS_XS__APItest__Magic_test_isPRINT_LC_uvchr)static void XS_XS__APItest__Magic_test_isPRINT_LC_uvchr( CV* cv __attribute__((unused))) |
| 10433 | { |
| 10434 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10435 | if (items != 1) |
| 10436 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10437 | { |
| 10438 | bool_Bool RETVAL; |
| 10439 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10440 | ; |
| 10441 | #line 5716 "APItest.xs" |
| 10442 | RETVAL = isPRINT_LC_uvchr(ord)(ord < 256 ? (! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (ord)] & (1U << (6))) ? (_Bool)1 : (_Bool)0) : ((isprint( (U8) (ord))) ? (_Bool)1 : (_Bool)0)) : Perl__is_uni_FOO ( 6,ord)); |
| 10443 | #line 10444 "APItest.c" |
| 10444 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10445 | } |
| 10446 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10447 | } |
| 10448 | |
| 10449 | |
| 10450 | XS_EUPXS(XS_XS__APItest__Magic_test_isPRINT)static void XS_XS__APItest__Magic_test_isPRINT( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10451 | XS_EUPXS(XS_XS__APItest__Magic_test_isPRINT)static void XS_XS__APItest__Magic_test_isPRINT( CV* cv __attribute__ ((unused))) |
| 10452 | { |
| 10453 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10454 | if (items != 1) |
| 10455 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10456 | { |
| 10457 | bool_Bool RETVAL; |
| 10458 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10459 | ; |
| 10460 | #line 5723 "APItest.xs" |
| 10461 | RETVAL = isPRINT(ord)( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord)))) - (((' ')) | 0))) <= (((U64) ((((0x7e) - (' '))) | 0))))) : (sizeof(ord) == sizeof(U32)) ? ( (((U64) (((((U32) (ord))) ) - (((' ')) | 0))) <= (((U64) ((((0x7e) - (' '))) | 0)))) ) : ( ( (((U64) (((((U64) (ord)))) - (((' ')) | 0))) <= (( (U64) ((((0x7e) - (' '))) | 0)))))))); |
| 10462 | #line 10463 "APItest.c" |
| 10463 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10464 | } |
| 10465 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10466 | } |
| 10467 | |
| 10468 | |
| 10469 | XS_EUPXS(XS_XS__APItest__Magic_test_isPRINT_A)static void XS_XS__APItest__Magic_test_isPRINT_A( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10470 | XS_EUPXS(XS_XS__APItest__Magic_test_isPRINT_A)static void XS_XS__APItest__Magic_test_isPRINT_A( CV* cv __attribute__ ((unused))) |
| 10471 | { |
| 10472 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10473 | if (items != 1) |
| 10474 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10475 | { |
| 10476 | bool_Bool RETVAL; |
| 10477 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10478 | ; |
| 10479 | #line 5730 "APItest.xs" |
| 10480 | RETVAL = isPRINT_A(ord)( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord)))) - (((' ')) | 0))) <= (((U64) ((((0x7e) - (' '))) | 0))))) : (sizeof(ord) == sizeof(U32)) ? ( (((U64) (((((U32) (ord))) ) - (((' ')) | 0))) <= (((U64) ((((0x7e) - (' '))) | 0)))) ) : ( ( (((U64) (((((U64) (ord)))) - (((' ')) | 0))) <= (( (U64) ((((0x7e) - (' '))) | 0)))))))); |
| 10481 | #line 10482 "APItest.c" |
| 10482 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10483 | } |
| 10484 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10485 | } |
| 10486 | |
| 10487 | |
| 10488 | XS_EUPXS(XS_XS__APItest__Magic_test_isPRINT_L1)static void XS_XS__APItest__Magic_test_isPRINT_L1( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10489 | XS_EUPXS(XS_XS__APItest__Magic_test_isPRINT_L1)static void XS_XS__APItest__Magic_test_isPRINT_L1( CV* cv __attribute__ ((unused))) |
| 10490 | { |
| 10491 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10492 | if (items != 1) |
| 10493 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10494 | { |
| 10495 | bool_Bool RETVAL; |
| 10496 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10497 | ; |
| 10498 | #line 5737 "APItest.xs" |
| 10499 | RETVAL = isPRINT_L1(ord)((( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && (PL_charclass[(U8) (ord)] & (1U << (6)))) ? (_Bool )1 : (_Bool)0); |
| 10500 | #line 10501 "APItest.c" |
| 10501 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10502 | } |
| 10503 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10504 | } |
| 10505 | |
| 10506 | |
| 10507 | XS_EUPXS(XS_XS__APItest__Magic_test_isPRINT_LC)static void XS_XS__APItest__Magic_test_isPRINT_LC( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10508 | XS_EUPXS(XS_XS__APItest__Magic_test_isPRINT_LC)static void XS_XS__APItest__Magic_test_isPRINT_LC( CV* cv __attribute__ ((unused))) |
| 10509 | { |
| 10510 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10511 | if (items != 1) |
| 10512 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10513 | { |
| 10514 | bool_Bool RETVAL; |
| 10515 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10516 | ; |
| 10517 | #line 5744 "APItest.xs" |
| 10518 | RETVAL = isPRINT_LC(ord)(! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (ord)] & (1U << (6))) ? (_Bool)1 : (_Bool)0) : ((isprint( (U8) ( ord))) ? (_Bool)1 : (_Bool)0)); |
| 10519 | #line 10520 "APItest.c" |
| 10520 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10521 | } |
| 10522 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10523 | } |
| 10524 | |
| 10525 | |
| 10526 | XS_EUPXS(XS_XS__APItest__Magic_test_isPRINT_utf8)static void XS_XS__APItest__Magic_test_isPRINT_utf8( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10527 | XS_EUPXS(XS_XS__APItest__Magic_test_isPRINT_utf8)static void XS_XS__APItest__Magic_test_isPRINT_utf8( CV* cv __attribute__ ((unused))) |
| 10528 | { |
| 10529 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10530 | if (items != 2) |
| 10531 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 10532 | { |
| 10533 | #line 5751 "APItest.xs" |
| 10534 | const U8 * e; |
| 10535 | #line 10536 "APItest.c" |
| 10536 | bool_Bool RETVAL; |
| 10537 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 10538 | ; |
| 10539 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 10540 | ; |
| 10541 | #line 5753 "APItest.xs" |
| 10542 | if (type >= 0) { |
| 10543 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 10544 | RETVAL = isPRINT_utf8_safe(p, e)((! ((e) > (p))) ? (Perl__force_out_malformed_utf8_message ( (U8 *) (p),(U8 *) (e),0,1), 0) : (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? ( (( (sizeof(*(p)) == 1) || !(((U64)((*(p)) | 0)) & ~0xFF)) && (PL_charclass[(U8) (*(p))] & (1U << (6) ))) ? (_Bool)1 : (_Bool)0) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) (((((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) )) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7 ) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ( (U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | ((( 2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0)) ))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0))))))) - ((( (((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= ( ((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6 )) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect((( (e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0))) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6)) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? ((( (sizeof(( ( ((U8 ) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+ 1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6 ) | ((( ((U8) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) && (PL_charclass [(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8 ) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1)))) ) | 0)))))] & (1U << (6)))) ? (_Bool)1 : (_Bool)0) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) ( e),0,1), 0)) : Perl__is_utf8_FOO( 6,p,e))); |
| 10545 | } |
| 10546 | else { |
| 10547 | RETVAL = 0; |
| 10548 | } |
| 10549 | #line 10550 "APItest.c" |
| 10550 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10551 | } |
| 10552 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10553 | } |
| 10554 | |
| 10555 | |
| 10556 | XS_EUPXS(XS_XS__APItest__Magic_test_isPRINT_LC_utf8)static void XS_XS__APItest__Magic_test_isPRINT_LC_utf8( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10557 | XS_EUPXS(XS_XS__APItest__Magic_test_isPRINT_LC_utf8)static void XS_XS__APItest__Magic_test_isPRINT_LC_utf8( CV* cv __attribute__((unused))) |
| 10558 | { |
| 10559 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10560 | if (items != 2) |
| 10561 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 10562 | { |
| 10563 | #line 5766 "APItest.xs" |
| 10564 | const U8 * e; |
| 10565 | #line 10566 "APItest.c" |
| 10566 | bool_Bool RETVAL; |
| 10567 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 10568 | ; |
| 10569 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 10570 | ; |
| 10571 | #line 5768 "APItest.xs" |
| 10572 | if (type >= 0) { |
| 10573 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 10574 | RETVAL = isPRINT_LC_utf8_safe(p, e)( (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? (! ( (sizeof(*(p)) == 1) || !(((U64)((* (p)) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (*(p))] & (1U << (6))) ? (_Bool)1 : (_Bool)0) : ((isprint( (U8) (*(p)))) ? (_Bool)1 : (_Bool)0)) : (( ( ( ( sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) ((( ((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) (( ((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) ))) | 0))))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0)))) ))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0 ))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect ((((e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0)) ) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6) ) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? (! ( (sizeof (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7 ) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2)))) ) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ( (1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0 ))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0)))))] & (1U << (6))) ? (_Bool)1 : ( _Bool)0) : ((isprint( (U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2)) ))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))))) ? (_Bool)1 : (_Bool)0)) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) (e),0,1), 0)) : Perl__is_utf8_FOO( 6,p,e))); |
| 10575 | } |
| 10576 | else { |
| 10577 | RETVAL = 0; |
| 10578 | } |
| 10579 | #line 10580 "APItest.c" |
| 10580 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10581 | } |
| 10582 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10583 | } |
| 10584 | |
| 10585 | |
| 10586 | XS_EUPXS(XS_XS__APItest__Magic_test_isGRAPH_uni)static void XS_XS__APItest__Magic_test_isGRAPH_uni( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10587 | XS_EUPXS(XS_XS__APItest__Magic_test_isGRAPH_uni)static void XS_XS__APItest__Magic_test_isGRAPH_uni( CV* cv __attribute__ ((unused))) |
| 10588 | { |
| 10589 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10590 | if (items != 1) |
| 10591 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10592 | { |
| 10593 | bool_Bool RETVAL; |
| 10594 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10595 | ; |
| 10596 | #line 5781 "APItest.xs" |
| 10597 | RETVAL = isGRAPH_uni(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (8)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_FOO( 8,ord)); |
| 10598 | #line 10599 "APItest.c" |
| 10599 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10600 | } |
| 10601 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10602 | } |
| 10603 | |
| 10604 | |
| 10605 | XS_EUPXS(XS_XS__APItest__Magic_test_isGRAPH_uvchr)static void XS_XS__APItest__Magic_test_isGRAPH_uvchr( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10606 | XS_EUPXS(XS_XS__APItest__Magic_test_isGRAPH_uvchr)static void XS_XS__APItest__Magic_test_isGRAPH_uvchr( CV* cv __attribute__ ((unused))) |
| 10607 | { |
| 10608 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10609 | if (items != 1) |
| 10610 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10611 | { |
| 10612 | bool_Bool RETVAL; |
| 10613 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10614 | ; |
| 10615 | #line 5788 "APItest.xs" |
| 10616 | RETVAL = isGRAPH_uvchr(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (8)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_FOO( 8,ord)); |
| 10617 | #line 10618 "APItest.c" |
| 10618 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10619 | } |
| 10620 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10621 | } |
| 10622 | |
| 10623 | |
| 10624 | XS_EUPXS(XS_XS__APItest__Magic_test_isGRAPH_LC_uvchr)static void XS_XS__APItest__Magic_test_isGRAPH_LC_uvchr( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10625 | XS_EUPXS(XS_XS__APItest__Magic_test_isGRAPH_LC_uvchr)static void XS_XS__APItest__Magic_test_isGRAPH_LC_uvchr( CV* cv __attribute__((unused))) |
| 10626 | { |
| 10627 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10628 | if (items != 1) |
| 10629 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10630 | { |
| 10631 | bool_Bool RETVAL; |
| 10632 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10633 | ; |
| 10634 | #line 5795 "APItest.xs" |
| 10635 | RETVAL = isGRAPH_LC_uvchr(ord)(ord < 256 ? (! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (ord)] & (1U << (8))) ? (_Bool)1 : (_Bool)0) : ((isgraph( (U8) (ord))) ? (_Bool)1 : (_Bool)0)) : Perl__is_uni_FOO ( 8,ord)); |
| 10636 | #line 10637 "APItest.c" |
| 10637 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10638 | } |
| 10639 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10640 | } |
| 10641 | |
| 10642 | |
| 10643 | XS_EUPXS(XS_XS__APItest__Magic_test_isGRAPH)static void XS_XS__APItest__Magic_test_isGRAPH( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10644 | XS_EUPXS(XS_XS__APItest__Magic_test_isGRAPH)static void XS_XS__APItest__Magic_test_isGRAPH( CV* cv __attribute__ ((unused))) |
| 10645 | { |
| 10646 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10647 | if (items != 1) |
| 10648 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10649 | { |
| 10650 | bool_Bool RETVAL; |
| 10651 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10652 | ; |
| 10653 | #line 5802 "APItest.xs" |
| 10654 | RETVAL = isGRAPH(ord)( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord)))) - (((' ' + 1)) | 0))) <= (((U64) ((((0x7e) - (' ' + 1))) | 0))))) : (sizeof(ord) == sizeof(U32)) ? ( (((U64) (((((U32) ( ord)))) - (((' ' + 1)) | 0))) <= (((U64) ((((0x7e) - (' ' + 1))) | 0))))) : ( ( (((U64) (((((U64) (ord)))) - (((' ' + 1) ) | 0))) <= (((U64) ((((0x7e) - (' ' + 1))) | 0)))))))); |
| 10655 | #line 10656 "APItest.c" |
| 10656 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10657 | } |
| 10658 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10659 | } |
| 10660 | |
| 10661 | |
| 10662 | XS_EUPXS(XS_XS__APItest__Magic_test_isGRAPH_A)static void XS_XS__APItest__Magic_test_isGRAPH_A( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10663 | XS_EUPXS(XS_XS__APItest__Magic_test_isGRAPH_A)static void XS_XS__APItest__Magic_test_isGRAPH_A( CV* cv __attribute__ ((unused))) |
| 10664 | { |
| 10665 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10666 | if (items != 1) |
| 10667 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10668 | { |
| 10669 | bool_Bool RETVAL; |
| 10670 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10671 | ; |
| 10672 | #line 5809 "APItest.xs" |
| 10673 | RETVAL = isGRAPH_A(ord)( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord)))) - (((' ' + 1)) | 0))) <= (((U64) ((((0x7e) - (' ' + 1))) | 0))))) : (sizeof(ord) == sizeof(U32)) ? ( (((U64) (((((U32) ( ord)))) - (((' ' + 1)) | 0))) <= (((U64) ((((0x7e) - (' ' + 1))) | 0))))) : ( ( (((U64) (((((U64) (ord)))) - (((' ' + 1) ) | 0))) <= (((U64) ((((0x7e) - (' ' + 1))) | 0)))))))); |
| 10674 | #line 10675 "APItest.c" |
| 10675 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10676 | } |
| 10677 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10678 | } |
| 10679 | |
| 10680 | |
| 10681 | XS_EUPXS(XS_XS__APItest__Magic_test_isGRAPH_L1)static void XS_XS__APItest__Magic_test_isGRAPH_L1( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10682 | XS_EUPXS(XS_XS__APItest__Magic_test_isGRAPH_L1)static void XS_XS__APItest__Magic_test_isGRAPH_L1( CV* cv __attribute__ ((unused))) |
| 10683 | { |
| 10684 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10685 | if (items != 1) |
| 10686 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10687 | { |
| 10688 | bool_Bool RETVAL; |
| 10689 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10690 | ; |
| 10691 | #line 5816 "APItest.xs" |
| 10692 | RETVAL = isGRAPH_L1(ord)((( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && (PL_charclass[(U8) (ord)] & (1U << (8)))) ? (_Bool )1 : (_Bool)0); |
| 10693 | #line 10694 "APItest.c" |
| 10694 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10695 | } |
| 10696 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10697 | } |
| 10698 | |
| 10699 | |
| 10700 | XS_EUPXS(XS_XS__APItest__Magic_test_isGRAPH_LC)static void XS_XS__APItest__Magic_test_isGRAPH_LC( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10701 | XS_EUPXS(XS_XS__APItest__Magic_test_isGRAPH_LC)static void XS_XS__APItest__Magic_test_isGRAPH_LC( CV* cv __attribute__ ((unused))) |
| 10702 | { |
| 10703 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10704 | if (items != 1) |
| 10705 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10706 | { |
| 10707 | bool_Bool RETVAL; |
| 10708 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10709 | ; |
| 10710 | #line 5823 "APItest.xs" |
| 10711 | RETVAL = isGRAPH_LC(ord)(! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (ord)] & (1U << (8))) ? (_Bool)1 : (_Bool)0) : ((isgraph( (U8) ( ord))) ? (_Bool)1 : (_Bool)0)); |
| 10712 | #line 10713 "APItest.c" |
| 10713 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10714 | } |
| 10715 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10716 | } |
| 10717 | |
| 10718 | |
| 10719 | XS_EUPXS(XS_XS__APItest__Magic_test_isGRAPH_utf8)static void XS_XS__APItest__Magic_test_isGRAPH_utf8( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10720 | XS_EUPXS(XS_XS__APItest__Magic_test_isGRAPH_utf8)static void XS_XS__APItest__Magic_test_isGRAPH_utf8( CV* cv __attribute__ ((unused))) |
| 10721 | { |
| 10722 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10723 | if (items != 2) |
| 10724 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 10725 | { |
| 10726 | #line 5830 "APItest.xs" |
| 10727 | const U8 * e; |
| 10728 | #line 10729 "APItest.c" |
| 10729 | bool_Bool RETVAL; |
| 10730 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 10731 | ; |
| 10732 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 10733 | ; |
| 10734 | #line 5832 "APItest.xs" |
| 10735 | if (type >= 0) { |
| 10736 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 10737 | RETVAL = isGRAPH_utf8_safe(p, e)((! ((e) > (p))) ? (Perl__force_out_malformed_utf8_message ( (U8 *) (p),(U8 *) (e),0,1), 0) : (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? ( (( (sizeof(*(p)) == 1) || !(((U64)((*(p)) | 0)) & ~0xFF)) && (PL_charclass[(U8) (*(p))] & (1U << (8) ))) ? (_Bool)1 : (_Bool)0) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) (((((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) )) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7 ) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ( (U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | ((( 2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0)) ))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0))))))) - ((( (((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= ( ((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6 )) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect((( (e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0))) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6)) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? ((( (sizeof(( ( ((U8 ) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+ 1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6 ) | ((( ((U8) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) && (PL_charclass [(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8 ) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1)))) ) | 0)))))] & (1U << (8)))) ? (_Bool)1 : (_Bool)0) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) ( e),0,1), 0)) : Perl__is_utf8_FOO( 8,p,e))); |
| 10738 | } |
| 10739 | else { |
| 10740 | RETVAL = 0; |
| 10741 | } |
| 10742 | #line 10743 "APItest.c" |
| 10743 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10744 | } |
| 10745 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10746 | } |
| 10747 | |
| 10748 | |
| 10749 | XS_EUPXS(XS_XS__APItest__Magic_test_isGRAPH_LC_utf8)static void XS_XS__APItest__Magic_test_isGRAPH_LC_utf8( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10750 | XS_EUPXS(XS_XS__APItest__Magic_test_isGRAPH_LC_utf8)static void XS_XS__APItest__Magic_test_isGRAPH_LC_utf8( CV* cv __attribute__((unused))) |
| 10751 | { |
| 10752 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10753 | if (items != 2) |
| 10754 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 10755 | { |
| 10756 | #line 5845 "APItest.xs" |
| 10757 | const U8 * e; |
| 10758 | #line 10759 "APItest.c" |
| 10759 | bool_Bool RETVAL; |
| 10760 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 10761 | ; |
| 10762 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 10763 | ; |
| 10764 | #line 5847 "APItest.xs" |
| 10765 | if (type >= 0) { |
| 10766 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 10767 | RETVAL = isGRAPH_LC_utf8_safe(p, e)( (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? (! ( (sizeof(*(p)) == 1) || !(((U64)((* (p)) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (*(p))] & (1U << (8))) ? (_Bool)1 : (_Bool)0) : ((isgraph( (U8) (*(p)))) ? (_Bool)1 : (_Bool)0)) : (( ( ( ( sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) ((( ((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) (( ((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) ))) | 0))))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0)))) ))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0 ))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect ((((e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0)) ) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6) ) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? (! ( (sizeof (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7 ) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2)))) ) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ( (1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0 ))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0)))))] & (1U << (8))) ? (_Bool)1 : ( _Bool)0) : ((isgraph( (U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2)) ))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))))) ? (_Bool)1 : (_Bool)0)) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) (e),0,1), 0)) : Perl__is_utf8_FOO( 8,p,e))); |
| 10768 | } |
| 10769 | else { |
| 10770 | RETVAL = 0; |
| 10771 | } |
| 10772 | #line 10773 "APItest.c" |
| 10773 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10774 | } |
| 10775 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10776 | } |
| 10777 | |
| 10778 | |
| 10779 | XS_EUPXS(XS_XS__APItest__Magic_test_isPUNCT_uni)static void XS_XS__APItest__Magic_test_isPUNCT_uni( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10780 | XS_EUPXS(XS_XS__APItest__Magic_test_isPUNCT_uni)static void XS_XS__APItest__Magic_test_isPUNCT_uni( CV* cv __attribute__ ((unused))) |
| 10781 | { |
| 10782 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10783 | if (items != 1) |
| 10784 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10785 | { |
| 10786 | bool_Bool RETVAL; |
| 10787 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10788 | ; |
| 10789 | #line 5860 "APItest.xs" |
| 10790 | RETVAL = isPUNCT_uni(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (5)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_FOO( 5,ord)); |
| 10791 | #line 10792 "APItest.c" |
| 10792 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10793 | } |
| 10794 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10795 | } |
| 10796 | |
| 10797 | |
| 10798 | XS_EUPXS(XS_XS__APItest__Magic_test_isPUNCT_uvchr)static void XS_XS__APItest__Magic_test_isPUNCT_uvchr( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10799 | XS_EUPXS(XS_XS__APItest__Magic_test_isPUNCT_uvchr)static void XS_XS__APItest__Magic_test_isPUNCT_uvchr( CV* cv __attribute__ ((unused))) |
| 10800 | { |
| 10801 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10802 | if (items != 1) |
| 10803 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10804 | { |
| 10805 | bool_Bool RETVAL; |
| 10806 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10807 | ; |
| 10808 | #line 5867 "APItest.xs" |
| 10809 | RETVAL = isPUNCT_uvchr(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (5)))) ? (_Bool)1 : (_Bool)0) : Perl__is_uni_FOO( 5,ord)); |
| 10810 | #line 10811 "APItest.c" |
| 10811 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10812 | } |
| 10813 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10814 | } |
| 10815 | |
| 10816 | |
| 10817 | XS_EUPXS(XS_XS__APItest__Magic_test_isPUNCT_LC_uvchr)static void XS_XS__APItest__Magic_test_isPUNCT_LC_uvchr( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10818 | XS_EUPXS(XS_XS__APItest__Magic_test_isPUNCT_LC_uvchr)static void XS_XS__APItest__Magic_test_isPUNCT_LC_uvchr( CV* cv __attribute__((unused))) |
| 10819 | { |
| 10820 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10821 | if (items != 1) |
| 10822 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10823 | { |
| 10824 | bool_Bool RETVAL; |
| 10825 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10826 | ; |
| 10827 | #line 5874 "APItest.xs" |
| 10828 | RETVAL = isPUNCT_LC_uvchr(ord)(ord < 256 ? (! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (ord)] & (1U << (5))) ? (_Bool)1 : (_Bool)0) : ((ispunct( (U8) (ord))) ? (_Bool)1 : (_Bool)0)) : Perl__is_uni_FOO ( 5,ord)); |
| 10829 | #line 10830 "APItest.c" |
| 10830 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10831 | } |
| 10832 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10833 | } |
| 10834 | |
| 10835 | |
| 10836 | XS_EUPXS(XS_XS__APItest__Magic_test_isPUNCT)static void XS_XS__APItest__Magic_test_isPUNCT( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10837 | XS_EUPXS(XS_XS__APItest__Magic_test_isPUNCT)static void XS_XS__APItest__Magic_test_isPUNCT( CV* cv __attribute__ ((unused))) |
| 10838 | { |
| 10839 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10840 | if (items != 1) |
| 10841 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10842 | { |
| 10843 | bool_Bool RETVAL; |
| 10844 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10845 | ; |
| 10846 | #line 5881 "APItest.xs" |
| 10847 | RETVAL = isPUNCT(ord)(( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && ((PL_charclass[(U8) (ord)] & ((1U << (5)) | (1U << (14)))) == ((1U << (5)) | (1U << (14))))); |
| 10848 | #line 10849 "APItest.c" |
| 10849 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10850 | } |
| 10851 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10852 | } |
| 10853 | |
| 10854 | |
| 10855 | XS_EUPXS(XS_XS__APItest__Magic_test_isPUNCT_A)static void XS_XS__APItest__Magic_test_isPUNCT_A( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10856 | XS_EUPXS(XS_XS__APItest__Magic_test_isPUNCT_A)static void XS_XS__APItest__Magic_test_isPUNCT_A( CV* cv __attribute__ ((unused))) |
| 10857 | { |
| 10858 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10859 | if (items != 1) |
| 10860 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10861 | { |
| 10862 | bool_Bool RETVAL; |
| 10863 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10864 | ; |
| 10865 | #line 5888 "APItest.xs" |
| 10866 | RETVAL = isPUNCT_A(ord)(( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && ((PL_charclass[(U8) (ord)] & ((1U << (5)) | (1U << (14)))) == ((1U << (5)) | (1U << (14))))); |
| 10867 | #line 10868 "APItest.c" |
| 10868 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10869 | } |
| 10870 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10871 | } |
| 10872 | |
| 10873 | |
| 10874 | XS_EUPXS(XS_XS__APItest__Magic_test_isPUNCT_L1)static void XS_XS__APItest__Magic_test_isPUNCT_L1( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10875 | XS_EUPXS(XS_XS__APItest__Magic_test_isPUNCT_L1)static void XS_XS__APItest__Magic_test_isPUNCT_L1( CV* cv __attribute__ ((unused))) |
| 10876 | { |
| 10877 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10878 | if (items != 1) |
| 10879 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10880 | { |
| 10881 | bool_Bool RETVAL; |
| 10882 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10883 | ; |
| 10884 | #line 5895 "APItest.xs" |
| 10885 | RETVAL = isPUNCT_L1(ord)((( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && (PL_charclass[(U8) (ord)] & (1U << (5)))) ? (_Bool )1 : (_Bool)0); |
| 10886 | #line 10887 "APItest.c" |
| 10887 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10888 | } |
| 10889 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10890 | } |
| 10891 | |
| 10892 | |
| 10893 | XS_EUPXS(XS_XS__APItest__Magic_test_isPUNCT_LC)static void XS_XS__APItest__Magic_test_isPUNCT_LC( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10894 | XS_EUPXS(XS_XS__APItest__Magic_test_isPUNCT_LC)static void XS_XS__APItest__Magic_test_isPUNCT_LC( CV* cv __attribute__ ((unused))) |
| 10895 | { |
| 10896 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10897 | if (items != 1) |
| 10898 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10899 | { |
| 10900 | bool_Bool RETVAL; |
| 10901 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10902 | ; |
| 10903 | #line 5902 "APItest.xs" |
| 10904 | RETVAL = isPUNCT_LC(ord)(! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (ord)] & (1U << (5))) ? (_Bool)1 : (_Bool)0) : ((ispunct( (U8) ( ord))) ? (_Bool)1 : (_Bool)0)); |
| 10905 | #line 10906 "APItest.c" |
| 10906 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10907 | } |
| 10908 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10909 | } |
| 10910 | |
| 10911 | |
| 10912 | XS_EUPXS(XS_XS__APItest__Magic_test_isPUNCT_utf8)static void XS_XS__APItest__Magic_test_isPUNCT_utf8( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10913 | XS_EUPXS(XS_XS__APItest__Magic_test_isPUNCT_utf8)static void XS_XS__APItest__Magic_test_isPUNCT_utf8( CV* cv __attribute__ ((unused))) |
| 10914 | { |
| 10915 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10916 | if (items != 2) |
| 10917 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 10918 | { |
| 10919 | #line 5909 "APItest.xs" |
| 10920 | const U8 * e; |
| 10921 | #line 10922 "APItest.c" |
| 10922 | bool_Bool RETVAL; |
| 10923 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 10924 | ; |
| 10925 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 10926 | ; |
| 10927 | #line 5911 "APItest.xs" |
| 10928 | if (type >= 0) { |
| 10929 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 10930 | RETVAL = isPUNCT_utf8_safe(p, e)((! ((e) > (p))) ? (Perl__force_out_malformed_utf8_message ( (U8 *) (p),(U8 *) (e),0,1), 0) : (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? ( (( (sizeof(*(p)) == 1) || !(((U64)((*(p)) | 0)) & ~0xFF)) && (PL_charclass[(U8) (*(p))] & (1U << (5) ))) ? (_Bool)1 : (_Bool)0) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) (((((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) )) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7 ) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ( (U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | ((( 2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0)) ))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0))))))) - ((( (((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= ( ((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6 )) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect((( (e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0))) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6)) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? ((( (sizeof(( ( ((U8 ) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+ 1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6 ) | ((( ((U8) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) && (PL_charclass [(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8 ) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1)))) ) | 0)))))] & (1U << (5)))) ? (_Bool)1 : (_Bool)0) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) ( e),0,1), 0)) : Perl__is_utf8_FOO( 5,p,e))); |
| 10931 | } |
| 10932 | else { |
| 10933 | RETVAL = 0; |
| 10934 | } |
| 10935 | #line 10936 "APItest.c" |
| 10936 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10937 | } |
| 10938 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10939 | } |
| 10940 | |
| 10941 | |
| 10942 | XS_EUPXS(XS_XS__APItest__Magic_test_isPUNCT_LC_utf8)static void XS_XS__APItest__Magic_test_isPUNCT_LC_utf8( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10943 | XS_EUPXS(XS_XS__APItest__Magic_test_isPUNCT_LC_utf8)static void XS_XS__APItest__Magic_test_isPUNCT_LC_utf8( CV* cv __attribute__((unused))) |
| 10944 | { |
| 10945 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10946 | if (items != 2) |
| 10947 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 10948 | { |
| 10949 | #line 5924 "APItest.xs" |
| 10950 | const U8 * e; |
| 10951 | #line 10952 "APItest.c" |
| 10952 | bool_Bool RETVAL; |
| 10953 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 10954 | ; |
| 10955 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 10956 | ; |
| 10957 | #line 5926 "APItest.xs" |
| 10958 | if (type >= 0) { |
| 10959 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 10960 | RETVAL = isPUNCT_LC_utf8_safe(p, e)( (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? (! ( (sizeof(*(p)) == 1) || !(((U64)((* (p)) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (*(p))] & (1U << (5))) ? (_Bool)1 : (_Bool)0) : ((ispunct( (U8) (*(p)))) ? (_Bool)1 : (_Bool)0)) : (( ( ( ( sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) ((( ((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) (( ((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) ))) | 0))))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0)))) ))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0 ))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect ((((e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0)) ) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6) ) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? (! ( (sizeof (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7 ) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2)))) ) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ( (1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0 ))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0)))))] & (1U << (5))) ? (_Bool)1 : ( _Bool)0) : ((ispunct( (U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2)) ))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))))) ? (_Bool)1 : (_Bool)0)) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) (e),0,1), 0)) : Perl__is_utf8_FOO( 5,p,e))); |
| 10961 | } |
| 10962 | else { |
| 10963 | RETVAL = 0; |
| 10964 | } |
| 10965 | #line 10966 "APItest.c" |
| 10966 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10967 | } |
| 10968 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10969 | } |
| 10970 | |
| 10971 | |
| 10972 | XS_EUPXS(XS_XS__APItest__Magic_test_isXDIGIT_uni)static void XS_XS__APItest__Magic_test_isXDIGIT_uni( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10973 | XS_EUPXS(XS_XS__APItest__Magic_test_isXDIGIT_uni)static void XS_XS__APItest__Magic_test_isXDIGIT_uni( CV* cv __attribute__ ((unused))) |
| 10974 | { |
| 10975 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10976 | if (items != 1) |
| 10977 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10978 | { |
| 10979 | bool_Bool RETVAL; |
| 10980 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 10981 | ; |
| 10982 | #line 5939 "APItest.xs" |
| 10983 | RETVAL = isXDIGIT_uni(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (12)))) ? (_Bool)1 : (_Bool)0) : ( ( ( (sizeof(ord ) == sizeof(U8)) ? ( (((U64) (((((U8) (ord)))) - (((0xFF10)) | 0))) <= (((U64) ((((0xFF19) - (0xFF10))) | 0))))) : (sizeof (ord) == sizeof(U32)) ? ( (((U64) (((((U32) (ord)))) - (((0xFF10 )) | 0))) <= (((U64) ((((0xFF19) - (0xFF10))) | 0))))) : ( ( (((U64) (((((U64) (ord)))) - (((0xFF10)) | 0))) <= (((U64 ) ((((0xFF19) - (0xFF10))) | 0)))))))) || ( 0xFF19 < ord && ( ( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord) ))) - (((0xFF21)) | 0))) <= (((U64) ((((0xFF26) - (0xFF21) )) | 0))))) : (sizeof(ord) == sizeof(U32)) ? ( (((U64) (((((U32 ) (ord)))) - (((0xFF21)) | 0))) <= (((U64) ((((0xFF26) - ( 0xFF21))) | 0))))) : ( ( (((U64) (((((U64) (ord)))) - (((0xFF21 )) | 0))) <= (((U64) ((((0xFF26) - (0xFF21))) | 0)))))))) || ( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord))) ) - (((0xFF41)) | 0))) <= (((U64) ((((0xFF46) - (0xFF41))) | 0))))) : (sizeof(ord) == sizeof(U32)) ? ( (((U64) (((((U32 ) (ord)))) - (((0xFF41)) | 0))) <= (((U64) ((((0xFF46) - ( 0xFF41))) | 0))))) : ( ( (((U64) (((((U64) (ord)))) - (((0xFF41 )) | 0))) <= (((U64) ((((0xFF46) - (0xFF41))) | 0)))))))) ) ) )); |
| 10984 | #line 10985 "APItest.c" |
| 10985 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 10986 | } |
| 10987 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 10988 | } |
| 10989 | |
| 10990 | |
| 10991 | XS_EUPXS(XS_XS__APItest__Magic_test_isXDIGIT_uvchr)static void XS_XS__APItest__Magic_test_isXDIGIT_uvchr( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 10992 | XS_EUPXS(XS_XS__APItest__Magic_test_isXDIGIT_uvchr)static void XS_XS__APItest__Magic_test_isXDIGIT_uvchr( CV* cv __attribute__((unused))) |
| 10993 | { |
| 10994 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 10995 | if (items != 1) |
| 10996 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 10997 | { |
| 10998 | bool_Bool RETVAL; |
| 10999 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 11000 | ; |
| 11001 | #line 5946 "APItest.xs" |
| 11002 | RETVAL = isXDIGIT_uvchr(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (12)))) ? (_Bool)1 : (_Bool)0) : ( ( ( (sizeof(ord ) == sizeof(U8)) ? ( (((U64) (((((U8) (ord)))) - (((0xFF10)) | 0))) <= (((U64) ((((0xFF19) - (0xFF10))) | 0))))) : (sizeof (ord) == sizeof(U32)) ? ( (((U64) (((((U32) (ord)))) - (((0xFF10 )) | 0))) <= (((U64) ((((0xFF19) - (0xFF10))) | 0))))) : ( ( (((U64) (((((U64) (ord)))) - (((0xFF10)) | 0))) <= (((U64 ) ((((0xFF19) - (0xFF10))) | 0)))))))) || ( 0xFF19 < ord && ( ( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord) ))) - (((0xFF21)) | 0))) <= (((U64) ((((0xFF26) - (0xFF21) )) | 0))))) : (sizeof(ord) == sizeof(U32)) ? ( (((U64) (((((U32 ) (ord)))) - (((0xFF21)) | 0))) <= (((U64) ((((0xFF26) - ( 0xFF21))) | 0))))) : ( ( (((U64) (((((U64) (ord)))) - (((0xFF21 )) | 0))) <= (((U64) ((((0xFF26) - (0xFF21))) | 0)))))))) || ( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord))) ) - (((0xFF41)) | 0))) <= (((U64) ((((0xFF46) - (0xFF41))) | 0))))) : (sizeof(ord) == sizeof(U32)) ? ( (((U64) (((((U32 ) (ord)))) - (((0xFF41)) | 0))) <= (((U64) ((((0xFF46) - ( 0xFF41))) | 0))))) : ( ( (((U64) (((((U64) (ord)))) - (((0xFF41 )) | 0))) <= (((U64) ((((0xFF46) - (0xFF41))) | 0)))))))) ) ) )); |
| 11003 | #line 11004 "APItest.c" |
| 11004 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11005 | } |
| 11006 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11007 | } |
| 11008 | |
| 11009 | |
| 11010 | XS_EUPXS(XS_XS__APItest__Magic_test_isXDIGIT_LC_uvchr)static void XS_XS__APItest__Magic_test_isXDIGIT_LC_uvchr( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11011 | XS_EUPXS(XS_XS__APItest__Magic_test_isXDIGIT_LC_uvchr)static void XS_XS__APItest__Magic_test_isXDIGIT_LC_uvchr( CV* cv __attribute__((unused))) |
| 11012 | { |
| 11013 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11014 | if (items != 1) |
| 11015 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 11016 | { |
| 11017 | bool_Bool RETVAL; |
| 11018 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 11019 | ; |
| 11020 | #line 5953 "APItest.xs" |
| 11021 | RETVAL = isXDIGIT_LC_uvchr(ord)(ord < 256 ? (! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (ord)] & (1U << (12))) ? (_Bool)1 : (_Bool)0) : ((isxdigit( (U8) (ord))) ? (_Bool)1 : (_Bool)0)) : ( ( ( ( sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord)))) - (( (0xFF10)) | 0))) <= (((U64) ((((0xFF19) - (0xFF10))) | 0)) ))) : (sizeof(ord) == sizeof(U32)) ? ( (((U64) (((((U32) (ord )))) - (((0xFF10)) | 0))) <= (((U64) ((((0xFF19) - (0xFF10 ))) | 0))))) : ( ( (((U64) (((((U64) (ord)))) - (((0xFF10)) | 0))) <= (((U64) ((((0xFF19) - (0xFF10))) | 0)))))))) || ( 0xFF19 < ord && ( ( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord)))) - (((0xFF21)) | 0))) <= ((( U64) ((((0xFF26) - (0xFF21))) | 0))))) : (sizeof(ord) == sizeof (U32)) ? ( (((U64) (((((U32) (ord)))) - (((0xFF21)) | 0))) <= (((U64) ((((0xFF26) - (0xFF21))) | 0))))) : ( ( (((U64) (((( (U64) (ord)))) - (((0xFF21)) | 0))) <= (((U64) ((((0xFF26) - (0xFF21))) | 0)))))))) || ( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord)))) - (((0xFF41)) | 0))) <= (((U64 ) ((((0xFF46) - (0xFF41))) | 0))))) : (sizeof(ord) == sizeof( U32)) ? ( (((U64) (((((U32) (ord)))) - (((0xFF41)) | 0))) <= (((U64) ((((0xFF46) - (0xFF41))) | 0))))) : ( ( (((U64) (((( (U64) (ord)))) - (((0xFF41)) | 0))) <= (((U64) ((((0xFF46) - (0xFF41))) | 0)))))))) ) ) )); |
| 11022 | #line 11023 "APItest.c" |
| 11023 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11024 | } |
| 11025 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11026 | } |
| 11027 | |
| 11028 | |
| 11029 | XS_EUPXS(XS_XS__APItest__Magic_test_isXDIGIT)static void XS_XS__APItest__Magic_test_isXDIGIT( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11030 | XS_EUPXS(XS_XS__APItest__Magic_test_isXDIGIT)static void XS_XS__APItest__Magic_test_isXDIGIT( CV* cv __attribute__ ((unused))) |
| 11031 | { |
| 11032 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11033 | if (items != 1) |
| 11034 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 11035 | { |
| 11036 | bool_Bool RETVAL; |
| 11037 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 11038 | ; |
| 11039 | #line 5960 "APItest.xs" |
| 11040 | RETVAL = isXDIGIT(ord)((( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && (PL_charclass[(U8) (ord)] & (1U << (12)))) ? (_Bool )1 : (_Bool)0); |
| 11041 | #line 11042 "APItest.c" |
| 11042 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11043 | } |
| 11044 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11045 | } |
| 11046 | |
| 11047 | |
| 11048 | XS_EUPXS(XS_XS__APItest__Magic_test_isXDIGIT_A)static void XS_XS__APItest__Magic_test_isXDIGIT_A( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11049 | XS_EUPXS(XS_XS__APItest__Magic_test_isXDIGIT_A)static void XS_XS__APItest__Magic_test_isXDIGIT_A( CV* cv __attribute__ ((unused))) |
| 11050 | { |
| 11051 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11052 | if (items != 1) |
| 11053 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 11054 | { |
| 11055 | bool_Bool RETVAL; |
| 11056 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 11057 | ; |
| 11058 | #line 5967 "APItest.xs" |
| 11059 | RETVAL = isXDIGIT_A(ord)((( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && (PL_charclass[(U8) (ord)] & (1U << (12)))) ? (_Bool )1 : (_Bool)0); |
| 11060 | #line 11061 "APItest.c" |
| 11061 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11062 | } |
| 11063 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11064 | } |
| 11065 | |
| 11066 | |
| 11067 | XS_EUPXS(XS_XS__APItest__Magic_test_isXDIGIT_L1)static void XS_XS__APItest__Magic_test_isXDIGIT_L1( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11068 | XS_EUPXS(XS_XS__APItest__Magic_test_isXDIGIT_L1)static void XS_XS__APItest__Magic_test_isXDIGIT_L1( CV* cv __attribute__ ((unused))) |
| 11069 | { |
| 11070 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11071 | if (items != 1) |
| 11072 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 11073 | { |
| 11074 | bool_Bool RETVAL; |
| 11075 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 11076 | ; |
| 11077 | #line 5974 "APItest.xs" |
| 11078 | RETVAL = isXDIGIT_L1(ord)((( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && (PL_charclass[(U8) (ord)] & (1U << (12)))) ? (_Bool )1 : (_Bool)0); |
| 11079 | #line 11080 "APItest.c" |
| 11080 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11081 | } |
| 11082 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11083 | } |
| 11084 | |
| 11085 | |
| 11086 | XS_EUPXS(XS_XS__APItest__Magic_test_isXDIGIT_LC)static void XS_XS__APItest__Magic_test_isXDIGIT_LC( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11087 | XS_EUPXS(XS_XS__APItest__Magic_test_isXDIGIT_LC)static void XS_XS__APItest__Magic_test_isXDIGIT_LC( CV* cv __attribute__ ((unused))) |
| 11088 | { |
| 11089 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11090 | if (items != 1) |
| 11091 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 11092 | { |
| 11093 | bool_Bool RETVAL; |
| 11094 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 11095 | ; |
| 11096 | #line 5981 "APItest.xs" |
| 11097 | RETVAL = isXDIGIT_LC(ord)(! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (ord)] & (1U << (12))) ? (_Bool)1 : (_Bool)0) : ((isxdigit( (U8 ) (ord))) ? (_Bool)1 : (_Bool)0)); |
| 11098 | #line 11099 "APItest.c" |
| 11099 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11100 | } |
| 11101 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11102 | } |
| 11103 | |
| 11104 | |
| 11105 | XS_EUPXS(XS_XS__APItest__Magic_test_isXDIGIT_utf8)static void XS_XS__APItest__Magic_test_isXDIGIT_utf8( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11106 | XS_EUPXS(XS_XS__APItest__Magic_test_isXDIGIT_utf8)static void XS_XS__APItest__Magic_test_isXDIGIT_utf8( CV* cv __attribute__ ((unused))) |
| 11107 | { |
| 11108 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11109 | if (items != 2) |
| 11110 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 11111 | { |
| 11112 | #line 5988 "APItest.xs" |
| 11113 | const U8 * e; |
| 11114 | #line 11115 "APItest.c" |
| 11115 | bool_Bool RETVAL; |
| 11116 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11117 | ; |
| 11118 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 11119 | ; |
| 11120 | #line 5990 "APItest.xs" |
| 11121 | if (type >= 0) { |
| 11122 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 11123 | RETVAL = isXDIGIT_utf8_safe(p, e)( (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? ((( (sizeof(*(p)) == 1) || !(((U64)((*( p)) | 0)) & ~0xFF)) && (PL_charclass[(U8) (*(p))] & (1U << (12)))) ? (_Bool)1 : (_Bool)0) : (( ( ( ( sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) ((( ((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) (( ((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) ))) | 0))))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0)))) ))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0 ))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2))))))))) | 0)))))))))) ? 0 : (__builtin_expect ((((e) - (p) < PL_utf8skip[*(const U8*)(p)]) ? (_Bool)1 : ( _Bool)0),(0)) ? (Perl__force_out_malformed_utf8_message( (U8 * ) (p),(U8 *) (e),0,1), 0) : ( ( 0xEF == ((const U8*)p)[0] ) ? ( ( 0xBC == ((const U8*)p)[1] ) ? ( ( ( ( (sizeof(((const U8 *)p)[2]) == sizeof(U8)) ? ( (((U64) (((((U8) (((const U8*)p)[ 2])))) - (((0x90)) | 0))) <= (((U64) ((((0x99) - (0x90))) | 0))))) : (sizeof(((const U8*)p)[2]) == sizeof(U32)) ? ( (((U64 ) (((((U32) (((const U8*)p)[2])))) - (((0x90)) | 0))) <= ( ((U64) ((((0x99) - (0x90))) | 0))))) : ( ( (((U64) (((((U64) ( ((const U8*)p)[2])))) - (((0x90)) | 0))) <= (((U64) ((((0x99 ) - (0x90))) | 0)))))))) || ( ( (sizeof(((const U8*)p)[2]) == sizeof(U8)) ? ( (((U64) (((((U8) (((const U8*)p)[2])))) - (( (0xA1)) | 0))) <= (((U64) ((((0xA6) - (0xA1))) | 0))))) : ( sizeof(((const U8*)p)[2]) == sizeof(U32)) ? ( (((U64) (((((U32 ) (((const U8*)p)[2])))) - (((0xA1)) | 0))) <= (((U64) ((( (0xA6) - (0xA1))) | 0))))) : ( ( (((U64) (((((U64) (((const U8 *)p)[2])))) - (((0xA1)) | 0))) <= (((U64) ((((0xA6) - (0xA1 ))) | 0)))))))) ) ? 3 : 0 ) : ( ( 0xBD == ((const U8*)p)[1] ) && ( ( ( (sizeof(((const U8*)p)[2]) == sizeof(U8)) ? ( (((U64) (((((U8) (((const U8*)p)[2])))) - (((0x81)) | 0))) <= (((U64) ((((0x86) - (0x81))) | 0))))) : (sizeof(((const U8*)p)[2]) == sizeof(U32)) ? ( (((U64) (((((U32) (((const U8 *)p)[2])))) - (((0x81)) | 0))) <= (((U64) ((((0x86) - (0x81 ))) | 0))))) : ( ( (((U64) (((((U64) (((const U8*)p)[2])))) - (((0x81)) | 0))) <= (((U64) ((((0x86) - (0x81))) | 0))))) ))) ) ) ? 3 : 0 ): 0 ))); |
| 11124 | } |
| 11125 | else { |
| 11126 | RETVAL = 0; |
| 11127 | } |
| 11128 | #line 11129 "APItest.c" |
| 11129 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11130 | } |
| 11131 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11132 | } |
| 11133 | |
| 11134 | |
| 11135 | XS_EUPXS(XS_XS__APItest__Magic_test_isXDIGIT_LC_utf8)static void XS_XS__APItest__Magic_test_isXDIGIT_LC_utf8( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11136 | XS_EUPXS(XS_XS__APItest__Magic_test_isXDIGIT_LC_utf8)static void XS_XS__APItest__Magic_test_isXDIGIT_LC_utf8( CV* cv __attribute__((unused))) |
| 11137 | { |
| 11138 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11139 | if (items != 2) |
| 11140 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 11141 | { |
| 11142 | #line 6003 "APItest.xs" |
| 11143 | const U8 * e; |
| 11144 | #line 11145 "APItest.c" |
| 11145 | bool_Bool RETVAL; |
| 11146 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11147 | ; |
| 11148 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 11149 | ; |
| 11150 | #line 6005 "APItest.xs" |
| 11151 | if (type >= 0) { |
| 11152 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 11153 | RETVAL = isXDIGIT_LC_utf8_safe(p, e)( (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? (! ( (sizeof(*(p)) == 1) || !(((U64)((* (p)) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (*(p))] & (1U << (12))) ? (_Bool)1 : (_Bool)0 ) : ((isxdigit( (U8) (*(p)))) ? (_Bool)1 : (_Bool)0)) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) ( ((((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) (( ((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) ))) | 0))))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0)))) ))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0 ))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect ((((e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0)) ) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6) ) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? (! ( (sizeof (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7 ) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2)))) ) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ( (1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0 ))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0)))))] & (1U << (12))) ? (_Bool)1 : (_Bool)0) : ((isxdigit( (U8) (( ( ((U8) ((( ((( ( ((U8) ((*( p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)- 2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & (( U8) ((1U << 6) - 1))))) | 0))))))) ? (_Bool)1 : (_Bool) 0)) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) (e),0,1), 0)) : (__builtin_expect((((e) - (p) < PL_utf8skip [*(const U8*)(p)]) ? (_Bool)1 : (_Bool)0),(0)) ? (Perl__force_out_malformed_utf8_message ( (U8 *) (p),(U8 *) (e),0,1), 0) : ( ( 0xEF == ((const U8*)p) [0] ) ? ( ( 0xBC == ((const U8*)p)[1] ) ? ( ( ( ( (sizeof(((const U8*)p)[2]) == sizeof(U8)) ? ( (((U64) (((((U8) (((const U8*) p)[2])))) - (((0x90)) | 0))) <= (((U64) ((((0x99) - (0x90) )) | 0))))) : (sizeof(((const U8*)p)[2]) == sizeof(U32)) ? ( ( ((U64) (((((U32) (((const U8*)p)[2])))) - (((0x90)) | 0))) <= (((U64) ((((0x99) - (0x90))) | 0))))) : ( ( (((U64) (((((U64 ) (((const U8*)p)[2])))) - (((0x90)) | 0))) <= (((U64) ((( (0x99) - (0x90))) | 0)))))))) || ( ( (sizeof(((const U8*)p)[2 ]) == sizeof(U8)) ? ( (((U64) (((((U8) (((const U8*)p)[2])))) - (((0xA1)) | 0))) <= (((U64) ((((0xA6) - (0xA1))) | 0))) )) : (sizeof(((const U8*)p)[2]) == sizeof(U32)) ? ( (((U64) ( ((((U32) (((const U8*)p)[2])))) - (((0xA1)) | 0))) <= (((U64 ) ((((0xA6) - (0xA1))) | 0))))) : ( ( (((U64) (((((U64) (((const U8*)p)[2])))) - (((0xA1)) | 0))) <= (((U64) ((((0xA6) - ( 0xA1))) | 0)))))))) ) ? 3 : 0 ) : ( ( 0xBD == ((const U8*)p)[ 1] ) && ( ( ( (sizeof(((const U8*)p)[2]) == sizeof(U8 )) ? ( (((U64) (((((U8) (((const U8*)p)[2])))) - (((0x81)) | 0 ))) <= (((U64) ((((0x86) - (0x81))) | 0))))) : (sizeof(((const U8*)p)[2]) == sizeof(U32)) ? ( (((U64) (((((U32) (((const U8 *)p)[2])))) - (((0x81)) | 0))) <= (((U64) ((((0x86) - (0x81 ))) | 0))))) : ( ( (((U64) (((((U64) (((const U8*)p)[2])))) - (((0x81)) | 0))) <= (((U64) ((((0x86) - (0x81))) | 0))))) ))) ) ) ? 3 : 0 ): 0 )))); |
| 11154 | } |
| 11155 | else { |
| 11156 | RETVAL = 0; |
| 11157 | } |
| 11158 | #line 11159 "APItest.c" |
| 11159 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11160 | } |
| 11161 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11162 | } |
| 11163 | |
| 11164 | |
| 11165 | XS_EUPXS(XS_XS__APItest__Magic_test_isPSXSPC_uni)static void XS_XS__APItest__Magic_test_isPSXSPC_uni( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11166 | XS_EUPXS(XS_XS__APItest__Magic_test_isPSXSPC_uni)static void XS_XS__APItest__Magic_test_isPSXSPC_uni( CV* cv __attribute__ ((unused))) |
| 11167 | { |
| 11168 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11169 | if (items != 1) |
| 11170 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 11171 | { |
| 11172 | bool_Bool RETVAL; |
| 11173 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 11174 | ; |
| 11175 | #line 6018 "APItest.xs" |
| 11176 | RETVAL = isPSXSPC_uni(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (10)))) ? (_Bool)1 : (_Bool)0) : ( 0x1680 == ord || ( 0x1680 < ord && ( ( ( (sizeof(ord) == sizeof(U8 )) ? ( (((U64) (((((U8) (ord)))) - (((0x2000)) | 0))) <= ( ((U64) ((((0x200A) - (0x2000))) | 0))))) : (sizeof(ord) == sizeof (U32)) ? ( (((U64) (((((U32) (ord)))) - (((0x2000)) | 0))) <= (((U64) ((((0x200A) - (0x2000))) | 0))))) : ( ( (((U64) (((( (U64) (ord)))) - (((0x2000)) | 0))) <= (((U64) ((((0x200A) - (0x2000))) | 0)))))))) || ( 0x200A < ord && ( 0x2028 == ord || ( 0x2028 < ord && ( 0x2029 == ord || ( 0x2029 < ord && ( 0x202F == ord || ( 0x202F < ord && ( 0x205F == ord || 0x3000 == ord ) ) ) ) ) ) ) ) ) ) )); |
| 11177 | #line 11178 "APItest.c" |
| 11178 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11179 | } |
| 11180 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11181 | } |
| 11182 | |
| 11183 | |
| 11184 | XS_EUPXS(XS_XS__APItest__Magic_test_isPSXSPC_uvchr)static void XS_XS__APItest__Magic_test_isPSXSPC_uvchr( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11185 | XS_EUPXS(XS_XS__APItest__Magic_test_isPSXSPC_uvchr)static void XS_XS__APItest__Magic_test_isPSXSPC_uvchr( CV* cv __attribute__((unused))) |
| 11186 | { |
| 11187 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11188 | if (items != 1) |
| 11189 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 11190 | { |
| 11191 | bool_Bool RETVAL; |
| 11192 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 11193 | ; |
| 11194 | #line 6025 "APItest.xs" |
| 11195 | RETVAL = isPSXSPC_uvchr(ord)((ord) < 256 ? ((( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) && (PL_charclass[(U8) (ord)] & ( 1U << (10)))) ? (_Bool)1 : (_Bool)0) : ( 0x1680 == ord || ( 0x1680 < ord && ( ( ( (sizeof(ord) == sizeof(U8 )) ? ( (((U64) (((((U8) (ord)))) - (((0x2000)) | 0))) <= ( ((U64) ((((0x200A) - (0x2000))) | 0))))) : (sizeof(ord) == sizeof (U32)) ? ( (((U64) (((((U32) (ord)))) - (((0x2000)) | 0))) <= (((U64) ((((0x200A) - (0x2000))) | 0))))) : ( ( (((U64) (((( (U64) (ord)))) - (((0x2000)) | 0))) <= (((U64) ((((0x200A) - (0x2000))) | 0)))))))) || ( 0x200A < ord && ( 0x2028 == ord || ( 0x2028 < ord && ( 0x2029 == ord || ( 0x2029 < ord && ( 0x202F == ord || ( 0x202F < ord && ( 0x205F == ord || 0x3000 == ord ) ) ) ) ) ) ) ) ) ) )); |
| 11196 | #line 11197 "APItest.c" |
| 11197 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11198 | } |
| 11199 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11200 | } |
| 11201 | |
| 11202 | |
| 11203 | XS_EUPXS(XS_XS__APItest__Magic_test_isPSXSPC_LC_uvchr)static void XS_XS__APItest__Magic_test_isPSXSPC_LC_uvchr( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11204 | XS_EUPXS(XS_XS__APItest__Magic_test_isPSXSPC_LC_uvchr)static void XS_XS__APItest__Magic_test_isPSXSPC_LC_uvchr( CV* cv __attribute__((unused))) |
| 11205 | { |
| 11206 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11207 | if (items != 1) |
| 11208 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 11209 | { |
| 11210 | bool_Bool RETVAL; |
| 11211 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 11212 | ; |
| 11213 | #line 6032 "APItest.xs" |
| 11214 | RETVAL = isPSXSPC_LC_uvchr(ord)(ord < 256 ? (! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0 )) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (ord)] & (1U << (10))) ? (_Bool)1 : (_Bool)0) : ((isspace( (U8) (ord))) ? (_Bool)1 : (_Bool)0)) : ( 0x1680 == ord || ( 0x1680 < ord && ( ( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord)))) - (((0x2000)) | 0) )) <= (((U64) ((((0x200A) - (0x2000))) | 0))))) : (sizeof( ord) == sizeof(U32)) ? ( (((U64) (((((U32) (ord)))) - (((0x2000 )) | 0))) <= (((U64) ((((0x200A) - (0x2000))) | 0))))) : ( ( (((U64) (((((U64) (ord)))) - (((0x2000)) | 0))) <= (((U64 ) ((((0x200A) - (0x2000))) | 0)))))))) || ( 0x200A < ord && ( 0x2028 == ord || ( 0x2028 < ord && ( 0x2029 == ord || ( 0x2029 < ord && ( 0x202F == ord || ( 0x202F < ord && ( 0x205F == ord || 0x3000 == ord ) ) ) ) ) ) ) ) ) ) )); |
| 11215 | #line 11216 "APItest.c" |
| 11216 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11217 | } |
| 11218 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11219 | } |
| 11220 | |
| 11221 | |
| 11222 | XS_EUPXS(XS_XS__APItest__Magic_test_isPSXSPC)static void XS_XS__APItest__Magic_test_isPSXSPC( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11223 | XS_EUPXS(XS_XS__APItest__Magic_test_isPSXSPC)static void XS_XS__APItest__Magic_test_isPSXSPC( CV* cv __attribute__ ((unused))) |
| 11224 | { |
| 11225 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11226 | if (items != 1) |
| 11227 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 11228 | { |
| 11229 | bool_Bool RETVAL; |
| 11230 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 11231 | ; |
| 11232 | #line 6039 "APItest.xs" |
| 11233 | RETVAL = isPSXSPC(ord)(( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && ((PL_charclass[(U8) (ord)] & ((1U << (10)) | (1U << (14)))) == ((1U << (10)) | (1U << (14))))); |
| 11234 | #line 11235 "APItest.c" |
| 11235 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11236 | } |
| 11237 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11238 | } |
| 11239 | |
| 11240 | |
| 11241 | XS_EUPXS(XS_XS__APItest__Magic_test_isPSXSPC_A)static void XS_XS__APItest__Magic_test_isPSXSPC_A( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11242 | XS_EUPXS(XS_XS__APItest__Magic_test_isPSXSPC_A)static void XS_XS__APItest__Magic_test_isPSXSPC_A( CV* cv __attribute__ ((unused))) |
| 11243 | { |
| 11244 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11245 | if (items != 1) |
| 11246 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 11247 | { |
| 11248 | bool_Bool RETVAL; |
| 11249 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 11250 | ; |
| 11251 | #line 6046 "APItest.xs" |
| 11252 | RETVAL = isPSXSPC_A(ord)(( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && ((PL_charclass[(U8) (ord)] & ((1U << (10)) | (1U << (14)))) == ((1U << (10)) | (1U << (14))))); |
| 11253 | #line 11254 "APItest.c" |
| 11254 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11255 | } |
| 11256 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11257 | } |
| 11258 | |
| 11259 | |
| 11260 | XS_EUPXS(XS_XS__APItest__Magic_test_isPSXSPC_L1)static void XS_XS__APItest__Magic_test_isPSXSPC_L1( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11261 | XS_EUPXS(XS_XS__APItest__Magic_test_isPSXSPC_L1)static void XS_XS__APItest__Magic_test_isPSXSPC_L1( CV* cv __attribute__ ((unused))) |
| 11262 | { |
| 11263 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11264 | if (items != 1) |
| 11265 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 11266 | { |
| 11267 | bool_Bool RETVAL; |
| 11268 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 11269 | ; |
| 11270 | #line 6053 "APItest.xs" |
| 11271 | RETVAL = isPSXSPC_L1(ord)((( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && (PL_charclass[(U8) (ord)] & (1U << (10)))) ? (_Bool )1 : (_Bool)0); |
| 11272 | #line 11273 "APItest.c" |
| 11273 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11274 | } |
| 11275 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11276 | } |
| 11277 | |
| 11278 | |
| 11279 | XS_EUPXS(XS_XS__APItest__Magic_test_isPSXSPC_LC)static void XS_XS__APItest__Magic_test_isPSXSPC_LC( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11280 | XS_EUPXS(XS_XS__APItest__Magic_test_isPSXSPC_LC)static void XS_XS__APItest__Magic_test_isPSXSPC_LC( CV* cv __attribute__ ((unused))) |
| 11281 | { |
| 11282 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11283 | if (items != 1) |
| 11284 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 11285 | { |
| 11286 | bool_Bool RETVAL; |
| 11287 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 11288 | ; |
| 11289 | #line 6060 "APItest.xs" |
| 11290 | RETVAL = isPSXSPC_LC(ord)(! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (ord)] & (1U << (10))) ? (_Bool)1 : (_Bool)0) : ((isspace( (U8) (ord))) ? (_Bool)1 : (_Bool)0)); |
| 11291 | #line 11292 "APItest.c" |
| 11292 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11293 | } |
| 11294 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11295 | } |
| 11296 | |
| 11297 | |
| 11298 | XS_EUPXS(XS_XS__APItest__Magic_test_isPSXSPC_utf8)static void XS_XS__APItest__Magic_test_isPSXSPC_utf8( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11299 | XS_EUPXS(XS_XS__APItest__Magic_test_isPSXSPC_utf8)static void XS_XS__APItest__Magic_test_isPSXSPC_utf8( CV* cv __attribute__ ((unused))) |
| 11300 | { |
| 11301 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11302 | if (items != 2) |
| 11303 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 11304 | { |
| 11305 | #line 6067 "APItest.xs" |
| 11306 | const U8 * e; |
| 11307 | #line 11308 "APItest.c" |
| 11308 | bool_Bool RETVAL; |
| 11309 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11310 | ; |
| 11311 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 11312 | ; |
| 11313 | #line 6069 "APItest.xs" |
| 11314 | if (type >= 0) { |
| 11315 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 11316 | RETVAL = isPSXSPC_utf8_safe(p, e)((! ((e) > (p))) ? (Perl__force_out_malformed_utf8_message ( (U8 *) (p),(U8 *) (e),0,1), 0) : (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? ( (( (sizeof(*(p)) == 1) || !(((U64)((*(p)) | 0)) & ~0xFF)) && (PL_charclass[(U8) (*(p))] & (1U << (10 )))) ? (_Bool)1 : (_Bool)0) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) (((((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) )) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7 ) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ( (U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | ((( 2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0)) ))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0))))))) - ((( (((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= ( ((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6 )) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect((( (e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0))) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6)) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? ((( (sizeof(( ( ((U8 ) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+ 1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6 ) | ((( ((U8) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) && (PL_charclass [(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8 ) (((*((p)+1 ))) | 0)))) & ((U8) ((1U << 6) - 1)))) ) | 0)))))] & (1U << (10)))) ? (_Bool)1 : (_Bool)0) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 *) (e),0,1), 0)) : (__builtin_expect((((e) - (p) < PL_utf8skip [*(const U8*)(p)]) ? (_Bool)1 : (_Bool)0),(0)) ? (Perl__force_out_malformed_utf8_message ( (U8 *) (p),(U8 *) (e),0,1), 0) : ( ( 0xE1 == ((const U8*)p) [0] ) ? ( ( ( 0x9A == ((const U8*)p)[1] ) && ( 0x80 == ((const U8*)p)[2] ) ) ? 3 : 0 ): ( 0xE2 == ((const U8*)p)[0] ) ? ( ( 0x80 == ((const U8*)p)[1] ) ? ( ( ( ( (sizeof(((const U8*)p)[2]) == sizeof(U8)) ? ( (((U64) (((((U8) (((const U8*) p)[2])))) - (((0x80)) | 0))) <= (((U64) ((((0x8A) - (0x80) )) | 0))))) : (sizeof(((const U8*)p)[2]) == sizeof(U32)) ? ( ( ((U64) (((((U32) (((const U8*)p)[2])))) - (((0x80)) | 0))) <= (((U64) ((((0x8A) - (0x80))) | 0))))) : ( ( (((U64) (((((U64 ) (((const U8*)p)[2])))) - (((0x80)) | 0))) <= (((U64) ((( (0x8A) - (0x80))) | 0)))))))) || ( ( (sizeof(((const U8*)p)[2 ]) == sizeof(U8)) ? ( (((U64) (((((U8) (((const U8*)p)[2])))) - (((0xA8)) | 0))) <= (((U64) ((((0xA9) - (0xA8))) | 0))) )) : (sizeof(((const U8*)p)[2]) == sizeof(U32)) ? ( (((U64) ( ((((U32) (((const U8*)p)[2])))) - (((0xA8)) | 0))) <= (((U64 ) ((((0xA9) - (0xA8))) | 0))))) : ( ( (((U64) (((((U64) (((const U8*)p)[2])))) - (((0xA8)) | 0))) <= (((U64) ((((0xA9) - ( 0xA8))) | 0)))))))) || 0xAF == ((const U8*)p)[2] ) ? 3 : 0 ) : ( ( 0x81 == ((const U8*)p)[1] ) && ( 0x9F == ((const U8*)p)[2] ) ) ? 3 : 0 ): ( ( ( 0xE3 == ((const U8*)p)[0] ) && ( 0x80 == ((const U8*)p)[1] ) ) && ( 0x80 == ((const U8*)p)[2] ) ) ? 3 : 0 )))); |
| 11317 | } |
| 11318 | else { |
| 11319 | RETVAL = 0; |
| 11320 | } |
| 11321 | #line 11322 "APItest.c" |
| 11322 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11323 | } |
| 11324 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11325 | } |
| 11326 | |
| 11327 | |
| 11328 | XS_EUPXS(XS_XS__APItest__Magic_test_isPSXSPC_LC_utf8)static void XS_XS__APItest__Magic_test_isPSXSPC_LC_utf8( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11329 | XS_EUPXS(XS_XS__APItest__Magic_test_isPSXSPC_LC_utf8)static void XS_XS__APItest__Magic_test_isPSXSPC_LC_utf8( CV* cv __attribute__((unused))) |
| 11330 | { |
| 11331 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11332 | if (items != 2) |
| 11333 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 11334 | { |
| 11335 | #line 6082 "APItest.xs" |
| 11336 | const U8 * e; |
| 11337 | #line 11338 "APItest.c" |
| 11338 | bool_Bool RETVAL; |
| 11339 | U8 * p = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11340 | ; |
| 11341 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 11342 | ; |
| 11343 | #line 6084 "APItest.xs" |
| 11344 | if (type >= 0) { |
| 11345 | e = p + UTF8SKIP(p)PL_utf8skip[*(const U8*)(p)] - type; |
| 11346 | RETVAL = isPSXSPC_LC_utf8_safe(p, e)( (((((U64)(((UV) (((*(p)) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? (! ( (sizeof(*(p)) == 1) || !(((U64)((* (p)) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass [(U8) (*(p))] & (1U << (10))) ? (_Bool)1 : (_Bool)0 ) : ((isspace( (U8) (*(p)))) ? (_Bool)1 : (_Bool)0)) : (( ( ( (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U8)) ? ( (((U64) ( ((((U8) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ((U8) ((*(p)) | 0)))) == sizeof(U32)) ? ( (((U64) (((((U32) (( ((U8) ((*(p)) | 0))))))) - ((((((((U8) ( 0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) (( ((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) ))) | 0))))) : ( ( (((U64) (((((U64) (( ((U8) ((*(p)) | 0)))) ))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0 ))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2))))))))) | 0))))))))) ? ((__builtin_expect ((((e) - (p) > 1 && ( (((( ((U8) ((*((p)+1)) | 0)) ) & ((U8) (0xFF << 6))) == (((U8) (0xFF << 6) ) & 0xB0))))) ? (_Bool)1 : (_Bool)0),(1))) ? (! ( (sizeof (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7 ) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0))))) == 1) || !(((U64)((( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2)))) ) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ( (1U << 6) - 1))))) | 0))))) | 0)) & ~0xFF)) ? 0 : PL_in_utf8_CTYPE_locale ? ((PL_charclass[(U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p)) | 0 ))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8) ((1U << 6) - 1))))) | 0)))))] & (1U << (10))) ? (_Bool)1 : (_Bool)0) : ((isspace( (U8) (( ( ((U8) ((( ((( ( ((U8) ((*(p )) | 0))) & (((2) >= 7) ? 0x00 : (0x1F >> ((2)-2 ))))) << 6) | ((( ((U8) (((*((p)+1))) | 0)))) & ((U8 ) ((1U << 6) - 1))))) | 0))))))) ? (_Bool)1 : (_Bool)0) ) : (Perl__force_out_malformed_utf8_message( (U8 *) (p),(U8 * ) (e),0,1), 0)) : (__builtin_expect((((e) - (p) < PL_utf8skip [*(const U8*)(p)]) ? (_Bool)1 : (_Bool)0),(0)) ? (Perl__force_out_malformed_utf8_message ( (U8 *) (p),(U8 *) (e),0,1), 0) : ( ( 0xE1 == ((const U8*)p) [0] ) ? ( ( ( 0x9A == ((const U8*)p)[1] ) && ( 0x80 == ((const U8*)p)[2] ) ) ? 3 : 0 ): ( 0xE2 == ((const U8*)p)[0] ) ? ( ( 0x80 == ((const U8*)p)[1] ) ? ( ( ( ( (sizeof(((const U8*)p)[2]) == sizeof(U8)) ? ( (((U64) (((((U8) (((const U8*) p)[2])))) - (((0x80)) | 0))) <= (((U64) ((((0x8A) - (0x80) )) | 0))))) : (sizeof(((const U8*)p)[2]) == sizeof(U32)) ? ( ( ((U64) (((((U32) (((const U8*)p)[2])))) - (((0x80)) | 0))) <= (((U64) ((((0x8A) - (0x80))) | 0))))) : ( ( (((U64) (((((U64 ) (((const U8*)p)[2])))) - (((0x80)) | 0))) <= (((U64) ((( (0x8A) - (0x80))) | 0)))))))) || ( ( (sizeof(((const U8*)p)[2 ]) == sizeof(U8)) ? ( (((U64) (((((U8) (((const U8*)p)[2])))) - (((0xA8)) | 0))) <= (((U64) ((((0xA9) - (0xA8))) | 0))) )) : (sizeof(((const U8*)p)[2]) == sizeof(U32)) ? ( (((U64) ( ((((U32) (((const U8*)p)[2])))) - (((0xA8)) | 0))) <= (((U64 ) ((((0xA9) - (0xA8))) | 0))))) : ( ( (((U64) (((((U64) (((const U8*)p)[2])))) - (((0xA8)) | 0))) <= (((U64) ((((0xA9) - ( 0xA8))) | 0)))))))) || 0xAF == ((const U8*)p)[2] ) ? 3 : 0 ) : ( ( 0x81 == ((const U8*)p)[1] ) && ( 0x9F == ((const U8*)p)[2] ) ) ? 3 : 0 ): ( ( ( 0xE3 == ((const U8*)p)[0] ) && ( 0x80 == ((const U8*)p)[1] ) ) && ( 0x80 == ((const U8*)p)[2] ) ) ? 3 : 0 )))); |
| 11347 | } |
| 11348 | else { |
| 11349 | RETVAL = 0; |
| 11350 | } |
| 11351 | #line 11352 "APItest.c" |
| 11352 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11353 | } |
| 11354 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11355 | } |
| 11356 | |
| 11357 | |
| 11358 | XS_EUPXS(XS_XS__APItest__Magic_test_isQUOTEMETA)static void XS_XS__APItest__Magic_test_isQUOTEMETA( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11359 | XS_EUPXS(XS_XS__APItest__Magic_test_isQUOTEMETA)static void XS_XS__APItest__Magic_test_isQUOTEMETA( CV* cv __attribute__ ((unused))) |
| 11360 | { |
| 11361 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11362 | if (items != 1) |
| 11363 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 11364 | { |
| 11365 | bool_Bool RETVAL; |
| 11366 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 11367 | ; |
| 11368 | #line 6097 "APItest.xs" |
| 11369 | RETVAL = _isQUOTEMETA(ord)((( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF)) && (PL_charclass[(U8) (ord)] & (1U << (20)))) ? (_Bool )1 : (_Bool)0); |
| 11370 | #line 11371 "APItest.c" |
| 11371 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11372 | } |
| 11373 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11374 | } |
| 11375 | |
| 11376 | |
| 11377 | XS_EUPXS(XS_XS__APItest__Magic_test_OFFUNISKIP)static void XS_XS__APItest__Magic_test_OFFUNISKIP( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11378 | XS_EUPXS(XS_XS__APItest__Magic_test_OFFUNISKIP)static void XS_XS__APItest__Magic_test_OFFUNISKIP( CV* cv __attribute__ ((unused))) |
| 11379 | { |
| 11380 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11381 | if (items != 1) |
| 11382 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 11383 | { |
| 11384 | UV RETVAL; |
| 11385 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 11386 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 11387 | ; |
| 11388 | #line 6104 "APItest.xs" |
| 11389 | RETVAL = OFFUNISKIP(ord)((((U64)(ord)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (ord) < (32 * (1U << ( 6))) ? 2 : (UV) (ord ) < (16 * (1U << (2 * 6))) ? 3 : (UV) (ord) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (ord) < ( 4 * (1U << (4 * 6))) ? 5 : (UV) (ord) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (ord) < ((UV) 1U << (6 * 6)) ? 7 : 13)); |
| 11390 | #line 11391 "APItest.c" |
| 11391 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 11392 | } |
| 11393 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11394 | } |
| 11395 | |
| 11396 | |
| 11397 | XS_EUPXS(XS_XS__APItest__Magic_test_OFFUNI_IS_INVARIANT)static void XS_XS__APItest__Magic_test_OFFUNI_IS_INVARIANT( CV * cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11398 | XS_EUPXS(XS_XS__APItest__Magic_test_OFFUNI_IS_INVARIANT)static void XS_XS__APItest__Magic_test_OFFUNI_IS_INVARIANT( CV * cv __attribute__((unused))) |
| 11399 | { |
| 11400 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11401 | if (items != 1) |
| 11402 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 11403 | { |
| 11404 | bool_Bool RETVAL; |
| 11405 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 11406 | ; |
| 11407 | #line 6111 "APItest.xs" |
| 11408 | RETVAL = OFFUNI_IS_INVARIANT(ord)(((U64)(ord)) < (((U8) (0xFF << 6)) & 0xB0)); |
| 11409 | #line 11410 "APItest.c" |
| 11410 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11411 | } |
| 11412 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11413 | } |
| 11414 | |
| 11415 | |
| 11416 | XS_EUPXS(XS_XS__APItest__Magic_test_UVCHR_IS_INVARIANT)static void XS_XS__APItest__Magic_test_UVCHR_IS_INVARIANT( CV * cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11417 | XS_EUPXS(XS_XS__APItest__Magic_test_UVCHR_IS_INVARIANT)static void XS_XS__APItest__Magic_test_UVCHR_IS_INVARIANT( CV * cv __attribute__((unused))) |
| 11418 | { |
| 11419 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11420 | if (items != 1) |
| 11421 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 11422 | { |
| 11423 | bool_Bool RETVAL; |
| 11424 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 11425 | ; |
| 11426 | #line 6118 "APItest.xs" |
| 11427 | RETVAL = UVCHR_IS_INVARIANT(ord)((((U64)(((UV) ((ord) | 0)))) < (((U8) (0xFF << 6)) & 0xB0))); |
| 11428 | #line 11429 "APItest.c" |
| 11429 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11430 | } |
| 11431 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11432 | } |
| 11433 | |
| 11434 | |
| 11435 | XS_EUPXS(XS_XS__APItest__Magic_test_UTF8_IS_INVARIANT)static void XS_XS__APItest__Magic_test_UTF8_IS_INVARIANT( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11436 | XS_EUPXS(XS_XS__APItest__Magic_test_UTF8_IS_INVARIANT)static void XS_XS__APItest__Magic_test_UTF8_IS_INVARIANT( CV* cv __attribute__((unused))) |
| 11437 | { |
| 11438 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11439 | if (items != 1) |
| 11440 | croak_xs_usagePerl_croak_xs_usage(cv, "ch"); |
| 11441 | { |
| 11442 | bool_Bool RETVAL; |
| 11443 | char ch = (char)*SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11444 | ; |
| 11445 | #line 6125 "APItest.xs" |
| 11446 | RETVAL = UTF8_IS_INVARIANT(ch)((((U64)(((UV) (((ch) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0))); |
| 11447 | #line 11448 "APItest.c" |
| 11448 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11449 | } |
| 11450 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11451 | } |
| 11452 | |
| 11453 | |
| 11454 | XS_EUPXS(XS_XS__APItest__Magic_test_UVCHR_SKIP)static void XS_XS__APItest__Magic_test_UVCHR_SKIP( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11455 | XS_EUPXS(XS_XS__APItest__Magic_test_UVCHR_SKIP)static void XS_XS__APItest__Magic_test_UVCHR_SKIP( CV* cv __attribute__ ((unused))) |
| 11456 | { |
| 11457 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11458 | if (items != 1) |
| 11459 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 11460 | { |
| 11461 | UV RETVAL; |
| 11462 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 11463 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 11464 | ; |
| 11465 | #line 6132 "APItest.xs" |
| 11466 | RETVAL = UVCHR_SKIP(ord)( ((((U64)(((UV) ((ord) | 0)))) < (((U8) (0xFF << 6) ) & 0xB0))) ? 1 : ((UV) (ord) < (32 * (1U << ( 6 ))) ? 2 : (UV) (ord) < (16 * (1U << (2 * 6))) ? 3 : ( UV) (ord) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (ord) < ( 4 * (1U << (4 * 6))) ? 5 : (UV) (ord) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (ord) < ((UV) 1U << ( 6 * 6)) ? 7 : 13)); |
| 11467 | #line 11468 "APItest.c" |
| 11468 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 11469 | } |
| 11470 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11471 | } |
| 11472 | |
| 11473 | |
| 11474 | XS_EUPXS(XS_XS__APItest__Magic_test_UTF8_SKIP)static void XS_XS__APItest__Magic_test_UTF8_SKIP( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11475 | XS_EUPXS(XS_XS__APItest__Magic_test_UTF8_SKIP)static void XS_XS__APItest__Magic_test_UTF8_SKIP( CV* cv __attribute__ ((unused))) |
| 11476 | { |
| 11477 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11478 | if (items != 1) |
| 11479 | croak_xs_usagePerl_croak_xs_usage(cv, "ch"); |
| 11480 | { |
| 11481 | UV RETVAL; |
| 11482 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 11483 | char * ch = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11484 | ; |
| 11485 | #line 6139 "APItest.xs" |
| 11486 | RETVAL = UTF8_SKIP(ch)PL_utf8skip[*(const U8*)(ch)]; |
| 11487 | #line 11488 "APItest.c" |
| 11488 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 11489 | } |
| 11490 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11491 | } |
| 11492 | |
| 11493 | |
| 11494 | XS_EUPXS(XS_XS__APItest__Magic_test_UTF8_IS_START)static void XS_XS__APItest__Magic_test_UTF8_IS_START( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11495 | XS_EUPXS(XS_XS__APItest__Magic_test_UTF8_IS_START)static void XS_XS__APItest__Magic_test_UTF8_IS_START( CV* cv __attribute__ ((unused))) |
| 11496 | { |
| 11497 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11498 | if (items != 1) |
| 11499 | croak_xs_usagePerl_croak_xs_usage(cv, "ch"); |
| 11500 | { |
| 11501 | bool_Bool RETVAL; |
| 11502 | char ch = (char)*SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11503 | ; |
| 11504 | #line 6146 "APItest.xs" |
| 11505 | RETVAL = UTF8_IS_START(ch)( (( ((U8) ((ch) | 0))) >= (((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))); |
| 11506 | #line 11507 "APItest.c" |
| 11507 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11508 | } |
| 11509 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11510 | } |
| 11511 | |
| 11512 | |
| 11513 | XS_EUPXS(XS_XS__APItest__Magic_test_UTF8_IS_CONTINUATION)static void XS_XS__APItest__Magic_test_UTF8_IS_CONTINUATION( CV * cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11514 | XS_EUPXS(XS_XS__APItest__Magic_test_UTF8_IS_CONTINUATION)static void XS_XS__APItest__Magic_test_UTF8_IS_CONTINUATION( CV * cv __attribute__((unused))) |
| 11515 | { |
| 11516 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11517 | if (items != 1) |
| 11518 | croak_xs_usagePerl_croak_xs_usage(cv, "ch"); |
| 11519 | { |
| 11520 | bool_Bool RETVAL; |
| 11521 | char ch = (char)*SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11522 | ; |
| 11523 | #line 6153 "APItest.xs" |
| 11524 | RETVAL = UTF8_IS_CONTINUATION(ch)( (((( ((U8) ((ch) | 0))) & ((U8) (0xFF << 6))) == ( ((U8) (0xFF << 6)) & 0xB0)))); |
| 11525 | #line 11526 "APItest.c" |
| 11526 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11527 | } |
| 11528 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11529 | } |
| 11530 | |
| 11531 | |
| 11532 | XS_EUPXS(XS_XS__APItest__Magic_test_UTF8_IS_CONTINUED)static void XS_XS__APItest__Magic_test_UTF8_IS_CONTINUED( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11533 | XS_EUPXS(XS_XS__APItest__Magic_test_UTF8_IS_CONTINUED)static void XS_XS__APItest__Magic_test_UTF8_IS_CONTINUED( CV* cv __attribute__((unused))) |
| 11534 | { |
| 11535 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11536 | if (items != 1) |
| 11537 | croak_xs_usagePerl_croak_xs_usage(cv, "ch"); |
| 11538 | { |
| 11539 | bool_Bool RETVAL; |
| 11540 | char ch = (char)*SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11541 | ; |
| 11542 | #line 6160 "APItest.xs" |
| 11543 | RETVAL = UTF8_IS_CONTINUED(ch)( (! ((((U64)(((UV) (((ch) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0))))); |
| 11544 | #line 11545 "APItest.c" |
| 11545 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11546 | } |
| 11547 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11548 | } |
| 11549 | |
| 11550 | |
| 11551 | XS_EUPXS(XS_XS__APItest__Magic_test_UTF8_IS_DOWNGRADEABLE_START)static void XS_XS__APItest__Magic_test_UTF8_IS_DOWNGRADEABLE_START ( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11552 | XS_EUPXS(XS_XS__APItest__Magic_test_UTF8_IS_DOWNGRADEABLE_START)static void XS_XS__APItest__Magic_test_UTF8_IS_DOWNGRADEABLE_START ( CV* cv __attribute__((unused))) |
| 11553 | { |
| 11554 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11555 | if (items != 1) |
| 11556 | croak_xs_usagePerl_croak_xs_usage(cv, "ch"); |
| 11557 | { |
| 11558 | bool_Bool RETVAL; |
| 11559 | char ch = (char)*SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11560 | ; |
| 11561 | #line 6167 "APItest.xs" |
| 11562 | RETVAL = UTF8_IS_DOWNGRADEABLE_START(ch)( ( ( (sizeof(( ((U8) ((ch) | 0)))) == sizeof(U8)) ? ( (((U64 ) (((((U8) (( ((U8) ((ch) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2)))))))) | 0))) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2))))))))) | 0))))) : (sizeof(( ((U8) ((ch) | 0)))) == sizeof(U32)) ? ( ( ((U64) (((((U32) (( ((U8) ((ch) | 0))))))) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0))) <= (((U64) (((( ((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) ))) | 0))))) : ( ( (((U64) (((((U64) (( ((U8) ((ch) | 0)))))) ) - ((((((((U8) (0xFF << 6)) & 0xB0) >> 6) | ( ((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))) | 0) )) <= (((U64) ((((((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))) - 1) - ((((((U8) (0xFF << 6)) & 0xB0) >> 6) | (((2) > 7) ? 0xFF : ((U8) ( 0xFE << (7-(2))))))))) | 0))))))))); |
| 11563 | #line 11564 "APItest.c" |
| 11564 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11565 | } |
| 11566 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11567 | } |
| 11568 | |
| 11569 | |
| 11570 | XS_EUPXS(XS_XS__APItest__Magic_test_UTF8_IS_ABOVE_LATIN1)static void XS_XS__APItest__Magic_test_UTF8_IS_ABOVE_LATIN1( CV * cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11571 | XS_EUPXS(XS_XS__APItest__Magic_test_UTF8_IS_ABOVE_LATIN1)static void XS_XS__APItest__Magic_test_UTF8_IS_ABOVE_LATIN1( CV * cv __attribute__((unused))) |
| 11572 | { |
| 11573 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11574 | if (items != 1) |
| 11575 | croak_xs_usagePerl_croak_xs_usage(cv, "ch"); |
| 11576 | { |
| 11577 | bool_Bool RETVAL; |
| 11578 | char ch = (char)*SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11579 | ; |
| 11580 | #line 6174 "APItest.xs" |
| 11581 | RETVAL = UTF8_IS_ABOVE_LATIN1(ch)( (( ((U8) ((ch) | 0))) >= ((0x100 >> 6) | (((2) > 7) ? 0xFF : ((U8) (0xFE << (7-(2)))))))); |
| 11582 | #line 11583 "APItest.c" |
| 11583 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11584 | } |
| 11585 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11586 | } |
| 11587 | |
| 11588 | |
| 11589 | XS_EUPXS(XS_XS__APItest__Magic_test_isUTF8_POSSIBLY_PROBLEMATIC)static void XS_XS__APItest__Magic_test_isUTF8_POSSIBLY_PROBLEMATIC ( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11590 | XS_EUPXS(XS_XS__APItest__Magic_test_isUTF8_POSSIBLY_PROBLEMATIC)static void XS_XS__APItest__Magic_test_isUTF8_POSSIBLY_PROBLEMATIC ( CV* cv __attribute__((unused))) |
| 11591 | { |
| 11592 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11593 | if (items != 1) |
| 11594 | croak_xs_usagePerl_croak_xs_usage(cv, "ch"); |
| 11595 | { |
| 11596 | bool_Bool RETVAL; |
| 11597 | char ch = (char)*SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11598 | ; |
| 11599 | #line 6181 "APItest.xs" |
| 11600 | RETVAL = isUTF8_POSSIBLY_PROBLEMATIC(ch)( (U8) ch >= 0xED); |
| 11601 | #line 11602 "APItest.c" |
| 11602 | ST(0)PL_stack_base[ax + (0)] = boolSV(RETVAL)((RETVAL) ? &(PL_sv_immortals[0]) : &(PL_sv_immortals [2])); |
| 11603 | } |
| 11604 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11605 | } |
| 11606 | |
| 11607 | |
| 11608 | XS_EUPXS(XS_XS__APItest__Magic_test_isUTF8_CHAR)static void XS_XS__APItest__Magic_test_isUTF8_CHAR( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11609 | XS_EUPXS(XS_XS__APItest__Magic_test_isUTF8_CHAR)static void XS_XS__APItest__Magic_test_isUTF8_CHAR( CV* cv __attribute__ ((unused))) |
| 11610 | { |
| 11611 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11612 | if (items != 2) |
| 11613 | croak_xs_usagePerl_croak_xs_usage(cv, "s, len"); |
| 11614 | { |
| 11615 | STRLEN RETVAL; |
| 11616 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 11617 | char * s = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11618 | ; |
| 11619 | STRLEN len = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 11620 | ; |
| 11621 | #line 6188 "APItest.xs" |
| 11622 | RETVAL = isUTF8_CHARPerl_isUTF8_CHAR((U8 *) s, (U8 *) s + len); |
| 11623 | #line 11624 "APItest.c" |
| 11624 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 11625 | } |
| 11626 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11627 | } |
| 11628 | |
| 11629 | |
| 11630 | XS_EUPXS(XS_XS__APItest__Magic_test_isUTF8_CHAR_flags)static void XS_XS__APItest__Magic_test_isUTF8_CHAR_flags( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11631 | XS_EUPXS(XS_XS__APItest__Magic_test_isUTF8_CHAR_flags)static void XS_XS__APItest__Magic_test_isUTF8_CHAR_flags( CV* cv __attribute__((unused))) |
| 11632 | { |
| 11633 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11634 | if (items != 3) |
| 11635 | croak_xs_usagePerl_croak_xs_usage(cv, "s, len, flags"); |
| 11636 | { |
| 11637 | STRLEN RETVAL; |
| 11638 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 11639 | char * s = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11640 | ; |
| 11641 | STRLEN len = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 11642 | ; |
| 11643 | U32 flags = (unsigned long)SvUV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (2)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (2)],2)) |
| 11644 | ; |
| 11645 | #line 6195 "APItest.xs" |
| 11646 | RETVAL = isUTF8_CHAR_flags((U8 *) s, (U8 *) s + len, flags)(__builtin_expect(((((U8 *) s + len) <= ((U8 *) s)) ? (_Bool )1 : (_Bool)0),(0)) ? 0 : (((((U64)(((UV) (((*(U8 *) s) | 0) | 0)))) < (((U8) (0xFF << 6)) & 0xB0)))) ? 1 : __builtin_expect ((((((U8 *) s + len) - ((U8 *) s)) < PL_utf8skip[*(const U8 *)((U8 *) s)]) ? (_Bool)1 : (_Bool)0),(0)) ? 0 : Perl_is_utf8_char_helper ((U8 *) s, (U8 *) s + len, flags)); |
| 11647 | #line 11648 "APItest.c" |
| 11648 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 11649 | } |
| 11650 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11651 | } |
| 11652 | |
| 11653 | |
| 11654 | XS_EUPXS(XS_XS__APItest__Magic_test_isSTRICT_UTF8_CHAR)static void XS_XS__APItest__Magic_test_isSTRICT_UTF8_CHAR( CV * cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11655 | XS_EUPXS(XS_XS__APItest__Magic_test_isSTRICT_UTF8_CHAR)static void XS_XS__APItest__Magic_test_isSTRICT_UTF8_CHAR( CV * cv __attribute__((unused))) |
| 11656 | { |
| 11657 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11658 | if (items != 2) |
| 11659 | croak_xs_usagePerl_croak_xs_usage(cv, "s, len"); |
| 11660 | { |
| 11661 | STRLEN RETVAL; |
| 11662 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 11663 | char * s = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11664 | ; |
| 11665 | STRLEN len = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 11666 | ; |
| 11667 | #line 6202 "APItest.xs" |
| 11668 | RETVAL = isSTRICT_UTF8_CHARPerl_isSTRICT_UTF8_CHAR((U8 *) s, (U8 *) s + len); |
| 11669 | #line 11670 "APItest.c" |
| 11670 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 11671 | } |
| 11672 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11673 | } |
| 11674 | |
| 11675 | |
| 11676 | XS_EUPXS(XS_XS__APItest__Magic_test_isC9_STRICT_UTF8_CHAR)static void XS_XS__APItest__Magic_test_isC9_STRICT_UTF8_CHAR( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11677 | XS_EUPXS(XS_XS__APItest__Magic_test_isC9_STRICT_UTF8_CHAR)static void XS_XS__APItest__Magic_test_isC9_STRICT_UTF8_CHAR( CV* cv __attribute__((unused))) |
| 11678 | { |
| 11679 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11680 | if (items != 2) |
| 11681 | croak_xs_usagePerl_croak_xs_usage(cv, "s, len"); |
| 11682 | { |
| 11683 | STRLEN RETVAL; |
| 11684 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 11685 | char * s = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11686 | ; |
| 11687 | STRLEN len = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 11688 | ; |
| 11689 | #line 6209 "APItest.xs" |
| 11690 | RETVAL = isC9_STRICT_UTF8_CHARPerl_isC9_STRICT_UTF8_CHAR((U8 *) s, (U8 *) s + len); |
| 11691 | #line 11692 "APItest.c" |
| 11692 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 11693 | } |
| 11694 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11695 | } |
| 11696 | |
| 11697 | |
| 11698 | XS_EUPXS(XS_XS__APItest__Magic_test_is_utf8_valid_partial_char_flags)static void XS_XS__APItest__Magic_test_is_utf8_valid_partial_char_flags ( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11699 | XS_EUPXS(XS_XS__APItest__Magic_test_is_utf8_valid_partial_char_flags)static void XS_XS__APItest__Magic_test_is_utf8_valid_partial_char_flags ( CV* cv __attribute__((unused))) |
| 11700 | { |
| 11701 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11702 | if (items != 3) |
| 11703 | croak_xs_usagePerl_croak_xs_usage(cv, "s, len, flags"); |
| 11704 | { |
| 11705 | IV RETVAL; |
| 11706 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 11707 | char * s = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11708 | ; |
| 11709 | STRLEN len = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 11710 | ; |
| 11711 | U32 flags = (unsigned long)SvUV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (2)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (2)],2)) |
| 11712 | ; |
| 11713 | #line 6216 "APItest.xs" |
| 11714 | /* RETVAL should be bool (here and in tests below), but making it IV |
| 11715 | * allows us to test it returning 0 or 1 */ |
| 11716 | RETVAL = is_utf8_valid_partial_char_flagsPerl_is_utf8_valid_partial_char_flags((U8 *) s, (U8 *) s + len, flags); |
| 11717 | #line 11718 "APItest.c" |
| 11718 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHi((IV)RETVAL)do { do { IV TARGi_iv = (IV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1)) ? (_Bool)1 : (_Bool)0) ,(1))) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000 ); targ->sv_u.svu_iv = TARGi_iv; } else Perl_sv_setiv_mg( targ ,TARGi_iv); } while (0); (*++sp = (targ)); } while (0); |
| 11719 | } |
| 11720 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11721 | } |
| 11722 | |
| 11723 | |
| 11724 | XS_EUPXS(XS_XS__APItest__Magic_test_is_utf8_string)static void XS_XS__APItest__Magic_test_is_utf8_string( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11725 | XS_EUPXS(XS_XS__APItest__Magic_test_is_utf8_string)static void XS_XS__APItest__Magic_test_is_utf8_string( CV* cv __attribute__((unused))) |
| 11726 | { |
| 11727 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11728 | if (items != 2) |
| 11729 | croak_xs_usagePerl_croak_xs_usage(cv, "s, len"); |
| 11730 | { |
| 11731 | IV RETVAL; |
| 11732 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 11733 | char * s = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11734 | ; |
| 11735 | STRLEN len = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 11736 | ; |
| 11737 | #line 6225 "APItest.xs" |
| 11738 | RETVAL = is_utf8_string((U8 *) s, len)Perl_is_utf8_string_loclen((U8 *) s, len, ((void*)0), ((void* )0)); |
| 11739 | #line 11740 "APItest.c" |
| 11740 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHi((IV)RETVAL)do { do { IV TARGi_iv = (IV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1)) ? (_Bool)1 : (_Bool)0) ,(1))) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000 ); targ->sv_u.svu_iv = TARGi_iv; } else Perl_sv_setiv_mg( targ ,TARGi_iv); } while (0); (*++sp = (targ)); } while (0); |
| 11741 | } |
| 11742 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11743 | } |
| 11744 | |
| 11745 | #define WORDSIZEsizeof(PERL_UINTMAX_T) sizeof(PERL_UINTMAX_T) |
| 11746 | |
| 11747 | XS_EUPXS(XS_XS__APItest__Magic_test_is_utf8_invariant_string_loc)static void XS_XS__APItest__Magic_test_is_utf8_invariant_string_loc ( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11748 | XS_EUPXS(XS_XS__APItest__Magic_test_is_utf8_invariant_string_loc)static void XS_XS__APItest__Magic_test_is_utf8_invariant_string_loc ( CV* cv __attribute__((unused))) |
| 11749 | { |
| 11750 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11751 | if (items != 3) |
| 11752 | croak_xs_usagePerl_croak_xs_usage(cv, "s, offset, len"); |
| 11753 | { |
| 11754 | #line 6234 "APItest.xs" |
| 11755 | AV *av; |
| 11756 | const U8 * ep = NULL((void*)0); |
| 11757 | PERL_UINTMAX_T* copy; |
| 11758 | #line 11759 "APItest.c" |
| 11759 | AV * RETVAL; |
| 11760 | U8 * s = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11761 | ; |
| 11762 | STRLEN offset = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 11763 | ; |
| 11764 | STRLEN len = (STRLEN)SvUV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (2)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (2)],2)) |
| 11765 | ; |
| 11766 | #line 6238 "APItest.xs" |
| 11767 | /* 'offset' is number of bytes past a word boundary the testing of 's' |
| 11768 | * is to start at. Allocate space that does start at the word |
| 11769 | * boundary, and copy 's' to the correct offset past it. Then call the |
| 11770 | * tested function with that position */ |
| 11771 | Newx(copy, 1 + ((len + WORDSIZE - 1) / WORDSIZE), PERL_UINTMAX_T)(copy = ((void)(__builtin_expect(((((( sizeof(size_t) < sizeof (1 + ((len + sizeof(PERL_UINTMAX_T) - 1) / sizeof(PERL_UINTMAX_T ))) || sizeof(PERL_UINTMAX_T) > ((size_t)1 << 8*(sizeof (size_t) - sizeof(1 + ((len + sizeof(PERL_UINTMAX_T) - 1) / sizeof (PERL_UINTMAX_T)))))) ? (size_t)(1 + ((len + sizeof(PERL_UINTMAX_T ) - 1) / sizeof(PERL_UINTMAX_T))) : ((size_t)-1)/sizeof(PERL_UINTMAX_T )) > ((size_t)-1)/sizeof(PERL_UINTMAX_T))) ? (_Bool)1 : (_Bool )0),(0)) && (Perl_croak_memory_wrap(),0)), (PERL_UINTMAX_T *)(Perl_safesysmalloc((size_t)((1 + ((len + sizeof(PERL_UINTMAX_T ) - 1) / sizeof(PERL_UINTMAX_T)))*sizeof(PERL_UINTMAX_T)))))); |
| 11772 | Copy(s, (U8 *) copy + offset, len, U8)((void)(__builtin_expect(((((( sizeof(size_t) < sizeof(len ) || sizeof(U8) > ((size_t)1 << 8*(sizeof(size_t) - sizeof (len)))) ? (size_t)(len) : ((size_t)-1)/sizeof(U8)) > ((size_t )-1)/sizeof(U8))) ? (_Bool)1 : (_Bool)0),(0)) && (Perl_croak_memory_wrap (),0)), ((void)0), ((void)0), (void)memcpy((char*)((U8 *) copy + offset),(const char*)(s), (len) * sizeof(U8))); |
| 11773 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 11774 | av_push(av, newSViv(is_utf8_invariant_string_loc((U8 *) copy + offset, len, &ep)))Perl_av_push( av,Perl_newSViv( Perl_is_utf8_invariant_string_loc ((U8 *) copy + offset, len, &ep))); |
| 11775 | av_push(av, newSViv(ep - ((U8 *) copy + offset)))Perl_av_push( av,Perl_newSViv( ep - ((U8 *) copy + offset))); |
| 11776 | RETVAL = av; |
| 11777 | Safefree(copy)Perl_safesysfree(((void *)(copy))); |
| 11778 | #line 11779 "APItest.c" |
| 11779 | { |
| 11780 | SV * RETVALSV; |
| 11781 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 11782 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 11783 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 11784 | } |
| 11785 | } |
| 11786 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11787 | } |
| 11788 | |
| 11789 | |
| 11790 | XS_EUPXS(XS_XS__APItest__Magic_test_variant_under_utf8_count)static void XS_XS__APItest__Magic_test_variant_under_utf8_count ( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11791 | XS_EUPXS(XS_XS__APItest__Magic_test_variant_under_utf8_count)static void XS_XS__APItest__Magic_test_variant_under_utf8_count ( CV* cv __attribute__((unused))) |
| 11792 | { |
| 11793 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11794 | if (items != 3) |
| 11795 | croak_xs_usagePerl_croak_xs_usage(cv, "s, offset, len"); |
| 11796 | { |
| 11797 | #line 6255 "APItest.xs" |
| 11798 | PERL_UINTMAX_T * copy; |
| 11799 | #line 11800 "APItest.c" |
| 11800 | STRLEN RETVAL; |
| 11801 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 11802 | U8 * s = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11803 | ; |
| 11804 | STRLEN offset = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 11805 | ; |
| 11806 | STRLEN len = (STRLEN)SvUV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (2)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (2)],2)) |
| 11807 | ; |
| 11808 | #line 6257 "APItest.xs" |
| 11809 | Newx(copy, 1 + ((len + WORDSIZE - 1) / WORDSIZE), PERL_UINTMAX_T)(copy = ((void)(__builtin_expect(((((( sizeof(size_t) < sizeof (1 + ((len + sizeof(PERL_UINTMAX_T) - 1) / sizeof(PERL_UINTMAX_T ))) || sizeof(PERL_UINTMAX_T) > ((size_t)1 << 8*(sizeof (size_t) - sizeof(1 + ((len + sizeof(PERL_UINTMAX_T) - 1) / sizeof (PERL_UINTMAX_T)))))) ? (size_t)(1 + ((len + sizeof(PERL_UINTMAX_T ) - 1) / sizeof(PERL_UINTMAX_T))) : ((size_t)-1)/sizeof(PERL_UINTMAX_T )) > ((size_t)-1)/sizeof(PERL_UINTMAX_T))) ? (_Bool)1 : (_Bool )0),(0)) && (Perl_croak_memory_wrap(),0)), (PERL_UINTMAX_T *)(Perl_safesysmalloc((size_t)((1 + ((len + sizeof(PERL_UINTMAX_T ) - 1) / sizeof(PERL_UINTMAX_T)))*sizeof(PERL_UINTMAX_T)))))); |
| 11810 | Copy(s, (U8 *) copy + offset, len, U8)((void)(__builtin_expect(((((( sizeof(size_t) < sizeof(len ) || sizeof(U8) > ((size_t)1 << 8*(sizeof(size_t) - sizeof (len)))) ? (size_t)(len) : ((size_t)-1)/sizeof(U8)) > ((size_t )-1)/sizeof(U8))) ? (_Bool)1 : (_Bool)0),(0)) && (Perl_croak_memory_wrap (),0)), ((void)0), ((void)0), (void)memcpy((char*)((U8 *) copy + offset),(const char*)(s), (len) * sizeof(U8))); |
| 11811 | RETVAL = variant_under_utf8_countS_variant_under_utf8_count((U8 *) copy + offset, (U8 *) copy + offset + len); |
| 11812 | Safefree(copy)Perl_safesysfree(((void *)(copy))); |
| 11813 | #line 11814 "APItest.c" |
| 11814 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 11815 | } |
| 11816 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11817 | } |
| 11818 | |
| 11819 | |
| 11820 | XS_EUPXS(XS_XS__APItest__Magic_test_utf8_length)static void XS_XS__APItest__Magic_test_utf8_length( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11821 | XS_EUPXS(XS_XS__APItest__Magic_test_utf8_length)static void XS_XS__APItest__Magic_test_utf8_length( CV* cv __attribute__ ((unused))) |
| 11822 | { |
| 11823 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11824 | if (items != 3) |
| 11825 | croak_xs_usagePerl_croak_xs_usage(cv, "s, offset, len"); |
| 11826 | { |
| 11827 | STRLEN RETVAL; |
| 11828 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 11829 | U8 * s = (U8 *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11830 | ; |
| 11831 | STRLEN offset = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 11832 | ; |
| 11833 | STRLEN len = (STRLEN)SvUV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (2)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (2)],2)) |
| 11834 | ; |
| 11835 | #line 6267 "APItest.xs" |
| 11836 | RETVAL = utf8_length(s + offset, s + len)Perl_utf8_length( s + offset,s + len); |
| 11837 | #line 11838 "APItest.c" |
| 11838 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 11839 | } |
| 11840 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11841 | } |
| 11842 | |
| 11843 | |
| 11844 | XS_EUPXS(XS_XS__APItest__Magic_test_is_utf8_string_loc)static void XS_XS__APItest__Magic_test_is_utf8_string_loc( CV * cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11845 | XS_EUPXS(XS_XS__APItest__Magic_test_is_utf8_string_loc)static void XS_XS__APItest__Magic_test_is_utf8_string_loc( CV * cv __attribute__((unused))) |
| 11846 | { |
| 11847 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11848 | if (items != 2) |
| 11849 | croak_xs_usagePerl_croak_xs_usage(cv, "s, len"); |
| 11850 | { |
| 11851 | #line 6274 "APItest.xs" |
| 11852 | AV *av; |
| 11853 | const U8 * ep; |
| 11854 | #line 11855 "APItest.c" |
| 11855 | AV * RETVAL; |
| 11856 | char * s = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11857 | ; |
| 11858 | STRLEN len = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 11859 | ; |
| 11860 | #line 6277 "APItest.xs" |
| 11861 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 11862 | av_push(av, newSViv(is_utf8_string_loc((U8 *) s, len, &ep)))Perl_av_push( av,Perl_newSViv( Perl_is_utf8_string_loclen((U8 *) s, len, &ep, 0))); |
| 11863 | av_push(av, newSViv(ep - (U8 *) s))Perl_av_push( av,Perl_newSViv( ep - (U8 *) s)); |
| 11864 | RETVAL = av; |
| 11865 | #line 11866 "APItest.c" |
| 11866 | { |
| 11867 | SV * RETVALSV; |
| 11868 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 11869 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 11870 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 11871 | } |
| 11872 | } |
| 11873 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11874 | } |
| 11875 | |
| 11876 | |
| 11877 | XS_EUPXS(XS_XS__APItest__Magic_test_is_utf8_string_loclen)static void XS_XS__APItest__Magic_test_is_utf8_string_loclen( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11878 | XS_EUPXS(XS_XS__APItest__Magic_test_is_utf8_string_loclen)static void XS_XS__APItest__Magic_test_is_utf8_string_loclen( CV* cv __attribute__((unused))) |
| 11879 | { |
| 11880 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11881 | if (items != 2) |
| 11882 | croak_xs_usagePerl_croak_xs_usage(cv, "s, len"); |
| 11883 | { |
| 11884 | #line 6287 "APItest.xs" |
| 11885 | AV *av; |
| 11886 | STRLEN ret_len; |
| 11887 | const U8 * ep; |
| 11888 | #line 11889 "APItest.c" |
| 11889 | AV * RETVAL; |
| 11890 | char * s = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11891 | ; |
| 11892 | STRLEN len = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 11893 | ; |
| 11894 | #line 6291 "APItest.xs" |
| 11895 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 11896 | av_push(av, newSViv(is_utf8_string_loclen((U8 *) s, len, &ep, &ret_len)))Perl_av_push( av,Perl_newSViv( Perl_is_utf8_string_loclen((U8 *) s, len, &ep, &ret_len))); |
| 11897 | av_push(av, newSViv(ep - (U8 *) s))Perl_av_push( av,Perl_newSViv( ep - (U8 *) s)); |
| 11898 | av_push(av, newSVuv(ret_len))Perl_av_push( av,Perl_newSVuv( ret_len)); |
| 11899 | RETVAL = av; |
| 11900 | #line 11901 "APItest.c" |
| 11901 | { |
| 11902 | SV * RETVALSV; |
| 11903 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 11904 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 11905 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 11906 | } |
| 11907 | } |
| 11908 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11909 | } |
| 11910 | |
| 11911 | |
| 11912 | XS_EUPXS(XS_XS__APItest__Magic_test_is_utf8_string_flags)static void XS_XS__APItest__Magic_test_is_utf8_string_flags( CV * cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11913 | XS_EUPXS(XS_XS__APItest__Magic_test_is_utf8_string_flags)static void XS_XS__APItest__Magic_test_is_utf8_string_flags( CV * cv __attribute__((unused))) |
| 11914 | { |
| 11915 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11916 | if (items != 3) |
| 11917 | croak_xs_usagePerl_croak_xs_usage(cv, "s, len, flags"); |
| 11918 | { |
| 11919 | IV RETVAL; |
| 11920 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 11921 | char * s = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11922 | ; |
| 11923 | STRLEN len = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 11924 | ; |
| 11925 | U32 flags = (unsigned long)SvUV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (2)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (2)],2)) |
| 11926 | ; |
| 11927 | #line 6302 "APItest.xs" |
| 11928 | RETVAL = is_utf8_string_flagsPerl_is_utf8_string_flags((U8 *) s, len, flags); |
| 11929 | #line 11930 "APItest.c" |
| 11930 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHi((IV)RETVAL)do { do { IV TARGi_iv = (IV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1)) ? (_Bool)1 : (_Bool)0) ,(1))) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000 ); targ->sv_u.svu_iv = TARGi_iv; } else Perl_sv_setiv_mg( targ ,TARGi_iv); } while (0); (*++sp = (targ)); } while (0); |
| 11931 | } |
| 11932 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11933 | } |
| 11934 | |
| 11935 | |
| 11936 | XS_EUPXS(XS_XS__APItest__Magic_test_is_utf8_string_loc_flags)static void XS_XS__APItest__Magic_test_is_utf8_string_loc_flags ( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11937 | XS_EUPXS(XS_XS__APItest__Magic_test_is_utf8_string_loc_flags)static void XS_XS__APItest__Magic_test_is_utf8_string_loc_flags ( CV* cv __attribute__((unused))) |
| 11938 | { |
| 11939 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11940 | if (items != 3) |
| 11941 | croak_xs_usagePerl_croak_xs_usage(cv, "s, len, flags"); |
| 11942 | { |
| 11943 | #line 6309 "APItest.xs" |
| 11944 | AV *av; |
| 11945 | const U8 * ep; |
| 11946 | #line 11947 "APItest.c" |
| 11947 | AV * RETVAL; |
| 11948 | char * s = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11949 | ; |
| 11950 | STRLEN len = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 11951 | ; |
| 11952 | U32 flags = (unsigned long)SvUV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (2)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (2)],2)) |
| 11953 | ; |
| 11954 | #line 6312 "APItest.xs" |
| 11955 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 11956 | av_push(av, newSViv(is_utf8_string_loc_flags((U8 *) s, len, &ep, flags)))Perl_av_push( av,Perl_newSViv( Perl_is_utf8_string_loclen_flags ((U8 *) s, len, &ep, 0, flags))); |
| 11957 | av_push(av, newSViv(ep - (U8 *) s))Perl_av_push( av,Perl_newSViv( ep - (U8 *) s)); |
| 11958 | RETVAL = av; |
| 11959 | #line 11960 "APItest.c" |
| 11960 | { |
| 11961 | SV * RETVALSV; |
| 11962 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 11963 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 11964 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 11965 | } |
| 11966 | } |
| 11967 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 11968 | } |
| 11969 | |
| 11970 | |
| 11971 | XS_EUPXS(XS_XS__APItest__Magic_test_is_utf8_string_loclen_flags)static void XS_XS__APItest__Magic_test_is_utf8_string_loclen_flags ( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 11972 | XS_EUPXS(XS_XS__APItest__Magic_test_is_utf8_string_loclen_flags)static void XS_XS__APItest__Magic_test_is_utf8_string_loclen_flags ( CV* cv __attribute__((unused))) |
| 11973 | { |
| 11974 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 11975 | if (items != 3) |
| 11976 | croak_xs_usagePerl_croak_xs_usage(cv, "s, len, flags"); |
| 11977 | { |
| 11978 | #line 6322 "APItest.xs" |
| 11979 | AV *av; |
| 11980 | STRLEN ret_len; |
| 11981 | const U8 * ep; |
| 11982 | #line 11983 "APItest.c" |
| 11983 | AV * RETVAL; |
| 11984 | char * s = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 11985 | ; |
| 11986 | STRLEN len = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 11987 | ; |
| 11988 | U32 flags = (unsigned long)SvUV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (2)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (2)],2)) |
| 11989 | ; |
| 11990 | #line 6326 "APItest.xs" |
| 11991 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 11992 | av_push(av, newSViv(is_utf8_string_loclen_flags((U8 *) s, len, &ep, &ret_len, flags)))Perl_av_push( av,Perl_newSViv( Perl_is_utf8_string_loclen_flags ((U8 *) s, len, &ep, &ret_len, flags))); |
| 11993 | av_push(av, newSViv(ep - (U8 *) s))Perl_av_push( av,Perl_newSViv( ep - (U8 *) s)); |
| 11994 | av_push(av, newSVuv(ret_len))Perl_av_push( av,Perl_newSVuv( ret_len)); |
| 11995 | RETVAL = av; |
| 11996 | #line 11997 "APItest.c" |
| 11997 | { |
| 11998 | SV * RETVALSV; |
| 11999 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 12000 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 12001 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 12002 | } |
| 12003 | } |
| 12004 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12005 | } |
| 12006 | |
| 12007 | |
| 12008 | XS_EUPXS(XS_XS__APItest__Magic_test_is_strict_utf8_string)static void XS_XS__APItest__Magic_test_is_strict_utf8_string( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12009 | XS_EUPXS(XS_XS__APItest__Magic_test_is_strict_utf8_string)static void XS_XS__APItest__Magic_test_is_strict_utf8_string( CV* cv __attribute__((unused))) |
| 12010 | { |
| 12011 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12012 | if (items != 2) |
| 12013 | croak_xs_usagePerl_croak_xs_usage(cv, "s, len"); |
| 12014 | { |
| 12015 | IV RETVAL; |
| 12016 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 12017 | char * s = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 12018 | ; |
| 12019 | STRLEN len = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 12020 | ; |
| 12021 | #line 6337 "APItest.xs" |
| 12022 | RETVAL = is_strict_utf8_string((U8 *) s, len)Perl_is_strict_utf8_string_loclen((U8 *) s, len, ((void*)0), ( (void*)0)); |
| 12023 | #line 12024 "APItest.c" |
| 12024 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHi((IV)RETVAL)do { do { IV TARGi_iv = (IV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1)) ? (_Bool)1 : (_Bool)0) ,(1))) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000 ); targ->sv_u.svu_iv = TARGi_iv; } else Perl_sv_setiv_mg( targ ,TARGi_iv); } while (0); (*++sp = (targ)); } while (0); |
| 12025 | } |
| 12026 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12027 | } |
| 12028 | |
| 12029 | |
| 12030 | XS_EUPXS(XS_XS__APItest__Magic_test_is_strict_utf8_string_loc)static void XS_XS__APItest__Magic_test_is_strict_utf8_string_loc ( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12031 | XS_EUPXS(XS_XS__APItest__Magic_test_is_strict_utf8_string_loc)static void XS_XS__APItest__Magic_test_is_strict_utf8_string_loc ( CV* cv __attribute__((unused))) |
| 12032 | { |
| 12033 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12034 | if (items != 2) |
| 12035 | croak_xs_usagePerl_croak_xs_usage(cv, "s, len"); |
| 12036 | { |
| 12037 | #line 6344 "APItest.xs" |
| 12038 | AV *av; |
| 12039 | const U8 * ep; |
| 12040 | #line 12041 "APItest.c" |
| 12041 | AV * RETVAL; |
| 12042 | char * s = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 12043 | ; |
| 12044 | STRLEN len = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 12045 | ; |
| 12046 | #line 6347 "APItest.xs" |
| 12047 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 12048 | av_push(av, newSViv(is_strict_utf8_string_loc((U8 *) s, len, &ep)))Perl_av_push( av,Perl_newSViv( Perl_is_strict_utf8_string_loclen ((U8 *) s, len, &ep, 0))); |
| 12049 | av_push(av, newSViv(ep - (U8 *) s))Perl_av_push( av,Perl_newSViv( ep - (U8 *) s)); |
| 12050 | RETVAL = av; |
| 12051 | #line 12052 "APItest.c" |
| 12052 | { |
| 12053 | SV * RETVALSV; |
| 12054 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 12055 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 12056 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 12057 | } |
| 12058 | } |
| 12059 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12060 | } |
| 12061 | |
| 12062 | |
| 12063 | XS_EUPXS(XS_XS__APItest__Magic_test_is_strict_utf8_string_loclen)static void XS_XS__APItest__Magic_test_is_strict_utf8_string_loclen ( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12064 | XS_EUPXS(XS_XS__APItest__Magic_test_is_strict_utf8_string_loclen)static void XS_XS__APItest__Magic_test_is_strict_utf8_string_loclen ( CV* cv __attribute__((unused))) |
| 12065 | { |
| 12066 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12067 | if (items != 2) |
| 12068 | croak_xs_usagePerl_croak_xs_usage(cv, "s, len"); |
| 12069 | { |
| 12070 | #line 6357 "APItest.xs" |
| 12071 | AV *av; |
| 12072 | STRLEN ret_len; |
| 12073 | const U8 * ep; |
| 12074 | #line 12075 "APItest.c" |
| 12075 | AV * RETVAL; |
| 12076 | char * s = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 12077 | ; |
| 12078 | STRLEN len = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 12079 | ; |
| 12080 | #line 6361 "APItest.xs" |
| 12081 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 12082 | av_push(av, newSViv(is_strict_utf8_string_loclen((U8 *) s, len, &ep, &ret_len)))Perl_av_push( av,Perl_newSViv( Perl_is_strict_utf8_string_loclen ((U8 *) s, len, &ep, &ret_len))); |
| 12083 | av_push(av, newSViv(ep - (U8 *) s))Perl_av_push( av,Perl_newSViv( ep - (U8 *) s)); |
| 12084 | av_push(av, newSVuv(ret_len))Perl_av_push( av,Perl_newSVuv( ret_len)); |
| 12085 | RETVAL = av; |
| 12086 | #line 12087 "APItest.c" |
| 12087 | { |
| 12088 | SV * RETVALSV; |
| 12089 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 12090 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 12091 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 12092 | } |
| 12093 | } |
| 12094 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12095 | } |
| 12096 | |
| 12097 | |
| 12098 | XS_EUPXS(XS_XS__APItest__Magic_test_is_c9strict_utf8_string)static void XS_XS__APItest__Magic_test_is_c9strict_utf8_string ( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12099 | XS_EUPXS(XS_XS__APItest__Magic_test_is_c9strict_utf8_string)static void XS_XS__APItest__Magic_test_is_c9strict_utf8_string ( CV* cv __attribute__((unused))) |
| 12100 | { |
| 12101 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12102 | if (items != 2) |
| 12103 | croak_xs_usagePerl_croak_xs_usage(cv, "s, len"); |
| 12104 | { |
| 12105 | IV RETVAL; |
| 12106 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 12107 | char * s = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 12108 | ; |
| 12109 | STRLEN len = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 12110 | ; |
| 12111 | #line 6372 "APItest.xs" |
| 12112 | RETVAL = is_c9strict_utf8_string((U8 *) s, len)Perl_is_c9strict_utf8_string_loclen((U8 *) s, len, ((void*)0) , 0); |
| 12113 | #line 12114 "APItest.c" |
| 12114 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHi((IV)RETVAL)do { do { IV TARGi_iv = (IV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1)) ? (_Bool)1 : (_Bool)0) ,(1))) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000 ); targ->sv_u.svu_iv = TARGi_iv; } else Perl_sv_setiv_mg( targ ,TARGi_iv); } while (0); (*++sp = (targ)); } while (0); |
| 12115 | } |
| 12116 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12117 | } |
| 12118 | |
| 12119 | |
| 12120 | XS_EUPXS(XS_XS__APItest__Magic_test_is_c9strict_utf8_string_loc)static void XS_XS__APItest__Magic_test_is_c9strict_utf8_string_loc ( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12121 | XS_EUPXS(XS_XS__APItest__Magic_test_is_c9strict_utf8_string_loc)static void XS_XS__APItest__Magic_test_is_c9strict_utf8_string_loc ( CV* cv __attribute__((unused))) |
| 12122 | { |
| 12123 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12124 | if (items != 2) |
| 12125 | croak_xs_usagePerl_croak_xs_usage(cv, "s, len"); |
| 12126 | { |
| 12127 | #line 6379 "APItest.xs" |
| 12128 | AV *av; |
| 12129 | const U8 * ep; |
| 12130 | #line 12131 "APItest.c" |
| 12131 | AV * RETVAL; |
| 12132 | char * s = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 12133 | ; |
| 12134 | STRLEN len = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 12135 | ; |
| 12136 | #line 6382 "APItest.xs" |
| 12137 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 12138 | av_push(av, newSViv(is_c9strict_utf8_string_loc((U8 *) s, len, &ep)))Perl_av_push( av,Perl_newSViv( Perl_is_c9strict_utf8_string_loclen ((U8 *) s, len, &ep, 0))); |
| 12139 | av_push(av, newSViv(ep - (U8 *) s))Perl_av_push( av,Perl_newSViv( ep - (U8 *) s)); |
| 12140 | RETVAL = av; |
| 12141 | #line 12142 "APItest.c" |
| 12142 | { |
| 12143 | SV * RETVALSV; |
| 12144 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 12145 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 12146 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 12147 | } |
| 12148 | } |
| 12149 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12150 | } |
| 12151 | |
| 12152 | |
| 12153 | XS_EUPXS(XS_XS__APItest__Magic_test_is_c9strict_utf8_string_loclen)static void XS_XS__APItest__Magic_test_is_c9strict_utf8_string_loclen ( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12154 | XS_EUPXS(XS_XS__APItest__Magic_test_is_c9strict_utf8_string_loclen)static void XS_XS__APItest__Magic_test_is_c9strict_utf8_string_loclen ( CV* cv __attribute__((unused))) |
| 12155 | { |
| 12156 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12157 | if (items != 2) |
| 12158 | croak_xs_usagePerl_croak_xs_usage(cv, "s, len"); |
| 12159 | { |
| 12160 | #line 6392 "APItest.xs" |
| 12161 | AV *av; |
| 12162 | STRLEN ret_len; |
| 12163 | const U8 * ep; |
| 12164 | #line 12165 "APItest.c" |
| 12165 | AV * RETVAL; |
| 12166 | char * s = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 12167 | ; |
| 12168 | STRLEN len = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 12169 | ; |
| 12170 | #line 6396 "APItest.xs" |
| 12171 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 12172 | av_push(av, newSViv(is_c9strict_utf8_string_loclen((U8 *) s, len, &ep, &ret_len)))Perl_av_push( av,Perl_newSViv( Perl_is_c9strict_utf8_string_loclen ((U8 *) s, len, &ep, &ret_len))); |
| 12173 | av_push(av, newSViv(ep - (U8 *) s))Perl_av_push( av,Perl_newSViv( ep - (U8 *) s)); |
| 12174 | av_push(av, newSVuv(ret_len))Perl_av_push( av,Perl_newSVuv( ret_len)); |
| 12175 | RETVAL = av; |
| 12176 | #line 12177 "APItest.c" |
| 12177 | { |
| 12178 | SV * RETVALSV; |
| 12179 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 12180 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 12181 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 12182 | } |
| 12183 | } |
| 12184 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12185 | } |
| 12186 | |
| 12187 | |
| 12188 | XS_EUPXS(XS_XS__APItest__Magic_test_is_utf8_fixed_width_buf_flags)static void XS_XS__APItest__Magic_test_is_utf8_fixed_width_buf_flags ( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12189 | XS_EUPXS(XS_XS__APItest__Magic_test_is_utf8_fixed_width_buf_flags)static void XS_XS__APItest__Magic_test_is_utf8_fixed_width_buf_flags ( CV* cv __attribute__((unused))) |
| 12190 | { |
| 12191 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12192 | if (items != 3) |
| 12193 | croak_xs_usagePerl_croak_xs_usage(cv, "s, len, flags"); |
| 12194 | { |
| 12195 | IV RETVAL; |
| 12196 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 12197 | char * s = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 12198 | ; |
| 12199 | STRLEN len = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 12200 | ; |
| 12201 | U32 flags = (unsigned long)SvUV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (2)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (2)],2)) |
| 12202 | ; |
| 12203 | #line 6407 "APItest.xs" |
| 12204 | RETVAL = is_utf8_fixed_width_buf_flags((U8 *) s, len, flags)Perl_is_utf8_fixed_width_buf_loclen_flags((U8 *) s, len, 0, 0 , flags); |
| 12205 | #line 12206 "APItest.c" |
| 12206 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHi((IV)RETVAL)do { do { IV TARGi_iv = (IV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1)) ? (_Bool)1 : (_Bool)0) ,(1))) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000 ); targ->sv_u.svu_iv = TARGi_iv; } else Perl_sv_setiv_mg( targ ,TARGi_iv); } while (0); (*++sp = (targ)); } while (0); |
| 12207 | } |
| 12208 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12209 | } |
| 12210 | |
| 12211 | |
| 12212 | XS_EUPXS(XS_XS__APItest__Magic_test_is_utf8_fixed_width_buf_loc_flags)static void XS_XS__APItest__Magic_test_is_utf8_fixed_width_buf_loc_flags ( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12213 | XS_EUPXS(XS_XS__APItest__Magic_test_is_utf8_fixed_width_buf_loc_flags)static void XS_XS__APItest__Magic_test_is_utf8_fixed_width_buf_loc_flags ( CV* cv __attribute__((unused))) |
| 12214 | { |
| 12215 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12216 | if (items != 3) |
| 12217 | croak_xs_usagePerl_croak_xs_usage(cv, "s, len, flags"); |
| 12218 | { |
| 12219 | #line 6414 "APItest.xs" |
| 12220 | AV *av; |
| 12221 | const U8 * ep; |
| 12222 | #line 12223 "APItest.c" |
| 12223 | AV * RETVAL; |
| 12224 | char * s = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 12225 | ; |
| 12226 | STRLEN len = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 12227 | ; |
| 12228 | U32 flags = (unsigned long)SvUV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (2)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (2)],2)) |
| 12229 | ; |
| 12230 | #line 6417 "APItest.xs" |
| 12231 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 12232 | av_push(av, newSViv(is_utf8_fixed_width_buf_loc_flags((U8 *) s, len, &ep, flags)))Perl_av_push( av,Perl_newSViv( Perl_is_utf8_fixed_width_buf_loclen_flags ((U8 *) s, len, &ep, 0, flags))); |
| 12233 | av_push(av, newSViv(ep - (U8 *) s))Perl_av_push( av,Perl_newSViv( ep - (U8 *) s)); |
| 12234 | RETVAL = av; |
| 12235 | #line 12236 "APItest.c" |
| 12236 | { |
| 12237 | SV * RETVALSV; |
| 12238 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 12239 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 12240 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 12241 | } |
| 12242 | } |
| 12243 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12244 | } |
| 12245 | |
| 12246 | |
| 12247 | XS_EUPXS(XS_XS__APItest__Magic_test_is_utf8_fixed_width_buf_loclen_flags)static void XS_XS__APItest__Magic_test_is_utf8_fixed_width_buf_loclen_flags ( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12248 | XS_EUPXS(XS_XS__APItest__Magic_test_is_utf8_fixed_width_buf_loclen_flags)static void XS_XS__APItest__Magic_test_is_utf8_fixed_width_buf_loclen_flags ( CV* cv __attribute__((unused))) |
| 12249 | { |
| 12250 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12251 | if (items != 3) |
| 12252 | croak_xs_usagePerl_croak_xs_usage(cv, "s, len, flags"); |
| 12253 | { |
| 12254 | #line 6427 "APItest.xs" |
| 12255 | AV *av; |
| 12256 | STRLEN ret_len; |
| 12257 | const U8 * ep; |
| 12258 | #line 12259 "APItest.c" |
| 12259 | AV * RETVAL; |
| 12260 | char * s = (char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 12261 | ; |
| 12262 | STRLEN len = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 12263 | ; |
| 12264 | U32 flags = (unsigned long)SvUV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (2)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (2)],2)) |
| 12265 | ; |
| 12266 | #line 6431 "APItest.xs" |
| 12267 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 12268 | av_push(av, newSViv(is_utf8_fixed_width_buf_loclen_flags((U8 *) s, len, &ep, &ret_len, flags)))Perl_av_push( av,Perl_newSViv( Perl_is_utf8_fixed_width_buf_loclen_flags ((U8 *) s, len, &ep, &ret_len, flags))); |
| 12269 | av_push(av, newSViv(ep - (U8 *) s))Perl_av_push( av,Perl_newSViv( ep - (U8 *) s)); |
| 12270 | av_push(av, newSVuv(ret_len))Perl_av_push( av,Perl_newSVuv( ret_len)); |
| 12271 | RETVAL = av; |
| 12272 | #line 12273 "APItest.c" |
| 12273 | { |
| 12274 | SV * RETVALSV; |
| 12275 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 12276 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 12277 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 12278 | } |
| 12279 | } |
| 12280 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12281 | } |
| 12282 | |
| 12283 | |
| 12284 | XS_EUPXS(XS_XS__APItest__Magic_test_utf8_hop_safe)static void XS_XS__APItest__Magic_test_utf8_hop_safe( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12285 | XS_EUPXS(XS_XS__APItest__Magic_test_utf8_hop_safe)static void XS_XS__APItest__Magic_test_utf8_hop_safe( CV* cv __attribute__ ((unused))) |
| 12286 | { |
| 12287 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12288 | if (items != 3) |
| 12289 | croak_xs_usagePerl_croak_xs_usage(cv, "s_sv, s_off, off"); |
| 12290 | { |
| 12291 | #line 6442 "APItest.xs" |
| 12292 | STRLEN len; |
| 12293 | U8 *p; |
| 12294 | U8 *r; |
| 12295 | #line 12296 "APItest.c" |
| 12296 | IV RETVAL; |
| 12297 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 12298 | SV * s_sv = ST(0)PL_stack_base[ax + (0)] |
| 12299 | ; |
| 12300 | STRLEN s_off = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 12301 | ; |
| 12302 | IV off = (IV)SvIV(ST(2))((((PL_stack_base[ax + (2)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (2)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 2)],2)) |
| 12303 | ; |
| 12304 | #line 6446 "APItest.xs" |
| 12305 | p = (U8 *)SvPV(s_sv, len)((((s_sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (s_sv)->sv_any)->xpv_cur), ((s_sv)-> sv_u.svu_pv)) : Perl_sv_2pv_flags( s_sv,&len,2)); |
| 12306 | r = utf8_hop_safePerl_utf8_hop_safe(p + s_off, off, p, p + len); |
| 12307 | RETVAL = r - p; |
| 12308 | #line 12309 "APItest.c" |
| 12309 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHi((IV)RETVAL)do { do { IV TARGi_iv = (IV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1)) ? (_Bool)1 : (_Bool)0) ,(1))) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000 ); targ->sv_u.svu_iv = TARGi_iv; } else Perl_sv_setiv_mg( targ ,TARGi_iv); } while (0); (*++sp = (targ)); } while (0); |
| 12310 | } |
| 12311 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12312 | } |
| 12313 | |
| 12314 | |
| 12315 | XS_EUPXS(XS_XS__APItest__Magic_test_toLOWER)static void XS_XS__APItest__Magic_test_toLOWER( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12316 | XS_EUPXS(XS_XS__APItest__Magic_test_toLOWER)static void XS_XS__APItest__Magic_test_toLOWER( CV* cv __attribute__ ((unused))) |
| 12317 | { |
| 12318 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12319 | if (items != 1) |
| 12320 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 12321 | { |
| 12322 | UV RETVAL; |
| 12323 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 12324 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 12325 | ; |
| 12326 | #line 6455 "APItest.xs" |
| 12327 | RETVAL = toLOWER(ord)(( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord))) ) - ((('A')) | 0))) <= (((U64) (((('Z') - ('A'))) | 0))))) : (sizeof(ord) == sizeof(U32)) ? ( (((U64) (((((U32) (ord))) ) - ((('A')) | 0))) <= (((U64) (((('Z') - ('A'))) | 0))))) : ( ( (((U64) (((((U64) (ord)))) - ((('A')) | 0))) <= ((( U64) (((('Z') - ('A'))) | 0)))))))) ? (U8)((ord) + ('a' - 'A' )) : (ord)); |
| 12328 | #line 12329 "APItest.c" |
| 12329 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 12330 | } |
| 12331 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12332 | } |
| 12333 | |
| 12334 | |
| 12335 | XS_EUPXS(XS_XS__APItest__Magic_test_toLOWER_L1)static void XS_XS__APItest__Magic_test_toLOWER_L1( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12336 | XS_EUPXS(XS_XS__APItest__Magic_test_toLOWER_L1)static void XS_XS__APItest__Magic_test_toLOWER_L1( CV* cv __attribute__ ((unused))) |
| 12337 | { |
| 12338 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12339 | if (items != 1) |
| 12340 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 12341 | { |
| 12342 | UV RETVAL; |
| 12343 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 12344 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 12345 | ; |
| 12346 | #line 6462 "APItest.xs" |
| 12347 | RETVAL = toLOWER_L1(ord)((! ( (sizeof(ord) == 1) || !(((U64)((ord) | 0)) & ~0xFF) )) ? (ord) : PL_latin1_lc[ (U8) (ord) ]); |
| 12348 | #line 12349 "APItest.c" |
| 12349 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 12350 | } |
| 12351 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12352 | } |
| 12353 | |
| 12354 | |
| 12355 | XS_EUPXS(XS_XS__APItest__Magic_test_toLOWER_LC)static void XS_XS__APItest__Magic_test_toLOWER_LC( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12356 | XS_EUPXS(XS_XS__APItest__Magic_test_toLOWER_LC)static void XS_XS__APItest__Magic_test_toLOWER_LC( CV* cv __attribute__ ((unused))) |
| 12357 | { |
| 12358 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12359 | if (items != 1) |
| 12360 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 12361 | { |
| 12362 | UV RETVAL; |
| 12363 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 12364 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 12365 | ; |
| 12366 | #line 6469 "APItest.xs" |
| 12367 | RETVAL = toLOWER_LC(ord)(! ( (sizeof((ord)) == 1) || !(((U64)(((ord)) | 0)) & ~0xFF )) ? ((ord)) : (PL_in_utf8_CTYPE_locale) ? PL_latin1_lc[ (U8) ((ord)) ] : (U8)tolower((U8)((ord)))); |
| 12368 | #line 12369 "APItest.c" |
| 12369 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 12370 | } |
| 12371 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12372 | } |
| 12373 | |
| 12374 | |
| 12375 | XS_EUPXS(XS_XS__APItest__Magic_test_toLOWER_uni)static void XS_XS__APItest__Magic_test_toLOWER_uni( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12376 | XS_EUPXS(XS_XS__APItest__Magic_test_toLOWER_uni)static void XS_XS__APItest__Magic_test_toLOWER_uni( CV* cv __attribute__ ((unused))) |
| 12377 | { |
| 12378 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12379 | if (items != 1) |
| 12380 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 12381 | { |
| 12382 | #line 6476 "APItest.xs" |
| 12383 | U8 s[UTF8_MAXBYTES_CASE(((13)>(3 * ((((U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV) (0x10FFFF) < (16 * (1U << (2 * 6) )) ? 3 : (UV) (0x10FFFF) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV ) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF ) < ((UV) 1U << (6 * 6)) ? 7 : 13))))?(13):(3 * (((( U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV ) (0x10FFFF) < (16 * (1U << (2 * 6))) ? 3 : (UV) (0x10FFFF ) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF) < ((UV) 1U << (6 * 6)) ? 7 : 13)))) + 1]; |
| 12384 | STRLEN len; |
| 12385 | AV *av; |
| 12386 | SV *utf8; |
| 12387 | #line 12388 "APItest.c" |
| 12388 | AV * RETVAL; |
| 12389 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 12390 | ; |
| 12391 | #line 6481 "APItest.xs" |
| 12392 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 12393 | av_push(av, newSVuv(toLOWER_uni(ord, s, &len)))Perl_av_push( av,Perl_newSVuv( Perl_to_uni_lower( ord,s,& len))); |
| 12394 | |
| 12395 | utf8 = newSVpvn((char *) s, len)Perl_newSVpvn( (char *) s,len); |
| 12396 | SvUTF8_on(utf8)((utf8)->sv_flags |= (0x20000000)); |
| 12397 | av_push(av, utf8)Perl_av_push( av,utf8); |
| 12398 | |
| 12399 | av_push(av, newSVuv(len))Perl_av_push( av,Perl_newSVuv( len)); |
| 12400 | RETVAL = av; |
| 12401 | #line 12402 "APItest.c" |
| 12402 | { |
| 12403 | SV * RETVALSV; |
| 12404 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 12405 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 12406 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 12407 | } |
| 12408 | } |
| 12409 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12410 | } |
| 12411 | |
| 12412 | |
| 12413 | XS_EUPXS(XS_XS__APItest__Magic_test_toLOWER_uvchr)static void XS_XS__APItest__Magic_test_toLOWER_uvchr( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12414 | XS_EUPXS(XS_XS__APItest__Magic_test_toLOWER_uvchr)static void XS_XS__APItest__Magic_test_toLOWER_uvchr( CV* cv __attribute__ ((unused))) |
| 12415 | { |
| 12416 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12417 | if (items != 1) |
| 12418 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 12419 | { |
| 12420 | #line 6496 "APItest.xs" |
| 12421 | U8 s[UTF8_MAXBYTES_CASE(((13)>(3 * ((((U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV) (0x10FFFF) < (16 * (1U << (2 * 6) )) ? 3 : (UV) (0x10FFFF) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV ) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF ) < ((UV) 1U << (6 * 6)) ? 7 : 13))))?(13):(3 * (((( U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV ) (0x10FFFF) < (16 * (1U << (2 * 6))) ? 3 : (UV) (0x10FFFF ) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF) < ((UV) 1U << (6 * 6)) ? 7 : 13)))) + 1]; |
| 12422 | STRLEN len; |
| 12423 | AV *av; |
| 12424 | SV *utf8; |
| 12425 | #line 12426 "APItest.c" |
| 12426 | AV * RETVAL; |
| 12427 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 12428 | ; |
| 12429 | #line 6501 "APItest.xs" |
| 12430 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 12431 | av_push(av, newSVuv(toLOWER_uvchr(ord, s, &len)))Perl_av_push( av,Perl_newSVuv( Perl_to_uni_lower( ord,s,& len))); |
| 12432 | |
| 12433 | utf8 = newSVpvn((char *) s, len)Perl_newSVpvn( (char *) s,len); |
| 12434 | SvUTF8_on(utf8)((utf8)->sv_flags |= (0x20000000)); |
| 12435 | av_push(av, utf8)Perl_av_push( av,utf8); |
| 12436 | |
| 12437 | av_push(av, newSVuv(len))Perl_av_push( av,Perl_newSVuv( len)); |
| 12438 | RETVAL = av; |
| 12439 | #line 12440 "APItest.c" |
| 12440 | { |
| 12441 | SV * RETVALSV; |
| 12442 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 12443 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 12444 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 12445 | } |
| 12446 | } |
| 12447 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12448 | } |
| 12449 | |
| 12450 | |
| 12451 | XS_EUPXS(XS_XS__APItest__Magic_test_toLOWER_utf8)static void XS_XS__APItest__Magic_test_toLOWER_utf8( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12452 | XS_EUPXS(XS_XS__APItest__Magic_test_toLOWER_utf8)static void XS_XS__APItest__Magic_test_toLOWER_utf8( CV* cv __attribute__ ((unused))) |
| 12453 | { |
| 12454 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12455 | if (items != 2) |
| 12456 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 12457 | { |
| 12458 | #line 6516 "APItest.xs" |
| 12459 | U8 *input; |
| 12460 | U8 s[UTF8_MAXBYTES_CASE(((13)>(3 * ((((U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV) (0x10FFFF) < (16 * (1U << (2 * 6) )) ? 3 : (UV) (0x10FFFF) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV ) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF ) < ((UV) 1U << (6 * 6)) ? 7 : 13))))?(13):(3 * (((( U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV ) (0x10FFFF) < (16 * (1U << (2 * 6))) ? 3 : (UV) (0x10FFFF ) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF) < ((UV) 1U << (6 * 6)) ? 7 : 13)))) + 1]; |
| 12461 | STRLEN len; |
| 12462 | AV *av; |
| 12463 | SV *utf8; |
| 12464 | const U8 * e; |
| 12465 | UV resultant_cp = UV_MAX(~(UV)0); /* Initialized because of dumb compilers */ |
| 12466 | #line 12467 "APItest.c" |
| 12467 | AV * RETVAL; |
| 12468 | SV * p = ST(0)PL_stack_base[ax + (0)] |
| 12469 | ; |
| 12470 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 12471 | ; |
| 12472 | #line 6524 "APItest.xs" |
| 12473 | input = (U8 *) SvPV(p, len)((((p)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (p)->sv_any)->xpv_cur), ((p)->sv_u .svu_pv)) : Perl_sv_2pv_flags( p,&len,2)); |
| 12474 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 12475 | if (type >= 0) { |
| 12476 | e = input + UTF8SKIP(input)PL_utf8skip[*(const U8*)(input)] - type; |
| 12477 | resultant_cp = toLOWER_utf8_safe(input, e, s, &len)Perl__to_utf8_lower_flags( input,e,s,&len,0); |
| 12478 | av_push(av, newSVuv(resultant_cp))Perl_av_push( av,Perl_newSVuv( resultant_cp)); |
| 12479 | |
| 12480 | utf8 = newSVpvn((char *) s, len)Perl_newSVpvn( (char *) s,len); |
| 12481 | SvUTF8_on(utf8)((utf8)->sv_flags |= (0x20000000)); |
| 12482 | av_push(av, utf8)Perl_av_push( av,utf8); |
| 12483 | |
| 12484 | av_push(av, newSVuv(len))Perl_av_push( av,Perl_newSVuv( len)); |
| 12485 | RETVAL = av; |
| 12486 | } |
| 12487 | else { |
| 12488 | RETVAL = 0; |
| 12489 | } |
| 12490 | #line 12491 "APItest.c" |
| 12491 | { |
| 12492 | SV * RETVALSV; |
| 12493 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 12494 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 12495 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 12496 | } |
| 12497 | } |
| 12498 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12499 | } |
| 12500 | |
| 12501 | |
| 12502 | XS_EUPXS(XS_XS__APItest__Magic_test_toFOLD)static void XS_XS__APItest__Magic_test_toFOLD( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12503 | XS_EUPXS(XS_XS__APItest__Magic_test_toFOLD)static void XS_XS__APItest__Magic_test_toFOLD( CV* cv __attribute__ ((unused))) |
| 12504 | { |
| 12505 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12506 | if (items != 1) |
| 12507 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 12508 | { |
| 12509 | UV RETVAL; |
| 12510 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 12511 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 12512 | ; |
| 12513 | #line 6547 "APItest.xs" |
| 12514 | RETVAL = toFOLD(ord)(( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord))) ) - ((('A')) | 0))) <= (((U64) (((('Z') - ('A'))) | 0))))) : (sizeof(ord) == sizeof(U32)) ? ( (((U64) (((((U32) (ord))) ) - ((('A')) | 0))) <= (((U64) (((('Z') - ('A'))) | 0))))) : ( ( (((U64) (((((U64) (ord)))) - ((('A')) | 0))) <= ((( U64) (((('Z') - ('A'))) | 0)))))))) ? (U8)((ord) + ('a' - 'A' )) : (ord)); |
| 12515 | #line 12516 "APItest.c" |
| 12516 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 12517 | } |
| 12518 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12519 | } |
| 12520 | |
| 12521 | |
| 12522 | XS_EUPXS(XS_XS__APItest__Magic_test_toFOLD_LC)static void XS_XS__APItest__Magic_test_toFOLD_LC( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12523 | XS_EUPXS(XS_XS__APItest__Magic_test_toFOLD_LC)static void XS_XS__APItest__Magic_test_toFOLD_LC( CV* cv __attribute__ ((unused))) |
| 12524 | { |
| 12525 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12526 | if (items != 1) |
| 12527 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 12528 | { |
| 12529 | UV RETVAL; |
| 12530 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 12531 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 12532 | ; |
| 12533 | #line 6554 "APItest.xs" |
| 12534 | RETVAL = toFOLD_LC(ord)((__builtin_expect(((((ord)) == 0xB5) ? (_Bool)1 : (_Bool)0), (0)) && PL_in_utf8_CTYPE_locale) ? 0x03BC : ( (! ( (sizeof ((ord)) == 1) || !(((U64)(((ord)) | 0)) & ~0xFF)) ? ((ord )) : (PL_in_utf8_CTYPE_locale) ? PL_latin1_lc[ (U8) ((ord)) ] : (U8)tolower((U8)((ord)))))); |
| 12535 | #line 12536 "APItest.c" |
| 12536 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 12537 | } |
| 12538 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12539 | } |
| 12540 | |
| 12541 | |
| 12542 | XS_EUPXS(XS_XS__APItest__Magic_test_toFOLD_uni)static void XS_XS__APItest__Magic_test_toFOLD_uni( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12543 | XS_EUPXS(XS_XS__APItest__Magic_test_toFOLD_uni)static void XS_XS__APItest__Magic_test_toFOLD_uni( CV* cv __attribute__ ((unused))) |
| 12544 | { |
| 12545 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12546 | if (items != 1) |
| 12547 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 12548 | { |
| 12549 | #line 6561 "APItest.xs" |
| 12550 | U8 s[UTF8_MAXBYTES_CASE(((13)>(3 * ((((U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV) (0x10FFFF) < (16 * (1U << (2 * 6) )) ? 3 : (UV) (0x10FFFF) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV ) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF ) < ((UV) 1U << (6 * 6)) ? 7 : 13))))?(13):(3 * (((( U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV ) (0x10FFFF) < (16 * (1U << (2 * 6))) ? 3 : (UV) (0x10FFFF ) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF) < ((UV) 1U << (6 * 6)) ? 7 : 13)))) + 1]; |
| 12551 | STRLEN len; |
| 12552 | AV *av; |
| 12553 | SV *utf8; |
| 12554 | #line 12555 "APItest.c" |
| 12555 | AV * RETVAL; |
| 12556 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 12557 | ; |
| 12558 | #line 6566 "APItest.xs" |
| 12559 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 12560 | av_push(av, newSVuv(toFOLD_uni(ord, s, &len)))Perl_av_push( av,Perl_newSVuv( Perl__to_uni_fold_flags( ord,s ,&len,0x2))); |
| 12561 | |
| 12562 | utf8 = newSVpvn((char *) s, len)Perl_newSVpvn( (char *) s,len); |
| 12563 | SvUTF8_on(utf8)((utf8)->sv_flags |= (0x20000000)); |
| 12564 | av_push(av, utf8)Perl_av_push( av,utf8); |
| 12565 | |
| 12566 | av_push(av, newSVuv(len))Perl_av_push( av,Perl_newSVuv( len)); |
| 12567 | RETVAL = av; |
| 12568 | #line 12569 "APItest.c" |
| 12569 | { |
| 12570 | SV * RETVALSV; |
| 12571 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 12572 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 12573 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 12574 | } |
| 12575 | } |
| 12576 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12577 | } |
| 12578 | |
| 12579 | |
| 12580 | XS_EUPXS(XS_XS__APItest__Magic_test_toFOLD_uvchr)static void XS_XS__APItest__Magic_test_toFOLD_uvchr( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12581 | XS_EUPXS(XS_XS__APItest__Magic_test_toFOLD_uvchr)static void XS_XS__APItest__Magic_test_toFOLD_uvchr( CV* cv __attribute__ ((unused))) |
| 12582 | { |
| 12583 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12584 | if (items != 1) |
| 12585 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 12586 | { |
| 12587 | #line 6581 "APItest.xs" |
| 12588 | U8 s[UTF8_MAXBYTES_CASE(((13)>(3 * ((((U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV) (0x10FFFF) < (16 * (1U << (2 * 6) )) ? 3 : (UV) (0x10FFFF) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV ) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF ) < ((UV) 1U << (6 * 6)) ? 7 : 13))))?(13):(3 * (((( U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV ) (0x10FFFF) < (16 * (1U << (2 * 6))) ? 3 : (UV) (0x10FFFF ) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF) < ((UV) 1U << (6 * 6)) ? 7 : 13)))) + 1]; |
| 12589 | STRLEN len; |
| 12590 | AV *av; |
| 12591 | SV *utf8; |
| 12592 | #line 12593 "APItest.c" |
| 12593 | AV * RETVAL; |
| 12594 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 12595 | ; |
| 12596 | #line 6586 "APItest.xs" |
| 12597 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 12598 | av_push(av, newSVuv(toFOLD_uvchr(ord, s, &len)))Perl_av_push( av,Perl_newSVuv( Perl__to_uni_fold_flags( ord,s ,&len,0x2))); |
| 12599 | |
| 12600 | utf8 = newSVpvn((char *) s, len)Perl_newSVpvn( (char *) s,len); |
| 12601 | SvUTF8_on(utf8)((utf8)->sv_flags |= (0x20000000)); |
| 12602 | av_push(av, utf8)Perl_av_push( av,utf8); |
| 12603 | |
| 12604 | av_push(av, newSVuv(len))Perl_av_push( av,Perl_newSVuv( len)); |
| 12605 | RETVAL = av; |
| 12606 | #line 12607 "APItest.c" |
| 12607 | { |
| 12608 | SV * RETVALSV; |
| 12609 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 12610 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 12611 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 12612 | } |
| 12613 | } |
| 12614 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12615 | } |
| 12616 | |
| 12617 | |
| 12618 | XS_EUPXS(XS_XS__APItest__Magic_test_toFOLD_utf8)static void XS_XS__APItest__Magic_test_toFOLD_utf8( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12619 | XS_EUPXS(XS_XS__APItest__Magic_test_toFOLD_utf8)static void XS_XS__APItest__Magic_test_toFOLD_utf8( CV* cv __attribute__ ((unused))) |
| 12620 | { |
| 12621 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12622 | if (items != 2) |
| 12623 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 12624 | { |
| 12625 | #line 6601 "APItest.xs" |
| 12626 | U8 *input; |
| 12627 | U8 s[UTF8_MAXBYTES_CASE(((13)>(3 * ((((U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV) (0x10FFFF) < (16 * (1U << (2 * 6) )) ? 3 : (UV) (0x10FFFF) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV ) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF ) < ((UV) 1U << (6 * 6)) ? 7 : 13))))?(13):(3 * (((( U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV ) (0x10FFFF) < (16 * (1U << (2 * 6))) ? 3 : (UV) (0x10FFFF ) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF) < ((UV) 1U << (6 * 6)) ? 7 : 13)))) + 1]; |
| 12628 | STRLEN len; |
| 12629 | AV *av; |
| 12630 | SV *utf8; |
| 12631 | const U8 * e; |
| 12632 | UV resultant_cp = UV_MAX(~(UV)0); |
| 12633 | #line 12634 "APItest.c" |
| 12634 | AV * RETVAL; |
| 12635 | SV * p = ST(0)PL_stack_base[ax + (0)] |
| 12636 | ; |
| 12637 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 12638 | ; |
| 12639 | #line 6609 "APItest.xs" |
| 12640 | input = (U8 *) SvPV(p, len)((((p)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (p)->sv_any)->xpv_cur), ((p)->sv_u .svu_pv)) : Perl_sv_2pv_flags( p,&len,2)); |
| 12641 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 12642 | if (type >= 0) { |
| 12643 | e = input + UTF8SKIP(input)PL_utf8skip[*(const U8*)(input)] - type; |
| 12644 | resultant_cp = toFOLD_utf8_safe(input, e, s, &len)Perl__to_utf8_fold_flags( input,e,s,&len,0x2); |
| 12645 | av_push(av, newSVuv(resultant_cp))Perl_av_push( av,Perl_newSVuv( resultant_cp)); |
| 12646 | |
| 12647 | utf8 = newSVpvn((char *) s, len)Perl_newSVpvn( (char *) s,len); |
| 12648 | SvUTF8_on(utf8)((utf8)->sv_flags |= (0x20000000)); |
| 12649 | av_push(av, utf8)Perl_av_push( av,utf8); |
| 12650 | |
| 12651 | av_push(av, newSVuv(len))Perl_av_push( av,Perl_newSVuv( len)); |
| 12652 | RETVAL = av; |
| 12653 | } |
| 12654 | else { |
| 12655 | RETVAL = 0; |
| 12656 | } |
| 12657 | #line 12658 "APItest.c" |
| 12658 | { |
| 12659 | SV * RETVALSV; |
| 12660 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 12661 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 12662 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 12663 | } |
| 12664 | } |
| 12665 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12666 | } |
| 12667 | |
| 12668 | |
| 12669 | XS_EUPXS(XS_XS__APItest__Magic_test_toUPPER)static void XS_XS__APItest__Magic_test_toUPPER( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12670 | XS_EUPXS(XS_XS__APItest__Magic_test_toUPPER)static void XS_XS__APItest__Magic_test_toUPPER( CV* cv __attribute__ ((unused))) |
| 12671 | { |
| 12672 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12673 | if (items != 1) |
| 12674 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 12675 | { |
| 12676 | UV RETVAL; |
| 12677 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 12678 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 12679 | ; |
| 12680 | #line 6632 "APItest.xs" |
| 12681 | RETVAL = toUPPER(ord)(( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord))) ) - ((('a')) | 0))) <= (((U64) (((('z') - ('a'))) | 0))))) : (sizeof(ord) == sizeof(U32)) ? ( (((U64) (((((U32) (ord))) ) - ((('a')) | 0))) <= (((U64) (((('z') - ('a'))) | 0))))) : ( ( (((U64) (((((U64) (ord)))) - ((('a')) | 0))) <= ((( U64) (((('z') - ('a'))) | 0)))))))) ? (U8)((ord) - ('a' - 'A' )) : (ord)); |
| 12682 | #line 12683 "APItest.c" |
| 12683 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 12684 | } |
| 12685 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12686 | } |
| 12687 | |
| 12688 | |
| 12689 | XS_EUPXS(XS_XS__APItest__Magic_test_toUPPER_LC)static void XS_XS__APItest__Magic_test_toUPPER_LC( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12690 | XS_EUPXS(XS_XS__APItest__Magic_test_toUPPER_LC)static void XS_XS__APItest__Magic_test_toUPPER_LC( CV* cv __attribute__ ((unused))) |
| 12691 | { |
| 12692 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12693 | if (items != 1) |
| 12694 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 12695 | { |
| 12696 | UV RETVAL; |
| 12697 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 12698 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 12699 | ; |
| 12700 | #line 6639 "APItest.xs" |
| 12701 | RETVAL = toUPPER_LC(ord)(! ( (sizeof((ord)) == 1) || !(((U64)(((ord)) | 0)) & ~0xFF )) ? ((ord)) : ((! PL_in_utf8_CTYPE_locale) ? (U8)toupper((U8 )((ord))) : ((((U8)((ord))) == 0xB5) ? 0x039C : ((((U8)((ord) )) == 0xFF) ? 0x0178 : ((((U8)((ord))) == 0xDF) ? ( ((ord))) : PL_mod_latin1_uc[ (U8) ((ord)) ]))))); |
| 12702 | #line 12703 "APItest.c" |
| 12703 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 12704 | } |
| 12705 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12706 | } |
| 12707 | |
| 12708 | |
| 12709 | XS_EUPXS(XS_XS__APItest__Magic_test_toUPPER_uni)static void XS_XS__APItest__Magic_test_toUPPER_uni( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12710 | XS_EUPXS(XS_XS__APItest__Magic_test_toUPPER_uni)static void XS_XS__APItest__Magic_test_toUPPER_uni( CV* cv __attribute__ ((unused))) |
| 12711 | { |
| 12712 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12713 | if (items != 1) |
| 12714 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 12715 | { |
| 12716 | #line 6646 "APItest.xs" |
| 12717 | U8 s[UTF8_MAXBYTES_CASE(((13)>(3 * ((((U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV) (0x10FFFF) < (16 * (1U << (2 * 6) )) ? 3 : (UV) (0x10FFFF) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV ) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF ) < ((UV) 1U << (6 * 6)) ? 7 : 13))))?(13):(3 * (((( U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV ) (0x10FFFF) < (16 * (1U << (2 * 6))) ? 3 : (UV) (0x10FFFF ) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF) < ((UV) 1U << (6 * 6)) ? 7 : 13)))) + 1]; |
| 12718 | STRLEN len; |
| 12719 | AV *av; |
| 12720 | SV *utf8; |
| 12721 | #line 12722 "APItest.c" |
| 12722 | AV * RETVAL; |
| 12723 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 12724 | ; |
| 12725 | #line 6651 "APItest.xs" |
| 12726 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 12727 | av_push(av, newSVuv(toUPPER_uni(ord, s, &len)))Perl_av_push( av,Perl_newSVuv( Perl_to_uni_upper( ord,s,& len))); |
| 12728 | |
| 12729 | utf8 = newSVpvn((char *) s, len)Perl_newSVpvn( (char *) s,len); |
| 12730 | SvUTF8_on(utf8)((utf8)->sv_flags |= (0x20000000)); |
| 12731 | av_push(av, utf8)Perl_av_push( av,utf8); |
| 12732 | |
| 12733 | av_push(av, newSVuv(len))Perl_av_push( av,Perl_newSVuv( len)); |
| 12734 | RETVAL = av; |
| 12735 | #line 12736 "APItest.c" |
| 12736 | { |
| 12737 | SV * RETVALSV; |
| 12738 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 12739 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 12740 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 12741 | } |
| 12742 | } |
| 12743 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12744 | } |
| 12745 | |
| 12746 | |
| 12747 | XS_EUPXS(XS_XS__APItest__Magic_test_toUPPER_uvchr)static void XS_XS__APItest__Magic_test_toUPPER_uvchr( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12748 | XS_EUPXS(XS_XS__APItest__Magic_test_toUPPER_uvchr)static void XS_XS__APItest__Magic_test_toUPPER_uvchr( CV* cv __attribute__ ((unused))) |
| 12749 | { |
| 12750 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12751 | if (items != 1) |
| 12752 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 12753 | { |
| 12754 | #line 6666 "APItest.xs" |
| 12755 | U8 s[UTF8_MAXBYTES_CASE(((13)>(3 * ((((U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV) (0x10FFFF) < (16 * (1U << (2 * 6) )) ? 3 : (UV) (0x10FFFF) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV ) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF ) < ((UV) 1U << (6 * 6)) ? 7 : 13))))?(13):(3 * (((( U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV ) (0x10FFFF) < (16 * (1U << (2 * 6))) ? 3 : (UV) (0x10FFFF ) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF) < ((UV) 1U << (6 * 6)) ? 7 : 13)))) + 1]; |
| 12756 | STRLEN len; |
| 12757 | AV *av; |
| 12758 | SV *utf8; |
| 12759 | #line 12760 "APItest.c" |
| 12760 | AV * RETVAL; |
| 12761 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 12762 | ; |
| 12763 | #line 6671 "APItest.xs" |
| 12764 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 12765 | av_push(av, newSVuv(toUPPER_uvchr(ord, s, &len)))Perl_av_push( av,Perl_newSVuv( Perl_to_uni_upper( ord,s,& len))); |
| 12766 | |
| 12767 | utf8 = newSVpvn((char *) s, len)Perl_newSVpvn( (char *) s,len); |
| 12768 | SvUTF8_on(utf8)((utf8)->sv_flags |= (0x20000000)); |
| 12769 | av_push(av, utf8)Perl_av_push( av,utf8); |
| 12770 | |
| 12771 | av_push(av, newSVuv(len))Perl_av_push( av,Perl_newSVuv( len)); |
| 12772 | RETVAL = av; |
| 12773 | #line 12774 "APItest.c" |
| 12774 | { |
| 12775 | SV * RETVALSV; |
| 12776 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 12777 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 12778 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 12779 | } |
| 12780 | } |
| 12781 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12782 | } |
| 12783 | |
| 12784 | |
| 12785 | XS_EUPXS(XS_XS__APItest__Magic_test_toUPPER_utf8)static void XS_XS__APItest__Magic_test_toUPPER_utf8( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12786 | XS_EUPXS(XS_XS__APItest__Magic_test_toUPPER_utf8)static void XS_XS__APItest__Magic_test_toUPPER_utf8( CV* cv __attribute__ ((unused))) |
| 12787 | { |
| 12788 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12789 | if (items != 2) |
| 12790 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 12791 | { |
| 12792 | #line 6686 "APItest.xs" |
| 12793 | U8 *input; |
| 12794 | U8 s[UTF8_MAXBYTES_CASE(((13)>(3 * ((((U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV) (0x10FFFF) < (16 * (1U << (2 * 6) )) ? 3 : (UV) (0x10FFFF) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV ) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF ) < ((UV) 1U << (6 * 6)) ? 7 : 13))))?(13):(3 * (((( U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV ) (0x10FFFF) < (16 * (1U << (2 * 6))) ? 3 : (UV) (0x10FFFF ) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF) < ((UV) 1U << (6 * 6)) ? 7 : 13)))) + 1]; |
| 12795 | STRLEN len; |
| 12796 | AV *av; |
| 12797 | SV *utf8; |
| 12798 | const U8 * e; |
| 12799 | UV resultant_cp = UV_MAX(~(UV)0); |
| 12800 | #line 12801 "APItest.c" |
| 12801 | AV * RETVAL; |
| 12802 | SV * p = ST(0)PL_stack_base[ax + (0)] |
| 12803 | ; |
| 12804 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 12805 | ; |
| 12806 | #line 6694 "APItest.xs" |
| 12807 | input = (U8 *) SvPV(p, len)((((p)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (p)->sv_any)->xpv_cur), ((p)->sv_u .svu_pv)) : Perl_sv_2pv_flags( p,&len,2)); |
| 12808 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 12809 | if (type >= 0) { |
| 12810 | e = input + UTF8SKIP(input)PL_utf8skip[*(const U8*)(input)] - type; |
| 12811 | resultant_cp = toUPPER_utf8_safe(input, e, s, &len)Perl__to_utf8_upper_flags( input,e,s,&len,0); |
| 12812 | av_push(av, newSVuv(resultant_cp))Perl_av_push( av,Perl_newSVuv( resultant_cp)); |
| 12813 | |
| 12814 | utf8 = newSVpvn((char *) s, len)Perl_newSVpvn( (char *) s,len); |
| 12815 | SvUTF8_on(utf8)((utf8)->sv_flags |= (0x20000000)); |
| 12816 | av_push(av, utf8)Perl_av_push( av,utf8); |
| 12817 | |
| 12818 | av_push(av, newSVuv(len))Perl_av_push( av,Perl_newSVuv( len)); |
| 12819 | RETVAL = av; |
| 12820 | } |
| 12821 | else { |
| 12822 | RETVAL = 0; |
| 12823 | } |
| 12824 | #line 12825 "APItest.c" |
| 12825 | { |
| 12826 | SV * RETVALSV; |
| 12827 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 12828 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 12829 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 12830 | } |
| 12831 | } |
| 12832 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12833 | } |
| 12834 | |
| 12835 | |
| 12836 | XS_EUPXS(XS_XS__APItest__Magic_test_toTITLE)static void XS_XS__APItest__Magic_test_toTITLE( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12837 | XS_EUPXS(XS_XS__APItest__Magic_test_toTITLE)static void XS_XS__APItest__Magic_test_toTITLE( CV* cv __attribute__ ((unused))) |
| 12838 | { |
| 12839 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12840 | if (items != 1) |
| 12841 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 12842 | { |
| 12843 | UV RETVAL; |
| 12844 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 12845 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 12846 | ; |
| 12847 | #line 6717 "APItest.xs" |
| 12848 | RETVAL = toTITLE(ord)(( ( (sizeof(ord) == sizeof(U8)) ? ( (((U64) (((((U8) (ord))) ) - ((('a')) | 0))) <= (((U64) (((('z') - ('a'))) | 0))))) : (sizeof(ord) == sizeof(U32)) ? ( (((U64) (((((U32) (ord))) ) - ((('a')) | 0))) <= (((U64) (((('z') - ('a'))) | 0))))) : ( ( (((U64) (((((U64) (ord)))) - ((('a')) | 0))) <= ((( U64) (((('z') - ('a'))) | 0)))))))) ? (U8)((ord) - ('a' - 'A' )) : (ord)); |
| 12849 | #line 12850 "APItest.c" |
| 12850 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 12851 | } |
| 12852 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12853 | } |
| 12854 | |
| 12855 | |
| 12856 | XS_EUPXS(XS_XS__APItest__Magic_test_toTITLE_uni)static void XS_XS__APItest__Magic_test_toTITLE_uni( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12857 | XS_EUPXS(XS_XS__APItest__Magic_test_toTITLE_uni)static void XS_XS__APItest__Magic_test_toTITLE_uni( CV* cv __attribute__ ((unused))) |
| 12858 | { |
| 12859 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12860 | if (items != 1) |
| 12861 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 12862 | { |
| 12863 | #line 6724 "APItest.xs" |
| 12864 | U8 s[UTF8_MAXBYTES_CASE(((13)>(3 * ((((U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV) (0x10FFFF) < (16 * (1U << (2 * 6) )) ? 3 : (UV) (0x10FFFF) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV ) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF ) < ((UV) 1U << (6 * 6)) ? 7 : 13))))?(13):(3 * (((( U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV ) (0x10FFFF) < (16 * (1U << (2 * 6))) ? 3 : (UV) (0x10FFFF ) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF) < ((UV) 1U << (6 * 6)) ? 7 : 13)))) + 1]; |
| 12865 | STRLEN len; |
| 12866 | AV *av; |
| 12867 | SV *utf8; |
| 12868 | #line 12869 "APItest.c" |
| 12869 | AV * RETVAL; |
| 12870 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 12871 | ; |
| 12872 | #line 6729 "APItest.xs" |
| 12873 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 12874 | av_push(av, newSVuv(toTITLE_uni(ord, s, &len)))Perl_av_push( av,Perl_newSVuv( Perl_to_uni_title( ord,s,& len))); |
| 12875 | |
| 12876 | utf8 = newSVpvn((char *) s, len)Perl_newSVpvn( (char *) s,len); |
| 12877 | SvUTF8_on(utf8)((utf8)->sv_flags |= (0x20000000)); |
| 12878 | av_push(av, utf8)Perl_av_push( av,utf8); |
| 12879 | |
| 12880 | av_push(av, newSVuv(len))Perl_av_push( av,Perl_newSVuv( len)); |
| 12881 | RETVAL = av; |
| 12882 | #line 12883 "APItest.c" |
| 12883 | { |
| 12884 | SV * RETVALSV; |
| 12885 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 12886 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 12887 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 12888 | } |
| 12889 | } |
| 12890 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12891 | } |
| 12892 | |
| 12893 | |
| 12894 | XS_EUPXS(XS_XS__APItest__Magic_test_toTITLE_uvchr)static void XS_XS__APItest__Magic_test_toTITLE_uvchr( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12895 | XS_EUPXS(XS_XS__APItest__Magic_test_toTITLE_uvchr)static void XS_XS__APItest__Magic_test_toTITLE_uvchr( CV* cv __attribute__ ((unused))) |
| 12896 | { |
| 12897 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12898 | if (items != 1) |
| 12899 | croak_xs_usagePerl_croak_xs_usage(cv, "ord"); |
| 12900 | { |
| 12901 | #line 6744 "APItest.xs" |
| 12902 | U8 s[UTF8_MAXBYTES_CASE(((13)>(3 * ((((U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV) (0x10FFFF) < (16 * (1U << (2 * 6) )) ? 3 : (UV) (0x10FFFF) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV ) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF ) < ((UV) 1U << (6 * 6)) ? 7 : 13))))?(13):(3 * (((( U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV ) (0x10FFFF) < (16 * (1U << (2 * 6))) ? 3 : (UV) (0x10FFFF ) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF) < ((UV) 1U << (6 * 6)) ? 7 : 13)))) + 1]; |
| 12903 | STRLEN len; |
| 12904 | AV *av; |
| 12905 | SV *utf8; |
| 12906 | #line 12907 "APItest.c" |
| 12907 | AV * RETVAL; |
| 12908 | UV ord = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 12909 | ; |
| 12910 | #line 6749 "APItest.xs" |
| 12911 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 12912 | av_push(av, newSVuv(toTITLE_uvchr(ord, s, &len)))Perl_av_push( av,Perl_newSVuv( Perl_to_uni_title( ord,s,& len))); |
| 12913 | |
| 12914 | utf8 = newSVpvn((char *) s, len)Perl_newSVpvn( (char *) s,len); |
| 12915 | SvUTF8_on(utf8)((utf8)->sv_flags |= (0x20000000)); |
| 12916 | av_push(av, utf8)Perl_av_push( av,utf8); |
| 12917 | |
| 12918 | av_push(av, newSVuv(len))Perl_av_push( av,Perl_newSVuv( len)); |
| 12919 | RETVAL = av; |
| 12920 | #line 12921 "APItest.c" |
| 12921 | { |
| 12922 | SV * RETVALSV; |
| 12923 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 12924 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 12925 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 12926 | } |
| 12927 | } |
| 12928 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12929 | } |
| 12930 | |
| 12931 | |
| 12932 | XS_EUPXS(XS_XS__APItest__Magic_test_toTITLE_utf8)static void XS_XS__APItest__Magic_test_toTITLE_utf8( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12933 | XS_EUPXS(XS_XS__APItest__Magic_test_toTITLE_utf8)static void XS_XS__APItest__Magic_test_toTITLE_utf8( CV* cv __attribute__ ((unused))) |
| 12934 | { |
| 12935 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12936 | if (items != 2) |
| 12937 | croak_xs_usagePerl_croak_xs_usage(cv, "p, type"); |
| 12938 | { |
| 12939 | #line 6764 "APItest.xs" |
| 12940 | U8 *input; |
| 12941 | U8 s[UTF8_MAXBYTES_CASE(((13)>(3 * ((((U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV) (0x10FFFF) < (16 * (1U << (2 * 6) )) ? 3 : (UV) (0x10FFFF) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV ) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF ) < ((UV) 1U << (6 * 6)) ? 7 : 13))))?(13):(3 * (((( U64)(0x10FFFF)) < (((U8) (0xFF << 6)) & 0xB0)) ? 1 : ((UV) (0x10FFFF) < (32 * (1U << ( 6))) ? 2 : (UV ) (0x10FFFF) < (16 * (1U << (2 * 6))) ? 3 : (UV) (0x10FFFF ) < ( 8 * (1U << (3 * 6))) ? 4 : (UV) (0x10FFFF) < ( 4 * (1U << (4 * 6))) ? 5 : (UV) (0x10FFFF) < ( 2 * (1U << (5 * 6))) ? 6 : (UV) (0x10FFFF) < ((UV) 1U << (6 * 6)) ? 7 : 13)))) + 1]; |
| 12942 | STRLEN len; |
| 12943 | AV *av; |
| 12944 | SV *utf8; |
| 12945 | const U8 * e; |
| 12946 | UV resultant_cp = UV_MAX(~(UV)0); |
| 12947 | #line 12948 "APItest.c" |
| 12948 | AV * RETVAL; |
| 12949 | SV * p = ST(0)PL_stack_base[ax + (0)] |
| 12950 | ; |
| 12951 | int type = (int)SvIV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x00200000 )) == 0x00000100) ? ((XPVIV*) (PL_stack_base[ax + (1)])->sv_any )->xiv_u.xivu_iv : Perl_sv_2iv_flags( PL_stack_base[ax + ( 1)],2)) |
| 12952 | ; |
| 12953 | #line 6772 "APItest.xs" |
| 12954 | input = (U8 *) SvPV(p, len)((((p)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (p)->sv_any)->xpv_cur), ((p)->sv_u .svu_pv)) : Perl_sv_2pv_flags( p,&len,2)); |
| 12955 | av = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 12956 | if (type >= 0) { |
| 12957 | e = input + UTF8SKIP(input)PL_utf8skip[*(const U8*)(input)] - type; |
| 12958 | resultant_cp = toTITLE_utf8_safe(input, e, s, &len)Perl__to_utf8_title_flags( input,e,s,&len,0); |
| 12959 | av_push(av, newSVuv(resultant_cp))Perl_av_push( av,Perl_newSVuv( resultant_cp)); |
| 12960 | |
| 12961 | utf8 = newSVpvn((char *) s, len)Perl_newSVpvn( (char *) s,len); |
| 12962 | SvUTF8_on(utf8)((utf8)->sv_flags |= (0x20000000)); |
| 12963 | av_push(av, utf8)Perl_av_push( av,utf8); |
| 12964 | |
| 12965 | av_push(av, newSVuv(len))Perl_av_push( av,Perl_newSVuv( len)); |
| 12966 | RETVAL = av; |
| 12967 | } |
| 12968 | else { |
| 12969 | RETVAL = 0; |
| 12970 | } |
| 12971 | #line 12972 "APItest.c" |
| 12972 | { |
| 12973 | SV * RETVALSV; |
| 12974 | RETVALSV = newRV((SV*)RETVAL)Perl_newRV( (SV*)RETVAL); |
| 12975 | RETVALSV = sv_2mortal(RETVALSV)Perl_sv_2mortal( RETVALSV); |
| 12976 | ST(0)PL_stack_base[ax + (0)] = RETVALSV; |
| 12977 | } |
| 12978 | } |
| 12979 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 12980 | } |
| 12981 | |
| 12982 | |
| 12983 | XS_EUPXS(XS_XS__APItest__Magic_test_Gconvert)static void XS_XS__APItest__Magic_test_Gconvert( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 12984 | XS_EUPXS(XS_XS__APItest__Magic_test_Gconvert)static void XS_XS__APItest__Magic_test_Gconvert( CV* cv __attribute__ ((unused))) |
| 12985 | { |
| 12986 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 12987 | if (items != 2) |
| 12988 | croak_xs_usagePerl_croak_xs_usage(cv, "number, num_digits"); |
| 12989 | { |
| 12990 | #line 6795 "APItest.xs" |
| 12991 | char buffer[100]; |
| 12992 | int len; |
| 12993 | #line 12994 "APItest.c" |
| 12994 | SV * RETVAL; |
| 12995 | SV * number = ST(0)PL_stack_base[ax + (0)] |
| 12996 | ; |
| 12997 | SV * num_digits = ST(1)PL_stack_base[ax + (1)] |
| 12998 | ; |
| 12999 | #line 6798 "APItest.xs" |
| 13000 | len = (int) SvIV(num_digits)((((num_digits)->sv_flags & (0x00000100|0x00200000)) == 0x00000100) ? ((XPVIV*) (num_digits)->sv_any)->xiv_u.xivu_iv : Perl_sv_2iv_flags( num_digits,2)); |
| 13001 | if (len > 99) croakPerl_croak("Too long a number for test_Gconvert"); |
| 13002 | if (len < 0) croakPerl_croak("Too short a number for test_Gconvert"); |
| 13003 | PERL_UNUSED_RESULT(Gconvert(SvNV(number), len,do { __typeof__(gcvt((((((number)->sv_flags & (0x00000200 |0x00200000)) == 0x00000200) ? ((XPVNV*) (number)->sv_any) ->xnv_u.xnv_nv : Perl_sv_2nv_flags( number,2))),(len),(buffer ))) z = (gcvt((((((number)->sv_flags & (0x00000200|0x00200000 )) == 0x00000200) ? ((XPVNV*) (number)->sv_any)->xnv_u. xnv_nv : Perl_sv_2nv_flags( number,2))),(len),(buffer))); (void )sizeof(z); } while (0) |
| 13004 | 0, /* No trailing zeroes */do { __typeof__(gcvt((((((number)->sv_flags & (0x00000200 |0x00200000)) == 0x00000200) ? ((XPVNV*) (number)->sv_any) ->xnv_u.xnv_nv : Perl_sv_2nv_flags( number,2))),(len),(buffer ))) z = (gcvt((((((number)->sv_flags & (0x00000200|0x00200000 )) == 0x00000200) ? ((XPVNV*) (number)->sv_any)->xnv_u. xnv_nv : Perl_sv_2nv_flags( number,2))),(len),(buffer))); (void )sizeof(z); } while (0) |
| 13005 | buffer))do { __typeof__(gcvt((((((number)->sv_flags & (0x00000200 |0x00200000)) == 0x00000200) ? ((XPVNV*) (number)->sv_any) ->xnv_u.xnv_nv : Perl_sv_2nv_flags( number,2))),(len),(buffer ))) z = (gcvt((((((number)->sv_flags & (0x00000200|0x00200000 )) == 0x00000200) ? ((XPVNV*) (number)->sv_any)->xnv_u. xnv_nv : Perl_sv_2nv_flags( number,2))),(len),(buffer))); (void )sizeof(z); } while (0); |
| 13006 | RETVAL = newSVpv(buffer, 0)Perl_newSVpv( buffer,0); |
| 13007 | #line 13008 "APItest.c" |
| 13008 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 13009 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 13010 | } |
| 13011 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 13012 | } |
| 13013 | |
| 13014 | |
| 13015 | XS_EUPXS(XS_XS__APItest__Magic_test_Perl_langinfo)static void XS_XS__APItest__Magic_test_Perl_langinfo( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 13016 | XS_EUPXS(XS_XS__APItest__Magic_test_Perl_langinfo)static void XS_XS__APItest__Magic_test_Perl_langinfo( CV* cv __attribute__ ((unused))) |
| 13017 | { |
| 13018 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 13019 | if (items != 1) |
| 13020 | croak_xs_usagePerl_croak_xs_usage(cv, "item"); |
| 13021 | { |
| 13022 | SV * RETVAL; |
| 13023 | SV * item = ST(0)PL_stack_base[ax + (0)] |
| 13024 | ; |
| 13025 | #line 6811 "APItest.xs" |
| 13026 | RETVAL = newSVpv(Perl_langinfo(SvIV(item)), 0)Perl_newSVpv( Perl_langinfo(((((item)->sv_flags & (0x00000100 |0x00200000)) == 0x00000100) ? ((XPVIV*) (item)->sv_any)-> xiv_u.xivu_iv : Perl_sv_2iv_flags( item,2))),0); |
| 13027 | #line 13028 "APItest.c" |
| 13028 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 13029 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 13030 | } |
| 13031 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 13032 | } |
| 13033 | |
| 13034 | |
| 13035 | XS_EUPXS(XS_XS__APItest__Backrefs_apitest_weaken)static void XS_XS__APItest__Backrefs_apitest_weaken( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 13036 | XS_EUPXS(XS_XS__APItest__Backrefs_apitest_weaken)static void XS_XS__APItest__Backrefs_apitest_weaken( CV* cv __attribute__ ((unused))) |
| 13037 | { |
| 13038 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 13039 | if (items != 1) |
| 13040 | croak_xs_usagePerl_croak_xs_usage(cv, "sv"); |
| 13041 | { |
| 13042 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 13043 | ; |
| 13044 | #line 6821 "APItest.xs" |
| 13045 | sv_rvweaken(sv)Perl_sv_rvweaken( sv); |
| 13046 | #line 13047 "APItest.c" |
| 13047 | } |
| 13048 | XSRETURN_EMPTYdo { do { const IV tmpXSoff = (0); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 13049 | } |
| 13050 | |
| 13051 | |
| 13052 | XS_EUPXS(XS_XS__APItest__Backrefs_has_backrefs)static void XS_XS__APItest__Backrefs_has_backrefs( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 13053 | XS_EUPXS(XS_XS__APItest__Backrefs_has_backrefs)static void XS_XS__APItest__Backrefs_has_backrefs( CV* cv __attribute__ ((unused))) |
| 13054 | { |
| 13055 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 13056 | if (items != 1) |
| 13057 | croak_xs_usagePerl_croak_xs_usage(cv, "sv"); |
| 13058 | { |
| 13059 | SV * RETVAL; |
| 13060 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 13061 | ; |
| 13062 | #line 6826 "APItest.xs" |
| 13063 | if (SvROK(sv)((sv)->sv_flags & 0x00000800) && sv_get_backrefsPerl_sv_get_backrefs(SvRV(sv)((sv)->sv_u.svu_rv))) |
| 13064 | RETVAL = &PL_sv_yes(PL_sv_immortals[0]); |
| 13065 | else |
| 13066 | RETVAL = &PL_sv_no(PL_sv_immortals[2]); |
| 13067 | #line 13068 "APItest.c" |
| 13068 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 13069 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 13070 | } |
| 13071 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 13072 | } |
| 13073 | |
| 13074 | #ifdef WIN32 |
| 13075 | #ifdef PERL_IMPLICIT_SYS |
| 13076 | #define XSubPPtmpAAAE 1 |
| 13077 | |
| 13078 | |
| 13079 | XS_EUPXS(XS_XS__APItest__Backrefs_PerlDir_mapA)static void XS_XS__APItest__Backrefs_PerlDir_mapA( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 13080 | XS_EUPXS(XS_XS__APItest__Backrefs_PerlDir_mapA)static void XS_XS__APItest__Backrefs_PerlDir_mapA( CV* cv __attribute__ ((unused))) |
| 13081 | { |
| 13082 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 13083 | if (items != 1) |
| 13084 | croak_xs_usagePerl_croak_xs_usage(cv, "path"); |
| 13085 | { |
| 13086 | const char * RETVAL; |
| 13087 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 13088 | const char * path = (const char *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 13089 | ; |
| 13090 | |
| 13091 | RETVAL = PerlDir_mapA(path); |
| 13092 | sv_setpv(TARG, RETVAL)Perl_sv_setpv( targ,RETVAL); XSprePUSH(sp = PL_stack_base + ax - 1); PUSHTARGdo { do { if (__builtin_expect(((((targ)->sv_flags & 0x00400000 )) ? (_Bool)1 : (_Bool)0),(0))) Perl_mg_set( targ); } while ( 0); (*++sp = (targ)); } while (0); |
| 13093 | } |
| 13094 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 13095 | } |
| 13096 | |
| 13097 | |
| 13098 | XS_EUPXS(XS_XS__APItest__Backrefs_PerlDir_mapW)static void XS_XS__APItest__Backrefs_PerlDir_mapW( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 13099 | XS_EUPXS(XS_XS__APItest__Backrefs_PerlDir_mapW)static void XS_XS__APItest__Backrefs_PerlDir_mapW( CV* cv __attribute__ ((unused))) |
| 13100 | { |
| 13101 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 13102 | if (items != 1) |
| 13103 | croak_xs_usagePerl_croak_xs_usage(cv, "wpath"); |
| 13104 | { |
| 13105 | const WCHAR * RETVAL; |
| 13106 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 13107 | const WCHAR * wpath = (const WCHAR *)SvPV_nolen(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000400|0x00200000 )) == 0x00000400) ? ((PL_stack_base[ax + (0)])->sv_u.svu_pv ) : Perl_sv_2pv_flags( PL_stack_base[ax + (0)],0,2)) |
| 13108 | ; |
| 13109 | |
| 13110 | RETVAL = PerlDir_mapW(wpath); |
| 13111 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHp((const char *)(RETVAL), sizeof(WCHAR) * (1+wcslen(RETVAL)))do { Perl_sv_setpvn( targ,((const char *)(RETVAL)),(sizeof(WCHAR ) * (1+wcslen(RETVAL)))); do { do { if (__builtin_expect((((( targ)->sv_flags & 0x00400000)) ? (_Bool)1 : (_Bool)0), (0))) Perl_mg_set( targ); } while (0); (*++sp = (targ)); } while (0); } while (0); |
| 13112 | } |
| 13113 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 13114 | } |
| 13115 | |
| 13116 | #endif |
| 13117 | #define XSubPPtmpAAAF 1 |
| 13118 | |
| 13119 | |
| 13120 | XS_EUPXS(XS_XS__APItest__Backrefs_Comctl32Version)static void XS_XS__APItest__Backrefs_Comctl32Version( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 13121 | XS_EUPXS(XS_XS__APItest__Backrefs_Comctl32Version)static void XS_XS__APItest__Backrefs_Comctl32Version( CV* cv __attribute__ ((unused))) |
| 13122 | { |
| 13123 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 13124 | if (items != 0) |
| 13125 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 13126 | PERL_UNUSED_VAR(ax)((void)sizeof(ax)); /* -Wall */ |
| 13127 | SPsp -= items; |
| 13128 | { |
| 13129 | #line 6847 "APItest.xs" |
| 13130 | HMODULE dll; |
| 13131 | VS_FIXEDFILEINFO *info; |
| 13132 | UINT len; |
| 13133 | HRSRC hrsc; |
| 13134 | HGLOBAL ver; |
| 13135 | void * vercopy; |
| 13136 | #line 13137 "APItest.c" |
| 13137 | #line 6854 "APItest.xs" |
| 13138 | dll = GetModuleHandle("comctl32.dll"); /* must already be in proc */ |
| 13139 | if(!dll) |
| 13140 | croakPerl_croak("Comctl32Version: comctl32.dll not in process???"); |
| 13141 | hrsc = FindResource(dll, MAKEINTRESOURCE(VS_VERSION_INFO), |
| 13142 | MAKEINTRESOURCE((Size_tsize_t)VS_FILE_INFO)); |
| 13143 | if(!hrsc) |
| 13144 | croakPerl_croak("Comctl32Version: comctl32.dll no version???"); |
| 13145 | ver = LoadResource(dll, hrsc); |
| 13146 | len = SizeofResource(dll, hrsc); |
| 13147 | vercopy = (void *)sv_grow(sv_newmortal(),len)Perl_sv_grow( Perl_sv_newmortal(),len); |
| 13148 | memcpy(vercopy, ver, len); |
| 13149 | if (VerQueryValue(vercopy, "\\", (void**)&info, &len)) { |
| 13150 | int dwValueMS1 = (info->dwFileVersionMS>>16); |
| 13151 | int dwValueMS2 = (info->dwFileVersionMS&0xffff); |
| 13152 | int dwValueLS1 = (info->dwFileVersionLS>>16); |
| 13153 | int dwValueLS2 = (info->dwFileVersionLS&0xffff); |
| 13154 | EXTEND(SP, 4)do { (void)0; if (__builtin_expect(((((4) < 0 || PL_stack_max - (sp) < (4))) ? (_Bool)1 : (_Bool)0),(0))) { sp = Perl_stack_grow ( sp,sp,(sizeof(4) > sizeof(ssize_t) && ((ssize_t) (4) != (4)) ? -1 : (4))); ((void)sizeof(sp)); } } while (0); |
| 13155 | mPUSHi(dwValueMS1)Perl_sv_setiv( (*++sp = (Perl_sv_newmortal())),(IV)(dwValueMS1 )); |
| 13156 | mPUSHi(dwValueMS2)Perl_sv_setiv( (*++sp = (Perl_sv_newmortal())),(IV)(dwValueMS2 )); |
| 13157 | mPUSHi(dwValueLS1)Perl_sv_setiv( (*++sp = (Perl_sv_newmortal())),(IV)(dwValueLS1 )); |
| 13158 | mPUSHi(dwValueLS2)Perl_sv_setiv( (*++sp = (Perl_sv_newmortal())),(IV)(dwValueLS2 )); |
| 13159 | } |
| 13160 | #line 13161 "APItest.c" |
| 13161 | PUTBACKPL_stack_sp = sp; |
| 13162 | return; |
| 13163 | } |
| 13164 | } |
| 13165 | |
| 13166 | #endif |
| 13167 | |
| 13168 | XS_EUPXS(XS_XS__APItest__HvMacro_u8_to_u16_le)static void XS_XS__APItest__HvMacro_u8_to_u16_le( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 13169 | XS_EUPXS(XS_XS__APItest__HvMacro_u8_to_u16_le)static void XS_XS__APItest__HvMacro_u8_to_u16_le( CV* cv __attribute__ ((unused))) |
| 13170 | { |
| 13171 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 13172 | dXSI32I32 ix = ((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))-> xcv_start_u.xcv_xsubany.any_i32; |
| 13173 | if (items != 2) |
| 13174 | croak_xs_usagePerl_croak_xs_usage(cv, "sv, ofs"); |
| 13175 | { |
| 13176 | UV RETVAL; |
| 13177 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 13178 | SV * sv = ST(0)PL_stack_base[ax + (0)] |
| 13179 | ; |
| 13180 | STRLEN ofs = (STRLEN)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 13181 | ; |
| 13182 | #line 6889 "APItest.xs" |
| 13183 | { |
| 13184 | STRLEN len; |
| 13185 | char *pv= SvPV(sv,len)((((sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((len = ((XPV*) (sv)->sv_any)->xpv_cur), ((sv)-> sv_u.svu_pv)) : Perl_sv_2pv_flags( sv,&len,2)); |
| 13186 | STRLEN minlen= 2<<ix; |
| 13187 | U16 u16; |
| 13188 | U32 u32; |
| 13189 | U64 u64; |
| 13190 | RETVAL= 0; /* silence warnings about uninitialized RETVAL */ |
| 13191 | switch (ix) { |
| 13192 | case 0: |
| 13193 | if (ofs+minlen>len) croakPerl_croak("cowardly refusing to read past end of string in u8_to_u16_le"); |
| 13194 | u16= U8TO16_LE(pv+ofs)((((U16)(((U8*)((pv+ofs)))[(0)]))<<(0))| (((U16)(((U8*) ((pv+ofs)))[(1)]))<<(8))); |
| 13195 | RETVAL= (UV)u16; |
| 13196 | break; |
| 13197 | case 1: |
| 13198 | if (ofs+minlen>len) croakPerl_croak("cowardly refusing to read past end of string in u8_to_u32_le"); |
| 13199 | u32= U8TO32_LE(pv+ofs)((((U32)(((U8*)((pv+ofs)))[(0)]))<<(0))| (((U32)(((U8*) ((pv+ofs)))[(1)]))<<(8))| (((U32)(((U8*)((pv+ofs)))[(2) ]))<<(16))| (((U32)(((U8*)((pv+ofs)))[(3)]))<<(24 ))); |
| 13200 | RETVAL= (UV)u32; |
| 13201 | break; |
| 13202 | case 2: |
| 13203 | #if TEST_64BIT1 |
| 13204 | if (ofs+minlen>len) croakPerl_croak("cowardly refusing to read past end of string in u8_to_u64_le"); |
| 13205 | u64= U8TO64_LE(pv+ofs)((((U64)(((U8*)((pv+ofs)))[(0)]))<<(0))| (((U64)(((U8*) ((pv+ofs)))[(1)]))<<(8))| (((U64)(((U8*)((pv+ofs)))[(2) ]))<<(16))| (((U64)(((U8*)((pv+ofs)))[(3)]))<<(24 ))| (((U64)(((U8*)((pv+ofs)))[(4)]))<<(32))| (((U64)((( U8*)((pv+ofs)))[(5)]))<<(40))| (((U64)(((U8*)((pv+ofs)) )[(6)]))<<(48))| (((U64)(((U8*)((pv+ofs)))[(7)]))<< (56))); |
| 13206 | RETVAL= (UV)u64; |
| 13207 | #else |
| 13208 | croakPerl_croak("not a 64 bit perl IVSIZE=%d",IVSIZE8); |
| 13209 | #endif |
| 13210 | break; |
| 13211 | } |
| 13212 | } |
| 13213 | #line 13214 "APItest.c" |
| 13214 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 13215 | } |
| 13216 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 13217 | } |
| 13218 | |
| 13219 | |
| 13220 | XS_EUPXS(XS_XS__APItest__HvMacro_rotl32)static void XS_XS__APItest__HvMacro_rotl32( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 13221 | XS_EUPXS(XS_XS__APItest__HvMacro_rotl32)static void XS_XS__APItest__HvMacro_rotl32( CV* cv __attribute__ ((unused))) |
| 13222 | { |
| 13223 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 13224 | if (items != 2) |
| 13225 | croak_xs_usagePerl_croak_xs_usage(cv, "n, r"); |
| 13226 | { |
| 13227 | U32 RETVAL; |
| 13228 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 13229 | U32 n = (unsigned long)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 13230 | ; |
| 13231 | U8 r = (U8)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 13232 | ; |
| 13233 | #line 6925 "APItest.xs" |
| 13234 | { |
| 13235 | RETVAL= ROTL32(n,r)(((U32)(n) << (r)) | ((U32)(n) >> (32 - (r)))); |
| 13236 | } |
| 13237 | #line 13238 "APItest.c" |
| 13238 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 13239 | } |
| 13240 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 13241 | } |
| 13242 | |
| 13243 | |
| 13244 | XS_EUPXS(XS_XS__APItest__HvMacro_rotr32)static void XS_XS__APItest__HvMacro_rotr32( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 13245 | XS_EUPXS(XS_XS__APItest__HvMacro_rotr32)static void XS_XS__APItest__HvMacro_rotr32( CV* cv __attribute__ ((unused))) |
| 13246 | { |
| 13247 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 13248 | if (items != 2) |
| 13249 | croak_xs_usagePerl_croak_xs_usage(cv, "n, r"); |
| 13250 | { |
| 13251 | U32 RETVAL; |
| 13252 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 13253 | U32 n = (unsigned long)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 13254 | ; |
| 13255 | U8 r = (U8)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 13256 | ; |
| 13257 | #line 6934 "APItest.xs" |
| 13258 | { |
| 13259 | RETVAL= ROTR32(n,r)(((U32)(n) << (32 - (r))) | ((U32)(n) >> (r))); |
| 13260 | } |
| 13261 | #line 13262 "APItest.c" |
| 13262 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 13263 | } |
| 13264 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 13265 | } |
| 13266 | |
| 13267 | #if TEST_64BIT1 |
| 13268 | #define XSubPPtmpAAAG1 1 |
| 13269 | |
| 13270 | |
| 13271 | XS_EUPXS(XS_XS__APItest__HvMacro_rotl64)static void XS_XS__APItest__HvMacro_rotl64( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 13272 | XS_EUPXS(XS_XS__APItest__HvMacro_rotl64)static void XS_XS__APItest__HvMacro_rotl64( CV* cv __attribute__ ((unused))) |
| 13273 | { |
| 13274 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 13275 | if (items != 2) |
| 13276 | croak_xs_usagePerl_croak_xs_usage(cv, "n, r"); |
| 13277 | { |
| 13278 | UV RETVAL; |
| 13279 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 13280 | UV n = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 13281 | ; |
| 13282 | U8 r = (U8)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 13283 | ; |
| 13284 | #line 6945 "APItest.xs" |
| 13285 | { |
| 13286 | RETVAL= ROTL64(n,r)( ( (U64)(n) << (r) ) | ( (U64)(n) >> ( 64 - (r) ) ) ); |
| 13287 | } |
| 13288 | #line 13289 "APItest.c" |
| 13289 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 13290 | } |
| 13291 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 13292 | } |
| 13293 | |
| 13294 | |
| 13295 | XS_EUPXS(XS_XS__APItest__HvMacro_rotr64)static void XS_XS__APItest__HvMacro_rotr64( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 13296 | XS_EUPXS(XS_XS__APItest__HvMacro_rotr64)static void XS_XS__APItest__HvMacro_rotr64( CV* cv __attribute__ ((unused))) |
| 13297 | { |
| 13298 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 13299 | if (items != 2) |
| 13300 | croak_xs_usagePerl_croak_xs_usage(cv, "n, r"); |
| 13301 | { |
| 13302 | UV RETVAL; |
| 13303 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 13304 | UV n = (UV)SvUV(ST(0))((((PL_stack_base[ax + (0)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (0)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (0)],2)) |
| 13305 | ; |
| 13306 | U8 r = (U8)SvUV(ST(1))((((PL_stack_base[ax + (1)])->sv_flags & (0x00000100|0x80000000 |0x00200000)) == (0x00000100|0x80000000)) ? ((XPVUV*) (PL_stack_base [ax + (1)])->sv_any)->xuv_u.xivu_uv : Perl_sv_2uv_flags ( PL_stack_base[ax + (1)],2)) |
| 13307 | ; |
| 13308 | #line 6954 "APItest.xs" |
| 13309 | { |
| 13310 | RETVAL= ROTR64(n,r)( ( (U64)(n) << ( 64 - (r) ) ) | ( (U64)(n) >> (r ) ) ); |
| 13311 | } |
| 13312 | #line 13313 "APItest.c" |
| 13313 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 13314 | } |
| 13315 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 13316 | } |
| 13317 | |
| 13318 | |
| 13319 | XS_EUPXS(XS_XS__APItest__HvMacro_siphash_seed_state)static void XS_XS__APItest__HvMacro_siphash_seed_state( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 13320 | XS_EUPXS(XS_XS__APItest__HvMacro_siphash_seed_state)static void XS_XS__APItest__HvMacro_siphash_seed_state( CV* cv __attribute__((unused))) |
| 13321 | { |
| 13322 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 13323 | if (items != 1) |
| 13324 | croak_xs_usagePerl_croak_xs_usage(cv, "seed_sv"); |
| 13325 | { |
| 13326 | SV * RETVAL; |
| 13327 | SV * seed_sv = ST(0)PL_stack_base[ax + (0)] |
| 13328 | ; |
| 13329 | #line 6963 "APItest.xs" |
| 13330 | { |
| 13331 | U8 state_buf[sizeof(U64)*4]; |
| 13332 | STRLEN seed_len; |
| 13333 | U8 *seed_pv= (U8*)SvPV(seed_sv,seed_len)((((seed_sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((seed_len = ((XPV*) (seed_sv)->sv_any)->xpv_cur), ( (seed_sv)->sv_u.svu_pv)) : Perl_sv_2pv_flags( seed_sv,& seed_len,2)); |
| 13334 | if (seed_len<16) croakPerl_croak("seed should be 16 bytes long"); |
| 13335 | else if (seed_len>16) warnPerl_warn("only using the first 16 bytes of seed"); |
| 13336 | RETVAL= newSV(sizeof(U64)*4+3)Perl_newSV( sizeof(U64)*4+3); |
| 13337 | S_perl_siphash_seed_state(seed_pv,state_buf); |
| 13338 | sv_setpvn(RETVAL,(char*)state_buf,sizeof(U64)*4)Perl_sv_setpvn( RETVAL,(char*)state_buf,sizeof(U64)*4); |
| 13339 | } |
| 13340 | #line 13341 "APItest.c" |
| 13341 | RETVAL = sv_2mortal(RETVAL)Perl_sv_2mortal( RETVAL); |
| 13342 | ST(0)PL_stack_base[ax + (0)] = RETVAL; |
| 13343 | } |
| 13344 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 13345 | } |
| 13346 | |
| 13347 | |
| 13348 | XS_EUPXS(XS_XS__APItest__HvMacro_siphash24)static void XS_XS__APItest__HvMacro_siphash24( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 13349 | XS_EUPXS(XS_XS__APItest__HvMacro_siphash24)static void XS_XS__APItest__HvMacro_siphash24( CV* cv __attribute__ ((unused))) |
| 13350 | { |
| 13351 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 13352 | dXSI32I32 ix = ((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))-> xcv_start_u.xcv_xsubany.any_i32; |
| 13353 | if (items != 2) |
| 13354 | croak_xs_usagePerl_croak_xs_usage(cv, "state_sv, str_sv"); |
| 13355 | { |
| 13356 | UV RETVAL; |
| 13357 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 13358 | SV * state_sv = ST(0)PL_stack_base[ax + (0)] |
| 13359 | ; |
| 13360 | SV * str_sv = ST(1)PL_stack_base[ax + (1)] |
| 13361 | ; |
| 13362 | #line 6982 "APItest.xs" |
| 13363 | { |
| 13364 | STRLEN state_len; |
| 13365 | STRLEN str_len; |
| 13366 | U8 *str_pv= (U8*)SvPV(str_sv,str_len)((((str_sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((str_len = ((XPV*) (str_sv)->sv_any)->xpv_cur), (( str_sv)->sv_u.svu_pv)) : Perl_sv_2pv_flags( str_sv,&str_len ,2)); |
| 13367 | /* (U8*)SvPV(state_sv, state_len) return differs between little-endian * |
| 13368 | * and big-endian. It's the same values, but in a different order. * |
| 13369 | * On big-endian architecture, we transpose the values into the same * |
| 13370 | * order as for little-endian, so that we can test against the same * |
| 13371 | * test vectors. * |
| 13372 | * We could alternatively alter the code that produced state_sv to * |
| 13373 | * output identical arrangements for big-endian and little-endian. */ |
| 13374 | #if BYTEORDER0x12345678 == 0x1234 || BYTEORDER0x12345678 == 0x12345678 |
| 13375 | U8 *state_pv= (U8*)SvPV(state_sv,state_len)((((state_sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((state_len = ((XPV*) (state_sv)->sv_any)->xpv_cur) , ((state_sv)->sv_u.svu_pv)) : Perl_sv_2pv_flags( state_sv ,&state_len,2)); |
| 13376 | if (state_len!=32) croakPerl_croak("siphash state should be exactly 32 bytes"); |
| 13377 | #else |
| 13378 | U8 *temp_pv = (U8*)SvPV(state_sv, state_len)((((state_sv)->sv_flags & (0x00000400|0x00200000)) == 0x00000400 ) ? ((state_len = ((XPV*) (state_sv)->sv_any)->xpv_cur) , ((state_sv)->sv_u.svu_pv)) : Perl_sv_2pv_flags( state_sv ,&state_len,2)); |
| 13379 | U8 state_pv[32]; |
| 13380 | int i; |
| 13381 | if (state_len!=32) croakPerl_croak("siphash state should be exactly 32 bytes"); |
| 13382 | for( i = 0; i < 32; i++ ) { |
| 13383 | if (i < 8) state_pv[ 7 - i] = temp_pv[i]; |
| 13384 | else if(i < 16) state_pv[23 - i] = temp_pv[i]; |
| 13385 | else if(i < 24) state_pv[39 - i] = temp_pv[i]; |
| 13386 | else state_pv[55 - i] = temp_pv[i]; |
| 13387 | } |
| 13388 | #endif |
| 13389 | if (ix) { |
| 13390 | RETVAL= S_perl_hash_siphash_1_3_with_state_64(state_pv,str_pv,str_len); |
| 13391 | } else { |
| 13392 | RETVAL= S_perl_hash_siphash_2_4_with_state_64(state_pv,str_pv,str_len); |
| 13393 | } |
| 13394 | } |
| 13395 | #line 13396 "APItest.c" |
| 13396 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 13397 | } |
| 13398 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 13399 | } |
| 13400 | |
| 13401 | |
| 13402 | XS_EUPXS(XS_XS__APItest__HvMacro_test_siphash24)static void XS_XS__APItest__HvMacro_test_siphash24( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 13403 | XS_EUPXS(XS_XS__APItest__HvMacro_test_siphash24)static void XS_XS__APItest__HvMacro_test_siphash24( CV* cv __attribute__ ((unused))) |
| 13404 | { |
| 13405 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 13406 | if (items != 0) |
| 13407 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 13408 | { |
| 13409 | UV RETVAL; |
| 13410 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 13411 | #line 7021 "APItest.xs" |
| 13412 | { |
| 13413 | U8 vectors[64][8] = { |
| 13414 | { 0x31, 0x0e, 0x0e, 0xdd, 0x47, 0xdb, 0x6f, 0x72, }, |
| 13415 | { 0xfd, 0x67, 0xdc, 0x93, 0xc5, 0x39, 0xf8, 0x74, }, |
| 13416 | { 0x5a, 0x4f, 0xa9, 0xd9, 0x09, 0x80, 0x6c, 0x0d, }, |
| 13417 | { 0x2d, 0x7e, 0xfb, 0xd7, 0x96, 0x66, 0x67, 0x85, }, |
| 13418 | { 0xb7, 0x87, 0x71, 0x27, 0xe0, 0x94, 0x27, 0xcf, }, |
| 13419 | { 0x8d, 0xa6, 0x99, 0xcd, 0x64, 0x55, 0x76, 0x18, }, |
| 13420 | { 0xce, 0xe3, 0xfe, 0x58, 0x6e, 0x46, 0xc9, 0xcb, }, |
| 13421 | { 0x37, 0xd1, 0x01, 0x8b, 0xf5, 0x00, 0x02, 0xab, }, |
| 13422 | { 0x62, 0x24, 0x93, 0x9a, 0x79, 0xf5, 0xf5, 0x93, }, |
| 13423 | { 0xb0, 0xe4, 0xa9, 0x0b, 0xdf, 0x82, 0x00, 0x9e, }, |
| 13424 | { 0xf3, 0xb9, 0xdd, 0x94, 0xc5, 0xbb, 0x5d, 0x7a, }, |
| 13425 | { 0xa7, 0xad, 0x6b, 0x22, 0x46, 0x2f, 0xb3, 0xf4, }, |
| 13426 | { 0xfb, 0xe5, 0x0e, 0x86, 0xbc, 0x8f, 0x1e, 0x75, }, |
| 13427 | { 0x90, 0x3d, 0x84, 0xc0, 0x27, 0x56, 0xea, 0x14, }, |
| 13428 | { 0xee, 0xf2, 0x7a, 0x8e, 0x90, 0xca, 0x23, 0xf7, }, |
| 13429 | { 0xe5, 0x45, 0xbe, 0x49, 0x61, 0xca, 0x29, 0xa1, }, |
| 13430 | { 0xdb, 0x9b, 0xc2, 0x57, 0x7f, 0xcc, 0x2a, 0x3f, }, |
| 13431 | { 0x94, 0x47, 0xbe, 0x2c, 0xf5, 0xe9, 0x9a, 0x69, }, |
| 13432 | { 0x9c, 0xd3, 0x8d, 0x96, 0xf0, 0xb3, 0xc1, 0x4b, }, |
| 13433 | { 0xbd, 0x61, 0x79, 0xa7, 0x1d, 0xc9, 0x6d, 0xbb, }, |
| 13434 | { 0x98, 0xee, 0xa2, 0x1a, 0xf2, 0x5c, 0xd6, 0xbe, }, |
| 13435 | { 0xc7, 0x67, 0x3b, 0x2e, 0xb0, 0xcb, 0xf2, 0xd0, }, |
| 13436 | { 0x88, 0x3e, 0xa3, 0xe3, 0x95, 0x67, 0x53, 0x93, }, |
| 13437 | { 0xc8, 0xce, 0x5c, 0xcd, 0x8c, 0x03, 0x0c, 0xa8, }, |
| 13438 | { 0x94, 0xaf, 0x49, 0xf6, 0xc6, 0x50, 0xad, 0xb8, }, |
| 13439 | { 0xea, 0xb8, 0x85, 0x8a, 0xde, 0x92, 0xe1, 0xbc, }, |
| 13440 | { 0xf3, 0x15, 0xbb, 0x5b, 0xb8, 0x35, 0xd8, 0x17, }, |
| 13441 | { 0xad, 0xcf, 0x6b, 0x07, 0x63, 0x61, 0x2e, 0x2f, }, |
| 13442 | { 0xa5, 0xc9, 0x1d, 0xa7, 0xac, 0xaa, 0x4d, 0xde, }, |
| 13443 | { 0x71, 0x65, 0x95, 0x87, 0x66, 0x50, 0xa2, 0xa6, }, |
| 13444 | { 0x28, 0xef, 0x49, 0x5c, 0x53, 0xa3, 0x87, 0xad, }, |
| 13445 | { 0x42, 0xc3, 0x41, 0xd8, 0xfa, 0x92, 0xd8, 0x32, }, |
| 13446 | { 0xce, 0x7c, 0xf2, 0x72, 0x2f, 0x51, 0x27, 0x71, }, |
| 13447 | { 0xe3, 0x78, 0x59, 0xf9, 0x46, 0x23, 0xf3, 0xa7, }, |
| 13448 | { 0x38, 0x12, 0x05, 0xbb, 0x1a, 0xb0, 0xe0, 0x12, }, |
| 13449 | { 0xae, 0x97, 0xa1, 0x0f, 0xd4, 0x34, 0xe0, 0x15, }, |
| 13450 | { 0xb4, 0xa3, 0x15, 0x08, 0xbe, 0xff, 0x4d, 0x31, }, |
| 13451 | { 0x81, 0x39, 0x62, 0x29, 0xf0, 0x90, 0x79, 0x02, }, |
| 13452 | { 0x4d, 0x0c, 0xf4, 0x9e, 0xe5, 0xd4, 0xdc, 0xca, }, |
| 13453 | { 0x5c, 0x73, 0x33, 0x6a, 0x76, 0xd8, 0xbf, 0x9a, }, |
| 13454 | { 0xd0, 0xa7, 0x04, 0x53, 0x6b, 0xa9, 0x3e, 0x0e, }, |
| 13455 | { 0x92, 0x59, 0x58, 0xfc, 0xd6, 0x42, 0x0c, 0xad, }, |
| 13456 | { 0xa9, 0x15, 0xc2, 0x9b, 0xc8, 0x06, 0x73, 0x18, }, |
| 13457 | { 0x95, 0x2b, 0x79, 0xf3, 0xbc, 0x0a, 0xa6, 0xd4, }, |
| 13458 | { 0xf2, 0x1d, 0xf2, 0xe4, 0x1d, 0x45, 0x35, 0xf9, }, |
| 13459 | { 0x87, 0x57, 0x75, 0x19, 0x04, 0x8f, 0x53, 0xa9, }, |
| 13460 | { 0x10, 0xa5, 0x6c, 0xf5, 0xdf, 0xcd, 0x9a, 0xdb, }, |
| 13461 | { 0xeb, 0x75, 0x09, 0x5c, 0xcd, 0x98, 0x6c, 0xd0, }, |
| 13462 | { 0x51, 0xa9, 0xcb, 0x9e, 0xcb, 0xa3, 0x12, 0xe6, }, |
| 13463 | { 0x96, 0xaf, 0xad, 0xfc, 0x2c, 0xe6, 0x66, 0xc7, }, |
| 13464 | { 0x72, 0xfe, 0x52, 0x97, 0x5a, 0x43, 0x64, 0xee, }, |
| 13465 | { 0x5a, 0x16, 0x45, 0xb2, 0x76, 0xd5, 0x92, 0xa1, }, |
| 13466 | { 0xb2, 0x74, 0xcb, 0x8e, 0xbf, 0x87, 0x87, 0x0a, }, |
| 13467 | { 0x6f, 0x9b, 0xb4, 0x20, 0x3d, 0xe7, 0xb3, 0x81, }, |
| 13468 | { 0xea, 0xec, 0xb2, 0xa3, 0x0b, 0x22, 0xa8, 0x7f, }, |
| 13469 | { 0x99, 0x24, 0xa4, 0x3c, 0xc1, 0x31, 0x57, 0x24, }, |
| 13470 | { 0xbd, 0x83, 0x8d, 0x3a, 0xaf, 0xbf, 0x8d, 0xb7, }, |
| 13471 | { 0x0b, 0x1a, 0x2a, 0x32, 0x65, 0xd5, 0x1a, 0xea, }, |
| 13472 | { 0x13, 0x50, 0x79, 0xa3, 0x23, 0x1c, 0xe6, 0x60, }, |
| 13473 | { 0x93, 0x2b, 0x28, 0x46, 0xe4, 0xd7, 0x06, 0x66, }, |
| 13474 | { 0xe1, 0x91, 0x5f, 0x5c, 0xb1, 0xec, 0xa4, 0x6c, }, |
| 13475 | { 0xf3, 0x25, 0x96, 0x5c, 0xa1, 0x6d, 0x62, 0x9f, }, |
| 13476 | { 0x57, 0x5f, 0xf2, 0x8e, 0x60, 0x38, 0x1b, 0xe5, }, |
| 13477 | { 0x72, 0x45, 0x06, 0xeb, 0x4c, 0x32, 0x8a, 0x95, } |
| 13478 | }; |
| 13479 | U32 vectors_32[64] = { |
| 13480 | 0xaf61d576, |
| 13481 | 0xe7245e38, |
| 13482 | 0xd4c5cf53, |
| 13483 | 0x529c18bb, |
| 13484 | 0xe8561357, |
| 13485 | 0xd5eff3e9, |
| 13486 | 0x9337a5a0, |
| 13487 | 0x2003d1c2, |
| 13488 | 0x0966d11b, |
| 13489 | 0x95a9666f, |
| 13490 | 0xee800236, |
| 13491 | 0xd6d882e1, |
| 13492 | 0xf3106a47, |
| 13493 | 0xd46e6bb7, |
| 13494 | 0x7959387e, |
| 13495 | 0xe8978f84, |
| 13496 | 0x68e857a4, |
| 13497 | 0x4524ae61, |
| 13498 | 0xdd4c606c, |
| 13499 | 0x1c14a8a0, |
| 13500 | 0xa474b26a, |
| 13501 | 0xfec9ac77, |
| 13502 | 0x70f0591d, |
| 13503 | 0x6550cd44, |
| 13504 | 0x4ee4ff52, |
| 13505 | 0x36642a34, |
| 13506 | 0x4c63204b, |
| 13507 | 0x2845aece, |
| 13508 | 0x79506309, |
| 13509 | 0x21373517, |
| 13510 | 0xf1ce4c7b, |
| 13511 | 0xea9951b8, |
| 13512 | 0x03d52de1, |
| 13513 | 0x5eaa5ba5, |
| 13514 | 0xa9e5a222, |
| 13515 | 0x1a41a37a, |
| 13516 | 0x39585c0a, |
| 13517 | 0x2b1ba971, |
| 13518 | 0x5428d8a8, |
| 13519 | 0xf08cab2a, |
| 13520 | 0x5d3a0ebb, |
| 13521 | 0x51541b44, |
| 13522 | 0x83b11361, |
| 13523 | 0x27df2129, |
| 13524 | 0x1dc758ef, |
| 13525 | 0xb026d883, |
| 13526 | 0x2ef668cf, |
| 13527 | 0x8c65ed26, |
| 13528 | 0x78d90a9a, |
| 13529 | 0x3bcb49ba, |
| 13530 | 0x7936bd28, |
| 13531 | 0x13d7c32c, |
| 13532 | 0x844cf30d, |
| 13533 | 0xa1077c52, |
| 13534 | 0xdc1acee1, |
| 13535 | 0x18f31558, |
| 13536 | 0x8d003c12, |
| 13537 | 0xd830cf6e, |
| 13538 | 0xc39f4c30, |
| 13539 | 0x202efc77, |
| 13540 | 0x30fb7d50, |
| 13541 | 0xc3f44852, |
| 13542 | 0x6be96737, |
| 13543 | 0x7e8c773e |
| 13544 | }; |
| 13545 | |
| 13546 | const U8 MAXLEN= 64; |
| 13547 | U8 in[64], seed_pv[16], state_pv[32]; |
| 13548 | union { |
| 13549 | U64 hash; |
| 13550 | U32 h32[2]; |
| 13551 | U8 bytes[8]; |
| 13552 | } out; |
| 13553 | int i,j; |
| 13554 | int failed = 0; |
| 13555 | U32 hash32; |
| 13556 | /* S_perl_siphash_seed_state(seed_pv, state_pv) sets state_pv * |
| 13557 | * differently between little-endian and big-endian. It's the same * |
| 13558 | * values, but in a different order. * |
| 13559 | * On big-endian architecture, we transpose the values into the same * |
| 13560 | * order as for little-endian, so that we can test against the same * |
| 13561 | * test vectors. * |
| 13562 | * We could alternatively alter the code that produces state_pv to * |
| 13563 | * output identical arrangements for big-endian and little-endian. */ |
| 13564 | #if BYTEORDER0x12345678 == 0x1234 || BYTEORDER0x12345678 == 0x12345678 |
| 13565 | for( i = 0; i < 16; ++i ) seed_pv[i] = i; |
| 13566 | S_perl_siphash_seed_state(seed_pv, state_pv); |
| 13567 | #else |
| 13568 | U8 temp_pv[32]; |
| 13569 | for( i = 0; i < 16; ++i ) seed_pv[i] = i; |
| 13570 | S_perl_siphash_seed_state(seed_pv, temp_pv); |
| 13571 | for( i = 0; i < 32; ++i ) { |
| 13572 | if (i < 8) state_pv[ 7 - i] = temp_pv[i]; |
| 13573 | else if(i < 16) state_pv[23 - i] = temp_pv[i]; |
| 13574 | else if(i < 24) state_pv[39 - i] = temp_pv[i]; |
| 13575 | else state_pv[55 - i] = temp_pv[i]; |
| 13576 | } |
| 13577 | #endif |
| 13578 | for( i = 0; i < MAXLEN; ++i ) |
| 13579 | { |
| 13580 | in[i] = i; |
| 13581 | |
| 13582 | out.hash= S_perl_hash_siphash_2_4_with_state_64( state_pv, in, i ); |
| 13583 | |
| 13584 | hash32= S_perl_hash_siphash_2_4_with_state( state_pv, in, i); |
| 13585 | /* The test vectors need to reversed here for big-endian architecture * |
| 13586 | * Alternatively we could rewrite S_perl_hash_siphash_2_4_with_state_64 * |
| 13587 | * to produce reversed vectors when run on big-endian architecture */ |
| 13588 | #if BYTEORDER0x12345678 == 0x4321 || BYTEORDER0x12345678 == 0x87654321 /* reverse order of vectors[i] */ |
| 13589 | temp_pv [0] = vectors[i][0]; /* temp_pv is temporary holder of vectors[i][0] */ |
| 13590 | vectors[i][0] = vectors[i][7]; |
| 13591 | vectors[i][7] = temp_pv[0]; |
| 13592 | |
| 13593 | temp_pv [0] = vectors[i][1]; /* temp_pv is temporary holder of vectors[i][1] */ |
| 13594 | vectors[i][1] = vectors[i][6]; |
| 13595 | vectors[i][6] = temp_pv[0]; |
| 13596 | |
| 13597 | temp_pv [0] = vectors[i][2]; /* temp_pv is temporary holder of vectors[i][2] */ |
| 13598 | vectors[i][2] = vectors[i][5]; |
| 13599 | vectors[i][5] = temp_pv[0]; |
| 13600 | |
| 13601 | temp_pv [0] = vectors[i][3]; /* temp_pv is temporary holder of vectors[i][3] */ |
| 13602 | vectors[i][3] = vectors[i][4]; |
| 13603 | vectors[i][4] = temp_pv[0]; |
| 13604 | #endif |
| 13605 | if ( memcmp( out.bytes, vectors[i], 8 ) ) |
| 13606 | { |
| 13607 | failed++; |
| 13608 | printf( "Error in 64 bit result on test vector of length %d for siphash24\n have: {", i )PerlIO_stdoutf("Error in 64 bit result on test vector of length %d for siphash24\n have: {" , i); |
| 13609 | for (j=0;j<7;j++) |
| 13610 | printf( "0x%02x, ", out.bytes[j])PerlIO_stdoutf("0x%02x, ", out.bytes[j]); |
| 13611 | printf( "0x%02x },\n", out.bytes[7])PerlIO_stdoutf("0x%02x },\n", out.bytes[7]); |
| 13612 | printf( " want: {" )PerlIO_stdoutf(" want: {"); |
| 13613 | for (j=0;j<7;j++) |
| 13614 | printf( "0x%02x, ", vectors[i][j])PerlIO_stdoutf("0x%02x, ", vectors[i][j]); |
| 13615 | printf( "0x%02x },\n", vectors[i][7])PerlIO_stdoutf("0x%02x },\n", vectors[i][7]); |
| 13616 | } |
| 13617 | if (hash32 != vectors_32[i]) { |
| 13618 | failed++; |
| 13619 | printf( "Error in 32 bit result on test vector of length %d for siphash24\n"PerlIO_stdoutf("Error in 32 bit result on test vector of length %d for siphash24\n" " have: 0x%08x\n" " want: 0x%08x\n", i, hash32, vectors_32 [i]) |
| 13620 | " have: 0x%08x\n"PerlIO_stdoutf("Error in 32 bit result on test vector of length %d for siphash24\n" " have: 0x%08x\n" " want: 0x%08x\n", i, hash32, vectors_32 [i]) |
| 13621 | " want: 0x%08x\n",PerlIO_stdoutf("Error in 32 bit result on test vector of length %d for siphash24\n" " have: 0x%08x\n" " want: 0x%08x\n", i, hash32, vectors_32 [i]) |
| 13622 | i, hash32, vectors_32[i])PerlIO_stdoutf("Error in 32 bit result on test vector of length %d for siphash24\n" " have: 0x%08x\n" " want: 0x%08x\n", i, hash32, vectors_32 [i]); |
| 13623 | } |
| 13624 | } |
| 13625 | RETVAL= failed; |
| 13626 | } |
| 13627 | #line 13628 "APItest.c" |
| 13628 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 13629 | } |
| 13630 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 13631 | } |
| 13632 | |
| 13633 | |
| 13634 | XS_EUPXS(XS_XS__APItest__HvMacro_test_siphash13)static void XS_XS__APItest__HvMacro_test_siphash13( CV* cv __attribute__ ((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 13635 | XS_EUPXS(XS_XS__APItest__HvMacro_test_siphash13)static void XS_XS__APItest__HvMacro_test_siphash13( CV* cv __attribute__ ((unused))) |
| 13636 | { |
| 13637 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 13638 | if (items != 0) |
| 13639 | croak_xs_usagePerl_croak_xs_usage(cv, ""); |
| 13640 | { |
| 13641 | UV RETVAL; |
| 13642 | dXSTARGSV * const targ = ((PL_op->op_private & 0x04) ? (PL_curpad [PL_op->op_targ]) : Perl_sv_newmortal()); |
| 13643 | #line 7242 "APItest.xs" |
| 13644 | { |
| 13645 | U8 vectors[64][8] = { |
| 13646 | {0xdc, 0xc4, 0x0f, 0x05, 0x58, 0x01, 0xac, 0xab }, |
| 13647 | {0x93, 0xca, 0x57, 0x7d, 0xf3, 0x9b, 0xf4, 0xc9 }, |
| 13648 | {0x4d, 0xd4, 0xc7, 0x4d, 0x02, 0x9b, 0xcb, 0x82 }, |
| 13649 | {0xfb, 0xf7, 0xdd, 0xe7, 0xb8, 0x0a, 0xf8, 0x8b }, |
| 13650 | {0x28, 0x83, 0xd3, 0x88, 0x60, 0x57, 0x75, 0xcf }, |
| 13651 | {0x67, 0x3b, 0x53, 0x49, 0x2f, 0xd5, 0xf9, 0xde }, |
| 13652 | {0xa7, 0x22, 0x9f, 0xc5, 0x50, 0x2b, 0x0d, 0xc5 }, |
| 13653 | {0x40, 0x11, 0xb1, 0x9b, 0x98, 0x7d, 0x92, 0xd3 }, |
| 13654 | {0x8e, 0x9a, 0x29, 0x8d, 0x11, 0x95, 0x90, 0x36 }, |
| 13655 | {0xe4, 0x3d, 0x06, 0x6c, 0xb3, 0x8e, 0xa4, 0x25 }, |
| 13656 | {0x7f, 0x09, 0xff, 0x92, 0xee, 0x85, 0xde, 0x79 }, |
| 13657 | {0x52, 0xc3, 0x4d, 0xf9, 0xc1, 0x18, 0xc1, 0x70 }, |
| 13658 | {0xa2, 0xd9, 0xb4, 0x57, 0xb1, 0x84, 0xa3, 0x78 }, |
| 13659 | {0xa7, 0xff, 0x29, 0x12, 0x0c, 0x76, 0x6f, 0x30 }, |
| 13660 | {0x34, 0x5d, 0xf9, 0xc0, 0x11, 0xa1, 0x5a, 0x60 }, |
| 13661 | {0x56, 0x99, 0x51, 0x2a, 0x6d, 0xd8, 0x20, 0xd3 }, |
| 13662 | {0x66, 0x8b, 0x90, 0x7d, 0x1a, 0xdd, 0x4f, 0xcc }, |
| 13663 | {0x0c, 0xd8, 0xdb, 0x63, 0x90, 0x68, 0xf2, 0x9c }, |
| 13664 | {0x3e, 0xe6, 0x73, 0xb4, 0x9c, 0x38, 0xfc, 0x8f }, |
| 13665 | {0x1c, 0x7d, 0x29, 0x8d, 0xe5, 0x9d, 0x1f, 0xf2 }, |
| 13666 | {0x40, 0xe0, 0xcc, 0xa6, 0x46, 0x2f, 0xdc, 0xc0 }, |
| 13667 | {0x44, 0xf8, 0x45, 0x2b, 0xfe, 0xab, 0x92, 0xb9 }, |
| 13668 | {0x2e, 0x87, 0x20, 0xa3, 0x9b, 0x7b, 0xfe, 0x7f }, |
| 13669 | {0x23, 0xc1, 0xe6, 0xda, 0x7f, 0x0e, 0x5a, 0x52 }, |
| 13670 | {0x8c, 0x9c, 0x34, 0x67, 0xb2, 0xae, 0x64, 0xf4 }, |
| 13671 | {0x79, 0x09, 0x5b, 0x70, 0x28, 0x59, 0xcd, 0x45 }, |
| 13672 | {0xa5, 0x13, 0x99, 0xca, 0xe3, 0x35, 0x3e, 0x3a }, |
| 13673 | {0x35, 0x3b, 0xde, 0x4a, 0x4e, 0xc7, 0x1d, 0xa9 }, |
| 13674 | {0x0d, 0xd0, 0x6c, 0xef, 0x02, 0xed, 0x0b, 0xfb }, |
| 13675 | {0xf4, 0xe1, 0xb1, 0x4a, 0xb4, 0x3c, 0xd9, 0x88 }, |
| 13676 | {0x63, 0xe6, 0xc5, 0x43, 0xd6, 0x11, 0x0f, 0x54 }, |
| 13677 | {0xbc, 0xd1, 0x21, 0x8c, 0x1f, 0xdd, 0x70, 0x23 }, |
| 13678 | {0x0d, 0xb6, 0xa7, 0x16, 0x6c, 0x7b, 0x15, 0x81 }, |
| 13679 | {0xbf, 0xf9, 0x8f, 0x7a, 0xe5, 0xb9, 0x54, 0x4d }, |
| 13680 | {0x3e, 0x75, 0x2a, 0x1f, 0x78, 0x12, 0x9f, 0x75 }, |
| 13681 | {0x91, 0x6b, 0x18, 0xbf, 0xbe, 0xa3, 0xa1, 0xce }, |
| 13682 | {0x06, 0x62, 0xa2, 0xad, 0xd3, 0x08, 0xf5, 0x2c }, |
| 13683 | {0x57, 0x30, 0xc3, 0xa3, 0x2d, 0x1c, 0x10, 0xb6 }, |
| 13684 | {0xa1, 0x36, 0x3a, 0xae, 0x96, 0x74, 0xf4, 0xb3 }, |
| 13685 | {0x92, 0x83, 0x10, 0x7b, 0x54, 0x57, 0x6b, 0x62 }, |
| 13686 | {0x31, 0x15, 0xe4, 0x99, 0x32, 0x36, 0xd2, 0xc1 }, |
| 13687 | {0x44, 0xd9, 0x1a, 0x3f, 0x92, 0xc1, 0x7c, 0x66 }, |
| 13688 | {0x25, 0x88, 0x13, 0xc8, 0xfe, 0x4f, 0x70, 0x65 }, |
| 13689 | {0xa6, 0x49, 0x89, 0xc2, 0xd1, 0x80, 0xf2, 0x24 }, |
| 13690 | {0x6b, 0x87, 0xf8, 0xfa, 0xed, 0x1c, 0xca, 0xc2 }, |
| 13691 | {0x96, 0x21, 0x04, 0x9f, 0xfc, 0x4b, 0x16, 0xc2 }, |
| 13692 | {0x23, 0xd6, 0xb1, 0x68, 0x93, 0x9c, 0x6e, 0xa1 }, |
| 13693 | {0xfd, 0x14, 0x51, 0x8b, 0x9c, 0x16, 0xfb, 0x49 }, |
| 13694 | {0x46, 0x4c, 0x07, 0xdf, 0xf8, 0x43, 0x31, 0x9f }, |
| 13695 | {0xb3, 0x86, 0xcc, 0x12, 0x24, 0xaf, 0xfd, 0xc6 }, |
| 13696 | {0x8f, 0x09, 0x52, 0x0a, 0xd1, 0x49, 0xaf, 0x7e }, |
| 13697 | {0x9a, 0x2f, 0x29, 0x9d, 0x55, 0x13, 0xf3, 0x1c }, |
| 13698 | {0x12, 0x1f, 0xf4, 0xa2, 0xdd, 0x30, 0x4a, 0xc4 }, |
| 13699 | {0xd0, 0x1e, 0xa7, 0x43, 0x89, 0xe9, 0xfa, 0x36 }, |
| 13700 | {0xe6, 0xbc, 0xf0, 0x73, 0x4c, 0xb3, 0x8f, 0x31 }, |
| 13701 | {0x80, 0xe9, 0xa7, 0x70, 0x36, 0xbf, 0x7a, 0xa2 }, |
| 13702 | {0x75, 0x6d, 0x3c, 0x24, 0xdb, 0xc0, 0xbc, 0xb4 }, |
| 13703 | {0x13, 0x15, 0xb7, 0xfd, 0x52, 0xd8, 0xf8, 0x23 }, |
| 13704 | {0x08, 0x8a, 0x7d, 0xa6, 0x4d, 0x5f, 0x03, 0x8f }, |
| 13705 | {0x48, 0xf1, 0xe8, 0xb7, 0xe5, 0xd0, 0x9c, 0xd8 }, |
| 13706 | {0xee, 0x44, 0xa6, 0xf7, 0xbc, 0xe6, 0xf4, 0xf6 }, |
| 13707 | {0xf2, 0x37, 0x18, 0x0f, 0xd8, 0x9a, 0xc5, 0xae }, |
| 13708 | {0xe0, 0x94, 0x66, 0x4b, 0x15, 0xf6, 0xb2, 0xc3 }, |
| 13709 | {0xa8, 0xb3, 0xbb, 0xb7, 0x62, 0x90, 0x19, 0x9d } |
| 13710 | }; |
| 13711 | U32 vectors_32[64] = { |
| 13712 | 0xaea3c584, |
| 13713 | 0xb4a35160, |
| 13714 | 0xcf0c4f4f, |
| 13715 | 0x6c25fd43, |
| 13716 | 0x47a6d448, |
| 13717 | 0x97aaee48, |
| 13718 | 0x009209f7, |
| 13719 | 0x48236cd8, |
| 13720 | 0xbbb90f9f, |
| 13721 | 0x49a2b357, |
| 13722 | 0xeb218c91, |
| 13723 | 0x898cdb93, |
| 13724 | 0x2f175d13, |
| 13725 | 0x224689ab, |
| 13726 | 0xa0a3fc25, |
| 13727 | 0xf971413b, |
| 13728 | 0xb1df567c, |
| 13729 | 0xff29b09c, |
| 13730 | 0x3b8fdea2, |
| 13731 | 0x7f36e0f9, |
| 13732 | 0x6610cf06, |
| 13733 | 0x92d753ba, |
| 13734 | 0xdcdefcb5, |
| 13735 | 0x88bccf5c, |
| 13736 | 0x9350323e, |
| 13737 | 0x35965051, |
| 13738 | 0xf0a72646, |
| 13739 | 0xe3c3fc7b, |
| 13740 | 0x14673d0f, |
| 13741 | 0xc268dd40, |
| 13742 | 0x17caf7b5, |
| 13743 | 0xaf510ca3, |
| 13744 | 0x97b2cd61, |
| 13745 | 0x37db405a, |
| 13746 | 0x6ab56746, |
| 13747 | 0x71b9c82f, |
| 13748 | 0x81576ad5, |
| 13749 | 0x15d32c7a, |
| 13750 | 0x1dce4237, |
| 13751 | 0x197bd4c6, |
| 13752 | 0x58362303, |
| 13753 | 0x596618d6, |
| 13754 | 0xad63c7db, |
| 13755 | 0xe67bc977, |
| 13756 | 0x38329b86, |
| 13757 | 0x5d126a6a, |
| 13758 | 0xc9df4ab0, |
| 13759 | 0xc2aa0261, |
| 13760 | 0x40360fbe, |
| 13761 | 0xd4312997, |
| 13762 | 0x74fd405e, |
| 13763 | 0x81da3ccf, |
| 13764 | 0x66be2fcf, |
| 13765 | 0x755df759, |
| 13766 | 0x427f0faa, |
| 13767 | 0xd2dd56b6, |
| 13768 | 0x9080adae, |
| 13769 | 0xde4fcd41, |
| 13770 | 0x297ed545, |
| 13771 | 0x6f7421ad, |
| 13772 | 0x0152a252, |
| 13773 | 0xa1ddad2a, |
| 13774 | 0x88d462f5, |
| 13775 | 0x2aa223ca, |
| 13776 | }; |
| 13777 | |
| 13778 | const U8 MAXLEN= 64; |
| 13779 | U8 in[64], seed_pv[16], state_pv[32]; |
| 13780 | union { |
| 13781 | U64 hash; |
| 13782 | U32 h32[2]; |
| 13783 | U8 bytes[8]; |
| 13784 | } out; |
| 13785 | int i,j; |
| 13786 | int failed = 0; |
| 13787 | U32 hash32; |
| 13788 | /* S_perl_siphash_seed_state(seed_pv, state_pv) sets state_pv * |
| 13789 | * differently between little-endian and big-endian. It's the same * |
| 13790 | * values, but in a different order. * |
| 13791 | * On big-endian architecture, we transpose the values into the same * |
| 13792 | * order as for little-endian, so that we can test against the same * |
| 13793 | * test vectors. * |
| 13794 | * We could alternatively alter the code that produces state_pv to * |
| 13795 | * output identical arrangements for big-endian and little-endian. */ |
| 13796 | #if BYTEORDER0x12345678 == 0x1234 || BYTEORDER0x12345678 == 0x12345678 |
| 13797 | for( i = 0; i < 16; ++i ) seed_pv[i] = i; |
| 13798 | S_perl_siphash_seed_state(seed_pv, state_pv); |
| 13799 | #else |
| 13800 | U8 temp_pv[32]; |
| 13801 | for( i = 0; i < 16; ++i ) seed_pv[i] = i; |
| 13802 | S_perl_siphash_seed_state(seed_pv, temp_pv); |
| 13803 | for( i = 0; i < 32; ++i ) { |
| 13804 | if (i < 8) state_pv[ 7 - i] = temp_pv[i]; |
| 13805 | else if(i < 16) state_pv[23 - i] = temp_pv[i]; |
| 13806 | else if(i < 24) state_pv[39 - i] = temp_pv[i]; |
| 13807 | else state_pv[55 - i] = temp_pv[i]; |
| 13808 | } |
| 13809 | #endif |
| 13810 | for( i = 0; i < MAXLEN; ++i ) |
| 13811 | { |
| 13812 | in[i] = i; |
| 13813 | |
| 13814 | out.hash= S_perl_hash_siphash_1_3_with_state_64( state_pv, in, i ); |
| 13815 | |
| 13816 | hash32= S_perl_hash_siphash_1_3_with_state( state_pv, in, i); |
| 13817 | /* The test vectors need to reversed here for big-endian architecture * |
| 13818 | * Alternatively we could rewrite S_perl_hash_siphash_1_3_with_state_64 * |
| 13819 | * to produce reversed vectors when run on big-endian architecture */ |
| 13820 | #if BYTEORDER0x12345678 == 0x4321 || BYTEORDER0x12345678 == 0x87654321 |
| 13821 | temp_pv [0] = vectors[i][0]; /* temp_pv is temporary holder of vectors[i][0] */ |
| 13822 | vectors[i][0] = vectors[i][7]; |
| 13823 | vectors[i][7] = temp_pv[0]; |
| 13824 | |
| 13825 | temp_pv [0] = vectors[i][1]; /* temp_pv is temporary holder of vectors[i][1] */ |
| 13826 | vectors[i][1] = vectors[i][6]; |
| 13827 | vectors[i][6] = temp_pv[0]; |
| 13828 | |
| 13829 | temp_pv [0] = vectors[i][2]; /* temp_pv is temporary holder of vectors[i][2] */ |
| 13830 | vectors[i][2] = vectors[i][5]; |
| 13831 | vectors[i][5] = temp_pv[0]; |
| 13832 | |
| 13833 | temp_pv [0] = vectors[i][3]; /* temp_pv is temporary holder of vectors[i][3] */ |
| 13834 | vectors[i][3] = vectors[i][4]; |
| 13835 | vectors[i][4] = temp_pv[0]; |
| 13836 | #endif |
| 13837 | if ( memcmp( out.bytes, vectors[i], 8 ) ) |
| 13838 | { |
| 13839 | failed++; |
| 13840 | printf( "Error in 64 bit result on test vector of length %d for siphash13\n have: {", i )PerlIO_stdoutf("Error in 64 bit result on test vector of length %d for siphash13\n have: {" , i); |
| 13841 | for (j=0;j<7;j++) |
| 13842 | printf( "0x%02x, ", out.bytes[j])PerlIO_stdoutf("0x%02x, ", out.bytes[j]); |
| 13843 | printf( "0x%02x },\n", out.bytes[7])PerlIO_stdoutf("0x%02x },\n", out.bytes[7]); |
| 13844 | printf( " want: {" )PerlIO_stdoutf(" want: {"); |
| 13845 | for (j=0;j<7;j++) |
| 13846 | printf( "0x%02x, ", vectors[i][j])PerlIO_stdoutf("0x%02x, ", vectors[i][j]); |
| 13847 | printf( "0x%02x },\n", vectors[i][7])PerlIO_stdoutf("0x%02x },\n", vectors[i][7]); |
| 13848 | } |
| 13849 | if (hash32 != vectors_32[i]) { |
| 13850 | failed++; |
| 13851 | printf( "Error in 32 bit result on test vector of length %d for siphash13\n"PerlIO_stdoutf("Error in 32 bit result on test vector of length %d for siphash13\n" " have: 0x%08x\n" " want: 0x%08x\n", i, hash32, vectors_32 [i]) |
| 13852 | " have: 0x%08x\n"PerlIO_stdoutf("Error in 32 bit result on test vector of length %d for siphash13\n" " have: 0x%08x\n" " want: 0x%08x\n", i, hash32, vectors_32 [i]) |
| 13853 | " want: 0x%08x\n",PerlIO_stdoutf("Error in 32 bit result on test vector of length %d for siphash13\n" " have: 0x%08x\n" " want: 0x%08x\n", i, hash32, vectors_32 [i]) |
| 13854 | i, hash32, vectors_32[i])PerlIO_stdoutf("Error in 32 bit result on test vector of length %d for siphash13\n" " have: 0x%08x\n" " want: 0x%08x\n", i, hash32, vectors_32 [i]); |
| 13855 | } |
| 13856 | } |
| 13857 | RETVAL= failed; |
| 13858 | } |
| 13859 | #line 13860 "APItest.c" |
| 13860 | XSprePUSH(sp = PL_stack_base + ax - 1); PUSHu((UV)RETVAL)do { do { UV TARGu_uv = (UV)RETVAL; if (__builtin_expect((((( (targ)->sv_flags & (0xff|(0x08000000|0x00010000|0x00000800 |0x01000000 |0x00800000|0x10000000)|0x80000000)) == SVt_IV) & (1 ? !(((__builtin_expect(((PL_tainted) ? (_Bool)1 : (_Bool) 0),(0))) ? (_Bool)1 : (_Bool)0)) : 1) & (TARGu_uv <= ( UV)((IV) ((~(UV)0) >> 1)))) ? (_Bool)1 : (_Bool)0),(1)) ) { ((void)0); (targ)->sv_flags |= (0x00000100|0x00001000) ; targ->sv_u.svu_iv = TARGu_uv; } else Perl_sv_setuv_mg( targ ,TARGu_uv); } while (0); (*++sp = (targ)); } while (0); |
| 13861 | } |
| 13862 | XSRETURN(1)do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); |
| 13863 | } |
| 13864 | |
| 13865 | #endif |
| 13866 | #ifdef __cplusplus |
| 13867 | extern "C" |
| 13868 | #endif |
| 13869 | XS_EXTERNAL(boot_XS__APItest)void boot_XS__APItest( CV* cv __attribute__((unused))); /* prototype to pass -Wmissing-prototypes */ |
| 13870 | XS_EXTERNAL(boot_XS__APItest)void boot_XS__APItest( CV* cv __attribute__((unused))) |
| 13871 | { |
| 13872 | #if PERL_VERSION_LE(5, 21, 5)((5*1000000 + 32*1000 + 1) <= (5*1000000 + 21*1000 + 5)) |
| 13873 | dVARstruct Perl___notused_struct; dXSARGSSV **sp = PL_stack_sp; I32 ax = Perl_POPMARK(); SV **mark = PL_stack_base + ax++; I32 items = (I32)(sp - mark); |
| 13874 | #else |
| 13875 | dVARstruct Perl___notused_struct; dXSBOOTARGSXSAPIVERCHKI32 ax = Perl_xs_handshake((((sizeof(struct PerlHandShakeInterpreter )) << 16) | ((sizeof("" "1.09" "")-1) > 0xFF ? (Perl_croak ("panic: handshake overflow"), 0xFF) : (sizeof("" "1.09" "")- 1) << 8) | ((((1)) ? (_Bool)1 : (_Bool)0) ? 0x00000020 : 0) | ((((0)) ? (_Bool)1 : (_Bool)0) ? 0x00000080 : 0) | (((( 1)) ? (_Bool)1 : (_Bool)0) ? 0x00000040 : 0) | ((sizeof("" "v" "5" "." "32" "." "0" "")-1) > 0x0000001F ? (Perl_croak("panic: handshake overflow" ), 0x0000001F) : (sizeof("" "v" "5" "." "32" "." "0" "")-1))) , cv, "APItest.c", "v" "5" "." "32" "." "0", "1.09"); SV **mark = PL_stack_base + ax; SV **sp = PL_stack_sp; I32 items = (I32 )(sp - mark); |
| 13876 | #endif |
| 13877 | #if (PERL_REVISION5 == 5 && PERL_VERSION32 < 9) |
| 13878 | char* file = __FILE__"APItest.c"; |
| 13879 | #else |
| 13880 | const char* file = __FILE__"APItest.c"; |
| 13881 | #endif |
| 13882 | |
| 13883 | PERL_UNUSED_VAR(file)((void)sizeof(file)); |
| 13884 | |
| 13885 | PERL_UNUSED_VAR(cv)((void)sizeof(cv)); /* -W */ |
| 13886 | PERL_UNUSED_VAR(items)((void)sizeof(items)); /* -W */ |
| 13887 | #if PERL_VERSION_LE(5, 21, 5)((5*1000000 + 32*1000 + 1) <= (5*1000000 + 21*1000 + 5)) |
| 13888 | XS_VERSION_BOOTCHECKPerl_xs_handshake((((sizeof(struct PerlHandShakeInterpreter)) << 16) | ((sizeof("" "1.09" "")-1) > 0xFF ? (Perl_croak ("panic: handshake overflow"), 0xFF) : (sizeof("" "1.09" "")- 1) << 8) | ((((0)) ? (_Bool)1 : (_Bool)0) ? 0x00000020 : 0) | ((((0)) ? (_Bool)1 : (_Bool)0) ? 0x00000080 : 0) | (((( 0)) ? (_Bool)1 : (_Bool)0) ? 0x00000040 : 0) | ((sizeof("" "" "")-1) > 0x0000001F ? (Perl_croak("panic: handshake overflow" ), 0x0000001F) : (sizeof("" "" "")-1))), cv, "APItest.c", items , ax, "1.09"); |
| 13889 | # ifdef XS_APIVERSION_BOOTCHECKPerl_xs_handshake((((sizeof(struct PerlHandShakeInterpreter)) << 16) | ((sizeof("" "" "")-1) > 0xFF ? (Perl_croak ("panic: handshake overflow"), 0xFF) : (sizeof("" "" "")-1) << 8) | ((((0)) ? (_Bool)1 : (_Bool)0) ? 0x00000020 : 0) | (((( 0)) ? (_Bool)1 : (_Bool)0) ? 0x00000080 : 0) | ((((0)) ? (_Bool )1 : (_Bool)0) ? 0x00000040 : 0) | ((sizeof("" "v" "5" "." "32" "." "0" "")-1) > 0x0000001F ? (Perl_croak("panic: handshake overflow" ), 0x0000001F) : (sizeof("" "v" "5" "." "32" "." "0" "")-1))) , cv, "APItest.c", items, ax, "v" "5" "." "32" "." "0") |
| 13890 | XS_APIVERSION_BOOTCHECKPerl_xs_handshake((((sizeof(struct PerlHandShakeInterpreter)) << 16) | ((sizeof("" "" "")-1) > 0xFF ? (Perl_croak ("panic: handshake overflow"), 0xFF) : (sizeof("" "" "")-1) << 8) | ((((0)) ? (_Bool)1 : (_Bool)0) ? 0x00000020 : 0) | (((( 0)) ? (_Bool)1 : (_Bool)0) ? 0x00000080 : 0) | ((((0)) ? (_Bool )1 : (_Bool)0) ? 0x00000040 : 0) | ((sizeof("" "v" "5" "." "32" "." "0" "")-1) > 0x0000001F ? (Perl_croak("panic: handshake overflow" ), 0x0000001F) : (sizeof("" "v" "5" "." "32" "." "0" "")-1))) , cv, "APItest.c", items, ax, "v" "5" "." "32" "." "0"); |
| 13891 | # endif |
| 13892 | #endif |
| 13893 | |
| 13894 | newXS_deffile("XS::APItest::constant", XS_XS__APItest_constant)Perl_newXS_deffile( "XS::APItest::constant",XS_XS__APItest_constant ); |
| 13895 | newXS_deffile("XS::APItest::numeric::grok_number", XS_XS__APItest__numeric_grok_number)Perl_newXS_deffile( "XS::APItest::numeric::grok_number",XS_XS__APItest__numeric_grok_number ); |
| 13896 | newXS_deffile("XS::APItest::numeric::grok_number_flags", XS_XS__APItest__numeric_grok_number_flags)Perl_newXS_deffile( "XS::APItest::numeric::grok_number_flags" ,XS_XS__APItest__numeric_grok_number_flags); |
| 13897 | newXS_deffile("XS::APItest::numeric::grok_atoUV", XS_XS__APItest__numeric_grok_atoUV)Perl_newXS_deffile( "XS::APItest::numeric::grok_atoUV",XS_XS__APItest__numeric_grok_atoUV ); |
| 13898 | newXS_deffile("XS::APItest::numeric::assertx", XS_XS__APItest__numeric_assertx)Perl_newXS_deffile( "XS::APItest::numeric::assertx",XS_XS__APItest__numeric_assertx ); |
| 13899 | newXS_deffile("XS::APItest::utf8::bytes_cmp_utf8", XS_XS__APItest__utf8_bytes_cmp_utf8)Perl_newXS_deffile( "XS::APItest::utf8::bytes_cmp_utf8",XS_XS__APItest__utf8_bytes_cmp_utf8 ); |
| 13900 | newXS_deffile("XS::APItest::utf8::test_utf8_to_bytes", XS_XS__APItest__utf8_test_utf8_to_bytes)Perl_newXS_deffile( "XS::APItest::utf8::test_utf8_to_bytes",XS_XS__APItest__utf8_test_utf8_to_bytes ); |
| 13901 | newXS_deffile("XS::APItest::utf8::test_utf8n_to_uvchr_msgs", XS_XS__APItest__utf8_test_utf8n_to_uvchr_msgs)Perl_newXS_deffile( "XS::APItest::utf8::test_utf8n_to_uvchr_msgs" ,XS_XS__APItest__utf8_test_utf8n_to_uvchr_msgs); |
| 13902 | newXS_deffile("XS::APItest::utf8::test_utf8n_to_uvchr_error", XS_XS__APItest__utf8_test_utf8n_to_uvchr_error)Perl_newXS_deffile( "XS::APItest::utf8::test_utf8n_to_uvchr_error" ,XS_XS__APItest__utf8_test_utf8n_to_uvchr_error); |
| 13903 | newXS_deffile("XS::APItest::utf8::test_valid_utf8_to_uvchr", XS_XS__APItest__utf8_test_valid_utf8_to_uvchr)Perl_newXS_deffile( "XS::APItest::utf8::test_valid_utf8_to_uvchr" ,XS_XS__APItest__utf8_test_valid_utf8_to_uvchr); |
| 13904 | newXS_deffile("XS::APItest::utf8::test_uvchr_to_utf8_flags", XS_XS__APItest__utf8_test_uvchr_to_utf8_flags)Perl_newXS_deffile( "XS::APItest::utf8::test_uvchr_to_utf8_flags" ,XS_XS__APItest__utf8_test_uvchr_to_utf8_flags); |
| 13905 | newXS_deffile("XS::APItest::utf8::test_uvchr_to_utf8_flags_msgs", XS_XS__APItest__utf8_test_uvchr_to_utf8_flags_msgs)Perl_newXS_deffile( "XS::APItest::utf8::test_uvchr_to_utf8_flags_msgs" ,XS_XS__APItest__utf8_test_uvchr_to_utf8_flags_msgs); |
| 13906 | newXS_deffile("XS::APItest::Overload::amagic_deref_call", XS_XS__APItest__Overload_amagic_deref_call)Perl_newXS_deffile( "XS::APItest::Overload::amagic_deref_call" ,XS_XS__APItest__Overload_amagic_deref_call); |
| 13907 | newXS_deffile("XS::APItest::Overload::tryAMAGICunDEREF_var", XS_XS__APItest__Overload_tryAMAGICunDEREF_var)Perl_newXS_deffile( "XS::APItest::Overload::tryAMAGICunDEREF_var" ,XS_XS__APItest__Overload_tryAMAGICunDEREF_var); |
| 13908 | newXS_deffile("XS::APItest::XSUB::XS_VERSION_defined", XS_XS__APItest__XSUB_XS_VERSION_defined)Perl_newXS_deffile( "XS::APItest::XSUB::XS_VERSION_defined",XS_XS__APItest__XSUB_XS_VERSION_defined ); |
| 13909 | newXS_deffile("XS::APItest::XSUB::XS_APIVERSION_valid", XS_XS__APItest__XSUB_XS_APIVERSION_valid)Perl_newXS_deffile( "XS::APItest::XSUB::XS_APIVERSION_valid", XS_XS__APItest__XSUB_XS_APIVERSION_valid); |
| 13910 | newXS_deffile("XS::APItest::XSUB::xsreturn", XS_XS__APItest__XSUB_xsreturn)Perl_newXS_deffile( "XS::APItest::XSUB::xsreturn",XS_XS__APItest__XSUB_xsreturn ); |
| 13911 | newXS_deffile("XS::APItest::XSUB::xsreturn_iv", XS_XS__APItest__XSUB_xsreturn_iv)Perl_newXS_deffile( "XS::APItest::XSUB::xsreturn_iv",XS_XS__APItest__XSUB_xsreturn_iv ); |
| 13912 | newXS_deffile("XS::APItest::XSUB::xsreturn_uv", XS_XS__APItest__XSUB_xsreturn_uv)Perl_newXS_deffile( "XS::APItest::XSUB::xsreturn_uv",XS_XS__APItest__XSUB_xsreturn_uv ); |
| 13913 | newXS_deffile("XS::APItest::XSUB::xsreturn_nv", XS_XS__APItest__XSUB_xsreturn_nv)Perl_newXS_deffile( "XS::APItest::XSUB::xsreturn_nv",XS_XS__APItest__XSUB_xsreturn_nv ); |
| 13914 | newXS_deffile("XS::APItest::XSUB::xsreturn_pv", XS_XS__APItest__XSUB_xsreturn_pv)Perl_newXS_deffile( "XS::APItest::XSUB::xsreturn_pv",XS_XS__APItest__XSUB_xsreturn_pv ); |
| 13915 | newXS_deffile("XS::APItest::XSUB::xsreturn_pvn", XS_XS__APItest__XSUB_xsreturn_pvn)Perl_newXS_deffile( "XS::APItest::XSUB::xsreturn_pvn",XS_XS__APItest__XSUB_xsreturn_pvn ); |
| 13916 | newXS_deffile("XS::APItest::XSUB::xsreturn_no", XS_XS__APItest__XSUB_xsreturn_no)Perl_newXS_deffile( "XS::APItest::XSUB::xsreturn_no",XS_XS__APItest__XSUB_xsreturn_no ); |
| 13917 | newXS_deffile("XS::APItest::XSUB::xsreturn_yes", XS_XS__APItest__XSUB_xsreturn_yes)Perl_newXS_deffile( "XS::APItest::XSUB::xsreturn_yes",XS_XS__APItest__XSUB_xsreturn_yes ); |
| 13918 | newXS_deffile("XS::APItest::XSUB::xsreturn_undef", XS_XS__APItest__XSUB_xsreturn_undef)Perl_newXS_deffile( "XS::APItest::XSUB::xsreturn_undef",XS_XS__APItest__XSUB_xsreturn_undef ); |
| 13919 | newXS_deffile("XS::APItest::XSUB::xsreturn_empty", XS_XS__APItest__XSUB_xsreturn_empty)Perl_newXS_deffile( "XS::APItest::XSUB::xsreturn_empty",XS_XS__APItest__XSUB_xsreturn_empty ); |
| 13920 | newXS_deffile("XS::APItest::Hash::rot13_hash", XS_XS__APItest__Hash_rot13_hash)Perl_newXS_deffile( "XS::APItest::Hash::rot13_hash",XS_XS__APItest__Hash_rot13_hash ); |
| 13921 | newXS_deffile("XS::APItest::Hash::bitflip_hash", XS_XS__APItest__Hash_bitflip_hash)Perl_newXS_deffile( "XS::APItest::Hash::bitflip_hash",XS_XS__APItest__Hash_bitflip_hash ); |
| 13922 | newXS_deffile("XS::APItest::Hash::exists", XS_XS__APItest__Hash_exists)Perl_newXS_deffile( "XS::APItest::Hash::exists",XS_XS__APItest__Hash_exists ); |
| 13923 | newXS_deffile("XS::APItest::Hash::exists_ent", XS_XS__APItest__Hash_exists_ent)Perl_newXS_deffile( "XS::APItest::Hash::exists_ent",XS_XS__APItest__Hash_exists_ent ); |
| 13924 | newXS_deffile("XS::APItest::Hash::delete", XS_XS__APItest__Hash_delete)Perl_newXS_deffile( "XS::APItest::Hash::delete",XS_XS__APItest__Hash_delete ); |
| 13925 | newXS_deffile("XS::APItest::Hash::delete_ent", XS_XS__APItest__Hash_delete_ent)Perl_newXS_deffile( "XS::APItest::Hash::delete_ent",XS_XS__APItest__Hash_delete_ent ); |
| 13926 | newXS_deffile("XS::APItest::Hash::store_ent", XS_XS__APItest__Hash_store_ent)Perl_newXS_deffile( "XS::APItest::Hash::store_ent",XS_XS__APItest__Hash_store_ent ); |
| 13927 | newXS_deffile("XS::APItest::Hash::store", XS_XS__APItest__Hash_store)Perl_newXS_deffile( "XS::APItest::Hash::store",XS_XS__APItest__Hash_store ); |
| 13928 | newXS_deffile("XS::APItest::Hash::fetch_ent", XS_XS__APItest__Hash_fetch_ent)Perl_newXS_deffile( "XS::APItest::Hash::fetch_ent",XS_XS__APItest__Hash_fetch_ent ); |
| 13929 | newXS_deffile("XS::APItest::Hash::fetch", XS_XS__APItest__Hash_fetch)Perl_newXS_deffile( "XS::APItest::Hash::fetch",XS_XS__APItest__Hash_fetch ); |
| 13930 | #if XSubPPtmpAAAA1 |
| 13931 | newXS_deffile("XS::APItest::Hash::common", XS_XS__APItest__Hash_common)Perl_newXS_deffile( "XS::APItest::Hash::common",XS_XS__APItest__Hash_common ); |
| 13932 | #endif |
| 13933 | newXS_deffile("XS::APItest::Hash::test_hv_free_ent", XS_XS__APItest__Hash_test_hv_free_ent)Perl_newXS_deffile( "XS::APItest::Hash::test_hv_free_ent",XS_XS__APItest__Hash_test_hv_free_ent ); |
| 13934 | newXS_deffile("XS::APItest::Hash::test_hv_delayfree_ent", XS_XS__APItest__Hash_test_hv_delayfree_ent)Perl_newXS_deffile( "XS::APItest::Hash::test_hv_delayfree_ent" ,XS_XS__APItest__Hash_test_hv_delayfree_ent); |
| 13935 | newXS_deffile("XS::APItest::Hash::test_share_unshare_pvn", XS_XS__APItest__Hash_test_share_unshare_pvn)Perl_newXS_deffile( "XS::APItest::Hash::test_share_unshare_pvn" ,XS_XS__APItest__Hash_test_share_unshare_pvn); |
| 13936 | #if XSubPPtmpAAAB1 |
| 13937 | newXS_deffile("XS::APItest::Hash::refcounted_he_exists", XS_XS__APItest__Hash_refcounted_he_exists)Perl_newXS_deffile( "XS::APItest::Hash::refcounted_he_exists" ,XS_XS__APItest__Hash_refcounted_he_exists); |
| 13938 | newXS_deffile("XS::APItest::Hash::refcounted_he_fetch", XS_XS__APItest__Hash_refcounted_he_fetch)Perl_newXS_deffile( "XS::APItest::Hash::refcounted_he_fetch", XS_XS__APItest__Hash_refcounted_he_fetch); |
| 13939 | #endif |
| 13940 | newXS_deffile("XS::APItest::Hash::test_force_keys", XS_XS__APItest__Hash_test_force_keys)Perl_newXS_deffile( "XS::APItest::Hash::test_force_keys",XS_XS__APItest__Hash_test_force_keys ); |
| 13941 | newXS_deffile("XS::APItest::TempLv::make_temp_mg_lv", XS_XS__APItest__TempLv_make_temp_mg_lv)Perl_newXS_deffile( "XS::APItest::TempLv::make_temp_mg_lv",XS_XS__APItest__TempLv_make_temp_mg_lv ); |
| 13942 | newXS_deffile("XS::APItest::PtrTable::new", XS_XS__APItest__PtrTable_new)Perl_newXS_deffile( "XS::APItest::PtrTable::new",XS_XS__APItest__PtrTable_new ); |
| 13943 | newXS_deffile("XS::APItest::PtrTable::DESTROY", XS_XS__APItest__PtrTable_DESTROY)Perl_newXS_deffile( "XS::APItest::PtrTable::DESTROY",XS_XS__APItest__PtrTable_DESTROY ); |
| 13944 | newXS_deffile("XS::APItest::PtrTable::store", XS_XS__APItest__PtrTable_store)Perl_newXS_deffile( "XS::APItest::PtrTable::store",XS_XS__APItest__PtrTable_store ); |
| 13945 | newXS_deffile("XS::APItest::PtrTable::fetch", XS_XS__APItest__PtrTable_fetch)Perl_newXS_deffile( "XS::APItest::PtrTable::fetch",XS_XS__APItest__PtrTable_fetch ); |
| 13946 | newXS_deffile("XS::APItest::PtrTable::split", XS_XS__APItest__PtrTable_split)Perl_newXS_deffile( "XS::APItest::PtrTable::split",XS_XS__APItest__PtrTable_split ); |
| 13947 | newXS_deffile("XS::APItest::PtrTable::clear", XS_XS__APItest__PtrTable_clear)Perl_newXS_deffile( "XS::APItest::PtrTable::clear",XS_XS__APItest__PtrTable_clear ); |
| 13948 | newXS_deffile("XS::APItest::AutoLoader::AUTOLOAD", XS_XS__APItest__AutoLoader_AUTOLOAD)Perl_newXS_deffile( "XS::APItest::AutoLoader::AUTOLOAD",XS_XS__APItest__AutoLoader_AUTOLOAD ); |
| 13949 | (void)newXSproto_portable("XS::APItest::AutoLoader::AUTOLOADp", XS_XS__APItest__AutoLoader_AUTOLOADp, file, "*$")Perl_newXS_flags( "XS::APItest::AutoLoader::AUTOLOADp",XS_XS__APItest__AutoLoader_AUTOLOADp ,file,"*$",0); |
| 13950 | newXS_deffile("XS::APItest::xop_custom_ops", XS_XS__APItest_xop_custom_ops)Perl_newXS_deffile( "XS::APItest::xop_custom_ops",XS_XS__APItest_xop_custom_ops ); |
| 13951 | newXS_deffile("XS::APItest::xop_custom_op_names", XS_XS__APItest_xop_custom_op_names)Perl_newXS_deffile( "XS::APItest::xop_custom_op_names",XS_XS__APItest_xop_custom_op_names ); |
| 13952 | newXS_deffile("XS::APItest::xop_custom_op_descs", XS_XS__APItest_xop_custom_op_descs)Perl_newXS_deffile( "XS::APItest::xop_custom_op_descs",XS_XS__APItest_xop_custom_op_descs ); |
| 13953 | newXS_deffile("XS::APItest::xop_register", XS_XS__APItest_xop_register)Perl_newXS_deffile( "XS::APItest::xop_register",XS_XS__APItest_xop_register ); |
| 13954 | newXS_deffile("XS::APItest::xop_clear", XS_XS__APItest_xop_clear)Perl_newXS_deffile( "XS::APItest::xop_clear",XS_XS__APItest_xop_clear ); |
| 13955 | newXS_deffile("XS::APItest::xop_my_xop", XS_XS__APItest_xop_my_xop)Perl_newXS_deffile( "XS::APItest::xop_my_xop",XS_XS__APItest_xop_my_xop ); |
| 13956 | newXS_deffile("XS::APItest::xop_ppaddr", XS_XS__APItest_xop_ppaddr)Perl_newXS_deffile( "XS::APItest::xop_ppaddr",XS_XS__APItest_xop_ppaddr ); |
| 13957 | newXS_deffile("XS::APItest::xop_OA_UNOP", XS_XS__APItest_xop_OA_UNOP)Perl_newXS_deffile( "XS::APItest::xop_OA_UNOP",XS_XS__APItest_xop_OA_UNOP ); |
| 13958 | newXS_deffile("XS::APItest::xop_build_optree", XS_XS__APItest_xop_build_optree)Perl_newXS_deffile( "XS::APItest::xop_build_optree",XS_XS__APItest_xop_build_optree ); |
| 13959 | newXS_deffile("XS::APItest::xop_from_custom_op", XS_XS__APItest_xop_from_custom_op)Perl_newXS_deffile( "XS::APItest::xop_from_custom_op",XS_XS__APItest_xop_from_custom_op ); |
| 13960 | newXS_deffile("XS::APItest::CLONE", XS_XS__APItest_CLONE)Perl_newXS_deffile( "XS::APItest::CLONE",XS_XS__APItest_CLONE ); |
| 13961 | newXS_deffile("XS::APItest::print_double", XS_XS__APItest_print_double)Perl_newXS_deffile( "XS::APItest::print_double",XS_XS__APItest_print_double ); |
| 13962 | newXS_deffile("XS::APItest::have_long_double", XS_XS__APItest_have_long_double)Perl_newXS_deffile( "XS::APItest::have_long_double",XS_XS__APItest_have_long_double ); |
| 13963 | newXS_deffile("XS::APItest::print_long_double", XS_XS__APItest_print_long_double)Perl_newXS_deffile( "XS::APItest::print_long_double",XS_XS__APItest_print_long_double ); |
| 13964 | newXS_deffile("XS::APItest::print_int", XS_XS__APItest_print_int)Perl_newXS_deffile( "XS::APItest::print_int",XS_XS__APItest_print_int ); |
| 13965 | newXS_deffile("XS::APItest::print_long", XS_XS__APItest_print_long)Perl_newXS_deffile( "XS::APItest::print_long",XS_XS__APItest_print_long ); |
| 13966 | newXS_deffile("XS::APItest::print_float", XS_XS__APItest_print_float)Perl_newXS_deffile( "XS::APItest::print_float",XS_XS__APItest_print_float ); |
| 13967 | newXS_deffile("XS::APItest::print_flush", XS_XS__APItest_print_flush)Perl_newXS_deffile( "XS::APItest::print_flush",XS_XS__APItest_print_flush ); |
| 13968 | newXS_deffile("XS::APItest::mpushp", XS_XS__APItest_mpushp)Perl_newXS_deffile( "XS::APItest::mpushp",XS_XS__APItest_mpushp ); |
| 13969 | newXS_deffile("XS::APItest::mpushn", XS_XS__APItest_mpushn)Perl_newXS_deffile( "XS::APItest::mpushn",XS_XS__APItest_mpushn ); |
| 13970 | newXS_deffile("XS::APItest::mpushi", XS_XS__APItest_mpushi)Perl_newXS_deffile( "XS::APItest::mpushi",XS_XS__APItest_mpushi ); |
| 13971 | newXS_deffile("XS::APItest::mpushu", XS_XS__APItest_mpushu)Perl_newXS_deffile( "XS::APItest::mpushu",XS_XS__APItest_mpushu ); |
| 13972 | newXS_deffile("XS::APItest::mxpushp", XS_XS__APItest_mxpushp)Perl_newXS_deffile( "XS::APItest::mxpushp",XS_XS__APItest_mxpushp ); |
| 13973 | newXS_deffile("XS::APItest::mxpushn", XS_XS__APItest_mxpushn)Perl_newXS_deffile( "XS::APItest::mxpushn",XS_XS__APItest_mxpushn ); |
| 13974 | newXS_deffile("XS::APItest::mxpushi", XS_XS__APItest_mxpushi)Perl_newXS_deffile( "XS::APItest::mxpushi",XS_XS__APItest_mxpushi ); |
| 13975 | newXS_deffile("XS::APItest::mxpushu", XS_XS__APItest_mxpushu)Perl_newXS_deffile( "XS::APItest::mxpushu",XS_XS__APItest_mxpushu ); |
| 13976 | newXS_deffile("XS::APItest::test_EXTEND", XS_XS__APItest_test_EXTEND)Perl_newXS_deffile( "XS::APItest::test_EXTEND",XS_XS__APItest_test_EXTEND ); |
| 13977 | newXS_deffile("XS::APItest::call_sv_C", XS_XS__APItest_call_sv_C)Perl_newXS_deffile( "XS::APItest::call_sv_C",XS_XS__APItest_call_sv_C ); |
| 13978 | newXS_deffile("XS::APItest::call_sv", XS_XS__APItest_call_sv)Perl_newXS_deffile( "XS::APItest::call_sv",XS_XS__APItest_call_sv ); |
| 13979 | newXS_deffile("XS::APItest::call_pv", XS_XS__APItest_call_pv)Perl_newXS_deffile( "XS::APItest::call_pv",XS_XS__APItest_call_pv ); |
| 13980 | newXS_deffile("XS::APItest::call_argv", XS_XS__APItest_call_argv)Perl_newXS_deffile( "XS::APItest::call_argv",XS_XS__APItest_call_argv ); |
| 13981 | newXS_deffile("XS::APItest::call_method", XS_XS__APItest_call_method)Perl_newXS_deffile( "XS::APItest::call_method",XS_XS__APItest_call_method ); |
| 13982 | cv = newXS_deffile("XS::APItest::newCONSTSUB", XS_XS__APItest_newCONSTSUB)Perl_newXS_deffile( "XS::APItest::newCONSTSUB",XS_XS__APItest_newCONSTSUB ); |
| 13983 | XSANY((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))->xcv_start_u .xcv_xsubany.any_i32 = 0; |
| 13984 | cv = newXS_deffile("XS::APItest::newCONSTSUB_flags", XS_XS__APItest_newCONSTSUB)Perl_newXS_deffile( "XS::APItest::newCONSTSUB_flags",XS_XS__APItest_newCONSTSUB ); |
| 13985 | XSANY((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))->xcv_start_u .xcv_xsubany.any_i32 = 1; |
| 13986 | newXS_deffile("XS::APItest::gv_init_type", XS_XS__APItest_gv_init_type)Perl_newXS_deffile( "XS::APItest::gv_init_type",XS_XS__APItest_gv_init_type ); |
| 13987 | newXS_deffile("XS::APItest::gv_fetchmeth_type", XS_XS__APItest_gv_fetchmeth_type)Perl_newXS_deffile( "XS::APItest::gv_fetchmeth_type",XS_XS__APItest_gv_fetchmeth_type ); |
| 13988 | newXS_deffile("XS::APItest::gv_fetchmeth_autoload_type", XS_XS__APItest_gv_fetchmeth_autoload_type)Perl_newXS_deffile( "XS::APItest::gv_fetchmeth_autoload_type" ,XS_XS__APItest_gv_fetchmeth_autoload_type); |
| 13989 | newXS_deffile("XS::APItest::gv_fetchmethod_flags_type", XS_XS__APItest_gv_fetchmethod_flags_type)Perl_newXS_deffile( "XS::APItest::gv_fetchmethod_flags_type", XS_XS__APItest_gv_fetchmethod_flags_type); |
| 13990 | newXS_deffile("XS::APItest::gv_autoload_type", XS_XS__APItest_gv_autoload_type)Perl_newXS_deffile( "XS::APItest::gv_autoload_type",XS_XS__APItest_gv_autoload_type ); |
| 13991 | newXS_deffile("XS::APItest::gv_const_sv", XS_XS__APItest_gv_const_sv)Perl_newXS_deffile( "XS::APItest::gv_const_sv",XS_XS__APItest_gv_const_sv ); |
| 13992 | newXS_deffile("XS::APItest::whichsig_type", XS_XS__APItest_whichsig_type)Perl_newXS_deffile( "XS::APItest::whichsig_type",XS_XS__APItest_whichsig_type ); |
| 13993 | newXS_deffile("XS::APItest::eval_sv", XS_XS__APItest_eval_sv)Perl_newXS_deffile( "XS::APItest::eval_sv",XS_XS__APItest_eval_sv ); |
| 13994 | newXS_deffile("XS::APItest::eval_pv", XS_XS__APItest_eval_pv)Perl_newXS_deffile( "XS::APItest::eval_pv",XS_XS__APItest_eval_pv ); |
| 13995 | newXS_deffile("XS::APItest::require_pv", XS_XS__APItest_require_pv)Perl_newXS_deffile( "XS::APItest::require_pv",XS_XS__APItest_require_pv ); |
| 13996 | newXS_deffile("XS::APItest::apitest_exception", XS_XS__APItest_apitest_exception)Perl_newXS_deffile( "XS::APItest::apitest_exception",XS_XS__APItest_apitest_exception ); |
| 13997 | newXS_deffile("XS::APItest::mycroak", XS_XS__APItest_mycroak)Perl_newXS_deffile( "XS::APItest::mycroak",XS_XS__APItest_mycroak ); |
| 13998 | newXS_deffile("XS::APItest::strtab", XS_XS__APItest_strtab)Perl_newXS_deffile( "XS::APItest::strtab",XS_XS__APItest_strtab ); |
| 13999 | newXS_deffile("XS::APItest::my_cxt_getint", XS_XS__APItest_my_cxt_getint)Perl_newXS_deffile( "XS::APItest::my_cxt_getint",XS_XS__APItest_my_cxt_getint ); |
| 14000 | newXS_deffile("XS::APItest::my_cxt_setint", XS_XS__APItest_my_cxt_setint)Perl_newXS_deffile( "XS::APItest::my_cxt_setint",XS_XS__APItest_my_cxt_setint ); |
| 14001 | newXS_deffile("XS::APItest::my_cxt_getsv", XS_XS__APItest_my_cxt_getsv)Perl_newXS_deffile( "XS::APItest::my_cxt_getsv",XS_XS__APItest_my_cxt_getsv ); |
| 14002 | newXS_deffile("XS::APItest::my_cxt_setsv", XS_XS__APItest_my_cxt_setsv)Perl_newXS_deffile( "XS::APItest::my_cxt_setsv",XS_XS__APItest_my_cxt_setsv ); |
| 14003 | newXS_deffile("XS::APItest::sv_setsv_cow_hashkey_core", XS_XS__APItest_sv_setsv_cow_hashkey_core)Perl_newXS_deffile( "XS::APItest::sv_setsv_cow_hashkey_core", XS_XS__APItest_sv_setsv_cow_hashkey_core); |
| 14004 | newXS_deffile("XS::APItest::sv_setsv_cow_hashkey_notcore", XS_XS__APItest_sv_setsv_cow_hashkey_notcore)Perl_newXS_deffile( "XS::APItest::sv_setsv_cow_hashkey_notcore" ,XS_XS__APItest_sv_setsv_cow_hashkey_notcore); |
| 14005 | newXS_deffile("XS::APItest::sv_set_deref", XS_XS__APItest_sv_set_deref)Perl_newXS_deffile( "XS::APItest::sv_set_deref",XS_XS__APItest_sv_set_deref ); |
| 14006 | newXS_deffile("XS::APItest::rmagical_cast", XS_XS__APItest_rmagical_cast)Perl_newXS_deffile( "XS::APItest::rmagical_cast",XS_XS__APItest_rmagical_cast ); |
| 14007 | newXS_deffile("XS::APItest::rmagical_flags", XS_XS__APItest_rmagical_flags)Perl_newXS_deffile( "XS::APItest::rmagical_flags",XS_XS__APItest_rmagical_flags ); |
| 14008 | newXS_deffile("XS::APItest::my_caller", XS_XS__APItest_my_caller)Perl_newXS_deffile( "XS::APItest::my_caller",XS_XS__APItest_my_caller ); |
| 14009 | newXS_deffile("XS::APItest::DPeek", XS_XS__APItest_DPeek)Perl_newXS_deffile( "XS::APItest::DPeek",XS_XS__APItest_DPeek ); |
| 14010 | newXS_deffile("XS::APItest::BEGIN", XS_XS__APItest_BEGIN)Perl_newXS_deffile( "XS::APItest::BEGIN",XS_XS__APItest_BEGIN ); |
| 14011 | newXS_deffile("XS::APItest::CHECK", XS_XS__APItest_CHECK)Perl_newXS_deffile( "XS::APItest::CHECK",XS_XS__APItest_CHECK ); |
| 14012 | newXS_deffile("XS::APItest::UNITCHECK", XS_XS__APItest_UNITCHECK)Perl_newXS_deffile( "XS::APItest::UNITCHECK",XS_XS__APItest_UNITCHECK ); |
| 14013 | newXS_deffile("XS::APItest::INIT", XS_XS__APItest_INIT)Perl_newXS_deffile( "XS::APItest::INIT",XS_XS__APItest_INIT); |
| 14014 | newXS_deffile("XS::APItest::END", XS_XS__APItest_END)Perl_newXS_deffile( "XS::APItest::END",XS_XS__APItest_END); |
| 14015 | cv = newXS_deffile("XS::APItest::utf16_to_utf8", XS_XS__APItest_utf16_to_utf8)Perl_newXS_deffile( "XS::APItest::utf16_to_utf8",XS_XS__APItest_utf16_to_utf8 ); |
| 14016 | XSANY((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))->xcv_start_u .xcv_xsubany.any_i32 = 0; |
| 14017 | cv = newXS_deffile("XS::APItest::utf16_to_utf8_reversed", XS_XS__APItest_utf16_to_utf8)Perl_newXS_deffile( "XS::APItest::utf16_to_utf8_reversed",XS_XS__APItest_utf16_to_utf8 ); |
| 14018 | XSANY((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))->xcv_start_u .xcv_xsubany.any_i32 = 1; |
| 14019 | newXS_deffile("XS::APItest::my_exit", XS_XS__APItest_my_exit)Perl_newXS_deffile( "XS::APItest::my_exit",XS_XS__APItest_my_exit ); |
| 14020 | newXS_deffile("XS::APItest::first_byte", XS_XS__APItest_first_byte)Perl_newXS_deffile( "XS::APItest::first_byte",XS_XS__APItest_first_byte ); |
| 14021 | newXS_deffile("XS::APItest::sv_count", XS_XS__APItest_sv_count)Perl_newXS_deffile( "XS::APItest::sv_count",XS_XS__APItest_sv_count ); |
| 14022 | newXS_deffile("XS::APItest::bhk_record", XS_XS__APItest_bhk_record)Perl_newXS_deffile( "XS::APItest::bhk_record",XS_XS__APItest_bhk_record ); |
| 14023 | newXS_deffile("XS::APItest::test_magic_chain", XS_XS__APItest_test_magic_chain)Perl_newXS_deffile( "XS::APItest::test_magic_chain",XS_XS__APItest_test_magic_chain ); |
| 14024 | newXS_deffile("XS::APItest::test_op_contextualize", XS_XS__APItest_test_op_contextualize)Perl_newXS_deffile( "XS::APItest::test_op_contextualize",XS_XS__APItest_test_op_contextualize ); |
| 14025 | (void)newXSproto_portable("XS::APItest::test_rv2cv_op_cv", XS_XS__APItest_test_rv2cv_op_cv, file, "")Perl_newXS_flags( "XS::APItest::test_rv2cv_op_cv",XS_XS__APItest_test_rv2cv_op_cv ,file,"",0); |
| 14026 | newXS_deffile("XS::APItest::test_cv_getset_call_checker", XS_XS__APItest_test_cv_getset_call_checker)Perl_newXS_deffile( "XS::APItest::test_cv_getset_call_checker" ,XS_XS__APItest_test_cv_getset_call_checker); |
| 14027 | newXS_deffile("XS::APItest::cv_set_call_checker_lists", XS_XS__APItest_cv_set_call_checker_lists)Perl_newXS_deffile( "XS::APItest::cv_set_call_checker_lists", XS_XS__APItest_cv_set_call_checker_lists); |
| 14028 | newXS_deffile("XS::APItest::cv_set_call_checker_scalars", XS_XS__APItest_cv_set_call_checker_scalars)Perl_newXS_deffile( "XS::APItest::cv_set_call_checker_scalars" ,XS_XS__APItest_cv_set_call_checker_scalars); |
| 14029 | newXS_deffile("XS::APItest::cv_set_call_checker_proto", XS_XS__APItest_cv_set_call_checker_proto)Perl_newXS_deffile( "XS::APItest::cv_set_call_checker_proto", XS_XS__APItest_cv_set_call_checker_proto); |
| 14030 | newXS_deffile("XS::APItest::cv_set_call_checker_proto_or_list", XS_XS__APItest_cv_set_call_checker_proto_or_list)Perl_newXS_deffile( "XS::APItest::cv_set_call_checker_proto_or_list" ,XS_XS__APItest_cv_set_call_checker_proto_or_list); |
| 14031 | newXS_deffile("XS::APItest::cv_set_call_checker_multi_sum", XS_XS__APItest_cv_set_call_checker_multi_sum)Perl_newXS_deffile( "XS::APItest::cv_set_call_checker_multi_sum" ,XS_XS__APItest_cv_set_call_checker_multi_sum); |
| 14032 | newXS_deffile("XS::APItest::test_cophh", XS_XS__APItest_test_cophh)Perl_newXS_deffile( "XS::APItest::test_cophh",XS_XS__APItest_test_cophh ); |
| 14033 | newXS_deffile("XS::APItest::test_coplabel", XS_XS__APItest_test_coplabel)Perl_newXS_deffile( "XS::APItest::test_coplabel",XS_XS__APItest_test_coplabel ); |
| 14034 | newXS_deffile("XS::APItest::example_cophh_2hv", XS_XS__APItest_example_cophh_2hv)Perl_newXS_deffile( "XS::APItest::example_cophh_2hv",XS_XS__APItest_example_cophh_2hv ); |
| 14035 | newXS_deffile("XS::APItest::test_savehints", XS_XS__APItest_test_savehints)Perl_newXS_deffile( "XS::APItest::test_savehints",XS_XS__APItest_test_savehints ); |
| 14036 | newXS_deffile("XS::APItest::test_copyhints", XS_XS__APItest_test_copyhints)Perl_newXS_deffile( "XS::APItest::test_copyhints",XS_XS__APItest_test_copyhints ); |
| 14037 | newXS_deffile("XS::APItest::test_op_list", XS_XS__APItest_test_op_list)Perl_newXS_deffile( "XS::APItest::test_op_list",XS_XS__APItest_test_op_list ); |
| 14038 | newXS_deffile("XS::APItest::test_op_linklist", XS_XS__APItest_test_op_linklist)Perl_newXS_deffile( "XS::APItest::test_op_linklist",XS_XS__APItest_test_op_linklist ); |
| 14039 | newXS_deffile("XS::APItest::peep_enable", XS_XS__APItest_peep_enable)Perl_newXS_deffile( "XS::APItest::peep_enable",XS_XS__APItest_peep_enable ); |
| 14040 | newXS_deffile("XS::APItest::peep_disable", XS_XS__APItest_peep_disable)Perl_newXS_deffile( "XS::APItest::peep_disable",XS_XS__APItest_peep_disable ); |
| 14041 | newXS_deffile("XS::APItest::peep_record", XS_XS__APItest_peep_record)Perl_newXS_deffile( "XS::APItest::peep_record",XS_XS__APItest_peep_record ); |
| 14042 | newXS_deffile("XS::APItest::rpeep_record", XS_XS__APItest_rpeep_record)Perl_newXS_deffile( "XS::APItest::rpeep_record",XS_XS__APItest_rpeep_record ); |
| 14043 | (void)newXSproto_portable("XS::APItest::multicall_each", XS_XS__APItest_multicall_each, file, "&@")Perl_newXS_flags( "XS::APItest::multicall_each",XS_XS__APItest_multicall_each ,file,"&@",0); |
| 14044 | (void)newXSproto_portable("XS::APItest::multicall_return", XS_XS__APItest_multicall_return, file, "&$")Perl_newXS_flags( "XS::APItest::multicall_return",XS_XS__APItest_multicall_return ,file,"&$",0); |
| 14045 | #if XSubPPtmpAAAC |
| 14046 | newXS_deffile("XS::APItest::clone_with_stack", XS_XS__APItest_clone_with_stack)Perl_newXS_deffile( "XS::APItest::clone_with_stack",XS_XS__APItest_clone_with_stack ); |
| 14047 | #endif |
| 14048 | newXS_deffile("XS::APItest::take_svref", XS_XS__APItest_take_svref)Perl_newXS_deffile( "XS::APItest::take_svref",XS_XS__APItest_take_svref ); |
| 14049 | newXS_deffile("XS::APItest::take_avref", XS_XS__APItest_take_avref)Perl_newXS_deffile( "XS::APItest::take_avref",XS_XS__APItest_take_avref ); |
| 14050 | newXS_deffile("XS::APItest::take_hvref", XS_XS__APItest_take_hvref)Perl_newXS_deffile( "XS::APItest::take_hvref",XS_XS__APItest_take_hvref ); |
| 14051 | newXS_deffile("XS::APItest::take_cvref", XS_XS__APItest_take_cvref)Perl_newXS_deffile( "XS::APItest::take_cvref",XS_XS__APItest_take_cvref ); |
| 14052 | (void)newXSproto_portable("XS::APItest::establish_cleanup", XS_XS__APItest_establish_cleanup, file, "$")Perl_newXS_flags( "XS::APItest::establish_cleanup",XS_XS__APItest_establish_cleanup ,file,"$",0); |
| 14053 | (void)newXSproto_portable("XS::APItest::postinc", XS_XS__APItest_postinc, file, "$")Perl_newXS_flags( "XS::APItest::postinc",XS_XS__APItest_postinc ,file,"$",0); |
| 14054 | newXS_deffile("XS::APItest::filter", XS_XS__APItest_filter)Perl_newXS_deffile( "XS::APItest::filter",XS_XS__APItest_filter ); |
| 14055 | newXS_deffile("XS::APItest::lv_temp_object", XS_XS__APItest_lv_temp_object)Perl_newXS_deffile( "XS::APItest::lv_temp_object",XS_XS__APItest_lv_temp_object ); |
| 14056 | newXS_deffile("XS::APItest::fill_hash_with_nulls", XS_XS__APItest_fill_hash_with_nulls)Perl_newXS_deffile( "XS::APItest::fill_hash_with_nulls",XS_XS__APItest_fill_hash_with_nulls ); |
| 14057 | newXS_deffile("XS::APItest::newHVhv", XS_XS__APItest_newHVhv)Perl_newXS_deffile( "XS::APItest::newHVhv",XS_XS__APItest_newHVhv ); |
| 14058 | newXS_deffile("XS::APItest::SvIsCOW", XS_XS__APItest_SvIsCOW)Perl_newXS_deffile( "XS::APItest::SvIsCOW",XS_XS__APItest_SvIsCOW ); |
| 14059 | (void)newXSproto_portable("XS::APItest::pad_scalar", XS_XS__APItest_pad_scalar, file, "$$")Perl_newXS_flags( "XS::APItest::pad_scalar",XS_XS__APItest_pad_scalar ,file,"$$",0); |
| 14060 | newXS_deffile("XS::APItest::fetch_pad_names", XS_XS__APItest_fetch_pad_names)Perl_newXS_deffile( "XS::APItest::fetch_pad_names",XS_XS__APItest_fetch_pad_names ); |
| 14061 | (void)newXSproto_portable("XS::APItest::underscore_length", XS_XS__APItest_underscore_length, file, "")Perl_newXS_flags( "XS::APItest::underscore_length",XS_XS__APItest_underscore_length ,file,"",0); |
| 14062 | newXS_deffile("XS::APItest::stringify", XS_XS__APItest_stringify)Perl_newXS_deffile( "XS::APItest::stringify",XS_XS__APItest_stringify ); |
| 14063 | newXS_deffile("XS::APItest::HvENAME", XS_XS__APItest_HvENAME)Perl_newXS_deffile( "XS::APItest::HvENAME",XS_XS__APItest_HvENAME ); |
| 14064 | newXS_deffile("XS::APItest::xs_cmp", XS_XS__APItest_xs_cmp)Perl_newXS_deffile( "XS::APItest::xs_cmp",XS_XS__APItest_xs_cmp ); |
| 14065 | newXS_deffile("XS::APItest::xs_cmp_undef", XS_XS__APItest_xs_cmp_undef)Perl_newXS_deffile( "XS::APItest::xs_cmp_undef",XS_XS__APItest_xs_cmp_undef ); |
| 14066 | newXS_deffile("XS::APItest::SvPVbyte", XS_XS__APItest_SvPVbyte)Perl_newXS_deffile( "XS::APItest::SvPVbyte",XS_XS__APItest_SvPVbyte ); |
| 14067 | newXS_deffile("XS::APItest::SvPVbyte_nomg", XS_XS__APItest_SvPVbyte_nomg)Perl_newXS_deffile( "XS::APItest::SvPVbyte_nomg",XS_XS__APItest_SvPVbyte_nomg ); |
| 14068 | newXS_deffile("XS::APItest::SvPVutf8", XS_XS__APItest_SvPVutf8)Perl_newXS_deffile( "XS::APItest::SvPVutf8",XS_XS__APItest_SvPVutf8 ); |
| 14069 | newXS_deffile("XS::APItest::SvPVutf8_nomg", XS_XS__APItest_SvPVutf8_nomg)Perl_newXS_deffile( "XS::APItest::SvPVutf8_nomg",XS_XS__APItest_SvPVutf8_nomg ); |
| 14070 | newXS_deffile("XS::APItest::setup_addissub", XS_XS__APItest_setup_addissub)Perl_newXS_deffile( "XS::APItest::setup_addissub",XS_XS__APItest_setup_addissub ); |
| 14071 | newXS_deffile("XS::APItest::setup_rv2cv_addunderbar", XS_XS__APItest_setup_rv2cv_addunderbar)Perl_newXS_deffile( "XS::APItest::setup_rv2cv_addunderbar",XS_XS__APItest_setup_rv2cv_addunderbar ); |
| 14072 | #if XSubPPtmpAAAD |
| 14073 | newXS_deffile("XS::APItest::test_alloccopstash", XS_XS__APItest_test_alloccopstash)Perl_newXS_deffile( "XS::APItest::test_alloccopstash",XS_XS__APItest_test_alloccopstash ); |
| 14074 | #endif |
| 14075 | newXS_deffile("XS::APItest::test_newFOROP_without_slab", XS_XS__APItest_test_newFOROP_without_slab)Perl_newXS_deffile( "XS::APItest::test_newFOROP_without_slab" ,XS_XS__APItest_test_newFOROP_without_slab); |
| 14076 | newXS_deffile("XS::APItest::callregexec", XS_XS__APItest_callregexec)Perl_newXS_deffile( "XS::APItest::callregexec",XS_XS__APItest_callregexec ); |
| 14077 | newXS_deffile("XS::APItest::lexical_import", XS_XS__APItest_lexical_import)Perl_newXS_deffile( "XS::APItest::lexical_import",XS_XS__APItest_lexical_import ); |
| 14078 | newXS_deffile("XS::APItest::sv_mortalcopy", XS_XS__APItest_sv_mortalcopy)Perl_newXS_deffile( "XS::APItest::sv_mortalcopy",XS_XS__APItest_sv_mortalcopy ); |
| 14079 | newXS_deffile("XS::APItest::newRV", XS_XS__APItest_newRV)Perl_newXS_deffile( "XS::APItest::newRV",XS_XS__APItest_newRV ); |
| 14080 | newXS_deffile("XS::APItest::alias_av", XS_XS__APItest_alias_av)Perl_newXS_deffile( "XS::APItest::alias_av",XS_XS__APItest_alias_av ); |
| 14081 | newXS_deffile("XS::APItest::cv_name", XS_XS__APItest_cv_name)Perl_newXS_deffile( "XS::APItest::cv_name",XS_XS__APItest_cv_name ); |
| 14082 | newXS_deffile("XS::APItest::sv_catpvn", XS_XS__APItest_sv_catpvn)Perl_newXS_deffile( "XS::APItest::sv_catpvn",XS_XS__APItest_sv_catpvn ); |
| 14083 | newXS_deffile("XS::APItest::test_newOP_CUSTOM", XS_XS__APItest_test_newOP_CUSTOM)Perl_newXS_deffile( "XS::APItest::test_newOP_CUSTOM",XS_XS__APItest_test_newOP_CUSTOM ); |
| 14084 | newXS_deffile("XS::APItest::test_sv_catpvf", XS_XS__APItest_test_sv_catpvf)Perl_newXS_deffile( "XS::APItest::test_sv_catpvf",XS_XS__APItest_test_sv_catpvf ); |
| 14085 | newXS_deffile("XS::APItest::load_module", XS_XS__APItest_load_module)Perl_newXS_deffile( "XS::APItest::load_module",XS_XS__APItest_load_module ); |
| 14086 | newXS_deffile("XS::APItest::string_without_null", XS_XS__APItest_string_without_null)Perl_newXS_deffile( "XS::APItest::string_without_null",XS_XS__APItest_string_without_null ); |
| 14087 | newXS_deffile("XS::APItest::get_cv", XS_XS__APItest_get_cv)Perl_newXS_deffile( "XS::APItest::get_cv",XS_XS__APItest_get_cv ); |
| 14088 | newXS_deffile("XS::APItest::get_cv_flags", XS_XS__APItest_get_cv_flags)Perl_newXS_deffile( "XS::APItest::get_cv_flags",XS_XS__APItest_get_cv_flags ); |
| 14089 | newXS_deffile("XS::APItest::unshift_and_set_defav", XS_XS__APItest_unshift_and_set_defav)Perl_newXS_deffile( "XS::APItest::unshift_and_set_defav",XS_XS__APItest_unshift_and_set_defav ); |
| 14090 | newXS_deffile("XS::APItest::PerlIO_stderr", XS_XS__APItest_PerlIO_stderr)Perl_newXS_deffile( "XS::APItest::PerlIO_stderr",XS_XS__APItest_PerlIO_stderr ); |
| 14091 | newXS_deffile("XS::APItest::PerlIO_stdout", XS_XS__APItest_PerlIO_stdout)Perl_newXS_deffile( "XS::APItest::PerlIO_stdout",XS_XS__APItest_PerlIO_stdout ); |
| 14092 | newXS_deffile("XS::APItest::PerlIO_stdin", XS_XS__APItest_PerlIO_stdin)Perl_newXS_deffile( "XS::APItest::PerlIO_stdin",XS_XS__APItest_PerlIO_stdin ); |
| 14093 | newXS_deffile("XS::APItest::PerlIO_exportFILE", XS_XS__APItest_PerlIO_exportFILE)Perl_newXS_deffile( "XS::APItest::PerlIO_exportFILE",XS_XS__APItest_PerlIO_exportFILE ); |
| 14094 | newXS_deffile("XS::APItest::test_MAX_types", XS_XS__APItest_test_MAX_types)Perl_newXS_deffile( "XS::APItest::test_MAX_types",XS_XS__APItest_test_MAX_types ); |
| 14095 | newXS_deffile("XS::APItest::AUTOLOADtest::AUTOLOAD", XS_XS__APItest__AUTOLOADtest_AUTOLOAD)Perl_newXS_deffile( "XS::APItest::AUTOLOADtest::AUTOLOAD",XS_XS__APItest__AUTOLOADtest_AUTOLOAD ); |
| 14096 | cv = newXS_deffile("XS::APItest::Magic::sv_magic_bar", XS_XS__APItest__Magic_sv_magic_foo)Perl_newXS_deffile( "XS::APItest::Magic::sv_magic_bar",XS_XS__APItest__Magic_sv_magic_foo ); |
| 14097 | XSANY((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))->xcv_start_u .xcv_xsubany.any_i32 = 1; |
| 14098 | cv = newXS_deffile("XS::APItest::Magic::sv_magic_foo", XS_XS__APItest__Magic_sv_magic_foo)Perl_newXS_deffile( "XS::APItest::Magic::sv_magic_foo",XS_XS__APItest__Magic_sv_magic_foo ); |
| 14099 | XSANY((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))->xcv_start_u .xcv_xsubany.any_i32 = 0; |
| 14100 | cv = newXS_deffile("XS::APItest::Magic::mg_find_bar", XS_XS__APItest__Magic_mg_find_foo)Perl_newXS_deffile( "XS::APItest::Magic::mg_find_bar",XS_XS__APItest__Magic_mg_find_foo ); |
| 14101 | XSANY((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))->xcv_start_u .xcv_xsubany.any_i32 = 1; |
| 14102 | cv = newXS_deffile("XS::APItest::Magic::mg_find_foo", XS_XS__APItest__Magic_mg_find_foo)Perl_newXS_deffile( "XS::APItest::Magic::mg_find_foo",XS_XS__APItest__Magic_mg_find_foo ); |
| 14103 | XSANY((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))->xcv_start_u .xcv_xsubany.any_i32 = 0; |
| 14104 | cv = newXS_deffile("XS::APItest::Magic::sv_unmagic_bar", XS_XS__APItest__Magic_sv_unmagic_foo)Perl_newXS_deffile( "XS::APItest::Magic::sv_unmagic_bar",XS_XS__APItest__Magic_sv_unmagic_foo ); |
| 14105 | XSANY((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))->xcv_start_u .xcv_xsubany.any_i32 = 1; |
| 14106 | cv = newXS_deffile("XS::APItest::Magic::sv_unmagic_foo", XS_XS__APItest__Magic_sv_unmagic_foo)Perl_newXS_deffile( "XS::APItest::Magic::sv_unmagic_foo",XS_XS__APItest__Magic_sv_unmagic_foo ); |
| 14107 | XSANY((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))->xcv_start_u .xcv_xsubany.any_i32 = 0; |
| 14108 | newXS_deffile("XS::APItest::Magic::sv_magic", XS_XS__APItest__Magic_sv_magic)Perl_newXS_deffile( "XS::APItest::Magic::sv_magic",XS_XS__APItest__Magic_sv_magic ); |
| 14109 | newXS_deffile("XS::APItest::Magic::test_get_vtbl", XS_XS__APItest__Magic_test_get_vtbl)Perl_newXS_deffile( "XS::APItest::Magic::test_get_vtbl",XS_XS__APItest__Magic_test_get_vtbl ); |
| 14110 | newXS_deffile("XS::APItest::Magic::sv_magic_myset", XS_XS__APItest__Magic_sv_magic_myset)Perl_newXS_deffile( "XS::APItest::Magic::sv_magic_myset",XS_XS__APItest__Magic_sv_magic_myset ); |
| 14111 | newXS_deffile("XS::APItest::Magic::test_isBLANK_uni", XS_XS__APItest__Magic_test_isBLANK_uni)Perl_newXS_deffile( "XS::APItest::Magic::test_isBLANK_uni",XS_XS__APItest__Magic_test_isBLANK_uni ); |
| 14112 | newXS_deffile("XS::APItest::Magic::test_isBLANK_uvchr", XS_XS__APItest__Magic_test_isBLANK_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isBLANK_uvchr", XS_XS__APItest__Magic_test_isBLANK_uvchr); |
| 14113 | newXS_deffile("XS::APItest::Magic::test_isBLANK_LC_uvchr", XS_XS__APItest__Magic_test_isBLANK_LC_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isBLANK_LC_uvchr" ,XS_XS__APItest__Magic_test_isBLANK_LC_uvchr); |
| 14114 | newXS_deffile("XS::APItest::Magic::test_isBLANK", XS_XS__APItest__Magic_test_isBLANK)Perl_newXS_deffile( "XS::APItest::Magic::test_isBLANK",XS_XS__APItest__Magic_test_isBLANK ); |
| 14115 | newXS_deffile("XS::APItest::Magic::test_isBLANK_A", XS_XS__APItest__Magic_test_isBLANK_A)Perl_newXS_deffile( "XS::APItest::Magic::test_isBLANK_A",XS_XS__APItest__Magic_test_isBLANK_A ); |
| 14116 | newXS_deffile("XS::APItest::Magic::test_isBLANK_L1", XS_XS__APItest__Magic_test_isBLANK_L1)Perl_newXS_deffile( "XS::APItest::Magic::test_isBLANK_L1",XS_XS__APItest__Magic_test_isBLANK_L1 ); |
| 14117 | newXS_deffile("XS::APItest::Magic::test_isBLANK_LC", XS_XS__APItest__Magic_test_isBLANK_LC)Perl_newXS_deffile( "XS::APItest::Magic::test_isBLANK_LC",XS_XS__APItest__Magic_test_isBLANK_LC ); |
| 14118 | newXS_deffile("XS::APItest::Magic::test_isBLANK_utf8", XS_XS__APItest__Magic_test_isBLANK_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isBLANK_utf8",XS_XS__APItest__Magic_test_isBLANK_utf8 ); |
| 14119 | newXS_deffile("XS::APItest::Magic::test_isBLANK_LC_utf8", XS_XS__APItest__Magic_test_isBLANK_LC_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isBLANK_LC_utf8" ,XS_XS__APItest__Magic_test_isBLANK_LC_utf8); |
| 14120 | newXS_deffile("XS::APItest::Magic::test_isVERTWS_uni", XS_XS__APItest__Magic_test_isVERTWS_uni)Perl_newXS_deffile( "XS::APItest::Magic::test_isVERTWS_uni",XS_XS__APItest__Magic_test_isVERTWS_uni ); |
| 14121 | newXS_deffile("XS::APItest::Magic::test_isVERTWS_uvchr", XS_XS__APItest__Magic_test_isVERTWS_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isVERTWS_uvchr" ,XS_XS__APItest__Magic_test_isVERTWS_uvchr); |
| 14122 | newXS_deffile("XS::APItest::Magic::test_isVERTWS_utf8", XS_XS__APItest__Magic_test_isVERTWS_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isVERTWS_utf8", XS_XS__APItest__Magic_test_isVERTWS_utf8); |
| 14123 | newXS_deffile("XS::APItest::Magic::test_isUPPER_uni", XS_XS__APItest__Magic_test_isUPPER_uni)Perl_newXS_deffile( "XS::APItest::Magic::test_isUPPER_uni",XS_XS__APItest__Magic_test_isUPPER_uni ); |
| 14124 | newXS_deffile("XS::APItest::Magic::test_isUPPER_uvchr", XS_XS__APItest__Magic_test_isUPPER_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isUPPER_uvchr", XS_XS__APItest__Magic_test_isUPPER_uvchr); |
| 14125 | newXS_deffile("XS::APItest::Magic::test_isUPPER_LC_uvchr", XS_XS__APItest__Magic_test_isUPPER_LC_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isUPPER_LC_uvchr" ,XS_XS__APItest__Magic_test_isUPPER_LC_uvchr); |
| 14126 | newXS_deffile("XS::APItest::Magic::test_isUPPER", XS_XS__APItest__Magic_test_isUPPER)Perl_newXS_deffile( "XS::APItest::Magic::test_isUPPER",XS_XS__APItest__Magic_test_isUPPER ); |
| 14127 | newXS_deffile("XS::APItest::Magic::test_isUPPER_A", XS_XS__APItest__Magic_test_isUPPER_A)Perl_newXS_deffile( "XS::APItest::Magic::test_isUPPER_A",XS_XS__APItest__Magic_test_isUPPER_A ); |
| 14128 | newXS_deffile("XS::APItest::Magic::test_isUPPER_L1", XS_XS__APItest__Magic_test_isUPPER_L1)Perl_newXS_deffile( "XS::APItest::Magic::test_isUPPER_L1",XS_XS__APItest__Magic_test_isUPPER_L1 ); |
| 14129 | newXS_deffile("XS::APItest::Magic::test_isUPPER_LC", XS_XS__APItest__Magic_test_isUPPER_LC)Perl_newXS_deffile( "XS::APItest::Magic::test_isUPPER_LC",XS_XS__APItest__Magic_test_isUPPER_LC ); |
| 14130 | newXS_deffile("XS::APItest::Magic::test_isUPPER_utf8", XS_XS__APItest__Magic_test_isUPPER_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isUPPER_utf8",XS_XS__APItest__Magic_test_isUPPER_utf8 ); |
| 14131 | newXS_deffile("XS::APItest::Magic::test_isUPPER_LC_utf8", XS_XS__APItest__Magic_test_isUPPER_LC_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isUPPER_LC_utf8" ,XS_XS__APItest__Magic_test_isUPPER_LC_utf8); |
| 14132 | newXS_deffile("XS::APItest::Magic::test_isLOWER_uni", XS_XS__APItest__Magic_test_isLOWER_uni)Perl_newXS_deffile( "XS::APItest::Magic::test_isLOWER_uni",XS_XS__APItest__Magic_test_isLOWER_uni ); |
| 14133 | newXS_deffile("XS::APItest::Magic::test_isLOWER_uvchr", XS_XS__APItest__Magic_test_isLOWER_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isLOWER_uvchr", XS_XS__APItest__Magic_test_isLOWER_uvchr); |
| 14134 | newXS_deffile("XS::APItest::Magic::test_isLOWER_LC_uvchr", XS_XS__APItest__Magic_test_isLOWER_LC_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isLOWER_LC_uvchr" ,XS_XS__APItest__Magic_test_isLOWER_LC_uvchr); |
| 14135 | newXS_deffile("XS::APItest::Magic::test_isLOWER", XS_XS__APItest__Magic_test_isLOWER)Perl_newXS_deffile( "XS::APItest::Magic::test_isLOWER",XS_XS__APItest__Magic_test_isLOWER ); |
| 14136 | newXS_deffile("XS::APItest::Magic::test_isLOWER_A", XS_XS__APItest__Magic_test_isLOWER_A)Perl_newXS_deffile( "XS::APItest::Magic::test_isLOWER_A",XS_XS__APItest__Magic_test_isLOWER_A ); |
| 14137 | newXS_deffile("XS::APItest::Magic::test_isLOWER_L1", XS_XS__APItest__Magic_test_isLOWER_L1)Perl_newXS_deffile( "XS::APItest::Magic::test_isLOWER_L1",XS_XS__APItest__Magic_test_isLOWER_L1 ); |
| 14138 | newXS_deffile("XS::APItest::Magic::test_isLOWER_LC", XS_XS__APItest__Magic_test_isLOWER_LC)Perl_newXS_deffile( "XS::APItest::Magic::test_isLOWER_LC",XS_XS__APItest__Magic_test_isLOWER_LC ); |
| 14139 | newXS_deffile("XS::APItest::Magic::test_isLOWER_utf8", XS_XS__APItest__Magic_test_isLOWER_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isLOWER_utf8",XS_XS__APItest__Magic_test_isLOWER_utf8 ); |
| 14140 | newXS_deffile("XS::APItest::Magic::test_isLOWER_LC_utf8", XS_XS__APItest__Magic_test_isLOWER_LC_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isLOWER_LC_utf8" ,XS_XS__APItest__Magic_test_isLOWER_LC_utf8); |
| 14141 | newXS_deffile("XS::APItest::Magic::test_isALPHA_uni", XS_XS__APItest__Magic_test_isALPHA_uni)Perl_newXS_deffile( "XS::APItest::Magic::test_isALPHA_uni",XS_XS__APItest__Magic_test_isALPHA_uni ); |
| 14142 | newXS_deffile("XS::APItest::Magic::test_isALPHA_uvchr", XS_XS__APItest__Magic_test_isALPHA_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isALPHA_uvchr", XS_XS__APItest__Magic_test_isALPHA_uvchr); |
| 14143 | newXS_deffile("XS::APItest::Magic::test_isALPHA_LC_uvchr", XS_XS__APItest__Magic_test_isALPHA_LC_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isALPHA_LC_uvchr" ,XS_XS__APItest__Magic_test_isALPHA_LC_uvchr); |
| 14144 | newXS_deffile("XS::APItest::Magic::test_isALPHA", XS_XS__APItest__Magic_test_isALPHA)Perl_newXS_deffile( "XS::APItest::Magic::test_isALPHA",XS_XS__APItest__Magic_test_isALPHA ); |
| 14145 | newXS_deffile("XS::APItest::Magic::test_isALPHA_A", XS_XS__APItest__Magic_test_isALPHA_A)Perl_newXS_deffile( "XS::APItest::Magic::test_isALPHA_A",XS_XS__APItest__Magic_test_isALPHA_A ); |
| 14146 | newXS_deffile("XS::APItest::Magic::test_isALPHA_L1", XS_XS__APItest__Magic_test_isALPHA_L1)Perl_newXS_deffile( "XS::APItest::Magic::test_isALPHA_L1",XS_XS__APItest__Magic_test_isALPHA_L1 ); |
| 14147 | newXS_deffile("XS::APItest::Magic::test_isALPHA_LC", XS_XS__APItest__Magic_test_isALPHA_LC)Perl_newXS_deffile( "XS::APItest::Magic::test_isALPHA_LC",XS_XS__APItest__Magic_test_isALPHA_LC ); |
| 14148 | newXS_deffile("XS::APItest::Magic::test_isALPHA_utf8", XS_XS__APItest__Magic_test_isALPHA_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isALPHA_utf8",XS_XS__APItest__Magic_test_isALPHA_utf8 ); |
| 14149 | newXS_deffile("XS::APItest::Magic::test_isALPHA_LC_utf8", XS_XS__APItest__Magic_test_isALPHA_LC_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isALPHA_LC_utf8" ,XS_XS__APItest__Magic_test_isALPHA_LC_utf8); |
| 14150 | newXS_deffile("XS::APItest::Magic::test_isWORDCHAR_uni", XS_XS__APItest__Magic_test_isWORDCHAR_uni)Perl_newXS_deffile( "XS::APItest::Magic::test_isWORDCHAR_uni" ,XS_XS__APItest__Magic_test_isWORDCHAR_uni); |
| 14151 | newXS_deffile("XS::APItest::Magic::test_isWORDCHAR_uvchr", XS_XS__APItest__Magic_test_isWORDCHAR_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isWORDCHAR_uvchr" ,XS_XS__APItest__Magic_test_isWORDCHAR_uvchr); |
| 14152 | newXS_deffile("XS::APItest::Magic::test_isWORDCHAR_LC_uvchr", XS_XS__APItest__Magic_test_isWORDCHAR_LC_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isWORDCHAR_LC_uvchr" ,XS_XS__APItest__Magic_test_isWORDCHAR_LC_uvchr); |
| 14153 | newXS_deffile("XS::APItest::Magic::test_isWORDCHAR", XS_XS__APItest__Magic_test_isWORDCHAR)Perl_newXS_deffile( "XS::APItest::Magic::test_isWORDCHAR",XS_XS__APItest__Magic_test_isWORDCHAR ); |
| 14154 | newXS_deffile("XS::APItest::Magic::test_isWORDCHAR_A", XS_XS__APItest__Magic_test_isWORDCHAR_A)Perl_newXS_deffile( "XS::APItest::Magic::test_isWORDCHAR_A",XS_XS__APItest__Magic_test_isWORDCHAR_A ); |
| 14155 | newXS_deffile("XS::APItest::Magic::test_isWORDCHAR_L1", XS_XS__APItest__Magic_test_isWORDCHAR_L1)Perl_newXS_deffile( "XS::APItest::Magic::test_isWORDCHAR_L1", XS_XS__APItest__Magic_test_isWORDCHAR_L1); |
| 14156 | newXS_deffile("XS::APItest::Magic::test_isWORDCHAR_LC", XS_XS__APItest__Magic_test_isWORDCHAR_LC)Perl_newXS_deffile( "XS::APItest::Magic::test_isWORDCHAR_LC", XS_XS__APItest__Magic_test_isWORDCHAR_LC); |
| 14157 | newXS_deffile("XS::APItest::Magic::test_isWORDCHAR_utf8", XS_XS__APItest__Magic_test_isWORDCHAR_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isWORDCHAR_utf8" ,XS_XS__APItest__Magic_test_isWORDCHAR_utf8); |
| 14158 | newXS_deffile("XS::APItest::Magic::test_isWORDCHAR_LC_utf8", XS_XS__APItest__Magic_test_isWORDCHAR_LC_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isWORDCHAR_LC_utf8" ,XS_XS__APItest__Magic_test_isWORDCHAR_LC_utf8); |
| 14159 | newXS_deffile("XS::APItest::Magic::test_isALPHANUMERIC_uni", XS_XS__APItest__Magic_test_isALPHANUMERIC_uni)Perl_newXS_deffile( "XS::APItest::Magic::test_isALPHANUMERIC_uni" ,XS_XS__APItest__Magic_test_isALPHANUMERIC_uni); |
| 14160 | newXS_deffile("XS::APItest::Magic::test_isALPHANUMERIC_uvchr", XS_XS__APItest__Magic_test_isALPHANUMERIC_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isALPHANUMERIC_uvchr" ,XS_XS__APItest__Magic_test_isALPHANUMERIC_uvchr); |
| 14161 | newXS_deffile("XS::APItest::Magic::test_isALPHANUMERIC_LC_uvchr", XS_XS__APItest__Magic_test_isALPHANUMERIC_LC_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isALPHANUMERIC_LC_uvchr" ,XS_XS__APItest__Magic_test_isALPHANUMERIC_LC_uvchr); |
| 14162 | newXS_deffile("XS::APItest::Magic::test_isALPHANUMERIC", XS_XS__APItest__Magic_test_isALPHANUMERIC)Perl_newXS_deffile( "XS::APItest::Magic::test_isALPHANUMERIC" ,XS_XS__APItest__Magic_test_isALPHANUMERIC); |
| 14163 | newXS_deffile("XS::APItest::Magic::test_isALPHANUMERIC_A", XS_XS__APItest__Magic_test_isALPHANUMERIC_A)Perl_newXS_deffile( "XS::APItest::Magic::test_isALPHANUMERIC_A" ,XS_XS__APItest__Magic_test_isALPHANUMERIC_A); |
| 14164 | newXS_deffile("XS::APItest::Magic::test_isALPHANUMERIC_L1", XS_XS__APItest__Magic_test_isALPHANUMERIC_L1)Perl_newXS_deffile( "XS::APItest::Magic::test_isALPHANUMERIC_L1" ,XS_XS__APItest__Magic_test_isALPHANUMERIC_L1); |
| 14165 | newXS_deffile("XS::APItest::Magic::test_isALPHANUMERIC_LC", XS_XS__APItest__Magic_test_isALPHANUMERIC_LC)Perl_newXS_deffile( "XS::APItest::Magic::test_isALPHANUMERIC_LC" ,XS_XS__APItest__Magic_test_isALPHANUMERIC_LC); |
| 14166 | newXS_deffile("XS::APItest::Magic::test_isALPHANUMERIC_utf8", XS_XS__APItest__Magic_test_isALPHANUMERIC_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isALPHANUMERIC_utf8" ,XS_XS__APItest__Magic_test_isALPHANUMERIC_utf8); |
| 14167 | newXS_deffile("XS::APItest::Magic::test_isALPHANUMERIC_LC_utf8", XS_XS__APItest__Magic_test_isALPHANUMERIC_LC_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isALPHANUMERIC_LC_utf8" ,XS_XS__APItest__Magic_test_isALPHANUMERIC_LC_utf8); |
| 14168 | newXS_deffile("XS::APItest::Magic::test_isALNUM", XS_XS__APItest__Magic_test_isALNUM)Perl_newXS_deffile( "XS::APItest::Magic::test_isALNUM",XS_XS__APItest__Magic_test_isALNUM ); |
| 14169 | newXS_deffile("XS::APItest::Magic::test_isALNUM_uni", XS_XS__APItest__Magic_test_isALNUM_uni)Perl_newXS_deffile( "XS::APItest::Magic::test_isALNUM_uni",XS_XS__APItest__Magic_test_isALNUM_uni ); |
| 14170 | newXS_deffile("XS::APItest::Magic::test_isALNUM_LC_uvchr", XS_XS__APItest__Magic_test_isALNUM_LC_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isALNUM_LC_uvchr" ,XS_XS__APItest__Magic_test_isALNUM_LC_uvchr); |
| 14171 | newXS_deffile("XS::APItest::Magic::test_isALNUM_LC", XS_XS__APItest__Magic_test_isALNUM_LC)Perl_newXS_deffile( "XS::APItest::Magic::test_isALNUM_LC",XS_XS__APItest__Magic_test_isALNUM_LC ); |
| 14172 | newXS_deffile("XS::APItest::Magic::test_isALNUM_utf8", XS_XS__APItest__Magic_test_isALNUM_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isALNUM_utf8",XS_XS__APItest__Magic_test_isALNUM_utf8 ); |
| 14173 | newXS_deffile("XS::APItest::Magic::test_isALNUM_LC_utf8", XS_XS__APItest__Magic_test_isALNUM_LC_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isALNUM_LC_utf8" ,XS_XS__APItest__Magic_test_isALNUM_LC_utf8); |
| 14174 | newXS_deffile("XS::APItest::Magic::test_isDIGIT_uni", XS_XS__APItest__Magic_test_isDIGIT_uni)Perl_newXS_deffile( "XS::APItest::Magic::test_isDIGIT_uni",XS_XS__APItest__Magic_test_isDIGIT_uni ); |
| 14175 | newXS_deffile("XS::APItest::Magic::test_isDIGIT_uvchr", XS_XS__APItest__Magic_test_isDIGIT_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isDIGIT_uvchr", XS_XS__APItest__Magic_test_isDIGIT_uvchr); |
| 14176 | newXS_deffile("XS::APItest::Magic::test_isDIGIT_LC_uvchr", XS_XS__APItest__Magic_test_isDIGIT_LC_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isDIGIT_LC_uvchr" ,XS_XS__APItest__Magic_test_isDIGIT_LC_uvchr); |
| 14177 | newXS_deffile("XS::APItest::Magic::test_isDIGIT_utf8", XS_XS__APItest__Magic_test_isDIGIT_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isDIGIT_utf8",XS_XS__APItest__Magic_test_isDIGIT_utf8 ); |
| 14178 | newXS_deffile("XS::APItest::Magic::test_isDIGIT_LC_utf8", XS_XS__APItest__Magic_test_isDIGIT_LC_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isDIGIT_LC_utf8" ,XS_XS__APItest__Magic_test_isDIGIT_LC_utf8); |
| 14179 | newXS_deffile("XS::APItest::Magic::test_isDIGIT", XS_XS__APItest__Magic_test_isDIGIT)Perl_newXS_deffile( "XS::APItest::Magic::test_isDIGIT",XS_XS__APItest__Magic_test_isDIGIT ); |
| 14180 | newXS_deffile("XS::APItest::Magic::test_isDIGIT_A", XS_XS__APItest__Magic_test_isDIGIT_A)Perl_newXS_deffile( "XS::APItest::Magic::test_isDIGIT_A",XS_XS__APItest__Magic_test_isDIGIT_A ); |
| 14181 | newXS_deffile("XS::APItest::Magic::test_isDIGIT_L1", XS_XS__APItest__Magic_test_isDIGIT_L1)Perl_newXS_deffile( "XS::APItest::Magic::test_isDIGIT_L1",XS_XS__APItest__Magic_test_isDIGIT_L1 ); |
| 14182 | newXS_deffile("XS::APItest::Magic::test_isDIGIT_LC", XS_XS__APItest__Magic_test_isDIGIT_LC)Perl_newXS_deffile( "XS::APItest::Magic::test_isDIGIT_LC",XS_XS__APItest__Magic_test_isDIGIT_LC ); |
| 14183 | newXS_deffile("XS::APItest::Magic::test_isOCTAL", XS_XS__APItest__Magic_test_isOCTAL)Perl_newXS_deffile( "XS::APItest::Magic::test_isOCTAL",XS_XS__APItest__Magic_test_isOCTAL ); |
| 14184 | newXS_deffile("XS::APItest::Magic::test_isOCTAL_A", XS_XS__APItest__Magic_test_isOCTAL_A)Perl_newXS_deffile( "XS::APItest::Magic::test_isOCTAL_A",XS_XS__APItest__Magic_test_isOCTAL_A ); |
| 14185 | newXS_deffile("XS::APItest::Magic::test_isOCTAL_L1", XS_XS__APItest__Magic_test_isOCTAL_L1)Perl_newXS_deffile( "XS::APItest::Magic::test_isOCTAL_L1",XS_XS__APItest__Magic_test_isOCTAL_L1 ); |
| 14186 | newXS_deffile("XS::APItest::Magic::test_isIDFIRST_uni", XS_XS__APItest__Magic_test_isIDFIRST_uni)Perl_newXS_deffile( "XS::APItest::Magic::test_isIDFIRST_uni", XS_XS__APItest__Magic_test_isIDFIRST_uni); |
| 14187 | newXS_deffile("XS::APItest::Magic::test_isIDFIRST_uvchr", XS_XS__APItest__Magic_test_isIDFIRST_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isIDFIRST_uvchr" ,XS_XS__APItest__Magic_test_isIDFIRST_uvchr); |
| 14188 | newXS_deffile("XS::APItest::Magic::test_isIDFIRST_LC_uvchr", XS_XS__APItest__Magic_test_isIDFIRST_LC_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isIDFIRST_LC_uvchr" ,XS_XS__APItest__Magic_test_isIDFIRST_LC_uvchr); |
| 14189 | newXS_deffile("XS::APItest::Magic::test_isIDFIRST", XS_XS__APItest__Magic_test_isIDFIRST)Perl_newXS_deffile( "XS::APItest::Magic::test_isIDFIRST",XS_XS__APItest__Magic_test_isIDFIRST ); |
| 14190 | newXS_deffile("XS::APItest::Magic::test_isIDFIRST_A", XS_XS__APItest__Magic_test_isIDFIRST_A)Perl_newXS_deffile( "XS::APItest::Magic::test_isIDFIRST_A",XS_XS__APItest__Magic_test_isIDFIRST_A ); |
| 14191 | newXS_deffile("XS::APItest::Magic::test_isIDFIRST_L1", XS_XS__APItest__Magic_test_isIDFIRST_L1)Perl_newXS_deffile( "XS::APItest::Magic::test_isIDFIRST_L1",XS_XS__APItest__Magic_test_isIDFIRST_L1 ); |
| 14192 | newXS_deffile("XS::APItest::Magic::test_isIDFIRST_LC", XS_XS__APItest__Magic_test_isIDFIRST_LC)Perl_newXS_deffile( "XS::APItest::Magic::test_isIDFIRST_LC",XS_XS__APItest__Magic_test_isIDFIRST_LC ); |
| 14193 | newXS_deffile("XS::APItest::Magic::test_isIDFIRST_utf8", XS_XS__APItest__Magic_test_isIDFIRST_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isIDFIRST_utf8" ,XS_XS__APItest__Magic_test_isIDFIRST_utf8); |
| 14194 | newXS_deffile("XS::APItest::Magic::test_isIDFIRST_LC_utf8", XS_XS__APItest__Magic_test_isIDFIRST_LC_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isIDFIRST_LC_utf8" ,XS_XS__APItest__Magic_test_isIDFIRST_LC_utf8); |
| 14195 | newXS_deffile("XS::APItest::Magic::test_isIDCONT_uni", XS_XS__APItest__Magic_test_isIDCONT_uni)Perl_newXS_deffile( "XS::APItest::Magic::test_isIDCONT_uni",XS_XS__APItest__Magic_test_isIDCONT_uni ); |
| 14196 | newXS_deffile("XS::APItest::Magic::test_isIDCONT_uvchr", XS_XS__APItest__Magic_test_isIDCONT_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isIDCONT_uvchr" ,XS_XS__APItest__Magic_test_isIDCONT_uvchr); |
| 14197 | newXS_deffile("XS::APItest::Magic::test_isIDCONT_LC_uvchr", XS_XS__APItest__Magic_test_isIDCONT_LC_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isIDCONT_LC_uvchr" ,XS_XS__APItest__Magic_test_isIDCONT_LC_uvchr); |
| 14198 | newXS_deffile("XS::APItest::Magic::test_isIDCONT", XS_XS__APItest__Magic_test_isIDCONT)Perl_newXS_deffile( "XS::APItest::Magic::test_isIDCONT",XS_XS__APItest__Magic_test_isIDCONT ); |
| 14199 | newXS_deffile("XS::APItest::Magic::test_isIDCONT_A", XS_XS__APItest__Magic_test_isIDCONT_A)Perl_newXS_deffile( "XS::APItest::Magic::test_isIDCONT_A",XS_XS__APItest__Magic_test_isIDCONT_A ); |
| 14200 | newXS_deffile("XS::APItest::Magic::test_isIDCONT_L1", XS_XS__APItest__Magic_test_isIDCONT_L1)Perl_newXS_deffile( "XS::APItest::Magic::test_isIDCONT_L1",XS_XS__APItest__Magic_test_isIDCONT_L1 ); |
| 14201 | newXS_deffile("XS::APItest::Magic::test_isIDCONT_LC", XS_XS__APItest__Magic_test_isIDCONT_LC)Perl_newXS_deffile( "XS::APItest::Magic::test_isIDCONT_LC",XS_XS__APItest__Magic_test_isIDCONT_LC ); |
| 14202 | newXS_deffile("XS::APItest::Magic::test_isIDCONT_utf8", XS_XS__APItest__Magic_test_isIDCONT_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isIDCONT_utf8", XS_XS__APItest__Magic_test_isIDCONT_utf8); |
| 14203 | newXS_deffile("XS::APItest::Magic::test_isIDCONT_LC_utf8", XS_XS__APItest__Magic_test_isIDCONT_LC_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isIDCONT_LC_utf8" ,XS_XS__APItest__Magic_test_isIDCONT_LC_utf8); |
| 14204 | newXS_deffile("XS::APItest::Magic::test_isSPACE_uni", XS_XS__APItest__Magic_test_isSPACE_uni)Perl_newXS_deffile( "XS::APItest::Magic::test_isSPACE_uni",XS_XS__APItest__Magic_test_isSPACE_uni ); |
| 14205 | newXS_deffile("XS::APItest::Magic::test_isSPACE_uvchr", XS_XS__APItest__Magic_test_isSPACE_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isSPACE_uvchr", XS_XS__APItest__Magic_test_isSPACE_uvchr); |
| 14206 | newXS_deffile("XS::APItest::Magic::test_isSPACE_LC_uvchr", XS_XS__APItest__Magic_test_isSPACE_LC_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isSPACE_LC_uvchr" ,XS_XS__APItest__Magic_test_isSPACE_LC_uvchr); |
| 14207 | newXS_deffile("XS::APItest::Magic::test_isSPACE", XS_XS__APItest__Magic_test_isSPACE)Perl_newXS_deffile( "XS::APItest::Magic::test_isSPACE",XS_XS__APItest__Magic_test_isSPACE ); |
| 14208 | newXS_deffile("XS::APItest::Magic::test_isSPACE_A", XS_XS__APItest__Magic_test_isSPACE_A)Perl_newXS_deffile( "XS::APItest::Magic::test_isSPACE_A",XS_XS__APItest__Magic_test_isSPACE_A ); |
| 14209 | newXS_deffile("XS::APItest::Magic::test_isSPACE_L1", XS_XS__APItest__Magic_test_isSPACE_L1)Perl_newXS_deffile( "XS::APItest::Magic::test_isSPACE_L1",XS_XS__APItest__Magic_test_isSPACE_L1 ); |
| 14210 | newXS_deffile("XS::APItest::Magic::test_isSPACE_LC", XS_XS__APItest__Magic_test_isSPACE_LC)Perl_newXS_deffile( "XS::APItest::Magic::test_isSPACE_LC",XS_XS__APItest__Magic_test_isSPACE_LC ); |
| 14211 | newXS_deffile("XS::APItest::Magic::test_isSPACE_utf8", XS_XS__APItest__Magic_test_isSPACE_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isSPACE_utf8",XS_XS__APItest__Magic_test_isSPACE_utf8 ); |
| 14212 | newXS_deffile("XS::APItest::Magic::test_isSPACE_LC_utf8", XS_XS__APItest__Magic_test_isSPACE_LC_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isSPACE_LC_utf8" ,XS_XS__APItest__Magic_test_isSPACE_LC_utf8); |
| 14213 | newXS_deffile("XS::APItest::Magic::test_isASCII_uni", XS_XS__APItest__Magic_test_isASCII_uni)Perl_newXS_deffile( "XS::APItest::Magic::test_isASCII_uni",XS_XS__APItest__Magic_test_isASCII_uni ); |
| 14214 | newXS_deffile("XS::APItest::Magic::test_isASCII_uvchr", XS_XS__APItest__Magic_test_isASCII_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isASCII_uvchr", XS_XS__APItest__Magic_test_isASCII_uvchr); |
| 14215 | newXS_deffile("XS::APItest::Magic::test_isASCII_LC_uvchr", XS_XS__APItest__Magic_test_isASCII_LC_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isASCII_LC_uvchr" ,XS_XS__APItest__Magic_test_isASCII_LC_uvchr); |
| 14216 | newXS_deffile("XS::APItest::Magic::test_isASCII", XS_XS__APItest__Magic_test_isASCII)Perl_newXS_deffile( "XS::APItest::Magic::test_isASCII",XS_XS__APItest__Magic_test_isASCII ); |
| 14217 | newXS_deffile("XS::APItest::Magic::test_isASCII_A", XS_XS__APItest__Magic_test_isASCII_A)Perl_newXS_deffile( "XS::APItest::Magic::test_isASCII_A",XS_XS__APItest__Magic_test_isASCII_A ); |
| 14218 | newXS_deffile("XS::APItest::Magic::test_isASCII_L1", XS_XS__APItest__Magic_test_isASCII_L1)Perl_newXS_deffile( "XS::APItest::Magic::test_isASCII_L1",XS_XS__APItest__Magic_test_isASCII_L1 ); |
| 14219 | newXS_deffile("XS::APItest::Magic::test_isASCII_LC", XS_XS__APItest__Magic_test_isASCII_LC)Perl_newXS_deffile( "XS::APItest::Magic::test_isASCII_LC",XS_XS__APItest__Magic_test_isASCII_LC ); |
| 14220 | newXS_deffile("XS::APItest::Magic::test_isASCII_utf8", XS_XS__APItest__Magic_test_isASCII_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isASCII_utf8",XS_XS__APItest__Magic_test_isASCII_utf8 ); |
| 14221 | newXS_deffile("XS::APItest::Magic::test_isASCII_LC_utf8", XS_XS__APItest__Magic_test_isASCII_LC_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isASCII_LC_utf8" ,XS_XS__APItest__Magic_test_isASCII_LC_utf8); |
| 14222 | newXS_deffile("XS::APItest::Magic::test_isCNTRL_uni", XS_XS__APItest__Magic_test_isCNTRL_uni)Perl_newXS_deffile( "XS::APItest::Magic::test_isCNTRL_uni",XS_XS__APItest__Magic_test_isCNTRL_uni ); |
| 14223 | newXS_deffile("XS::APItest::Magic::test_isCNTRL_uvchr", XS_XS__APItest__Magic_test_isCNTRL_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isCNTRL_uvchr", XS_XS__APItest__Magic_test_isCNTRL_uvchr); |
| 14224 | newXS_deffile("XS::APItest::Magic::test_isCNTRL_LC_uvchr", XS_XS__APItest__Magic_test_isCNTRL_LC_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isCNTRL_LC_uvchr" ,XS_XS__APItest__Magic_test_isCNTRL_LC_uvchr); |
| 14225 | newXS_deffile("XS::APItest::Magic::test_isCNTRL", XS_XS__APItest__Magic_test_isCNTRL)Perl_newXS_deffile( "XS::APItest::Magic::test_isCNTRL",XS_XS__APItest__Magic_test_isCNTRL ); |
| 14226 | newXS_deffile("XS::APItest::Magic::test_isCNTRL_A", XS_XS__APItest__Magic_test_isCNTRL_A)Perl_newXS_deffile( "XS::APItest::Magic::test_isCNTRL_A",XS_XS__APItest__Magic_test_isCNTRL_A ); |
| 14227 | newXS_deffile("XS::APItest::Magic::test_isCNTRL_L1", XS_XS__APItest__Magic_test_isCNTRL_L1)Perl_newXS_deffile( "XS::APItest::Magic::test_isCNTRL_L1",XS_XS__APItest__Magic_test_isCNTRL_L1 ); |
| 14228 | newXS_deffile("XS::APItest::Magic::test_isCNTRL_LC", XS_XS__APItest__Magic_test_isCNTRL_LC)Perl_newXS_deffile( "XS::APItest::Magic::test_isCNTRL_LC",XS_XS__APItest__Magic_test_isCNTRL_LC ); |
| 14229 | newXS_deffile("XS::APItest::Magic::test_isCNTRL_utf8", XS_XS__APItest__Magic_test_isCNTRL_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isCNTRL_utf8",XS_XS__APItest__Magic_test_isCNTRL_utf8 ); |
| 14230 | newXS_deffile("XS::APItest::Magic::test_isCNTRL_LC_utf8", XS_XS__APItest__Magic_test_isCNTRL_LC_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isCNTRL_LC_utf8" ,XS_XS__APItest__Magic_test_isCNTRL_LC_utf8); |
| 14231 | newXS_deffile("XS::APItest::Magic::test_isPRINT_uni", XS_XS__APItest__Magic_test_isPRINT_uni)Perl_newXS_deffile( "XS::APItest::Magic::test_isPRINT_uni",XS_XS__APItest__Magic_test_isPRINT_uni ); |
| 14232 | newXS_deffile("XS::APItest::Magic::test_isPRINT_uvchr", XS_XS__APItest__Magic_test_isPRINT_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isPRINT_uvchr", XS_XS__APItest__Magic_test_isPRINT_uvchr); |
| 14233 | newXS_deffile("XS::APItest::Magic::test_isPRINT_LC_uvchr", XS_XS__APItest__Magic_test_isPRINT_LC_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isPRINT_LC_uvchr" ,XS_XS__APItest__Magic_test_isPRINT_LC_uvchr); |
| 14234 | newXS_deffile("XS::APItest::Magic::test_isPRINT", XS_XS__APItest__Magic_test_isPRINT)Perl_newXS_deffile( "XS::APItest::Magic::test_isPRINT",XS_XS__APItest__Magic_test_isPRINT ); |
| 14235 | newXS_deffile("XS::APItest::Magic::test_isPRINT_A", XS_XS__APItest__Magic_test_isPRINT_A)Perl_newXS_deffile( "XS::APItest::Magic::test_isPRINT_A",XS_XS__APItest__Magic_test_isPRINT_A ); |
| 14236 | newXS_deffile("XS::APItest::Magic::test_isPRINT_L1", XS_XS__APItest__Magic_test_isPRINT_L1)Perl_newXS_deffile( "XS::APItest::Magic::test_isPRINT_L1",XS_XS__APItest__Magic_test_isPRINT_L1 ); |
| 14237 | newXS_deffile("XS::APItest::Magic::test_isPRINT_LC", XS_XS__APItest__Magic_test_isPRINT_LC)Perl_newXS_deffile( "XS::APItest::Magic::test_isPRINT_LC",XS_XS__APItest__Magic_test_isPRINT_LC ); |
| 14238 | newXS_deffile("XS::APItest::Magic::test_isPRINT_utf8", XS_XS__APItest__Magic_test_isPRINT_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isPRINT_utf8",XS_XS__APItest__Magic_test_isPRINT_utf8 ); |
| 14239 | newXS_deffile("XS::APItest::Magic::test_isPRINT_LC_utf8", XS_XS__APItest__Magic_test_isPRINT_LC_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isPRINT_LC_utf8" ,XS_XS__APItest__Magic_test_isPRINT_LC_utf8); |
| 14240 | newXS_deffile("XS::APItest::Magic::test_isGRAPH_uni", XS_XS__APItest__Magic_test_isGRAPH_uni)Perl_newXS_deffile( "XS::APItest::Magic::test_isGRAPH_uni",XS_XS__APItest__Magic_test_isGRAPH_uni ); |
| 14241 | newXS_deffile("XS::APItest::Magic::test_isGRAPH_uvchr", XS_XS__APItest__Magic_test_isGRAPH_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isGRAPH_uvchr", XS_XS__APItest__Magic_test_isGRAPH_uvchr); |
| 14242 | newXS_deffile("XS::APItest::Magic::test_isGRAPH_LC_uvchr", XS_XS__APItest__Magic_test_isGRAPH_LC_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isGRAPH_LC_uvchr" ,XS_XS__APItest__Magic_test_isGRAPH_LC_uvchr); |
| 14243 | newXS_deffile("XS::APItest::Magic::test_isGRAPH", XS_XS__APItest__Magic_test_isGRAPH)Perl_newXS_deffile( "XS::APItest::Magic::test_isGRAPH",XS_XS__APItest__Magic_test_isGRAPH ); |
| 14244 | newXS_deffile("XS::APItest::Magic::test_isGRAPH_A", XS_XS__APItest__Magic_test_isGRAPH_A)Perl_newXS_deffile( "XS::APItest::Magic::test_isGRAPH_A",XS_XS__APItest__Magic_test_isGRAPH_A ); |
| 14245 | newXS_deffile("XS::APItest::Magic::test_isGRAPH_L1", XS_XS__APItest__Magic_test_isGRAPH_L1)Perl_newXS_deffile( "XS::APItest::Magic::test_isGRAPH_L1",XS_XS__APItest__Magic_test_isGRAPH_L1 ); |
| 14246 | newXS_deffile("XS::APItest::Magic::test_isGRAPH_LC", XS_XS__APItest__Magic_test_isGRAPH_LC)Perl_newXS_deffile( "XS::APItest::Magic::test_isGRAPH_LC",XS_XS__APItest__Magic_test_isGRAPH_LC ); |
| 14247 | newXS_deffile("XS::APItest::Magic::test_isGRAPH_utf8", XS_XS__APItest__Magic_test_isGRAPH_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isGRAPH_utf8",XS_XS__APItest__Magic_test_isGRAPH_utf8 ); |
| 14248 | newXS_deffile("XS::APItest::Magic::test_isGRAPH_LC_utf8", XS_XS__APItest__Magic_test_isGRAPH_LC_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isGRAPH_LC_utf8" ,XS_XS__APItest__Magic_test_isGRAPH_LC_utf8); |
| 14249 | newXS_deffile("XS::APItest::Magic::test_isPUNCT_uni", XS_XS__APItest__Magic_test_isPUNCT_uni)Perl_newXS_deffile( "XS::APItest::Magic::test_isPUNCT_uni",XS_XS__APItest__Magic_test_isPUNCT_uni ); |
| 14250 | newXS_deffile("XS::APItest::Magic::test_isPUNCT_uvchr", XS_XS__APItest__Magic_test_isPUNCT_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isPUNCT_uvchr", XS_XS__APItest__Magic_test_isPUNCT_uvchr); |
| 14251 | newXS_deffile("XS::APItest::Magic::test_isPUNCT_LC_uvchr", XS_XS__APItest__Magic_test_isPUNCT_LC_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isPUNCT_LC_uvchr" ,XS_XS__APItest__Magic_test_isPUNCT_LC_uvchr); |
| 14252 | newXS_deffile("XS::APItest::Magic::test_isPUNCT", XS_XS__APItest__Magic_test_isPUNCT)Perl_newXS_deffile( "XS::APItest::Magic::test_isPUNCT",XS_XS__APItest__Magic_test_isPUNCT ); |
| 14253 | newXS_deffile("XS::APItest::Magic::test_isPUNCT_A", XS_XS__APItest__Magic_test_isPUNCT_A)Perl_newXS_deffile( "XS::APItest::Magic::test_isPUNCT_A",XS_XS__APItest__Magic_test_isPUNCT_A ); |
| 14254 | newXS_deffile("XS::APItest::Magic::test_isPUNCT_L1", XS_XS__APItest__Magic_test_isPUNCT_L1)Perl_newXS_deffile( "XS::APItest::Magic::test_isPUNCT_L1",XS_XS__APItest__Magic_test_isPUNCT_L1 ); |
| 14255 | newXS_deffile("XS::APItest::Magic::test_isPUNCT_LC", XS_XS__APItest__Magic_test_isPUNCT_LC)Perl_newXS_deffile( "XS::APItest::Magic::test_isPUNCT_LC",XS_XS__APItest__Magic_test_isPUNCT_LC ); |
| 14256 | newXS_deffile("XS::APItest::Magic::test_isPUNCT_utf8", XS_XS__APItest__Magic_test_isPUNCT_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isPUNCT_utf8",XS_XS__APItest__Magic_test_isPUNCT_utf8 ); |
| 14257 | newXS_deffile("XS::APItest::Magic::test_isPUNCT_LC_utf8", XS_XS__APItest__Magic_test_isPUNCT_LC_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isPUNCT_LC_utf8" ,XS_XS__APItest__Magic_test_isPUNCT_LC_utf8); |
| 14258 | newXS_deffile("XS::APItest::Magic::test_isXDIGIT_uni", XS_XS__APItest__Magic_test_isXDIGIT_uni)Perl_newXS_deffile( "XS::APItest::Magic::test_isXDIGIT_uni",XS_XS__APItest__Magic_test_isXDIGIT_uni ); |
| 14259 | newXS_deffile("XS::APItest::Magic::test_isXDIGIT_uvchr", XS_XS__APItest__Magic_test_isXDIGIT_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isXDIGIT_uvchr" ,XS_XS__APItest__Magic_test_isXDIGIT_uvchr); |
| 14260 | newXS_deffile("XS::APItest::Magic::test_isXDIGIT_LC_uvchr", XS_XS__APItest__Magic_test_isXDIGIT_LC_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isXDIGIT_LC_uvchr" ,XS_XS__APItest__Magic_test_isXDIGIT_LC_uvchr); |
| 14261 | newXS_deffile("XS::APItest::Magic::test_isXDIGIT", XS_XS__APItest__Magic_test_isXDIGIT)Perl_newXS_deffile( "XS::APItest::Magic::test_isXDIGIT",XS_XS__APItest__Magic_test_isXDIGIT ); |
| 14262 | newXS_deffile("XS::APItest::Magic::test_isXDIGIT_A", XS_XS__APItest__Magic_test_isXDIGIT_A)Perl_newXS_deffile( "XS::APItest::Magic::test_isXDIGIT_A",XS_XS__APItest__Magic_test_isXDIGIT_A ); |
| 14263 | newXS_deffile("XS::APItest::Magic::test_isXDIGIT_L1", XS_XS__APItest__Magic_test_isXDIGIT_L1)Perl_newXS_deffile( "XS::APItest::Magic::test_isXDIGIT_L1",XS_XS__APItest__Magic_test_isXDIGIT_L1 ); |
| 14264 | newXS_deffile("XS::APItest::Magic::test_isXDIGIT_LC", XS_XS__APItest__Magic_test_isXDIGIT_LC)Perl_newXS_deffile( "XS::APItest::Magic::test_isXDIGIT_LC",XS_XS__APItest__Magic_test_isXDIGIT_LC ); |
| 14265 | newXS_deffile("XS::APItest::Magic::test_isXDIGIT_utf8", XS_XS__APItest__Magic_test_isXDIGIT_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isXDIGIT_utf8", XS_XS__APItest__Magic_test_isXDIGIT_utf8); |
| 14266 | newXS_deffile("XS::APItest::Magic::test_isXDIGIT_LC_utf8", XS_XS__APItest__Magic_test_isXDIGIT_LC_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isXDIGIT_LC_utf8" ,XS_XS__APItest__Magic_test_isXDIGIT_LC_utf8); |
| 14267 | newXS_deffile("XS::APItest::Magic::test_isPSXSPC_uni", XS_XS__APItest__Magic_test_isPSXSPC_uni)Perl_newXS_deffile( "XS::APItest::Magic::test_isPSXSPC_uni",XS_XS__APItest__Magic_test_isPSXSPC_uni ); |
| 14268 | newXS_deffile("XS::APItest::Magic::test_isPSXSPC_uvchr", XS_XS__APItest__Magic_test_isPSXSPC_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isPSXSPC_uvchr" ,XS_XS__APItest__Magic_test_isPSXSPC_uvchr); |
| 14269 | newXS_deffile("XS::APItest::Magic::test_isPSXSPC_LC_uvchr", XS_XS__APItest__Magic_test_isPSXSPC_LC_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_isPSXSPC_LC_uvchr" ,XS_XS__APItest__Magic_test_isPSXSPC_LC_uvchr); |
| 14270 | newXS_deffile("XS::APItest::Magic::test_isPSXSPC", XS_XS__APItest__Magic_test_isPSXSPC)Perl_newXS_deffile( "XS::APItest::Magic::test_isPSXSPC",XS_XS__APItest__Magic_test_isPSXSPC ); |
| 14271 | newXS_deffile("XS::APItest::Magic::test_isPSXSPC_A", XS_XS__APItest__Magic_test_isPSXSPC_A)Perl_newXS_deffile( "XS::APItest::Magic::test_isPSXSPC_A",XS_XS__APItest__Magic_test_isPSXSPC_A ); |
| 14272 | newXS_deffile("XS::APItest::Magic::test_isPSXSPC_L1", XS_XS__APItest__Magic_test_isPSXSPC_L1)Perl_newXS_deffile( "XS::APItest::Magic::test_isPSXSPC_L1",XS_XS__APItest__Magic_test_isPSXSPC_L1 ); |
| 14273 | newXS_deffile("XS::APItest::Magic::test_isPSXSPC_LC", XS_XS__APItest__Magic_test_isPSXSPC_LC)Perl_newXS_deffile( "XS::APItest::Magic::test_isPSXSPC_LC",XS_XS__APItest__Magic_test_isPSXSPC_LC ); |
| 14274 | newXS_deffile("XS::APItest::Magic::test_isPSXSPC_utf8", XS_XS__APItest__Magic_test_isPSXSPC_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isPSXSPC_utf8", XS_XS__APItest__Magic_test_isPSXSPC_utf8); |
| 14275 | newXS_deffile("XS::APItest::Magic::test_isPSXSPC_LC_utf8", XS_XS__APItest__Magic_test_isPSXSPC_LC_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_isPSXSPC_LC_utf8" ,XS_XS__APItest__Magic_test_isPSXSPC_LC_utf8); |
| 14276 | newXS_deffile("XS::APItest::Magic::test_isQUOTEMETA", XS_XS__APItest__Magic_test_isQUOTEMETA)Perl_newXS_deffile( "XS::APItest::Magic::test_isQUOTEMETA",XS_XS__APItest__Magic_test_isQUOTEMETA ); |
| 14277 | newXS_deffile("XS::APItest::Magic::test_OFFUNISKIP", XS_XS__APItest__Magic_test_OFFUNISKIP)Perl_newXS_deffile( "XS::APItest::Magic::test_OFFUNISKIP",XS_XS__APItest__Magic_test_OFFUNISKIP ); |
| 14278 | newXS_deffile("XS::APItest::Magic::test_OFFUNI_IS_INVARIANT", XS_XS__APItest__Magic_test_OFFUNI_IS_INVARIANT)Perl_newXS_deffile( "XS::APItest::Magic::test_OFFUNI_IS_INVARIANT" ,XS_XS__APItest__Magic_test_OFFUNI_IS_INVARIANT); |
| 14279 | newXS_deffile("XS::APItest::Magic::test_UVCHR_IS_INVARIANT", XS_XS__APItest__Magic_test_UVCHR_IS_INVARIANT)Perl_newXS_deffile( "XS::APItest::Magic::test_UVCHR_IS_INVARIANT" ,XS_XS__APItest__Magic_test_UVCHR_IS_INVARIANT); |
| 14280 | newXS_deffile("XS::APItest::Magic::test_UTF8_IS_INVARIANT", XS_XS__APItest__Magic_test_UTF8_IS_INVARIANT)Perl_newXS_deffile( "XS::APItest::Magic::test_UTF8_IS_INVARIANT" ,XS_XS__APItest__Magic_test_UTF8_IS_INVARIANT); |
| 14281 | newXS_deffile("XS::APItest::Magic::test_UVCHR_SKIP", XS_XS__APItest__Magic_test_UVCHR_SKIP)Perl_newXS_deffile( "XS::APItest::Magic::test_UVCHR_SKIP",XS_XS__APItest__Magic_test_UVCHR_SKIP ); |
| 14282 | newXS_deffile("XS::APItest::Magic::test_UTF8_SKIP", XS_XS__APItest__Magic_test_UTF8_SKIP)Perl_newXS_deffile( "XS::APItest::Magic::test_UTF8_SKIP",XS_XS__APItest__Magic_test_UTF8_SKIP ); |
| 14283 | newXS_deffile("XS::APItest::Magic::test_UTF8_IS_START", XS_XS__APItest__Magic_test_UTF8_IS_START)Perl_newXS_deffile( "XS::APItest::Magic::test_UTF8_IS_START", XS_XS__APItest__Magic_test_UTF8_IS_START); |
| 14284 | newXS_deffile("XS::APItest::Magic::test_UTF8_IS_CONTINUATION", XS_XS__APItest__Magic_test_UTF8_IS_CONTINUATION)Perl_newXS_deffile( "XS::APItest::Magic::test_UTF8_IS_CONTINUATION" ,XS_XS__APItest__Magic_test_UTF8_IS_CONTINUATION); |
| 14285 | newXS_deffile("XS::APItest::Magic::test_UTF8_IS_CONTINUED", XS_XS__APItest__Magic_test_UTF8_IS_CONTINUED)Perl_newXS_deffile( "XS::APItest::Magic::test_UTF8_IS_CONTINUED" ,XS_XS__APItest__Magic_test_UTF8_IS_CONTINUED); |
| 14286 | newXS_deffile("XS::APItest::Magic::test_UTF8_IS_DOWNGRADEABLE_START", XS_XS__APItest__Magic_test_UTF8_IS_DOWNGRADEABLE_START)Perl_newXS_deffile( "XS::APItest::Magic::test_UTF8_IS_DOWNGRADEABLE_START" ,XS_XS__APItest__Magic_test_UTF8_IS_DOWNGRADEABLE_START); |
| 14287 | newXS_deffile("XS::APItest::Magic::test_UTF8_IS_ABOVE_LATIN1", XS_XS__APItest__Magic_test_UTF8_IS_ABOVE_LATIN1)Perl_newXS_deffile( "XS::APItest::Magic::test_UTF8_IS_ABOVE_LATIN1" ,XS_XS__APItest__Magic_test_UTF8_IS_ABOVE_LATIN1); |
| 14288 | newXS_deffile("XS::APItest::Magic::test_isUTF8_POSSIBLY_PROBLEMATIC", XS_XS__APItest__Magic_test_isUTF8_POSSIBLY_PROBLEMATIC)Perl_newXS_deffile( "XS::APItest::Magic::test_isUTF8_POSSIBLY_PROBLEMATIC" ,XS_XS__APItest__Magic_test_isUTF8_POSSIBLY_PROBLEMATIC); |
| 14289 | newXS_deffile("XS::APItest::Magic::test_isUTF8_CHAR", XS_XS__APItest__Magic_test_isUTF8_CHAR)Perl_newXS_deffile( "XS::APItest::Magic::test_isUTF8_CHAR",XS_XS__APItest__Magic_test_isUTF8_CHAR ); |
| 14290 | newXS_deffile("XS::APItest::Magic::test_isUTF8_CHAR_flags", XS_XS__APItest__Magic_test_isUTF8_CHAR_flags)Perl_newXS_deffile( "XS::APItest::Magic::test_isUTF8_CHAR_flags" ,XS_XS__APItest__Magic_test_isUTF8_CHAR_flags); |
| 14291 | newXS_deffile("XS::APItest::Magic::test_isSTRICT_UTF8_CHAR", XS_XS__APItest__Magic_test_isSTRICT_UTF8_CHAR)Perl_newXS_deffile( "XS::APItest::Magic::test_isSTRICT_UTF8_CHAR" ,XS_XS__APItest__Magic_test_isSTRICT_UTF8_CHAR); |
| 14292 | newXS_deffile("XS::APItest::Magic::test_isC9_STRICT_UTF8_CHAR", XS_XS__APItest__Magic_test_isC9_STRICT_UTF8_CHAR)Perl_newXS_deffile( "XS::APItest::Magic::test_isC9_STRICT_UTF8_CHAR" ,XS_XS__APItest__Magic_test_isC9_STRICT_UTF8_CHAR); |
| 14293 | newXS_deffile("XS::APItest::Magic::test_is_utf8_valid_partial_char_flags", XS_XS__APItest__Magic_test_is_utf8_valid_partial_char_flags)Perl_newXS_deffile( "XS::APItest::Magic::test_is_utf8_valid_partial_char_flags" ,XS_XS__APItest__Magic_test_is_utf8_valid_partial_char_flags); |
| 14294 | newXS_deffile("XS::APItest::Magic::test_is_utf8_string", XS_XS__APItest__Magic_test_is_utf8_string)Perl_newXS_deffile( "XS::APItest::Magic::test_is_utf8_string" ,XS_XS__APItest__Magic_test_is_utf8_string); |
| 14295 | newXS_deffile("XS::APItest::Magic::test_is_utf8_invariant_string_loc", XS_XS__APItest__Magic_test_is_utf8_invariant_string_loc)Perl_newXS_deffile( "XS::APItest::Magic::test_is_utf8_invariant_string_loc" ,XS_XS__APItest__Magic_test_is_utf8_invariant_string_loc); |
| 14296 | newXS_deffile("XS::APItest::Magic::test_variant_under_utf8_count", XS_XS__APItest__Magic_test_variant_under_utf8_count)Perl_newXS_deffile( "XS::APItest::Magic::test_variant_under_utf8_count" ,XS_XS__APItest__Magic_test_variant_under_utf8_count); |
| 14297 | newXS_deffile("XS::APItest::Magic::test_utf8_length", XS_XS__APItest__Magic_test_utf8_length)Perl_newXS_deffile( "XS::APItest::Magic::test_utf8_length",XS_XS__APItest__Magic_test_utf8_length ); |
| 14298 | newXS_deffile("XS::APItest::Magic::test_is_utf8_string_loc", XS_XS__APItest__Magic_test_is_utf8_string_loc)Perl_newXS_deffile( "XS::APItest::Magic::test_is_utf8_string_loc" ,XS_XS__APItest__Magic_test_is_utf8_string_loc); |
| 14299 | newXS_deffile("XS::APItest::Magic::test_is_utf8_string_loclen", XS_XS__APItest__Magic_test_is_utf8_string_loclen)Perl_newXS_deffile( "XS::APItest::Magic::test_is_utf8_string_loclen" ,XS_XS__APItest__Magic_test_is_utf8_string_loclen); |
| 14300 | newXS_deffile("XS::APItest::Magic::test_is_utf8_string_flags", XS_XS__APItest__Magic_test_is_utf8_string_flags)Perl_newXS_deffile( "XS::APItest::Magic::test_is_utf8_string_flags" ,XS_XS__APItest__Magic_test_is_utf8_string_flags); |
| 14301 | newXS_deffile("XS::APItest::Magic::test_is_utf8_string_loc_flags", XS_XS__APItest__Magic_test_is_utf8_string_loc_flags)Perl_newXS_deffile( "XS::APItest::Magic::test_is_utf8_string_loc_flags" ,XS_XS__APItest__Magic_test_is_utf8_string_loc_flags); |
| 14302 | newXS_deffile("XS::APItest::Magic::test_is_utf8_string_loclen_flags", XS_XS__APItest__Magic_test_is_utf8_string_loclen_flags)Perl_newXS_deffile( "XS::APItest::Magic::test_is_utf8_string_loclen_flags" ,XS_XS__APItest__Magic_test_is_utf8_string_loclen_flags); |
| 14303 | newXS_deffile("XS::APItest::Magic::test_is_strict_utf8_string", XS_XS__APItest__Magic_test_is_strict_utf8_string)Perl_newXS_deffile( "XS::APItest::Magic::test_is_strict_utf8_string" ,XS_XS__APItest__Magic_test_is_strict_utf8_string); |
| 14304 | newXS_deffile("XS::APItest::Magic::test_is_strict_utf8_string_loc", XS_XS__APItest__Magic_test_is_strict_utf8_string_loc)Perl_newXS_deffile( "XS::APItest::Magic::test_is_strict_utf8_string_loc" ,XS_XS__APItest__Magic_test_is_strict_utf8_string_loc); |
| 14305 | newXS_deffile("XS::APItest::Magic::test_is_strict_utf8_string_loclen", XS_XS__APItest__Magic_test_is_strict_utf8_string_loclen)Perl_newXS_deffile( "XS::APItest::Magic::test_is_strict_utf8_string_loclen" ,XS_XS__APItest__Magic_test_is_strict_utf8_string_loclen); |
| 14306 | newXS_deffile("XS::APItest::Magic::test_is_c9strict_utf8_string", XS_XS__APItest__Magic_test_is_c9strict_utf8_string)Perl_newXS_deffile( "XS::APItest::Magic::test_is_c9strict_utf8_string" ,XS_XS__APItest__Magic_test_is_c9strict_utf8_string); |
| 14307 | newXS_deffile("XS::APItest::Magic::test_is_c9strict_utf8_string_loc", XS_XS__APItest__Magic_test_is_c9strict_utf8_string_loc)Perl_newXS_deffile( "XS::APItest::Magic::test_is_c9strict_utf8_string_loc" ,XS_XS__APItest__Magic_test_is_c9strict_utf8_string_loc); |
| 14308 | newXS_deffile("XS::APItest::Magic::test_is_c9strict_utf8_string_loclen", XS_XS__APItest__Magic_test_is_c9strict_utf8_string_loclen)Perl_newXS_deffile( "XS::APItest::Magic::test_is_c9strict_utf8_string_loclen" ,XS_XS__APItest__Magic_test_is_c9strict_utf8_string_loclen); |
| 14309 | newXS_deffile("XS::APItest::Magic::test_is_utf8_fixed_width_buf_flags", XS_XS__APItest__Magic_test_is_utf8_fixed_width_buf_flags)Perl_newXS_deffile( "XS::APItest::Magic::test_is_utf8_fixed_width_buf_flags" ,XS_XS__APItest__Magic_test_is_utf8_fixed_width_buf_flags); |
| 14310 | newXS_deffile("XS::APItest::Magic::test_is_utf8_fixed_width_buf_loc_flags", XS_XS__APItest__Magic_test_is_utf8_fixed_width_buf_loc_flags)Perl_newXS_deffile( "XS::APItest::Magic::test_is_utf8_fixed_width_buf_loc_flags" ,XS_XS__APItest__Magic_test_is_utf8_fixed_width_buf_loc_flags ); |
| 14311 | newXS_deffile("XS::APItest::Magic::test_is_utf8_fixed_width_buf_loclen_flags", XS_XS__APItest__Magic_test_is_utf8_fixed_width_buf_loclen_flags)Perl_newXS_deffile( "XS::APItest::Magic::test_is_utf8_fixed_width_buf_loclen_flags" ,XS_XS__APItest__Magic_test_is_utf8_fixed_width_buf_loclen_flags ); |
| 14312 | newXS_deffile("XS::APItest::Magic::test_utf8_hop_safe", XS_XS__APItest__Magic_test_utf8_hop_safe)Perl_newXS_deffile( "XS::APItest::Magic::test_utf8_hop_safe", XS_XS__APItest__Magic_test_utf8_hop_safe); |
| 14313 | newXS_deffile("XS::APItest::Magic::test_toLOWER", XS_XS__APItest__Magic_test_toLOWER)Perl_newXS_deffile( "XS::APItest::Magic::test_toLOWER",XS_XS__APItest__Magic_test_toLOWER ); |
| 14314 | newXS_deffile("XS::APItest::Magic::test_toLOWER_L1", XS_XS__APItest__Magic_test_toLOWER_L1)Perl_newXS_deffile( "XS::APItest::Magic::test_toLOWER_L1",XS_XS__APItest__Magic_test_toLOWER_L1 ); |
| 14315 | newXS_deffile("XS::APItest::Magic::test_toLOWER_LC", XS_XS__APItest__Magic_test_toLOWER_LC)Perl_newXS_deffile( "XS::APItest::Magic::test_toLOWER_LC",XS_XS__APItest__Magic_test_toLOWER_LC ); |
| 14316 | newXS_deffile("XS::APItest::Magic::test_toLOWER_uni", XS_XS__APItest__Magic_test_toLOWER_uni)Perl_newXS_deffile( "XS::APItest::Magic::test_toLOWER_uni",XS_XS__APItest__Magic_test_toLOWER_uni ); |
| 14317 | newXS_deffile("XS::APItest::Magic::test_toLOWER_uvchr", XS_XS__APItest__Magic_test_toLOWER_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_toLOWER_uvchr", XS_XS__APItest__Magic_test_toLOWER_uvchr); |
| 14318 | newXS_deffile("XS::APItest::Magic::test_toLOWER_utf8", XS_XS__APItest__Magic_test_toLOWER_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_toLOWER_utf8",XS_XS__APItest__Magic_test_toLOWER_utf8 ); |
| 14319 | newXS_deffile("XS::APItest::Magic::test_toFOLD", XS_XS__APItest__Magic_test_toFOLD)Perl_newXS_deffile( "XS::APItest::Magic::test_toFOLD",XS_XS__APItest__Magic_test_toFOLD ); |
| 14320 | newXS_deffile("XS::APItest::Magic::test_toFOLD_LC", XS_XS__APItest__Magic_test_toFOLD_LC)Perl_newXS_deffile( "XS::APItest::Magic::test_toFOLD_LC",XS_XS__APItest__Magic_test_toFOLD_LC ); |
| 14321 | newXS_deffile("XS::APItest::Magic::test_toFOLD_uni", XS_XS__APItest__Magic_test_toFOLD_uni)Perl_newXS_deffile( "XS::APItest::Magic::test_toFOLD_uni",XS_XS__APItest__Magic_test_toFOLD_uni ); |
| 14322 | newXS_deffile("XS::APItest::Magic::test_toFOLD_uvchr", XS_XS__APItest__Magic_test_toFOLD_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_toFOLD_uvchr",XS_XS__APItest__Magic_test_toFOLD_uvchr ); |
| 14323 | newXS_deffile("XS::APItest::Magic::test_toFOLD_utf8", XS_XS__APItest__Magic_test_toFOLD_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_toFOLD_utf8",XS_XS__APItest__Magic_test_toFOLD_utf8 ); |
| 14324 | newXS_deffile("XS::APItest::Magic::test_toUPPER", XS_XS__APItest__Magic_test_toUPPER)Perl_newXS_deffile( "XS::APItest::Magic::test_toUPPER",XS_XS__APItest__Magic_test_toUPPER ); |
| 14325 | newXS_deffile("XS::APItest::Magic::test_toUPPER_LC", XS_XS__APItest__Magic_test_toUPPER_LC)Perl_newXS_deffile( "XS::APItest::Magic::test_toUPPER_LC",XS_XS__APItest__Magic_test_toUPPER_LC ); |
| 14326 | newXS_deffile("XS::APItest::Magic::test_toUPPER_uni", XS_XS__APItest__Magic_test_toUPPER_uni)Perl_newXS_deffile( "XS::APItest::Magic::test_toUPPER_uni",XS_XS__APItest__Magic_test_toUPPER_uni ); |
| 14327 | newXS_deffile("XS::APItest::Magic::test_toUPPER_uvchr", XS_XS__APItest__Magic_test_toUPPER_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_toUPPER_uvchr", XS_XS__APItest__Magic_test_toUPPER_uvchr); |
| 14328 | newXS_deffile("XS::APItest::Magic::test_toUPPER_utf8", XS_XS__APItest__Magic_test_toUPPER_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_toUPPER_utf8",XS_XS__APItest__Magic_test_toUPPER_utf8 ); |
| 14329 | newXS_deffile("XS::APItest::Magic::test_toTITLE", XS_XS__APItest__Magic_test_toTITLE)Perl_newXS_deffile( "XS::APItest::Magic::test_toTITLE",XS_XS__APItest__Magic_test_toTITLE ); |
| 14330 | newXS_deffile("XS::APItest::Magic::test_toTITLE_uni", XS_XS__APItest__Magic_test_toTITLE_uni)Perl_newXS_deffile( "XS::APItest::Magic::test_toTITLE_uni",XS_XS__APItest__Magic_test_toTITLE_uni ); |
| 14331 | newXS_deffile("XS::APItest::Magic::test_toTITLE_uvchr", XS_XS__APItest__Magic_test_toTITLE_uvchr)Perl_newXS_deffile( "XS::APItest::Magic::test_toTITLE_uvchr", XS_XS__APItest__Magic_test_toTITLE_uvchr); |
| 14332 | newXS_deffile("XS::APItest::Magic::test_toTITLE_utf8", XS_XS__APItest__Magic_test_toTITLE_utf8)Perl_newXS_deffile( "XS::APItest::Magic::test_toTITLE_utf8",XS_XS__APItest__Magic_test_toTITLE_utf8 ); |
| 14333 | newXS_deffile("XS::APItest::Magic::test_Gconvert", XS_XS__APItest__Magic_test_Gconvert)Perl_newXS_deffile( "XS::APItest::Magic::test_Gconvert",XS_XS__APItest__Magic_test_Gconvert ); |
| 14334 | newXS_deffile("XS::APItest::Magic::test_Perl_langinfo", XS_XS__APItest__Magic_test_Perl_langinfo)Perl_newXS_deffile( "XS::APItest::Magic::test_Perl_langinfo", XS_XS__APItest__Magic_test_Perl_langinfo); |
| 14335 | (void)newXSproto_portable("XS::APItest::Backrefs::apitest_weaken", XS_XS__APItest__Backrefs_apitest_weaken, file, "$")Perl_newXS_flags( "XS::APItest::Backrefs::apitest_weaken",XS_XS__APItest__Backrefs_apitest_weaken ,file,"$",0); |
| 14336 | newXS_deffile("XS::APItest::Backrefs::has_backrefs", XS_XS__APItest__Backrefs_has_backrefs)Perl_newXS_deffile( "XS::APItest::Backrefs::has_backrefs",XS_XS__APItest__Backrefs_has_backrefs ); |
| 14337 | #if XSubPPtmpAAAE |
| 14338 | newXS_deffile("XS::APItest::Backrefs::PerlDir_mapA", XS_XS__APItest__Backrefs_PerlDir_mapA)Perl_newXS_deffile( "XS::APItest::Backrefs::PerlDir_mapA",XS_XS__APItest__Backrefs_PerlDir_mapA ); |
| 14339 | newXS_deffile("XS::APItest::Backrefs::PerlDir_mapW", XS_XS__APItest__Backrefs_PerlDir_mapW)Perl_newXS_deffile( "XS::APItest::Backrefs::PerlDir_mapW",XS_XS__APItest__Backrefs_PerlDir_mapW ); |
| 14340 | #endif |
| 14341 | #if XSubPPtmpAAAF |
| 14342 | newXS_deffile("XS::APItest::Backrefs::Comctl32Version", XS_XS__APItest__Backrefs_Comctl32Version)Perl_newXS_deffile( "XS::APItest::Backrefs::Comctl32Version", XS_XS__APItest__Backrefs_Comctl32Version); |
| 14343 | #endif |
| 14344 | cv = newXS_deffile("XS::APItest::HvMacro::u8_to_u16_le", XS_XS__APItest__HvMacro_u8_to_u16_le)Perl_newXS_deffile( "XS::APItest::HvMacro::u8_to_u16_le",XS_XS__APItest__HvMacro_u8_to_u16_le ); |
| 14345 | XSANY((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))->xcv_start_u .xcv_xsubany.any_i32 = 0; |
| 14346 | cv = newXS_deffile("XS::APItest::HvMacro::u8_to_u32_le", XS_XS__APItest__HvMacro_u8_to_u16_le)Perl_newXS_deffile( "XS::APItest::HvMacro::u8_to_u32_le",XS_XS__APItest__HvMacro_u8_to_u16_le ); |
| 14347 | XSANY((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))->xcv_start_u .xcv_xsubany.any_i32 = 1; |
| 14348 | cv = newXS_deffile("XS::APItest::HvMacro::u8_to_u64_le", XS_XS__APItest__HvMacro_u8_to_u16_le)Perl_newXS_deffile( "XS::APItest::HvMacro::u8_to_u64_le",XS_XS__APItest__HvMacro_u8_to_u16_le ); |
| 14349 | XSANY((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))->xcv_start_u .xcv_xsubany.any_i32 = 2; |
| 14350 | newXS_deffile("XS::APItest::HvMacro::rotl32", XS_XS__APItest__HvMacro_rotl32)Perl_newXS_deffile( "XS::APItest::HvMacro::rotl32",XS_XS__APItest__HvMacro_rotl32 ); |
| 14351 | newXS_deffile("XS::APItest::HvMacro::rotr32", XS_XS__APItest__HvMacro_rotr32)Perl_newXS_deffile( "XS::APItest::HvMacro::rotr32",XS_XS__APItest__HvMacro_rotr32 ); |
| 14352 | #if XSubPPtmpAAAG1 |
| 14353 | newXS_deffile("XS::APItest::HvMacro::rotl64", XS_XS__APItest__HvMacro_rotl64)Perl_newXS_deffile( "XS::APItest::HvMacro::rotl64",XS_XS__APItest__HvMacro_rotl64 ); |
| 14354 | newXS_deffile("XS::APItest::HvMacro::rotr64", XS_XS__APItest__HvMacro_rotr64)Perl_newXS_deffile( "XS::APItest::HvMacro::rotr64",XS_XS__APItest__HvMacro_rotr64 ); |
| 14355 | newXS_deffile("XS::APItest::HvMacro::siphash_seed_state", XS_XS__APItest__HvMacro_siphash_seed_state)Perl_newXS_deffile( "XS::APItest::HvMacro::siphash_seed_state" ,XS_XS__APItest__HvMacro_siphash_seed_state); |
| 14356 | cv = newXS_deffile("XS::APItest::HvMacro::siphash13", XS_XS__APItest__HvMacro_siphash24)Perl_newXS_deffile( "XS::APItest::HvMacro::siphash13",XS_XS__APItest__HvMacro_siphash24 ); |
| 14357 | XSANY((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))->xcv_start_u .xcv_xsubany.any_i32 = 1; |
| 14358 | cv = newXS_deffile("XS::APItest::HvMacro::siphash24", XS_XS__APItest__HvMacro_siphash24)Perl_newXS_deffile( "XS::APItest::HvMacro::siphash24",XS_XS__APItest__HvMacro_siphash24 ); |
| 14359 | XSANY((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))->xcv_start_u .xcv_xsubany.any_i32 = 0; |
| 14360 | newXS_deffile("XS::APItest::HvMacro::test_siphash24", XS_XS__APItest__HvMacro_test_siphash24)Perl_newXS_deffile( "XS::APItest::HvMacro::test_siphash24",XS_XS__APItest__HvMacro_test_siphash24 ); |
| 14361 | newXS_deffile("XS::APItest::HvMacro::test_siphash13", XS_XS__APItest__HvMacro_test_siphash13)Perl_newXS_deffile( "XS::APItest::HvMacro::test_siphash13",XS_XS__APItest__HvMacro_test_siphash13 ); |
| 14362 | #endif |
| 14363 | |
| 14364 | /* Initialisation Section */ |
| 14365 | |
| 14366 | #line 2 "./const-xs.inc" |
| 14367 | { |
| 14368 | #if defined(dTHXstruct Perl___notused_struct) && !defined(PERL_NO_GET_CONTEXT) |
| 14369 | dTHXstruct Perl___notused_struct; |
| 14370 | #endif |
| 14371 | HV *symbol_table = get_hv("XS::APItest::", GV_ADD)Perl_get_hv( "XS::APItest::",0x01); |
| 14372 | |
| 14373 | static const struct iv_s values_for_iv[] = |
| 14374 | { |
| 14375 | #ifdef HV_DELETE0x40 |
| 14376 | { "HV_DELETE", 9, HV_DELETE0x40 }, |
| 14377 | #endif |
| 14378 | #ifdef HV_DISABLE_UVAR_XKEY0x01 |
| 14379 | { "HV_DISABLE_UVAR_XKEY", 20, HV_DISABLE_UVAR_XKEY0x01 }, |
| 14380 | #endif |
| 14381 | #ifdef HV_FETCH_ISSTORE0x04 |
| 14382 | { "HV_FETCH_ISSTORE", 16, HV_FETCH_ISSTORE0x04 }, |
| 14383 | #endif |
| 14384 | #ifdef HV_FETCH_ISEXISTS0x08 |
| 14385 | { "HV_FETCH_ISEXISTS", 17, HV_FETCH_ISEXISTS0x08 }, |
| 14386 | #endif |
| 14387 | #ifdef HV_FETCH_LVALUE0x10 |
| 14388 | { "HV_FETCH_LVALUE", 15, HV_FETCH_LVALUE0x10 }, |
| 14389 | #endif |
| 14390 | #ifdef HV_FETCH_JUST_SV0x20 |
| 14391 | { "HV_FETCH_JUST_SV", 16, HV_FETCH_JUST_SV0x20 }, |
| 14392 | #endif |
| 14393 | #ifdef G_SCALAR2 |
| 14394 | { "G_SCALAR", 8, G_SCALAR2 }, |
| 14395 | #endif |
| 14396 | #ifdef G_ARRAY3 |
| 14397 | { "G_ARRAY", 7, G_ARRAY3 }, |
| 14398 | #endif |
| 14399 | #ifdef G_VOID1 |
| 14400 | { "G_VOID", 6, G_VOID1 }, |
| 14401 | #endif |
| 14402 | #ifdef G_DISCARD0x4 |
| 14403 | { "G_DISCARD", 9, G_DISCARD0x4 }, |
| 14404 | #endif |
| 14405 | #ifdef G_EVAL0x8 |
| 14406 | { "G_EVAL", 6, G_EVAL0x8 }, |
| 14407 | #endif |
| 14408 | #ifdef G_NOARGS0x10 |
| 14409 | { "G_NOARGS", 8, G_NOARGS0x10 }, |
| 14410 | #endif |
| 14411 | #ifdef G_KEEPERR0x20 |
| 14412 | { "G_KEEPERR", 9, G_KEEPERR0x20 }, |
| 14413 | #endif |
| 14414 | #ifdef G_NODEBUG0x40 |
| 14415 | { "G_NODEBUG", 9, G_NODEBUG0x40 }, |
| 14416 | #endif |
| 14417 | #ifdef G_METHOD0x80 |
| 14418 | { "G_METHOD", 8, G_METHOD0x80 }, |
| 14419 | #endif |
| 14420 | #ifdef G_FAKINGEVAL0x100 |
| 14421 | { "G_FAKINGEVAL", 12, G_FAKINGEVAL0x100 }, |
| 14422 | #endif |
| 14423 | #ifdef G_RETHROW0x2000 |
| 14424 | { "G_RETHROW", 9, G_RETHROW0x2000 }, |
| 14425 | #endif |
| 14426 | #ifdef GV_NOADD_NOINIT0x20 |
| 14427 | { "GV_NOADD_NOINIT", 15, GV_NOADD_NOINIT0x20 }, |
| 14428 | #endif |
| 14429 | #ifdef IS_NUMBER_IN_UV0x01 |
| 14430 | { "IS_NUMBER_IN_UV", 15, IS_NUMBER_IN_UV0x01 }, |
| 14431 | #endif |
| 14432 | #ifdef IS_NUMBER_GREATER_THAN_UV_MAX0x02 |
| 14433 | { "IS_NUMBER_GREATER_THAN_UV_MAX", 29, IS_NUMBER_GREATER_THAN_UV_MAX0x02 }, |
| 14434 | #endif |
| 14435 | #ifdef IS_NUMBER_NOT_INT0x04 |
| 14436 | { "IS_NUMBER_NOT_INT", 17, IS_NUMBER_NOT_INT0x04 }, |
| 14437 | #endif |
| 14438 | #ifdef IS_NUMBER_NEG0x08 |
| 14439 | { "IS_NUMBER_NEG", 13, IS_NUMBER_NEG0x08 }, |
| 14440 | #endif |
| 14441 | #ifdef IS_NUMBER_INFINITY0x10 |
| 14442 | { "IS_NUMBER_INFINITY", 18, IS_NUMBER_INFINITY0x10 }, |
| 14443 | #endif |
| 14444 | #ifdef IS_NUMBER_NAN0x20 |
| 14445 | { "IS_NUMBER_NAN", 13, IS_NUMBER_NAN0x20 }, |
| 14446 | #endif |
| 14447 | #ifdef IS_NUMBER_TRAILING0x40 |
| 14448 | { "IS_NUMBER_TRAILING", 18, IS_NUMBER_TRAILING0x40 }, |
| 14449 | #endif |
| 14450 | #ifdef PERL_SCAN_TRAILING0x10 |
| 14451 | { "PERL_SCAN_TRAILING", 18, PERL_SCAN_TRAILING0x10 }, |
| 14452 | #endif |
| 14453 | #ifdef PERL_LOADMOD_DENY0x1 |
| 14454 | { "PERL_LOADMOD_DENY", 17, PERL_LOADMOD_DENY0x1 }, |
| 14455 | #endif |
| 14456 | #ifdef PERL_LOADMOD_NOIMPORT0x2 |
| 14457 | { "PERL_LOADMOD_NOIMPORT", 21, PERL_LOADMOD_NOIMPORT0x2 }, |
| 14458 | #endif |
| 14459 | #ifdef PERL_LOADMOD_IMPORT_OPS0x4 |
| 14460 | { "PERL_LOADMOD_IMPORT_OPS", 23, PERL_LOADMOD_IMPORT_OPS0x4 }, |
| 14461 | #endif |
| 14462 | #ifdef G_WANT3 |
| 14463 | { "G_WANT", 6, G_WANT3 }, |
| 14464 | #endif |
| 14465 | { "fallback_amg", 12, fallback_amg }, |
| 14466 | { "to_sv_amg", 9, to_sv_amg }, |
| 14467 | { "to_av_amg", 9, to_av_amg }, |
| 14468 | { "to_hv_amg", 9, to_hv_amg }, |
| 14469 | { "to_gv_amg", 9, to_gv_amg }, |
| 14470 | { "to_cv_amg", 9, to_cv_amg }, |
| 14471 | { "inc_amg", 7, inc_amg }, |
| 14472 | { "dec_amg", 7, dec_amg }, |
| 14473 | { "bool__amg", 9, bool__amg }, |
| 14474 | { "numer_amg", 9, numer_amg }, |
| 14475 | { "string_amg", 10, string_amg }, |
| 14476 | { "not_amg", 7, not_amg }, |
| 14477 | { "copy_amg", 8, copy_amg }, |
| 14478 | { "abs_amg", 7, abs_amg }, |
| 14479 | { "neg_amg", 7, neg_amg }, |
| 14480 | { "iter_amg", 8, iter_amg }, |
| 14481 | { "int_amg", 7, int_amg }, |
| 14482 | { "lt_amg", 6, lt_amg }, |
| 14483 | { "le_amg", 6, le_amg }, |
| 14484 | { "gt_amg", 6, gt_amg }, |
| 14485 | { "ge_amg", 6, ge_amg }, |
| 14486 | { "eq_amg", 6, eq_amg }, |
| 14487 | { "ne_amg", 6, ne_amg }, |
| 14488 | { "slt_amg", 7, slt_amg }, |
| 14489 | { "sle_amg", 7, sle_amg }, |
| 14490 | { "sgt_amg", 7, sgt_amg }, |
| 14491 | { "sge_amg", 7, sge_amg }, |
| 14492 | { "seq_amg", 7, seq_amg }, |
| 14493 | { "sne_amg", 7, sne_amg }, |
| 14494 | { "nomethod_amg", 12, nomethod_amg }, |
| 14495 | { "add_amg", 7, add_amg }, |
| 14496 | { "add_ass_amg", 11, add_ass_amg }, |
| 14497 | { "subtr_amg", 9, subtr_amg }, |
| 14498 | { "subtr_ass_amg", 13, subtr_ass_amg }, |
| 14499 | { "mult_amg", 8, mult_amg }, |
| 14500 | { "mult_ass_amg", 12, mult_ass_amg }, |
| 14501 | { "div_amg", 7, div_amg }, |
| 14502 | { "div_ass_amg", 11, div_ass_amg }, |
| 14503 | { "modulo_amg", 10, modulo_amg }, |
| 14504 | { "modulo_ass_amg", 14, modulo_ass_amg }, |
| 14505 | { "pow_amg", 7, pow_amg }, |
| 14506 | { "pow_ass_amg", 11, pow_ass_amg }, |
| 14507 | { "lshift_amg", 10, lshift_amg }, |
| 14508 | { "lshift_ass_amg", 14, lshift_ass_amg }, |
| 14509 | { "rshift_amg", 10, rshift_amg }, |
| 14510 | { "rshift_ass_amg", 14, rshift_ass_amg }, |
| 14511 | { "band_amg", 8, band_amg }, |
| 14512 | { "band_ass_amg", 12, band_ass_amg }, |
| 14513 | { "sband_amg", 9, sband_amg }, |
| 14514 | { "sband_ass_amg", 13, sband_ass_amg }, |
| 14515 | { "bor_amg", 7, bor_amg }, |
| 14516 | { "bor_ass_amg", 11, bor_ass_amg }, |
| 14517 | { "sbor_amg", 8, sbor_amg }, |
| 14518 | { "sbor_ass_amg", 12, sbor_ass_amg }, |
| 14519 | { "bxor_amg", 8, bxor_amg }, |
| 14520 | { "bxor_ass_amg", 12, bxor_ass_amg }, |
| 14521 | { "sbxor_amg", 9, sbxor_amg }, |
| 14522 | { "sbxor_ass_amg", 13, sbxor_ass_amg }, |
| 14523 | { "ncmp_amg", 8, ncmp_amg }, |
| 14524 | { "scmp_amg", 8, scmp_amg }, |
| 14525 | { "compl_amg", 9, compl_amg }, |
| 14526 | { "scompl_amg", 10, scompl_amg }, |
| 14527 | { "atan2_amg", 9, atan2_amg }, |
| 14528 | { "cos_amg", 7, cos_amg }, |
| 14529 | { "sin_amg", 7, sin_amg }, |
| 14530 | { "exp_amg", 7, exp_amg }, |
| 14531 | { "log_amg", 7, log_amg }, |
| 14532 | { "sqrt_amg", 8, sqrt_amg }, |
| 14533 | { "repeat_amg", 10, repeat_amg }, |
| 14534 | { "repeat_ass_amg", 14, repeat_ass_amg }, |
| 14535 | { "concat_amg", 10, concat_amg }, |
| 14536 | { "concat_ass_amg", 14, concat_ass_amg }, |
| 14537 | { "smart_amg", 9, smart_amg }, |
| 14538 | { "ftest_amg", 9, ftest_amg }, |
| 14539 | { "regexp_amg", 10, regexp_amg }, |
| 14540 | #ifndef G_WANT3 |
| 14541 | /* This is the default value: */ |
| 14542 | { "G_WANT", 6, G_ARRAY3|G_VOID1 }, |
| 14543 | #endif |
| 14544 | { NULL((void*)0), 0, 0 } }; |
| 14545 | const struct iv_s *value_for_iv = values_for_iv; |
| 14546 | while (value_for_iv->name) { |
| 14547 | constant_add_symbol(aTHX_ symbol_table, value_for_iv->name, |
| 14548 | value_for_iv->namelen, newSViv(value_for_iv->value)Perl_newSViv( value_for_iv->value)); |
| 14549 | ++value_for_iv; |
| 14550 | } |
| 14551 | if (C_ARRAY_LENGTH(values_for_notfound)(sizeof(values_for_notfound)/sizeof((values_for_notfound)[0]) ) > 1) { |
| 14552 | #ifndef SYMBIAN |
| 14553 | HV *const constant_missing = get_missing_hash(aTHX); |
| 14554 | #endif |
| 14555 | const struct notfound_s *value_for_notfound = values_for_notfound; |
| 14556 | do { |
| 14557 | |
| 14558 | /* Need to add prototypes, else parsing will vary by platform. */ |
| 14559 | HE *he = (HE*) hv_common_key_len(symbol_table,Perl_hv_common_key_len( symbol_table,value_for_notfound->name ,value_for_notfound->namelen,0x10,((void*)0),0) |
| 14560 | value_for_notfound->name,Perl_hv_common_key_len( symbol_table,value_for_notfound->name ,value_for_notfound->namelen,0x10,((void*)0),0) |
| 14561 | value_for_notfound->namelen,Perl_hv_common_key_len( symbol_table,value_for_notfound->name ,value_for_notfound->namelen,0x10,((void*)0),0) |
| 14562 | HV_FETCH_LVALUE, NULL, 0)Perl_hv_common_key_len( symbol_table,value_for_notfound->name ,value_for_notfound->namelen,0x10,((void*)0),0); |
| 14563 | SV *sv; |
| 14564 | #ifndef SYMBIAN |
| 14565 | HEK *hek; |
| 14566 | #endif |
| 14567 | if (!he) { |
| 14568 | croakPerl_croak("Couldn't add key '%s' to %%XS::APItest::", |
| 14569 | value_for_notfound->name); |
| 14570 | } |
| 14571 | sv = HeVAL(he)(he)->he_valu.hent_val; |
| 14572 | if (!SvOK(sv)((sv)->sv_flags & (0x00000100|0x00000200|0x00000400|0x00000800 | 0x00001000|0x00002000|0x00004000|0x00008000)) && SvTYPE(sv)((svtype)((sv)->sv_flags & 0xff)) != SVt_PVGV) { |
| 14573 | /* Nothing was here before, so mark a prototype of "" */ |
| 14574 | sv_setpvn(sv, "", 0)Perl_sv_setpvn( sv,"",0); |
| 14575 | } else if (SvPOK(sv)((sv)->sv_flags & 0x00000400) && SvCUR(sv)((XPV*) (sv)->sv_any)->xpv_cur == 0) { |
| 14576 | /* There is already a prototype of "" - do nothing */ |
| 14577 | } else { |
| 14578 | /* Someone has been here before us - have to make a real |
| 14579 | typeglob. */ |
| 14580 | /* It turns out to be incredibly hard to deal with all the |
| 14581 | corner cases of sub foo (); and reporting errors correctly, |
| 14582 | so lets cheat a bit. Start with a constant subroutine */ |
| 14583 | CV *cv = newCONSTSUB(symbol_table,Perl_newCONSTSUB( symbol_table,value_for_notfound->name,& (PL_sv_immortals[0])) |
| 14584 | value_for_notfound->name,Perl_newCONSTSUB( symbol_table,value_for_notfound->name,& (PL_sv_immortals[0])) |
| 14585 | &PL_sv_yes)Perl_newCONSTSUB( symbol_table,value_for_notfound->name,& (PL_sv_immortals[0])); |
| 14586 | /* and then turn it into a non constant declaration only. */ |
| 14587 | SvREFCNT_dec(CvXSUBANY(cv).any_ptr)Perl_SvREFCNT_dec( ((SV *)({ void *_p = (((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))->xcv_start_u.xcv_xsubany.any_ptr ); _p; }))); |
| 14588 | CvCONST_off(cv)(((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))->xcv_flags &= ~0x0004); |
| 14589 | CvXSUB(cv)((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))->xcv_root_u .xcv_xsub = NULL((void*)0); |
| 14590 | CvXSUBANY(cv)((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))->xcv_start_u .xcv_xsubany.any_ptr = NULL((void*)0); |
| 14591 | } |
| 14592 | #ifndef SYMBIAN |
| 14593 | hek = HeKEY_hek(he)(he)->hent_hek; |
| 14594 | if (!hv_common(constant_missing, NULL, HEK_KEY(hek),Perl_hv_common( constant_missing,((void*)0),(hek)->hek_key ,(hek)->hek_len,(*((unsigned char *)((hek)->hek_key)+(hek )->hek_len+1)),0x04,&(PL_sv_immortals[0]),(hek)->hek_hash ) |
| 14595 | HEK_LEN(hek), HEK_FLAGS(hek), HV_FETCH_ISSTORE,Perl_hv_common( constant_missing,((void*)0),(hek)->hek_key ,(hek)->hek_len,(*((unsigned char *)((hek)->hek_key)+(hek )->hek_len+1)),0x04,&(PL_sv_immortals[0]),(hek)->hek_hash ) |
| 14596 | &PL_sv_yes, HEK_HASH(hek))Perl_hv_common( constant_missing,((void*)0),(hek)->hek_key ,(hek)->hek_len,(*((unsigned char *)((hek)->hek_key)+(hek )->hek_len+1)),0x04,&(PL_sv_immortals[0]),(hek)->hek_hash )) |
| 14597 | croakPerl_croak("Couldn't add key '%s' to missing_hash", |
| 14598 | value_for_notfound->name); |
| 14599 | #endif |
| 14600 | } while ((++value_for_notfound)->name); |
| 14601 | } |
| 14602 | /* As we've been creating subroutines, we better invalidate any cached |
| 14603 | methods */ |
| 14604 | mro_method_changed_in(symbol_table)Perl_mro_method_changed_in( symbol_table); |
| 14605 | } |
| 14606 | |
| 14607 | #line 1678 "APItest.xs" |
| 14608 | newXS("XS::APItest::XSUB::XS_VERSION_undef", XS_XS__APItest__XSUB_XS_VERSION_undef, __FILE__)Perl_newXS( "XS::APItest::XSUB::XS_VERSION_undef",XS_XS__APItest__XSUB_XS_VERSION_undef ,"APItest.xs"); |
| 14609 | newXS("XS::APItest::XSUB::XS_VERSION_empty", XS_XS__APItest__XSUB_XS_VERSION_empty, __FILE__)Perl_newXS( "XS::APItest::XSUB::XS_VERSION_empty",XS_XS__APItest__XSUB_XS_VERSION_empty ,"APItest.xs"); |
| 14610 | newXS("XS::APItest::XSUB::XS_APIVERSION_invalid", XS_XS__APItest__XSUB_XS_APIVERSION_invalid, __FILE__)Perl_newXS( "XS::APItest::XSUB::XS_APIVERSION_invalid",XS_XS__APItest__XSUB_XS_APIVERSION_invalid ,"APItest.xs"); |
| 14611 | |
| 14612 | #if XSubPPtmpAAAA1 |
| 14613 | #endif |
| 14614 | #if XSubPPtmpAAAB1 |
| 14615 | #endif |
| 14616 | #line 2154 "APItest.xs" |
| 14617 | mymro.resolve = myget_linear_isa; |
| 14618 | mymro.name = "justisa"; |
| 14619 | mymro.length = 7; |
| 14620 | mymro.kflags = 0; |
| 14621 | mymro.hash = 0; |
| 14622 | Perl_mro_register(aTHX_ &mymro); |
| 14623 | |
| 14624 | #line 2276 "APItest.xs" |
| 14625 | { |
| 14626 | MY_CXT_INIT(void)0; |
| 14627 | |
| 14628 | MY_CXTmy_cxt.i = 99; |
| 14629 | MY_CXTmy_cxt.sv = newSVpv("initial",0)Perl_newSVpv( "initial",0); |
| 14630 | |
| 14631 | MY_CXTmy_cxt.bhkav = get_av("XS::APItest::bhkav", GV_ADDMULTI)Perl_get_av( "XS::APItest::bhkav",0x02); |
| 14632 | MY_CXTmy_cxt.bhk_record = 0; |
| 14633 | |
| 14634 | BhkENTRY_set(&bhk_test, bhk_start, blockhook_test_start)do { (&bhk_test)->bhk_start = blockhook_test_start; do { ((&bhk_test)->bhk_flags) |= 0x01; ((void)0); } while (0); } while (0); |
| 14635 | BhkENTRY_set(&bhk_test, bhk_pre_end, blockhook_test_pre_end)do { (&bhk_test)->bhk_pre_end = blockhook_test_pre_end ; do { ((&bhk_test)->bhk_flags) |= 0x02; ((void)0); } while (0); } while (0); |
| 14636 | BhkENTRY_set(&bhk_test, bhk_post_end, blockhook_test_post_end)do { (&bhk_test)->bhk_post_end = blockhook_test_post_end ; do { ((&bhk_test)->bhk_flags) |= 0x04; ((void)0); } while (0); } while (0); |
| 14637 | BhkENTRY_set(&bhk_test, bhk_eval, blockhook_test_eval)do { (&bhk_test)->bhk_eval = blockhook_test_eval; do { ((&bhk_test)->bhk_flags) |= 0x08; ((void)0); } while ( 0); } while (0); |
| 14638 | Perl_blockhook_register(aTHX_ &bhk_test); |
| 14639 | |
| 14640 | MY_CXTmy_cxt.cscgv = gv_fetchpvs("XS::APItest::COMPILE_SCOPE_CONTAINER",Perl_gv_fetchpvn_flags( ("" "XS::APItest::COMPILE_SCOPE_CONTAINER" ""), (sizeof("XS::APItest::COMPILE_SCOPE_CONTAINER")-1), 0x02 , SVt_PVAV) |
| 14641 | GV_ADDMULTI, SVt_PVAV)Perl_gv_fetchpvn_flags( ("" "XS::APItest::COMPILE_SCOPE_CONTAINER" ""), (sizeof("XS::APItest::COMPILE_SCOPE_CONTAINER")-1), 0x02 , SVt_PVAV); |
| 14642 | MY_CXTmy_cxt.cscav = GvAV(MY_CXT.cscgv)((0+(my_cxt.cscgv)->sv_u.svu_gp)->gp_av); |
| 14643 | |
| 14644 | BhkENTRY_set(&bhk_csc, bhk_start, blockhook_csc_start)do { (&bhk_csc)->bhk_start = blockhook_csc_start; do { ((&bhk_csc)->bhk_flags) |= 0x01; ((void)0); } while ( 0); } while (0); |
| 14645 | BhkENTRY_set(&bhk_csc, bhk_pre_end, blockhook_csc_pre_end)do { (&bhk_csc)->bhk_pre_end = blockhook_csc_pre_end; do { ((&bhk_csc)->bhk_flags) |= 0x02; ((void)0); } while (0); } while (0); |
| 14646 | Perl_blockhook_register(aTHX_ &bhk_csc); |
| 14647 | |
| 14648 | MY_CXTmy_cxt.peep_recorder = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 14649 | MY_CXTmy_cxt.rpeep_recorder = newAV()((AV *)({ void *_p = (Perl_newSV_type( SVt_PVAV)); _p; })); |
| 14650 | |
| 14651 | MY_CXTmy_cxt.orig_peep = PL_peepp; |
| 14652 | MY_CXTmy_cxt.orig_rpeep = PL_rpeepp; |
| 14653 | PL_peepp = my_peep; |
| 14654 | PL_rpeepp = my_rpeep; |
| 14655 | } |
| 14656 | |
| 14657 | #if XSubPPtmpAAAC |
| 14658 | #endif |
| 14659 | #line 4038 "APItest.xs" |
| 14660 | { |
| 14661 | HV* stash; |
| 14662 | SV** meth = NULL((void*)0); |
| 14663 | CV* cv; |
| 14664 | stash = gv_stashpv("XS::APItest::TempLv", 0)Perl_gv_stashpv( "XS::APItest::TempLv",0); |
| 14665 | if (stash) |
| 14666 | meth = hv_fetchs(stash, "make_temp_mg_lv", 0)((SV**) Perl_hv_common_key_len( ((stash)),(("" "make_temp_mg_lv" "")),((sizeof("make_temp_mg_lv")-1)),((0)) ? (0x20 | 0x10) : 0x20,((void*)0),0)); |
| 14667 | if (!meth) |
| 14668 | croakPerl_croak("lost method 'make_temp_mg_lv'"); |
| 14669 | cv = GvCV(*meth)(0+(0+(*meth)->sv_u.svu_gp)->gp_cv); |
| 14670 | CvLVALUE_on(cv)(((XPVCV*)({ void *_p = ((cv)->sv_any); _p; }))->xcv_flags |= 0x0002); |
| 14671 | } |
| 14672 | |
| 14673 | #line 4052 "APItest.xs" |
| 14674 | { |
| 14675 | hintkey_rpn_sv = newSVpvs_share("XS::APItest/rpn")Perl_newSVpvn_share( ("" "XS::APItest/rpn" ""), (sizeof("XS::APItest/rpn" )-1), 0); |
| 14676 | hintkey_calcrpn_sv = newSVpvs_share("XS::APItest/calcrpn")Perl_newSVpvn_share( ("" "XS::APItest/calcrpn" ""), (sizeof("XS::APItest/calcrpn" )-1), 0); |
| 14677 | hintkey_stufftest_sv = newSVpvs_share("XS::APItest/stufftest")Perl_newSVpvn_share( ("" "XS::APItest/stufftest" ""), (sizeof ("XS::APItest/stufftest")-1), 0); |
| 14678 | hintkey_swaptwostmts_sv = newSVpvs_share("XS::APItest/swaptwostmts")Perl_newSVpvn_share( ("" "XS::APItest/swaptwostmts" ""), (sizeof ("XS::APItest/swaptwostmts")-1), 0); |
| 14679 | hintkey_looprest_sv = newSVpvs_share("XS::APItest/looprest")Perl_newSVpvn_share( ("" "XS::APItest/looprest" ""), (sizeof( "XS::APItest/looprest")-1), 0); |
| 14680 | hintkey_scopelessblock_sv = newSVpvs_share("XS::APItest/scopelessblock")Perl_newSVpvn_share( ("" "XS::APItest/scopelessblock" ""), (sizeof ("XS::APItest/scopelessblock")-1), 0); |
| 14681 | hintkey_stmtasexpr_sv = newSVpvs_share("XS::APItest/stmtasexpr")Perl_newSVpvn_share( ("" "XS::APItest/stmtasexpr" ""), (sizeof ("XS::APItest/stmtasexpr")-1), 0); |
| 14682 | hintkey_stmtsasexpr_sv = newSVpvs_share("XS::APItest/stmtsasexpr")Perl_newSVpvn_share( ("" "XS::APItest/stmtsasexpr" ""), (sizeof ("XS::APItest/stmtsasexpr")-1), 0); |
| 14683 | hintkey_loopblock_sv = newSVpvs_share("XS::APItest/loopblock")Perl_newSVpvn_share( ("" "XS::APItest/loopblock" ""), (sizeof ("XS::APItest/loopblock")-1), 0); |
| 14684 | hintkey_blockasexpr_sv = newSVpvs_share("XS::APItest/blockasexpr")Perl_newSVpvn_share( ("" "XS::APItest/blockasexpr" ""), (sizeof ("XS::APItest/blockasexpr")-1), 0); |
| 14685 | hintkey_swaplabel_sv = newSVpvs_share("XS::APItest/swaplabel")Perl_newSVpvn_share( ("" "XS::APItest/swaplabel" ""), (sizeof ("XS::APItest/swaplabel")-1), 0); |
| 14686 | hintkey_labelconst_sv = newSVpvs_share("XS::APItest/labelconst")Perl_newSVpvn_share( ("" "XS::APItest/labelconst" ""), (sizeof ("XS::APItest/labelconst")-1), 0); |
| 14687 | hintkey_arrayfullexpr_sv = newSVpvs_share("XS::APItest/arrayfullexpr")Perl_newSVpvn_share( ("" "XS::APItest/arrayfullexpr" ""), (sizeof ("XS::APItest/arrayfullexpr")-1), 0); |
| 14688 | hintkey_arraylistexpr_sv = newSVpvs_share("XS::APItest/arraylistexpr")Perl_newSVpvn_share( ("" "XS::APItest/arraylistexpr" ""), (sizeof ("XS::APItest/arraylistexpr")-1), 0); |
| 14689 | hintkey_arraytermexpr_sv = newSVpvs_share("XS::APItest/arraytermexpr")Perl_newSVpvn_share( ("" "XS::APItest/arraytermexpr" ""), (sizeof ("XS::APItest/arraytermexpr")-1), 0); |
| 14690 | hintkey_arrayarithexpr_sv = newSVpvs_share("XS::APItest/arrayarithexpr")Perl_newSVpvn_share( ("" "XS::APItest/arrayarithexpr" ""), (sizeof ("XS::APItest/arrayarithexpr")-1), 0); |
| 14691 | hintkey_arrayexprflags_sv = newSVpvs_share("XS::APItest/arrayexprflags")Perl_newSVpvn_share( ("" "XS::APItest/arrayexprflags" ""), (sizeof ("XS::APItest/arrayexprflags")-1), 0); |
| 14692 | hintkey_subsignature_sv = newSVpvs_share("XS::APItest/subsignature")Perl_newSVpvn_share( ("" "XS::APItest/subsignature" ""), (sizeof ("XS::APItest/subsignature")-1), 0); |
| 14693 | hintkey_DEFSV_sv = newSVpvs_share("XS::APItest/DEFSV")Perl_newSVpvn_share( ("" "XS::APItest/DEFSV" ""), (sizeof("XS::APItest/DEFSV" )-1), 0); |
| 14694 | hintkey_with_vars_sv = newSVpvs_share("XS::APItest/with_vars")Perl_newSVpvn_share( ("" "XS::APItest/with_vars" ""), (sizeof ("XS::APItest/with_vars")-1), 0); |
| 14695 | hintkey_join_with_space_sv = newSVpvs_share("XS::APItest/join_with_space")Perl_newSVpvn_share( ("" "XS::APItest/join_with_space" ""), ( sizeof("XS::APItest/join_with_space")-1), 0); |
| 14696 | wrap_keyword_plugin(my_keyword_plugin, &next_keyword_plugin)Perl_wrap_keyword_plugin( my_keyword_plugin,&next_keyword_plugin ); |
| 14697 | } |
| 14698 | |
| 14699 | #line 4085 "APItest.xs" |
| 14700 | { |
| 14701 | CV *estcv = get_cv("XS::APItest::establish_cleanup", 0)Perl_get_cv( "XS::APItest::establish_cleanup",0); |
| 14702 | cv_set_call_checker(estcv, THX_ck_entersub_establish_cleanup, (SV*)estcv)Perl_cv_set_call_checker( estcv,THX_ck_entersub_establish_cleanup ,(SV*)estcv); |
| 14703 | } |
| 14704 | |
| 14705 | #line 4103 "APItest.xs" |
| 14706 | { |
| 14707 | CV *asscv = get_cv("XS::APItest::postinc", 0)Perl_get_cv( "XS::APItest::postinc",0); |
| 14708 | cv_set_call_checker(asscv, THX_ck_entersub_postinc, (SV*)asscv)Perl_cv_set_call_checker( asscv,THX_ck_entersub_postinc,(SV*) asscv); |
| 14709 | } |
| 14710 | |
| 14711 | #line 4152 "APItest.xs" |
| 14712 | { |
| 14713 | CV *pscv = get_cv("XS::APItest::pad_scalar", 0)Perl_get_cv( "XS::APItest::pad_scalar",0); |
| 14714 | cv_set_call_checker(pscv, THX_ck_entersub_pad_scalar, (SV*)pscv)Perl_cv_set_call_checker( pscv,THX_ck_entersub_pad_scalar,(SV *)pscv); |
| 14715 | } |
| 14716 | |
| 14717 | #if XSubPPtmpAAAD |
| 14718 | #endif |
| 14719 | #if XSubPPtmpAAAE |
| 14720 | #endif |
| 14721 | #if XSubPPtmpAAAF |
| 14722 | #endif |
| 14723 | #if XSubPPtmpAAAG1 |
| 14724 | #endif |
| 14725 | #line 14726 "APItest.c" |
| 14726 | |
| 14727 | /* End of Initialisation Section */ |
| 14728 | |
| 14729 | #if PERL_VERSION_LE(5, 21, 5)((5*1000000 + 32*1000 + 1) <= (5*1000000 + 21*1000 + 5)) |
| 14730 | # if PERL_VERSION_GE(5, 9, 0)((5*1000000 + 32*1000 + 1) >= (5*1000000 + 9*1000 + 0)) |
| 14731 | if (PL_unitcheckav) |
| 14732 | call_list(PL_scopestack_ix, PL_unitcheckav)Perl_call_list( PL_scopestack_ix,PL_unitcheckav); |
| 14733 | # endif |
| 14734 | XSRETURN_YESdo { (PL_stack_base[ax + (0)] = &(PL_sv_immortals[0]) ); do { const IV tmpXSoff = (1); ((void)0); PL_stack_sp = PL_stack_base + ax + (tmpXSoff - 1); return; } while (0); } while (0); |
| 14735 | #else |
| 14736 | Perl_xs_boot_epilog(aTHX_ ax); |
| 14737 | #endif |
| 14738 | } |
| 14739 |