Branch Coverage

stolen_chunk_of_toke.c
Criterion Covered Total %
branch 97 608 15.9


line true false branch
231 0 0 if (!PL_rsfp_filters)
233 0 0 if (idx > AvFILLp(PL_rsfp_filters)) { /* Any more filters? */
238 0 0 if (maxlen) {
244 0 0 SvGROW(buf_sv, (STRLEN)(old_len + maxlen)) ;
0 0 SvGROW(buf_sv, (STRLEN)(old_len + maxlen)) ;
245 0 0 if ((len = PerlIO_read(PL_rsfp, SvPVX(buf_sv) + old_len, maxlen)) <= 0){
246 0 0 if (PerlIO_error(PL_rsfp))
254 0 0 if (sv_gets(buf_sv, PL_rsfp, SvCUR(buf_sv)) == NULL) {
255 0 0 if (PerlIO_error(PL_rsfp))
264 0 0 if ( (datasv = FILTER_DATA(idx)) == &PL_sv_undef) {
0 0 if ( (datasv = FILTER_DATA(idx)) == &PL_sv_undef) {
289 32 0 if (PL_rsfp_filters) {
290 20 12 if (!append)
292 32 0 if (FILTER_READ(0, sv, 0) > 0)
310 0 506 if (PL_lex_formbrack && PL_lex_brackets <= PL_lex_formbrack) {
0 0 if (PL_lex_formbrack && PL_lex_brackets <= PL_lex_formbrack) {
311 0 0 while (s < PL_bufend && SPACE_OR_TAB(*s))
0 0 while (s < PL_bufend && SPACE_OR_TAB(*s))
0 0 while (s < PL_bufend && SPACE_OR_TAB(*s))
319 933 13 while (s < PL_bufend && isSPACE(*s)) {
428 505 while (s < PL_bufend && isSPACE(*s)) {
320 6 422 if (*s++ == '\n' && ((incline == 2) || (PL_in_eval && !PL_rsfp && !incline)))
3 3 if (*s++ == '\n' && ((incline == 2) || (PL_in_eval && !PL_rsfp && !incline)))
0 3 if (*s++ == '\n' && ((incline == 2) || (PL_in_eval && !PL_rsfp && !incline)))
0 0 if (*s++ == '\n' && ((incline == 2) || (PL_in_eval && !PL_rsfp && !incline)))
0 0 if (*s++ == '\n' && ((incline == 2) || (PL_in_eval && !PL_rsfp && !incline)))
325 505 13 if (s < PL_bufend && *s == '#') {
5 500 if (s < PL_bufend && *s == '#') {
326 47 0 while (s < PL_bufend && *s != '\n')
42 5 while (s < PL_bufend && *s != '\n')
328 5 0 if (s < PL_bufend) {
330 0 5 if (PL_in_eval && !PL_rsfp && !incline) {
0 0 if (PL_in_eval && !PL_rsfp && !incline) {
0 0 if (PL_in_eval && !PL_rsfp && !incline) {
340 509 15 while (s < PL_bufend && isSPACE(*s)) {
6 503 while (s < PL_bufend && isSPACE(*s)) {
341 0 6 if (*s++ == '\n' && PL_in_eval && !PL_rsfp && !incline)
0 0 if (*s++ == '\n' && PL_in_eval && !PL_rsfp && !incline)
0 0 if (*s++ == '\n' && PL_in_eval && !PL_rsfp && !incline)
0 0 if (*s++ == '\n' && PL_in_eval && !PL_rsfp && !incline)
349 15 503 if (s < PL_bufend || !PL_rsfp || PL_lex_inwhat ||
12 3 if (s < PL_bufend || !PL_rsfp || PL_lex_inwhat ||
12 0 if (s < PL_bufend || !PL_rsfp || PL_lex_inwhat ||
0 12 if (s < PL_bufend || !PL_rsfp || PL_lex_inwhat ||
354 0 12 if ((s = filter_gets(PL_linestr, PL_rsfp,
358 0 0 if (PL_minus_p) {
363 0 0 else if (PL_minus_n) {
389 0 0 if ((PerlIO*)PL_rsfp == PerlIO_stdin())
401 0 12 if (PL_last_uni)
403 0 12 if (PL_last_lop)
410 0 12 if (PL_last_uni)
412 0 12 if (PL_last_lop)
414 3 9 if (!incline)
420 0 12 if (PERLDB_LINE && PL_curstash != PL_debstash) {
0 0 if (PERLDB_LINE && PL_curstash != PL_debstash) {
421 0 0 AV *fileav = CopFILEAV(PL_curcop);
422 0 0 if (fileav) {
440 0 457 if (d >= e)
442 457 0 if (UTF && isIDFIRST_utf8_safe((const U8*) s, (const U8*) PL_bufend)) {
0 457 if (UTF && isIDFIRST_utf8_safe((const U8*) s, (const U8*) PL_bufend)) {
0 0 if (UTF && isIDFIRST_utf8_safe((const U8*) s, (const U8*) PL_bufend)) {
0 457 if (UTF && isIDFIRST_utf8_safe((const U8*) s, (const U8*) PL_bufend)) {
0 0 if (UTF && isIDFIRST_utf8_safe((const U8*) s, (const U8*) PL_bufend)) {
0 0 if (UTF && isIDFIRST_utf8_safe((const U8*) s, (const U8*) PL_bufend)) {
0 0 if (UTF && isIDFIRST_utf8_safe((const U8*) s, (const U8*) PL_bufend)) {
0 0 if (UTF && isIDFIRST_utf8_safe((const U8*) s, (const U8*) PL_bufend)) {
0 0 if (UTF && isIDFIRST_utf8_safe((const U8*) s, (const U8*) PL_bufend)) {
0 0 if (UTF && isIDFIRST_utf8_safe((const U8*) s, (const U8*) PL_bufend)) {
0 0 if (UTF && isIDFIRST_utf8_safe((const U8*) s, (const U8*) PL_bufend)) {
449 0 0 while (isIDCONT_utf8_safe((const U8*) t, (const U8*) PL_bufend)) {
0 0 while (isIDCONT_utf8_safe((const U8*) t, (const U8*) PL_bufend)) {
0 0 while (isIDCONT_utf8_safe((const U8*) t, (const U8*) PL_bufend)) {
0 0 while (isIDCONT_utf8_safe((const U8*) t, (const U8*) PL_bufend)) {
0 0 while (isIDCONT_utf8_safe((const U8*) t, (const U8*) PL_bufend)) {
452 0 0 if (d + (t - s) > e)
458 210 247 else if (isALNUM(*s))
461 969 210 } while (isWORDCHAR_A(*s) && d < e);
969 0 } while (isWORDCHAR_A(*s) && d < e);
462 0 247 else if ( *s == '\''
0 0 else if ( *s == '\''
0 0 else if ( *s == '\''
0 0 else if ( *s == '\''
0 0 else if ( *s == '\''
0 0 else if ( *s == '\''
463 0 0 && allow_package
464 0 0 && isIDFIRST_lazy_if_safe(s+1, PL_bufend, UTF))
0 0 && isIDFIRST_lazy_if_safe(s+1, PL_bufend, UTF))
0 0 && isIDFIRST_lazy_if_safe(s+1, PL_bufend, UTF))
0 0 && isIDFIRST_lazy_if_safe(s+1, PL_bufend, UTF))
0 0 && isIDFIRST_lazy_if_safe(s+1, PL_bufend, UTF))
0 0 && isIDFIRST_lazy_if_safe(s+1, PL_bufend, UTF))
0 0 && isIDFIRST_lazy_if_safe(s+1, PL_bufend, UTF))
0 0 && isIDFIRST_lazy_if_safe(s+1, PL_bufend, UTF))
470 8 239 else if (*s == ':' && s[1] == ':' && allow_package && s[2] != '$') {
8 0 else if (*s == ':' && s[1] == ':' && allow_package && s[2] != '$') {
8 0 else if (*s == ':' && s[1] == ':' && allow_package && s[2] != '$') {
8 0 else if (*s == ':' && s[1] == ':' && allow_package && s[2] != '$') {
501 6 0 if (*s++ != '#')
503 0 0 while (SPACE_OR_TAB(*s)) s++;
0 0 while (SPACE_OR_TAB(*s)) s++;
504 0 0 if (strnEQ(s, "line", 4))
508 0 0 if (SPACE_OR_TAB(*s))
0 0 if (SPACE_OR_TAB(*s))
512 0 0 while (SPACE_OR_TAB(*s)) s++;
0 0 while (SPACE_OR_TAB(*s)) s++;
513 0 0 if (!isDIGIT(*s))
516 0 0 while (isDIGIT(*s))
518 0 0 while (SPACE_OR_TAB(*s))
0 0 while (SPACE_OR_TAB(*s))
520 0 0 if (*s == '"' && (t = strchr(s+1, '"'))) {
0 0 if (*s == '"' && (t = strchr(s+1, '"'))) {
525 0 0 for (t = s; !isSPACE(*t); t++) ;
528 0 0 while (SPACE_OR_TAB(*e) || *e == '\r' || *e == '\f')
0 0 while (SPACE_OR_TAB(*e) || *e == '\r' || *e == '\f')
0 0 while (SPACE_OR_TAB(*e) || *e == '\r' || *e == '\f')
0 0 while (SPACE_OR_TAB(*e) || *e == '\r' || *e == '\f')
530 0 0 if (*e != '\n' && *e != '\0')
0 0 if (*e != '\n' && *e != '\0')
535 0 0 if (t - s > 0) {
649 0 60 if (isSPACE(*s))
657 60 0 if (!UTF) {
0 60 if (!UTF) {
0 0 if (!UTF) {
60 0 if (!UTF) {
662 0 0 termcode = utf8_to_uvchr_buf((U8*)s, PL_bufend, &termlen);
664 0 0 if (!UTF8_IS_INVARIANT(term))
673 60 0 if (term && (tmps = strchr("([{< )]}> )]}>",term)))
60 0 if (term && (tmps = strchr("([{< )]}> )]}>",term)))
686 0 60 if (keep_delims)
762 80 0 SvGROW(sv, SvCUR(sv) + (PL_bufend - s) + 1);
0 80 SvGROW(sv, SvCUR(sv) + (PL_bufend - s) + 1);
767 0 80 if (PL_multi_open == PL_multi_close) {
768 0 0 for (; s < PL_bufend; s++,to++) {
770 0 0 if (*s == '\n' && !PL_rsfp)
0 0 if (*s == '\n' && !PL_rsfp)
773 0 0 if (*s == '\\' && s+1 < PL_bufend && term != '\\') {
0 0 if (*s == '\\' && s+1 < PL_bufend && term != '\\') {
0 0 if (*s == '\\' && s+1 < PL_bufend && term != '\\') {
774 0 0 if (!keep_quoted && s[1] == term)
0 0 if (!keep_quoted && s[1] == term)
782 0 0 else if (*s == term) {
783 0 0 if (termlen == 1)
785 0 0 if (s+termlen <= PL_bufend && memEQ(s, (char*)termstr, termlen))
0 0 if (s+termlen <= PL_bufend && memEQ(s, (char*)termstr, termlen))
788 0 0 else if (!has_utf8 && !UTF8_IS_INVARIANT((U8)*s) && UTF)
0 0 else if (!has_utf8 && !UTF8_IS_INVARIANT((U8)*s) && UTF)
0 0 else if (!has_utf8 && !UTF8_IS_INVARIANT((U8)*s) && UTF)
0 0 else if (!has_utf8 && !UTF8_IS_INVARIANT((U8)*s) && UTF)
0 0 else if (!has_utf8 && !UTF8_IS_INVARIANT((U8)*s) && UTF)
0 0 else if (!has_utf8 && !UTF8_IS_INVARIANT((U8)*s) && UTF)
800 374 22 for (; s < PL_bufend; s++,to++) {
802 22 352 if (*s == '\n' && !PL_rsfp)
2 20 if (*s == '\n' && !PL_rsfp)
805 0 374 if (*s == '\\' && s+1 < PL_bufend) {
0 0 if (*s == '\\' && s+1 < PL_bufend) {
806 0 0 if (!keep_quoted &&
0 0 if (!keep_quoted &&
807 0 0 ((s[1] == PL_multi_open) || (s[1] == PL_multi_close)))
813 58 316 else if (*s == PL_multi_close && --brackets <= 0)
0 58 else if (*s == PL_multi_close && --brackets <= 0)
815 0 316 else if (*s == PL_multi_open)
817 316 0 else if (!has_utf8 && !UTF8_IS_INVARIANT((U8)*s) && UTF)
0 316 else if (!has_utf8 && !UTF8_IS_INVARIANT((U8)*s) && UTF)
0 0 else if (!has_utf8 && !UTF8_IS_INVARIANT((U8)*s) && UTF)
0 0 else if (!has_utf8 && !UTF8_IS_INVARIANT((U8)*s) && UTF)
0 0 else if (!has_utf8 && !UTF8_IS_INVARIANT((U8)*s) && UTF)
0 0 else if (!has_utf8 && !UTF8_IS_INVARIANT((U8)*s) && UTF)
830 58 22 if (s < PL_bufend)
834 20 2 if (to - SvPVX_const(sv) >= 2) {
835 0 20 if ((to[-2] == '\r' && to[-1] == '\n') ||
0 0 if ((to[-2] == '\r' && to[-1] == '\n') ||
2 18 if ((to[-2] == '\r' && to[-1] == '\n') ||
836 0 2 (to[-2] == '\n' && to[-1] == '\r'))
842 0 20 else if (to[-1] == '\r')
845 2 0 else if (to - SvPVX_const(sv) == 1 && to[-1] == '\r')
0 2 else if (to - SvPVX_const(sv) == 1 && to[-1] == '\r')
863 0 20 if (PERLDB_LINE && PL_curstash != PL_debstash) {
0 0 if (PERLDB_LINE && PL_curstash != PL_debstash) {
864 0 0 AV *fileav = CopFILEAV(PL_curcop);
865 0 0 if (fileav) {
883 0 58 if (keep_delims)
887 0 58 if (has_utf8 || PL_encoding)
893 58 0 if (SvCUR(sv) + 5 < SvLEN(sv)) {
907 0 58 if (PL_lex_stuff)
924 0 0 if (isSPACE(*s))
928 0 0 if (isDIGIT(*s)) {
929 0 0 while (isDIGIT(*s)) {
930 0 0 if (d >= e)
937 0 0 if (d >= e)
939 0 0 if (UTF && isIDFIRST_utf8_safe((const U8*) s, (const U8*) PL_bufend)) {
0 0 if (UTF && isIDFIRST_utf8_safe((const U8*) s, (const U8*) PL_bufend)) {
0 0 if (UTF && isIDFIRST_utf8_safe((const U8*) s, (const U8*) PL_bufend)) {
0 0 if (UTF && isIDFIRST_utf8_safe((const U8*) s, (const U8*) PL_bufend)) {
0 0 if (UTF && isIDFIRST_utf8_safe((const U8*) s, (const U8*) PL_bufend)) {
0 0 if (UTF && isIDFIRST_utf8_safe((const U8*) s, (const U8*) PL_bufend)) {
0 0 if (UTF && isIDFIRST_utf8_safe((const U8*) s, (const U8*) PL_bufend)) {
0 0 if (UTF && isIDFIRST_utf8_safe((const U8*) s, (const U8*) PL_bufend)) {
0 0 if (UTF && isIDFIRST_utf8_safe((const U8*) s, (const U8*) PL_bufend)) {
0 0 if (UTF && isIDFIRST_utf8_safe((const U8*) s, (const U8*) PL_bufend)) {
0 0 if (UTF && isIDFIRST_utf8_safe((const U8*) s, (const U8*) PL_bufend)) {
946 0 0 while (isIDCONT_utf8_safe((const U8*) t, (const U8*) PL_bufend)) {
0 0 while (isIDCONT_utf8_safe((const U8*) t, (const U8*) PL_bufend)) {
0 0 while (isIDCONT_utf8_safe((const U8*) t, (const U8*) PL_bufend)) {
0 0 while (isIDCONT_utf8_safe((const U8*) t, (const U8*) PL_bufend)) {
0 0 while (isIDCONT_utf8_safe((const U8*) t, (const U8*) PL_bufend)) {
949 0 0 if (d + (t - s) > e)
955 0 0 else if (isALNUM(*s))
958 0 0 } while (isWORDCHAR_A(*s) && d < e);
0 0 } while (isWORDCHAR_A(*s) && d < e);
959 0 0 else if (*s == '\'' && isIDFIRST_lazy_if_safe(s+1,send,UTF)) {
0 0 else if (*s == '\'' && isIDFIRST_lazy_if_safe(s+1,send,UTF)) {
0 0 else if (*s == '\'' && isIDFIRST_lazy_if_safe(s+1,send,UTF)) {
0 0 else if (*s == '\'' && isIDFIRST_lazy_if_safe(s+1,send,UTF)) {
0 0 else if (*s == '\'' && isIDFIRST_lazy_if_safe(s+1,send,UTF)) {
0 0 else if (*s == '\'' && isIDFIRST_lazy_if_safe(s+1,send,UTF)) {
0 0 else if (*s == '\'' && isIDFIRST_lazy_if_safe(s+1,send,UTF)) {
0 0 else if (*s == '\'' && isIDFIRST_lazy_if_safe(s+1,send,UTF)) {
0 0 else if (*s == '\'' && isIDFIRST_lazy_if_safe(s+1,send,UTF)) {
0 0 else if (*s == '\'' && isIDFIRST_lazy_if_safe(s+1,send,UTF)) {
0 0 else if (*s == '\'' && isIDFIRST_lazy_if_safe(s+1,send,UTF)) {
0 0 else if (*s == '\'' && isIDFIRST_lazy_if_safe(s+1,send,UTF)) {
0 0 else if (*s == '\'' && isIDFIRST_lazy_if_safe(s+1,send,UTF)) {
0 0 else if (*s == '\'' && isIDFIRST_lazy_if_safe(s+1,send,UTF)) {
964 0 0 else if (*s == ':' && s[1] == ':') {
0 0 else if (*s == ':' && s[1] == ':') {
974 0 0 if (*d) {
975 0 0 if (PL_lex_state != LEX_NORMAL)
979 0 0 if (*s == '$' && s[1] &&
0 0 if (*s == '$' && s[1] &&
980 0 0 ( isALNUM_lazy_if_safe(s+1,send,UTF)
0 0 ( isALNUM_lazy_if_safe(s+1,send,UTF)
0 0 ( isALNUM_lazy_if_safe(s+1,send,UTF)
0 0 ( isALNUM_lazy_if_safe(s+1,send,UTF)
0 0 ( isALNUM_lazy_if_safe(s+1,send,UTF)
0 0 ( isALNUM_lazy_if_safe(s+1,send,UTF)
0 0 ( isALNUM_lazy_if_safe(s+1,send,UTF)
0 0 ( isALNUM_lazy_if_safe(s+1,send,UTF)
0 0 ( isALNUM_lazy_if_safe(s+1,send,UTF)
981 0 0 || s[1] == '$' || s[1] == '{' || strnEQ(s+1,"::",2)) )
0 0 || s[1] == '$' || s[1] == '{' || strnEQ(s+1,"::",2)) )
0 0 || s[1] == '$' || s[1] == '{' || strnEQ(s+1,"::",2)) )
985 0 0 if (*s == '{') {
992 0 0 if (s < send)
995 0 0 if (*d == '^' && *s && isCONTROLVAR(*s)) {
0 0 if (*d == '^' && *s && isCONTROLVAR(*s)) {
0 0 if (*d == '^' && *s && isCONTROLVAR(*s)) {
0 0 if (*d == '^' && *s && isCONTROLVAR(*s)) {
996 0 0 *d = toCTRL(*s);
999 0 0 if (bracket) {
1000 0 0 if (isSPACE(s[-1])) {
1001 0 0 while (s < send) {
1003 0 0 if (!SPACE_OR_TAB(ch)) {
0 0 if (!SPACE_OR_TAB(ch)) {
1009 0 0 if (isIDFIRST_lazy_if_safe(d,d+destlen,UTF)) {
0 0 if (isIDFIRST_lazy_if_safe(d,d+destlen,UTF)) {
0 0 if (isIDFIRST_lazy_if_safe(d,d+destlen,UTF)) {
0 0 if (isIDFIRST_lazy_if_safe(d,d+destlen,UTF)) {
0 0 if (isIDFIRST_lazy_if_safe(d,d+destlen,UTF)) {
0 0 if (isIDFIRST_lazy_if_safe(d,d+destlen,UTF)) {
0 0 if (isIDFIRST_lazy_if_safe(d,d+destlen,UTF)) {
0 0 if (isIDFIRST_lazy_if_safe(d,d+destlen,UTF)) {
0 0 if (isIDFIRST_lazy_if_safe(d,d+destlen,UTF)) {
0 0 if (isIDFIRST_lazy_if_safe(d,d+destlen,UTF)) {
1011 0 0 if (UTF) {
0 0 if (UTF) {
0 0 if (UTF) {
0 0 if (UTF) {
1013 0 0 while ( ( e < send
0 0 while ( ( e < send
0 0 while ( ( e < send
0 0 while ( ( e < send
0 0 while ( ( e < send
1014 0 0 && isIDFIRST_utf8_safe(e, send)
0 0 && isIDFIRST_utf8_safe(e, send)
0 0 && isIDFIRST_utf8_safe(e, send)
1015 0 0 || *e == ':'))
1018 0 0 while (e < send && isIDFIRST_utf8_safe(e, send))
0 0 while (e < send && isIDFIRST_utf8_safe(e, send))
0 0 while (e < send && isIDFIRST_utf8_safe(e, send))
0 0 while (e < send && isIDFIRST_utf8_safe(e, send))
0 0 while (e < send && isIDFIRST_utf8_safe(e, send))
0 0 while (e < send && isIDFIRST_utf8_safe(e, send))
0 0 while (e < send && isIDFIRST_utf8_safe(e, send))
0 0 while (e < send && isIDFIRST_utf8_safe(e, send))
1026 0 0 while ((isALNUM(*s) || *s == ':') && d < e)
0 0 while ((isALNUM(*s) || *s == ':') && d < e)
0 0 while ((isALNUM(*s) || *s == ':') && d < e)
1028 0 0 if (d >= e)
1032 0 0 while (s < send && SPACE_OR_TAB(*s)) s++;
0 0 while (s < send && SPACE_OR_TAB(*s)) s++;
0 0 while (s < send && SPACE_OR_TAB(*s)) s++;
1033 0 0 if ((*s == '[' || (*s == '{' && strNE(dest, "sub")))) {
0 0 if ((*s == '[' || (*s == '{' && strNE(dest, "sub")))) {
0 0 if ((*s == '[' || (*s == '{' && strNE(dest, "sub")))) {
1052 0 0 else if (!isALNUM(*d) && !isPRINT(*d) /* isCTRL(d) */
0 0 else if (!isALNUM(*d) && !isPRINT(*d) /* isCTRL(d) */
1053 0 0 && isALNUM(*s))
1056 0 0 while (isALNUM(*s) && d < e) {
0 0 while (isALNUM(*s) && d < e) {
1059 0 0 if (d >= e)
1063 0 0 if (*s == '}') {
1065 0 0 if (PL_lex_state == LEX_INTERPNORMAL && !PL_lex_brackets) {
0 0 if (PL_lex_state == LEX_INTERPNORMAL && !PL_lex_brackets) {
1069 0 0 if (funny == '#')