Branch Coverage

ListUtil.xs
Criterion Covered Total %
branch 823 1504 54.7


line true false branch
184 14 43 if(SvAMAGIC(sv))
14 0 if(SvAMAGIC(sv))
14 0 if(SvAMAGIC(sv))
187 40 3 if(SvIOK(sv) && !SvNOK(sv) && !SvUOK(sv))
40 0 if(SvIOK(sv) && !SvNOK(sv) && !SvUOK(sv))
40 0 if(SvIOK(sv) && !SvNOK(sv) && !SvUOK(sv))
215 2 9 if(!PL_srand_called) {
228 0 37 PUSHMARK(SP);
235 37 0 ret = modf(POPn, &dummy); /* bound to < 1 */
236 0 37 if(ret < 0) ret += 1.0; /* bound to 0 <= ret < 1 */
250 16 92 if(cv == Nullcv)
253 9 83 if(!CvROOT(cv) && !CvXSUB(cv))
9 0 if(!CvROOT(cv) && !CvXSUB(cv))
283 0 27 if(!items)
287 0 27 SvGETMAGIC(retsv);
0 0 SvGETMAGIC(retsv);
288 8 19 magic = SvAMAGIC(retsv);
8 0 magic = SvAMAGIC(retsv);
8 0 magic = SvAMAGIC(retsv);
289 19 8 if(!magic)
290 16 3 retval = slu_sv_value(retsv);
0 16 retval = slu_sv_value(retsv);
3 0 retval = slu_sv_value(retsv);
292 98 27 for(index = 1 ; index < items ; index++) {
295 8 90 SvGETMAGIC(stacksv);
0 8 SvGETMAGIC(stacksv);
296 79 19 if((magic || SvAMAGIC(stacksv)) && (tmpsv = amagic_call(retsv, stacksv, gt_amg, 0))) {
4 75 if((magic || SvAMAGIC(stacksv)) && (tmpsv = amagic_call(retsv, stacksv, gt_amg, 0))) {
4 0 if((magic || SvAMAGIC(stacksv)) && (tmpsv = amagic_call(retsv, stacksv, gt_amg, 0))) {
4 0 if((magic || SvAMAGIC(stacksv)) && (tmpsv = amagic_call(retsv, stacksv, gt_amg, 0))) {
19 4 if((magic || SvAMAGIC(stacksv)) && (tmpsv = amagic_call(retsv, stacksv, gt_amg, 0))) {
297 19 0 if(SvTRUE(tmpsv) ? !ix : ix) {
0 19 if(SvTRUE(tmpsv) ? !ix : ix) {
0 0 if(SvTRUE(tmpsv) ? !ix : ix) {
0 19 if(SvTRUE(tmpsv) ? !ix : ix) {
0 0 if(SvTRUE(tmpsv) ? !ix : ix) {
0 0 if(SvTRUE(tmpsv) ? !ix : ix) {
19 0 if(SvTRUE(tmpsv) ? !ix : ix) {
19 0 if(SvTRUE(tmpsv) ? !ix : ix) {
19 0 if(SvTRUE(tmpsv) ? !ix : ix) {
11 8 if(SvTRUE(tmpsv) ? !ix : ix) {
11 0 if(SvTRUE(tmpsv) ? !ix : ix) {
11 8 if(SvTRUE(tmpsv) ? !ix : ix) {
0 0 if(SvTRUE(tmpsv) ? !ix : ix) {
0 0 if(SvTRUE(tmpsv) ? !ix : ix) {
0 0 if(SvTRUE(tmpsv) ? !ix : ix) {
0 0 if(SvTRUE(tmpsv) ? !ix : ix) {
0 0 if(SvTRUE(tmpsv) ? !ix : ix) {
0 0 if(SvTRUE(tmpsv) ? !ix : ix) {
0 0 if(SvTRUE(tmpsv) ? !ix : ix) {
8 11 if(SvTRUE(tmpsv) ? !ix : ix) {
299 7 1 magic = SvAMAGIC(retsv);
7 0 magic = SvAMAGIC(retsv);
7 0 magic = SvAMAGIC(retsv);
300 1 7 if(!magic) {
301 1 0 retval = slu_sv_value(retsv);
0 1 retval = slu_sv_value(retsv);
0 0 retval = slu_sv_value(retsv);
306 17 62 NV val = slu_sv_value(stacksv);
0 17 NV val = slu_sv_value(stacksv);
58 4 NV val = slu_sv_value(stacksv);
307 2 77 if(magic) {
308 0 2 retval = slu_sv_value(retsv);
0 0 retval = slu_sv_value(retsv);
0 2 retval = slu_sv_value(retsv);
311 25 54 if(val < retval ? !ix : ix) {
17 62 if(val < retval ? !ix : ix) {
331 52 0 dXSTARG;
341 3 49 if(!items)
349 0 49 SvGETMAGIC(sv);
0 0 SvGETMAGIC(sv);
356 40 0 retiv = SvIV(sv);
359 0 3 retnv = slu_sv_value(sv);
0 0 retnv = slu_sv_value(sv);
3 0 retnv = slu_sv_value(sv);
363 61 49 for(index = 1 ; index < items ; index++) {
365 4 57 SvGETMAGIC(sv);
0 4 SvGETMAGIC(sv);
366 53 8 if(accum < ACC_SV && SvAMAGIC(sv)){
10 43 if(accum < ACC_SV && SvAMAGIC(sv)){
10 0 if(accum < ACC_SV && SvAMAGIC(sv)){
10 0 if(accum < ACC_SV && SvAMAGIC(sv)){
367 8 2 if(!retsv)
369 8 2 sv_setnv(retsv, accum == ACC_NV ? retnv : retiv);
374 8 10 tmpsv = amagic_call(retsv, sv,
8 0 tmpsv = amagic_call(retsv, sv,
8 0 tmpsv = amagic_call(retsv, sv,
9 9 tmpsv = amagic_call(retsv, sv,
377 8 10 if(tmpsv) {
383 0 0 retiv = SvIV(tmpsv);
386 0 0 retnv = slu_sv_value(tmpsv);
0 0 retnv = slu_sv_value(tmpsv);
0 0 retnv = slu_sv_value(tmpsv);
393 3 2 is_product ? (retnv = SvNV(retsv) * SvNV(sv))
0 5 is_product ? (retnv = SvNV(retsv) * SvNV(sv))
394 5 5 : (retnv = SvNV(retsv) + SvNV(sv));
3 2 : (retnv = SvNV(retsv) + SvNV(sv));
0 5 : (retnv = SvNV(retsv) + SvNV(sv));
398 19 17 if(is_product) {
405 19 0 if(!SvNOK(sv) && SvIOK(sv)) {
19 0 if(!SvNOK(sv) && SvIOK(sv)) {
406 19 0 IV i = SvIV(sv);
407 4 15 if (retiv == 0) /* avoid later division by zero */
409 5 10 if (retiv < -1) { /* avoid -1 because that causes SIGFPE */
410 2 3 if (i < 0) {
411 1 1 if (i >= IV_MAX / retiv) {
417 2 1 if (i <= IV_MIN / retiv) {
423 9 1 else if (retiv > 0) {
424 2 7 if (i < 0) {
425 1 1 if (i >= IV_MIN / retiv) {
431 6 1 if (i <= IV_MAX / retiv) {
444 16 1 if(!SvNOK(sv) && SvIOK(sv)) {
16 0 if(!SvNOK(sv) && SvIOK(sv)) {
445 12 4 IV i = SvIV(sv);
446 14 2 if (retiv >= 0 && i >= 0) {
13 1 if (retiv >= 0 && i >= 0) {
447 13 0 if (retiv <= IV_MAX - i) {
453 2 1 else if (retiv < 0 && i < 0) {
0 2 else if (retiv < 0 && i < 0) {
454 0 0 if (retiv >= IV_MIN - i) {
473 9 0 is_product ? (retnv *= slu_sv_value(sv))
0 9 is_product ? (retnv *= slu_sv_value(sv))
0 0 is_product ? (retnv *= slu_sv_value(sv))
474 9 4 : (retnv += slu_sv_value(sv));
3 1 : (retnv += slu_sv_value(sv));
0 3 : (retnv += slu_sv_value(sv));
1 0 : (retnv += slu_sv_value(sv));
479 35 14 if(!retsv)
511 0 8 if(!items)
525 44 8 for(index = 1 ; index < items ; index++) {
527 5 39 if(sv_cmp(left, right) == ix)
554 5 35 CV *cv = sv_to_cv(block, ix ? "reductions" : "reduce");
556 2 29 if(items <= 1) {
557 1 1 if(ix)
568 29 0 SvSetMagicSV(ret, args[1]);
0 29 SvSetMagicSV(ret, args[1]);
570 4 25 if(ix) {
582 28 1 if(!CvISXSUB(cv)) {
587 0 28 PUSH_MULTICALL(cv);
1 27 PUSH_MULTICALL(cv);
588 100 23 for(index = 2 ; index < items ; index++) {
591 75 20 SvSetMagicSV(ret, *PL_stack_sp);
1 74 SvSetMagicSV(ret, *PL_stack_sp);
592 12 83 if(ix)
599 23 0 POP_MULTICALL;
0 23 POP_MULTICALL;
604 2 1 for(index = 2 ; index < items ; index++) {
608 0 2 PUSHMARK(SP);
611 2 0 SvSetMagicSV(ret, *PL_stack_sp);
0 2 SvSetMagicSV(ret, *PL_stack_sp);
612 0 2 if(ix)
617 3 21 if(ix) {
621 13 3 for(i = 0; i < items-1; i++) {
644 1 18 if(items <= 1)
650 16 2 if(!CvISXSUB(cv)) {
655 0 16 PUSH_MULTICALL(cv);
1 15 PUSH_MULTICALL(cv);
657 45 3 for(index = 1 ; index < items ; index++) {
663 41 0 if(SvTRUEx(*PL_stack_sp)) {
0 41 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 41 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
33 8 if(SvTRUEx(*PL_stack_sp)) {
33 0 if(SvTRUEx(*PL_stack_sp)) {
33 0 if(SvTRUEx(*PL_stack_sp)) {
7 26 if(SvTRUEx(*PL_stack_sp)) {
7 0 if(SvTRUEx(*PL_stack_sp)) {
7 26 if(SvTRUEx(*PL_stack_sp)) {
8 0 if(SvTRUEx(*PL_stack_sp)) {
8 0 if(SvTRUEx(*PL_stack_sp)) {
6 2 if(SvTRUEx(*PL_stack_sp)) {
0 6 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
2 6 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
9 32 if(SvTRUEx(*PL_stack_sp)) {
668 9 0 POP_MULTICALL;
0 9 POP_MULTICALL;
677 3 0 POP_MULTICALL;
0 3 POP_MULTICALL;
682 5 1 for(index = 1 ; index < items ; index++) {
686 0 5 PUSHMARK(SP);
688 5 0 if(SvTRUEx(*PL_stack_sp)) {
0 5 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 5 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 5 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
5 0 if(SvTRUEx(*PL_stack_sp)) {
5 0 if(SvTRUEx(*PL_stack_sp)) {
4 1 if(SvTRUEx(*PL_stack_sp)) {
0 4 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
1 4 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
1 4 if(SvTRUEx(*PL_stack_sp)) {
712 16 5 CV *cv = sv_to_cv(block,
11 5 CV *cv = sv_to_cv(block,
5 6 CV *cv = sv_to_cv(block,
5 0 CV *cv = sv_to_cv(block,
722 13 0 if(!CvISXSUB(cv)) {
728 0 13 PUSH_MULTICALL(cv);
0 13 PUSH_MULTICALL(cv);
729 19 8 for(index = 1; index < items; index++) {
736 19 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 19 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 19 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
19 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
19 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
18 1 if(SvTRUEx(*PL_stack_sp) ^ invert) {
10 8 if(SvTRUEx(*PL_stack_sp) ^ invert) {
10 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
11 8 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
5 14 if(SvTRUEx(*PL_stack_sp) ^ invert) {
737 5 0 POP_MULTICALL;
0 5 POP_MULTICALL;
738 2 3 ST(0) = ret_true ? &PL_sv_no : &PL_sv_yes;
742 8 0 POP_MULTICALL;
0 8 POP_MULTICALL;
748 0 0 for(index = 1; index < items; index++) {
752 0 0 PUSHMARK(SP);
754 0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
0 0 if(SvTRUEx(*PL_stack_sp) ^ invert) {
755 0 0 ST(0) = ret_true ? &PL_sv_no : &PL_sv_yes;
761 4 4 ST(0) = ret_true ? &PL_sv_yes : &PL_sv_no;
778 20 0 size = SvIV( ST(0) );
780 11 9 if ( ix == 0 ) {
783 4 7 if ( size < 0 ) {
786 3 8 if ( end > items ) {
792 4 5 if ( size < 0 ) {
798 1 8 if ( start < 1 ) {
803 3 17 if ( end < start ) {
807 17 0 EXTEND( SP, end - start );
0 17 EXTEND( SP, end - start );
808 35 17 for ( i = start; i <= end; i++ ) {
824 1 2 if(items % 2 && ckWARN(WARN_MISC))
0 1 if(items % 2 && ckWARN(WARN_MISC))
828 7 3 for(; argi < items; argi += 2) {
830 6 1 SV *b = argi < items-1 ? ST(argi+1) : &PL_sv_undef;
855 0 3 Newx(args_copy, items, SV *);
858 0 3 Copy(&ST(0), args_copy, items, SV *);
860 7 3 for(i = 0; i < items; i++) {
864 0 7 SvGETMAGIC(pair);
0 0 SvGETMAGIC(pair);
866 0 7 if(SvTYPE(pair) != SVt_RV)
868 0 7 if(SvTYPE(SvRV(pair)) != SVt_PVAV)
874 0 7 EXTEND(SP, 2);
876 0 7 if(AvFILL(pairav) >= 0)
7 0 if(AvFILL(pairav) >= 0)
881 0 7 if(AvFILL(pairav) >= 1)
6 1 if(AvFILL(pairav) >= 1)
898 0 1 if(items % 2 && ckWARN(WARN_MISC))
0 0 if(items % 2 && ckWARN(WARN_MISC))
902 2 1 for(; argi < items; argi += 2) {
920 0 1 if(items % 2 && ckWARN(WARN_MISC))
0 0 if(items % 2 && ckWARN(WARN_MISC))
924 2 1 for(; argi < items; argi += 2) {
925 2 0 SV *b = argi < items-1 ? ST(argi+1) : &PL_sv_undef;
942 4 0 I32 ret_gimme = GIMME_V;
945 0 4 if(!(items % 2) && ckWARN(WARN_MISC))
0 0 if(!(items % 2) && ckWARN(WARN_MISC))
954 4 0 if(!CvISXSUB(cv)) {
962 0 4 PUSH_MULTICALL(cv);
0 4 PUSH_MULTICALL(cv);
963 12 2 for(; argi < items; argi += 2) {
965 12 0 SV *b = GvSV(bgv) = argi < items-1 ? stack[argi+1] : &PL_sv_undef;
969 12 0 if(!SvTRUEx(*PL_stack_sp))
0 12 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 12 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
12 0 if(!SvTRUEx(*PL_stack_sp))
12 0 if(!SvTRUEx(*PL_stack_sp))
12 0 if(!SvTRUEx(*PL_stack_sp))
2 10 if(!SvTRUEx(*PL_stack_sp))
2 0 if(!SvTRUEx(*PL_stack_sp))
2 10 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
10 2 if(!SvTRUEx(*PL_stack_sp))
972 2 0 POP_MULTICALL;
0 2 POP_MULTICALL;
973 1 1 if(ret_gimme == G_LIST) {
981 2 0 POP_MULTICALL;
0 2 POP_MULTICALL;
987 0 0 for(; argi < items; argi += 2) {
990 0 0 SV *b = GvSV(bgv) = argi < items-1 ? ST(argi+1) : &PL_sv_undef;
992 0 0 PUSHMARK(SP);
997 0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
0 0 if(!SvTRUEx(*PL_stack_sp))
1000 0 0 if(ret_gimme == G_LIST) {
1021 6 0 I32 ret_gimme = GIMME_V;
1029 2 4 if(!(items % 2) && ckWARN(WARN_MISC))
1 1 if(!(items % 2) && ckWARN(WARN_MISC))
1038 6 0 if(!CvISXSUB(cv)) {
1047 0 6 PUSH_MULTICALL(cv);
0 6 PUSH_MULTICALL(cv);
1048 15 6 for(; argi < items; argi += 2) {
1050 13 2 SV *b = GvSV(bgv) = argi < items-1 ? stack[argi+1] : &PL_sv_undef;
1054 15 0 if(SvTRUEx(*PL_stack_sp)) {
0 15 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
4 11 if(SvTRUEx(*PL_stack_sp)) {
4 0 if(SvTRUEx(*PL_stack_sp)) {
0 4 if(SvTRUEx(*PL_stack_sp)) {
0 11 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
11 0 if(SvTRUEx(*PL_stack_sp)) {
11 0 if(SvTRUEx(*PL_stack_sp)) {
3 8 if(SvTRUEx(*PL_stack_sp)) {
0 3 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
8 3 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
8 7 if(SvTRUEx(*PL_stack_sp)) {
1055 4 4 if(ret_gimme == G_LIST) {
1060 2 2 else if(ret_gimme == G_SCALAR)
1064 6 0 POP_MULTICALL;
0 6 POP_MULTICALL;
1066 2 4 if(ret_gimme == G_LIST)
1067 8 2 for(i = 0; i < reti; i++)
1073 0 0 for(; argi < items; argi += 2) {
1076 0 0 SV *b = GvSV(bgv) = argi < items-1 ? ST(argi+1) : &PL_sv_undef;
1078 0 0 PUSHMARK(SP);
1083 0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
0 0 if(SvTRUEx(*PL_stack_sp)) {
1084 0 0 if(ret_gimme == G_LIST) {
1088 0 0 else if(ret_gimme == G_SCALAR)
1094 2 4 if(ret_gimme == G_LIST)
1096 1 3 else if(ret_gimme == G_SCALAR) {
1111 8 2 I32 ret_gimme = GIMME_V;
1116 1 9 if(!(items % 2) && ckWARN(WARN_MISC))
0 1 if(!(items % 2) && ckWARN(WARN_MISC))
1128 10 0 if(!CvISXSUB(cv)) {
1131 8 2 I32 ret_gimme = GIMME_V;
1139 0 10 PUSH_MULTICALL(cv);
0 10 PUSH_MULTICALL(cv);
1140 27 10 for(; argi < items; argi += 2) {
1144 26 1 GvSV(bgv) = argi < items-1 ? stack[argi+1]: &PL_sv_undef;
1149 20 7 if (count > 2 || spill) {
3 17 if (count > 2 || spill) {
1161 3 7 if (!spill) {
1169 0 10 fill = (int)AvFILL(spill);
1171 2018 10 for(i = 0; i < count; i++)
1176 22 17 for(i = 0; i < count; i++)
1180 3 7 if (spill) {
1187 10 0 POP_MULTICALL;
0 10 POP_MULTICALL;
1189 3 7 if (spill) {
1190 0 3 int n = (int)AvFILL(spill) + 1;
1192 3 0 EXTEND(SP, n);
1 2 EXTEND(SP, n);
1193 2018 3 for (i = 0; i < n; i++)
1199 8 2 if(ret_gimme == G_LIST)
1200 2032 8 for(i = 0; i < reti; i++)
1206 0 0 for(; argi < items; argi += 2) {
1211 0 0 GvSV(agv) = args_copy ? args_copy[argi] : ST(argi);
1213 0 0 (args_copy ? args_copy[argi+1] : ST(argi+1)) :
0 0 (args_copy ? args_copy[argi+1] : ST(argi+1)) :
1216 0 0 PUSHMARK(SP);
1221 0 0 if(count > 2 && !args_copy && ret_gimme == G_LIST) {
0 0 if(count > 2 && !args_copy && ret_gimme == G_LIST) {
0 0 if(count > 2 && !args_copy && ret_gimme == G_LIST) {
1223 0 0 Newx(args_copy, n_args, SV *);
1226 0 0 Copy(&ST(argi), args_copy, n_args, SV *);
1232 0 0 if(ret_gimme == G_LIST)
1233 0 0 for(i = 0; i < count; i++)
1242 8 2 if(ret_gimme == G_LIST)
1256 3 3 CV * const randcv = randsv && SvROK(randsv) && SvTYPE(SvRV(randsv)) == SVt_PVCV ?
3 0 CV * const randcv = randsv && SvROK(randsv) && SvTYPE(SvRV(randsv)) == SVt_PVCV ?
1257 6 0 (CV *)SvRV(randsv) : NULL;
1259 3 3 if(!randcv)
1262 126 6 for (index = items ; index > 1 ; ) {
1264 27 99 (randcv ? MY_callrand(aTHX_ randcv) : Drand01()) * (double)(index--)
1279 10 0 IV count = items ? SvUV(ST(0)) : 0;
0 10 IV count = items ? SvUV(ST(0)) : 0;
1282 2 8 CV * const randcv = randsv && SvROK(randsv) && SvTYPE(SvRV(randsv)) == SVt_PVCV ?
2 0 CV * const randcv = randsv && SvROK(randsv) && SvTYPE(SvRV(randsv)) == SVt_PVCV ?
1283 10 0 (CV *)SvRV(randsv) : NULL;
1285 0 10 if(!count)
1294 1 9 if(count > items)
1297 8 2 if(!randcv)
1303 52 10 while(reti < count) {
1305 10 42 (randcv ? MY_callrand(aTHX_ randcv) : Drand01()) * (double)(items - reti)
1336 23 3 if(items == 0 || (items == 1 && !SvGAMAGIC(args[0]) && SvOK(args[0]))) {
4 19 if(items == 0 || (items == 1 && !SvGAMAGIC(args[0]) && SvOK(args[0]))) {
4 0 if(items == 0 || (items == 1 && !SvGAMAGIC(args[0]) && SvOK(args[0]))) {
0 4 if(items == 0 || (items == 1 && !SvGAMAGIC(args[0]) && SvOK(args[0]))) {
0 0 if(items == 0 || (items == 1 && !SvGAMAGIC(args[0]) && SvOK(args[0]))) {
0 0 if(items == 0 || (items == 1 && !SvGAMAGIC(args[0]) && SvOK(args[0]))) {
2 2 if(items == 0 || (items == 1 && !SvGAMAGIC(args[0]) && SvOK(args[0]))) {
2 0 if(items == 0 || (items == 1 && !SvGAMAGIC(args[0]) && SvOK(args[0]))) {
0 2 if(items == 0 || (items == 1 && !SvGAMAGIC(args[0]) && SvOK(args[0]))) {
1345 125 21 for(index = 0 ; index < items ; index++) {
1351 50 75 if(SvGAMAGIC(arg))
8 42 if(SvGAMAGIC(arg))
8 0 if(SvGAMAGIC(arg))
8 0 if(SvGAMAGIC(arg))
1355 76 49 if(ix == 2 && !SvOK(arg)) {
3 73 if(ix == 2 && !SvOK(arg)) {
3 0 if(ix == 2 && !SvOK(arg)) {
3 0 if(ix == 2 && !SvOK(arg)) {
1357 1 2 if(seen_undef)
1362 2 0 if(GIMME_V == G_LIST)
2 0 if(GIMME_V == G_LIST)
1367 18 104 if(ix == 0) {
1372 2 16 if(SvAMAGIC(arg) && (arg = AMG_CALLun(arg, int)))
2 0 if(SvAMAGIC(arg) && (arg = AMG_CALLun(arg, int)))
2 0 if(SvAMAGIC(arg) && (arg = AMG_CALLun(arg, int)))
2 0 if(SvAMAGIC(arg) && (arg = AMG_CALLun(arg, int)))
1376 2 14 if(!SvOK(arg) || SvNOK(arg) || SvPOK(arg))
2 0 if(!SvOK(arg) || SvNOK(arg) || SvPOK(arg))
0 2 if(!SvOK(arg) || SvNOK(arg) || SvPOK(arg))
10 4 if(!SvOK(arg) || SvNOK(arg) || SvPOK(arg))
0 10 if(!SvOK(arg) || SvNOK(arg) || SvPOK(arg))
1379 4 2 NV nv = SvNV(arg);
1381 0 6 if(nv > (NV)UV_MAX)
1384 0 6 else if(nv < (NV)IV_MIN)
1387 4 2 else if(nv > 0 && (UV)nv > (UV)IV_MAX)
1 3 else if(nv > 0 && (UV)nv > (UV)IV_MAX)
1399 52 70 if (HeVAL(he))
1410 70 0 if(GIMME_V == G_LIST)
65 5 if(GIMME_V == G_LIST)
1411 1 64 ST(retcount) = SvOK(arg) ? arg : sv_2mortal(newSVpvn("", 0));
1 0 ST(retcount) = SvOK(arg) ? arg : sv_2mortal(newSVpvn("", 0));
1 0 ST(retcount) = SvOK(arg) ? arg : sv_2mortal(newSVpvn("", 0));
1416 26 0 if(GIMME_V == G_LIST)
25 1 if(GIMME_V == G_LIST)
1434 22 0 if(items == 0 || (items == 1 && !SvGAMAGIC(args[0]) && SvOK(args[0]))) {
1 21 if(items == 0 || (items == 1 && !SvGAMAGIC(args[0]) && SvOK(args[0]))) {
1 0 if(items == 0 || (items == 1 && !SvGAMAGIC(args[0]) && SvOK(args[0]))) {
0 1 if(items == 0 || (items == 1 && !SvGAMAGIC(args[0]) && SvOK(args[0]))) {
0 0 if(items == 0 || (items == 1 && !SvGAMAGIC(args[0]) && SvOK(args[0]))) {
0 0 if(items == 0 || (items == 1 && !SvGAMAGIC(args[0]) && SvOK(args[0]))) {
1 0 if(items == 0 || (items == 1 && !SvGAMAGIC(args[0]) && SvOK(args[0]))) {
1 0 if(items == 0 || (items == 1 && !SvGAMAGIC(args[0]) && SvOK(args[0]))) {
0 1 if(items == 0 || (items == 1 && !SvGAMAGIC(args[0]) && SvOK(args[0]))) {
1443 119 22 for(index = 0 ; index < items ; index++) {
1450 116 3 if(SvGAMAGIC(arg))
3 113 if(SvGAMAGIC(arg))
3 0 if(SvGAMAGIC(arg))
3 0 if(SvGAMAGIC(arg))
1454 2 117 if(SvOK(arg) && !(SvUOK(arg) || SvIOK(arg) || SvNOK(arg))) {
2 0 if(SvOK(arg) && !(SvUOK(arg) || SvIOK(arg) || SvNOK(arg))) {
0 2 if(SvOK(arg) && !(SvUOK(arg) || SvIOK(arg) || SvNOK(arg))) {
110 7 if(SvOK(arg) && !(SvUOK(arg) || SvIOK(arg) || SvNOK(arg))) {
80 30 if(SvOK(arg) && !(SvUOK(arg) || SvIOK(arg) || SvNOK(arg))) {
32 48 if(SvOK(arg) && !(SvUOK(arg) || SvIOK(arg) || SvNOK(arg))) {
1456 0 32 SvIV(arg); /* sets SVf_IOK/SVf_IsUV if it's an integer */
1490 68 51 if( SvIOK(arg) || !SvOK(arg) ) {
2 66 if( SvIOK(arg) || !SvOK(arg) ) {
2 0 if( SvIOK(arg) || !SvOK(arg) ) {
2 0 if( SvIOK(arg) || !SvOK(arg) ) {
1493 51 2 IV iv = SvIV(arg);
1496 6 47 if(iv == 0) sv_setpvs(keysv, "0");
1500 21 26 int sign = ( iv > 0 || uok ) ? 1 : -1;
9 12 int sign = ( iv > 0 || uok ) ? 1 : -1;
1526 38 9 if( !((iv * sign) & (~valid_bits)) ) {
1528 3 35 nv_arg = uok ? (NV)SvUV(arg) : (NV)SvIV(arg);
3 0 nv_arg = uok ? (NV)SvUV(arg) : (NV)SvIV(arg);
35 0 nv_arg = uok ? (NV)SvUV(arg) : (NV)SvIV(arg);
1537 6 3 if(uok) sv_catpvn(keysv, "U", 1);
1543 63 3 nv_arg = SvNV(arg);
1546 4 62 if (nv_arg != nv_arg) sv_setpvf(keysv, "%" NVgf, nv_arg);
1549 1 61 else if(nv_arg == 0) sv_setpvs(keysv, "0");
1555 34 85 if (HeVAL(he))
1566 85 0 if(GIMME_V == G_LIST)
78 7 if(GIMME_V == G_LIST)
1567 1 77 ST(retcount) = SvOK(arg) ? arg : sv_2mortal(newSViv(0));
1 0 ST(retcount) = SvOK(arg) ? arg : sv_2mortal(newSViv(0));
1 0 ST(retcount) = SvOK(arg) ? arg : sv_2mortal(newSViv(0));
1572 22 0 if(GIMME_V == G_LIST)
19 3 if(GIMME_V == G_LIST)
1594 2 12 if(!nlists)
1597 0 12 Newx(lists, nlists, AV *);
1603 18 8 for(i = 0; i < nlists; i++) {
1607 16 2 if(!SvROK(arg) || SvTYPE(SvRV(arg)) != SVt_PVAV)
2 14 if(!SvROK(arg) || SvTYPE(SvRV(arg)) != SVt_PVAV)
1611 8 6 if(!i) {
1612 0 8 len = av_count(av);
1619 0 4 if(av_count(av) > len)
0 4 if(av_count(av) > len)
1620 0 0 len = av_count(av);
1624 0 2 if(av_count(av) < len)
2 0 if(av_count(av) < len)
1625 0 2 len = av_count(av);
1630 4 4 if(is_mesh) {
1633 4 0 EXTEND(SP, retcount);
0 4 EXTEND(SP, retcount);
1635 10 4 for(i = 0; i < len; i++) {
1638 17 10 for(listi = 0; listi < nlists; listi++) {
1639 0 17 SV *item = (i < av_count(lists[listi])) ?
1640 16 1 AvARRAY(lists[listi])[i] :
1650 4 0 EXTEND(SP, (SSize_t)len);
0 4 EXTEND(SP, (SSize_t)len);
1652 10 4 for(i = 0; i < len; i++) {
1657 17 10 for(listi = 0; listi < nlists; listi++) {
1658 0 17 SV *item = (i < av_count(lists[listi])) ?
1659 16 1 AvARRAY(lists[listi])[i] :
1680 6 0 dXSTARG;
1682 6 0 (void)SvUPGRADE(TARG, SVt_PVNV);
1686 4 2 if(SvNOK(num) || SvPOK(num) || SvMAGICAL(num)) {
4 0 if(SvNOK(num) || SvPOK(num) || SvMAGICAL(num)) {
1 3 if(SvNOK(num) || SvPOK(num) || SvMAGICAL(num)) {
1687 2 1 SvNV_set(TARG, SvNV(num));
1691 1 2 else if(SvUOK(num)) {
1692 1 0 SvUV_set(TARG, SvUV(num));
1698 2 0 SvIV_set(TARG, SvIV(num));
1702 0 6 if(PL_tainting && (SvTAINTED(num) || SvTAINTED(str)))
0 0 if(PL_tainting && (SvTAINTED(num) || SvTAINTED(str)))
0 0 if(PL_tainting && (SvTAINTED(num) || SvTAINTED(str)))
0 0 if(PL_tainting && (SvTAINTED(num) || SvTAINTED(str)))
0 0 if(PL_tainting && (SvTAINTED(num) || SvTAINTED(str)))
1703 0 0 SvTAINTED_on(TARG);
1714 0 8 if(SvMAGICAL(sv))
1717 1 7 ST(0) = boolSV((SvPOK(sv) || SvPOKp(sv)) && (SvNIOK(sv) || SvNIOKp(sv)));
0 1 ST(0) = boolSV((SvPOK(sv) || SvPOKp(sv)) && (SvNIOK(sv) || SvNIOKp(sv)));
1 6 ST(0) = boolSV((SvPOK(sv) || SvPOKp(sv)) && (SvNIOK(sv) || SvNIOKp(sv)));
0 1 ST(0) = boolSV((SvPOK(sv) || SvPOKp(sv)) && (SvNIOK(sv) || SvNIOKp(sv)));
1726 1 373 SvGETMAGIC(sv);
0 1 SvGETMAGIC(sv);
1728 371 3 if(!(SvROK(sv) && SvOBJECT(SvRV(sv))))
352 19 if(!(SvROK(sv) && SvOBJECT(SvRV(sv))))
1746 1 108 SvGETMAGIC(sv);
0 1 SvGETMAGIC(sv);
1747 2 107 if(!SvROK(sv))
1761 3 33 SvGETMAGIC(sv);
0 3 SvGETMAGIC(sv);
1762 3 33 if(!SvROK(sv))
1789 0 1 if (!SvOK(sv))
0 0 if (!SvOK(sv))
0 0 if (!SvOK(sv))
1791 0 1 if (!SvROK(sv))
1793 0 1 else if (!SvWEAKREF(sv)) {
1794 0 0 if(ckWARN(WARN_MISC))
1798 0 1 else if (SvREADONLY(sv)) croak_no_modify();
1820 7 2 ST(0) = boolSV(SvROK(sv) && SvWEAKREF(sv));
4 3 ST(0) = boolSV(SvROK(sv) && SvWEAKREF(sv));
1828 0 9 SvGETMAGIC(sv);
0 0 SvGETMAGIC(sv);
1838 3 2 SvGETMAGIC(sv);
0 3 SvGETMAGIC(sv);
1839 3 2 RETVAL = SvTAINTED(sv);
3 0 RETVAL = SvTAINTED(sv);
1849 0 2 SvGETMAGIC(sv);
0 0 SvGETMAGIC(sv);
1850 1 1 ST(0) = boolSV(SvVOK(sv));
1 0 ST(0) = boolSV(SvVOK(sv));
1862 2 17 SvGETMAGIC(sv);
0 2 SvGETMAGIC(sv);
1863 3 16 if(SvAMAGIC(sv) && (tempsv = AMG_CALLun(sv, numer))) {
1 2 if(SvAMAGIC(sv) && (tempsv = AMG_CALLun(sv, numer))) {
1 0 if(SvAMAGIC(sv) && (tempsv = AMG_CALLun(sv, numer))) {
1 0 if(SvAMAGIC(sv) && (tempsv = AMG_CALLun(sv, numer))) {
1874 13 6 RETVAL = looks_like_number(sv) ? &PL_sv_yes : &PL_sv_no;
1885 0 20 SvGETMAGIC(sv);
0 0 SvGETMAGIC(sv);
1886 13 7 if(SvROK(sv)){
1892 16 4 if(isGV(sv)){
1893 16 0 io = GvIO((GV*)sv);
0 16 io = GvIO((GV*)sv);
0 0 io = GvIO((GV*)sv);
16 0 io = GvIO((GV*)sv);
1895 1 3 else if(SvTYPE(sv) == SVt_PVIO){
1899 14 6 if(io){
1901 5 9 if(IoIFP(io) || SvTIED_mg((SV*)io, PERL_MAGIC_tiedscalar)){
2 3 if(IoIFP(io) || SvTIED_mg((SV*)io, PERL_MAGIC_tiedscalar)){
2 0 if(IoIFP(io) || SvTIED_mg((SV*)io, PERL_MAGIC_tiedscalar)){
1917 0 15 SvGETMAGIC(code);
0 0 SvGETMAGIC(code);
1918 1 14 if(!SvROK(code))
1922 1 13 if(SvTYPE(cv) != SVt_PVCV)
1925 9 4 if(SvPOK(proto)) {
1948 271 0 const char* nameptr = SvPV(name, namelen);
1953 0 271 if (!SvROK(sub) && SvGMAGICAL(sub))
0 0 if (!SvROK(sub) && SvGMAGICAL(sub))
1955 271 0 if (SvROK(sub))
1957 0 0 else if (SvTYPE(sub) == SVt_PVGV)
1958 0 0 cv = GvCVu(sub);
1959 0 0 else if (!SvOK(sub))
0 0 else if (!SvOK(sub))
0 0 else if (!SvOK(sub))
1961 0 0 else if (PL_op->op_private & HINT_STRICT_REFS)
1962 0 0 croak("Can't use string (\"%.32s\") as %s ref while \"strict refs\" in use",
1964 0 0 else if ((gv = gv_fetchsv(sub, FALSE, SVt_PVCV)))
1965 0 0 cv = GvCVu(gv);
1966 0 271 if (!cv)
1967 0 0 croak("Undefined subroutine %s", SvPV_nolen(sub));
1968 0 271 if (SvTYPE(cv) != SVt_PVCV && SvTYPE(cv) != SVt_PVFM)
0 0 if (SvTYPE(cv) != SVt_PVCV && SvTYPE(cv) != SVt_PVFM)
1970 10566 271 for (s = nameptr; s <= nameptr + namelen; s++) {
1971 10295 271 if (s > nameptr && *s == ':' && s[-1] == ':') {
1568 8727 if (s > nameptr && *s == ':' && s[-1] == ':') {
783 785 if (s > nameptr && *s == ':' && s[-1] == ':') {
1974 1 782 if (quotes_seen)
1977 9512 271 else if (s > nameptr && *s != '\0' && s[-1] == '\'') {
9239 273 else if (s > nameptr && *s != '\0' && s[-1] == '\'') {
2 9237 else if (s > nameptr && *s != '\0' && s[-1] == '\'') {
1980 1 1 if (quotes_seen++)
1985 262 9 if (end) {
1987 1 261 if (need_subst) {
1988 1 0 STRLEN length = end - nameptr + quotes_seen - (*end == '\'' ? 1 : 0);
1993 36 1 for (i = 0, j = 0; j < end - nameptr; ++i, ++j) {
1994 1 35 if (nameptr[j] == '\'') {
2011 271 0 if (PL_DBsub && CvGV(cv)) {
271 0 if (PL_DBsub && CvGV(cv)) {
2018 270 1 if (oldhv) {
2019 270 0 SV* old_full_name = sv_2mortal(newSVpvn_flags(HvNAME(oldhv), HvNAMELEN_get(oldhv), HvNAMEUTF8(oldhv) ? SVf_UTF8 : 0));
270 0 SV* old_full_name = sv_2mortal(newSVpvn_flags(HvNAME(oldhv), HvNAMELEN_get(oldhv), HvNAMEUTF8(oldhv) ? SVf_UTF8 : 0));
0 270 SV* old_full_name = sv_2mortal(newSVpvn_flags(HvNAME(oldhv), HvNAMELEN_get(oldhv), HvNAMEUTF8(oldhv) ? SVf_UTF8 : 0));
0 0 SV* old_full_name = sv_2mortal(newSVpvn_flags(HvNAME(oldhv), HvNAMELEN_get(oldhv), HvNAMEUTF8(oldhv) ? SVf_UTF8 : 0));
270 0 SV* old_full_name = sv_2mortal(newSVpvn_flags(HvNAME(oldhv), HvNAMELEN_get(oldhv), HvNAMEUTF8(oldhv) ? SVf_UTF8 : 0));
0 270 SV* old_full_name = sv_2mortal(newSVpvn_flags(HvNAME(oldhv), HvNAMELEN_get(oldhv), HvNAMEUTF8(oldhv) ? SVf_UTF8 : 0));
0 270 SV* old_full_name = sv_2mortal(newSVpvn_flags(HvNAME(oldhv), HvNAMELEN_get(oldhv), HvNAMEUTF8(oldhv) ? SVf_UTF8 : 0));
0 270 SV* old_full_name = sv_2mortal(newSVpvn_flags(HvNAME(oldhv), HvNAMELEN_get(oldhv), HvNAMEUTF8(oldhv) ? SVf_UTF8 : 0));
270 0 SV* old_full_name = sv_2mortal(newSVpvn_flags(HvNAME(oldhv), HvNAMELEN_get(oldhv), HvNAMEUTF8(oldhv) ? SVf_UTF8 : 0));
270 0 SV* old_full_name = sv_2mortal(newSVpvn_flags(HvNAME(oldhv), HvNAMELEN_get(oldhv), HvNAMEUTF8(oldhv) ? SVf_UTF8 : 0));
0 270 SV* old_full_name = sv_2mortal(newSVpvn_flags(HvNAME(oldhv), HvNAMELEN_get(oldhv), HvNAMEUTF8(oldhv) ? SVf_UTF8 : 0));
0 0 SV* old_full_name = sv_2mortal(newSVpvn_flags(HvNAME(oldhv), HvNAMELEN_get(oldhv), HvNAMEUTF8(oldhv) ? SVf_UTF8 : 0));
270 0 SV* old_full_name = sv_2mortal(newSVpvn_flags(HvNAME(oldhv), HvNAMELEN_get(oldhv), HvNAMEUTF8(oldhv) ? SVf_UTF8 : 0));
0 270 SV* old_full_name = sv_2mortal(newSVpvn_flags(HvNAME(oldhv), HvNAMELEN_get(oldhv), HvNAMEUTF8(oldhv) ? SVf_UTF8 : 0));
270 0 SV* old_full_name = sv_2mortal(newSVpvn_flags(HvNAME(oldhv), HvNAMELEN_get(oldhv), HvNAMEUTF8(oldhv) ? SVf_UTF8 : 0));
270 0 SV* old_full_name = sv_2mortal(newSVpvn_flags(HvNAME(oldhv), HvNAMELEN_get(oldhv), HvNAMEUTF8(oldhv) ? SVf_UTF8 : 0));
0 270 SV* old_full_name = sv_2mortal(newSVpvn_flags(HvNAME(oldhv), HvNAMELEN_get(oldhv), HvNAMEUTF8(oldhv) ? SVf_UTF8 : 0));
0 0 SV* old_full_name = sv_2mortal(newSVpvn_flags(HvNAME(oldhv), HvNAMELEN_get(oldhv), HvNAMEUTF8(oldhv) ? SVf_UTF8 : 0));
270 0 SV* old_full_name = sv_2mortal(newSVpvn_flags(HvNAME(oldhv), HvNAMELEN_get(oldhv), HvNAMEUTF8(oldhv) ? SVf_UTF8 : 0));
0 270 SV* old_full_name = sv_2mortal(newSVpvn_flags(HvNAME(oldhv), HvNAMELEN_get(oldhv), HvNAMEUTF8(oldhv) ? SVf_UTF8 : 0));
2021 0 270 sv_catpvn_flags(old_full_name, GvNAME(oldgv), GvNAMELEN(oldgv), GvNAMEUTF8(oldgv) ? SV_CATUTF8 : SV_CATBYTES);
2026 267 4 if (old_data && HeVAL(old_data)) {
267 0 if (old_data && HeVAL(old_data)) {
2028 267 0 SV* new_full_name = sv_2mortal(newSVpvn_flags(HvNAME(stash), HvNAMELEN_get(stash), HvNAMEUTF8(stash) ? SVf_UTF8 : 0));
267 0 SV* new_full_name = sv_2mortal(newSVpvn_flags(HvNAME(stash), HvNAMELEN_get(stash), HvNAMEUTF8(stash) ? SVf_UTF8 : 0));
0 267 SV* new_full_name = sv_2mortal(newSVpvn_flags(HvNAME(stash), HvNAMELEN_get(stash), HvNAMEUTF8(stash) ? SVf_UTF8 : 0));
0 0 SV* new_full_name = sv_2mortal(newSVpvn_flags(HvNAME(stash), HvNAMELEN_get(stash), HvNAMEUTF8(stash) ? SVf_UTF8 : 0));
267 0 SV* new_full_name = sv_2mortal(newSVpvn_flags(HvNAME(stash), HvNAMELEN_get(stash), HvNAMEUTF8(stash) ? SVf_UTF8 : 0));
0 267 SV* new_full_name = sv_2mortal(newSVpvn_flags(HvNAME(stash), HvNAMELEN_get(stash), HvNAMEUTF8(stash) ? SVf_UTF8 : 0));
0 267 SV* new_full_name = sv_2mortal(newSVpvn_flags(HvNAME(stash), HvNAMELEN_get(stash), HvNAMEUTF8(stash) ? SVf_UTF8 : 0));
4 263 SV* new_full_name = sv_2mortal(newSVpvn_flags(HvNAME(stash), HvNAMELEN_get(stash), HvNAMEUTF8(stash) ? SVf_UTF8 : 0));
267 0 SV* new_full_name = sv_2mortal(newSVpvn_flags(HvNAME(stash), HvNAMELEN_get(stash), HvNAMEUTF8(stash) ? SVf_UTF8 : 0));
267 0 SV* new_full_name = sv_2mortal(newSVpvn_flags(HvNAME(stash), HvNAMELEN_get(stash), HvNAMEUTF8(stash) ? SVf_UTF8 : 0));
0 267 SV* new_full_name = sv_2mortal(newSVpvn_flags(HvNAME(stash), HvNAMELEN_get(stash), HvNAMEUTF8(stash) ? SVf_UTF8 : 0));
0 0 SV* new_full_name = sv_2mortal(newSVpvn_flags(HvNAME(stash), HvNAMELEN_get(stash), HvNAMEUTF8(stash) ? SVf_UTF8 : 0));
267 0 SV* new_full_name = sv_2mortal(newSVpvn_flags(HvNAME(stash), HvNAMELEN_get(stash), HvNAMEUTF8(stash) ? SVf_UTF8 : 0));
0 267 SV* new_full_name = sv_2mortal(newSVpvn_flags(HvNAME(stash), HvNAMELEN_get(stash), HvNAMEUTF8(stash) ? SVf_UTF8 : 0));
267 0 SV* new_full_name = sv_2mortal(newSVpvn_flags(HvNAME(stash), HvNAMELEN_get(stash), HvNAMEUTF8(stash) ? SVf_UTF8 : 0));
267 0 SV* new_full_name = sv_2mortal(newSVpvn_flags(HvNAME(stash), HvNAMELEN_get(stash), HvNAMEUTF8(stash) ? SVf_UTF8 : 0));
0 267 SV* new_full_name = sv_2mortal(newSVpvn_flags(HvNAME(stash), HvNAMELEN_get(stash), HvNAMEUTF8(stash) ? SVf_UTF8 : 0));
0 0 SV* new_full_name = sv_2mortal(newSVpvn_flags(HvNAME(stash), HvNAMELEN_get(stash), HvNAMEUTF8(stash) ? SVf_UTF8 : 0));
267 0 SV* new_full_name = sv_2mortal(newSVpvn_flags(HvNAME(stash), HvNAMELEN_get(stash), HvNAMEUTF8(stash) ? SVf_UTF8 : 0));
0 267 SV* new_full_name = sv_2mortal(newSVpvn_flags(HvNAME(stash), HvNAMELEN_get(stash), HvNAMEUTF8(stash) ? SVf_UTF8 : 0));
2030 4 263 sv_catpvn_flags(new_full_name, nameptr, s - nameptr, utf8flag ? SV_CATUTF8 : SV_CATBYTES);
2032 0 267 if (!hv_store_ent(DBsub, new_full_name, old_val, 0))
2048 6 265 while (mg && mg->mg_virtual != &subname_vtbl)
0 6 while (mg && mg->mg_virtual != &subname_vtbl)
2050 265 6 if (!mg) {
2057 6 265 if (mg->mg_flags & MGf_REFCOUNTED)
2078 0 8 if (!SvROK(code) && SvGMAGICAL(code))
0 0 if (!SvROK(code) && SvGMAGICAL(code))
2081 8 0 if(!SvROK(code) || SvTYPE(cv = (CV *)SvRV(code)) != SVt_PVCV)
1 7 if(!SvROK(code) || SvTYPE(cv = (CV *)SvRV(code)) != SVt_PVCV)
2084 0 7 if(!(gv = CvGV(cv)))
2087 6 1 if(GvSTASH(gv))
2088 6 0 stashname = HvNAME(GvSTASH(gv));
6 0 stashname = HvNAME(GvSTASH(gv));
0 6 stashname = HvNAME(GvSTASH(gv));
0 0 stashname = HvNAME(GvSTASH(gv));
6 0 stashname = HvNAME(GvSTASH(gv));
0 6 stashname = HvNAME(GvSTASH(gv));
2108 38 0 if(SvTYPE(rmcgv) != SVt_PVGV)
2110 0 38 rmcsv = GvSVn(rmcgv);