http://qs321.pair.com?node_id=558557


in reply to is it possible to access eval() counter?

Here is a simpler approach, if you can use Inline::C:

#!/usr/bin/perl -w use strict; use Inline C => q{ int evalseq() { return PL_evalseq; }}; for (1 .. 10) { eval q{ print "in eval (", evalseq(), ")\n" }; print "outside eval (", evalseq(), ")\n"; }

Of course this delves into undocumented internals, so no guarantee that it will work with every past and future version of perl. (It may also need a pTHX or something for threaded builds, but I don't have one handy to check.)

Hugo

Replies are listed 'Best First'.
Re^2: is it possible to access eval() counter?
by Anonymous Monk on Jun 30, 2006 at 14:19 UTC
    Thanks hv :) it works :)