note
LanX
<I>> reported as RT#131930</I><P>
Thanks, the bug report shows that <C>__LINE__</C> gets confused while parsing and compiling the code, which is not the fault of the debugger.<P>
Of course a warn in the test script would have demonstrated the wrong <C>__LINE__</C> too.<P>
<H5> update</H5><P>
<I>> Bisecting this was a bit tricky,</I><P>
well, [id://11110597|with help] of the [DOC://warn|<tt>warn</tt>] statements hinting to __LINE__, it would have been much easier. <P>
<H5> update</H5><P>
turns out that the git on my win-box runs under v5.26, and it's easily demonstrated there: <P>
<c>
$ perl -v
This is perl 5, version 26, subversion 2 (v5.26.2) built for x86_64-msys-thread-multi
$ perl
warn "before";
s(x)
(y);
warn "after";
__END__
before at - line 1.
after at - line 3.
$ perl
warn "before";
s/x/y/;
warn "after";
__END__
before at - line 1.
after at - line 3.
$ perl -MO=Concise
warn "before";
s(x)
(y);
warn "after";
__END__
d <@> leave[1 ref] vKP/REFC ->(end)
1 <0> enter ->2
2 <;> nextstate(main 1 -:1) v:{ ->3
5 <@> warn[t1] vK/1 ->6
3 <0> pushmark s ->4
4 <$> const[PV "before"] s ->5
6 <;> nextstate(main 1 -:2) v:{ ->7
8 </> subst(/"x"/) vK ->9
7 <$> const[PV "y"] s ->8
9 <;> nextstate(main 1 -:3) v:{ ->a # should be :4 not :3
c <@> warn[t2] vK/1 ->d
a <0> pushmark s ->b
b <$> const[PV "after"] s ->c
- syntax OK
</c><P>
<div class="pmsig"><div class="pmsig-708738">
<p>Cheers Rolf<br>
<sub>(addicted to the Perl Programming Language :)
<br> <i> [id://1153804|Wikisyntax for the Monastery]</i>
<small><strike>Football</strike>Perl is like chess, only without the dice</small>
</sub> <P>
</div></div><!-- Wiki2Monks {"version":1.142} -->
11110568
11110616