petdance/scratch — Issue #892: Parrot::Pmc2c::Emitter line # error
Author: petdance
Created: 2011-11-14 06:13:54+00:00
State: open
Labels: bug, core, Pri-normal, Sev-medium

New ticket opened from comment on list in thread 'Re: Warnings on
Solaris, Pmc2c usage/design bug', from Andrew Johnson.

----

BTW, there is a fundamental problem with this very common usage of a
Parrot::Pmc2c::Emitter:

$e->emit( <<"END", __FILE__, __LINE__ + 1 );
... code ...
END

In the above usage, __LINE__ returns the line number of the line containing
the "END" marker, not that of the line containing the "emit" call, so the
#line directive it emits points to the wrong place in the source file.

Originally http://trac.parrot.org/parrot/ticket/1201 by @coke