diff options
-rw-r--r-- | t/comp/retainedlines.t | 5 | ||||
-rw-r--r-- | toke.c | 2 |
2 files changed, 5 insertions, 2 deletions
diff --git a/t/comp/retainedlines.t b/t/comp/retainedlines.t index 240c5b177e..25687bed9e 100644 --- a/t/comp/retainedlines.t +++ b/t/comp/retainedlines.t @@ -6,7 +6,7 @@ # we've not yet verified that use works. # use strict; -print "1..73\n"; +print "1..74\n"; my $test = 0; sub failed { @@ -157,4 +157,7 @@ for (0xA, 0) { eval qq{#line 42 "hash-line-eval"\n labadalabada()\n}; is $::{"_<hash-line-eval"}[42], " labadalabada()\n", '#line 42 "foo" in a string eval updates @{"_<foo"}'; + eval qq{#line 42 "figgle"\n#line 85 "doggo"\n labadalabada()\n}; + is $::{"_<doggo"}[85], " labadalabada()\n", + 'subsequent #line 42 "foo" in a string eval updates @{"_<foo"}'; } @@ -1585,7 +1585,7 @@ S_incline(pTHX_ const char *s) tmplen = 0; } - if (tmplen > 7 && strnEQ(cf, "(eval ", 6)) { + if (!PL_rsfp && !PL_parser->filtered) { /* must copy *{"::_<(eval N)[oldfilename:L]"} * to *{"::_<newfilename"} */ /* However, the long form of evals is only turned on by the |