Revision history for indirect
0.15 2009-07-08 22:55 UTC
+ Fix : Invalid constructs with the same method and package name were
not reported.
+ Fix : The error line number used to point to the end of the expression
instead of its beginning.
0.14 2009-06-04 21:55 UTC
+ Fix : Prevent bogus invalid syntaxes caused by reallocated memory
chunks. Thanks Andrew Main for reporting with a reproducible
test case.
0.13 2009-05-24 18:50 UTC
+ Add : The hook now receives the file name and the line where the
error happened in respectively $_[2] and $_[3].
+ Fix : Pass mortalized copies of the method name and object to the
hook. This seems to fix some rare crashes.
+ Fix : Work around a bug in perl 5.10.0 and lower. Thanks Andrew Main
for teaching me about this issue.
+ Fix : Report the correct file in error messages (a regression from the
previous version).
0.12 2009-05-03 14:30 UTC
+ Add : You can specify the action to execute for each indirect
construct encountered with the new "hook => $coderef" unimport()
option.
+ Chg : A ptable is now used internally for the op => position mapping.
+ Fix : The pragma is now built with thread safety features enabled
whenever possible (a notable exception is perl 5.8.x on Win32,
as something seems wrong with its context handling).
The new indirect::I_THREADSAFE() constant reflects this.
+ Fix : A negation precedence nit in indirect_ck_entersub().
+ Tst : "use/no indirect" while parsing an indirect construct.
+ Tst : Thread safety.
0.11 2009-02-08 18:35 UTC
+ Fix : Potential collisions by hashing pointers with a wrong format.
+ Upd : Resources in META.yml.
0.10 2009-01-17 12:40 UTC
Re-release 0.09_01 as stable.
0.09_01 2008-12-08 17:55 UTC
+ Fix : Invalid memory read with "${\(new Foo)}" constructs. The
corresponding test is turned back on.
+ Tst : Refinements in t/30-scope.t
0.09 2008-12-05 20:35 UTC
+ Add : Support for perl 5.8.
+ Tst : Skip a test in t/10-good.t that randomly segfaults for (I guess)
systems stricter than linux in the way they manage their memory.
0.08 2008-10-22 14:45 UTC
+ Fix : A rare edge case for package whose names are prefix of 'main'.
+ Tst : Test $$ as variable and state variables.
0.07_03 2008-10-17 20:10 UTC
+ Add : Support and tests for variables with spaces after the sigil.
+ Upd : META.yml spec updated to 1.4.
0.07_02 2008-10-15 21:10 UTC
+ Add : Support and tests for package variables.
+ Tst : Coverage improved by removing dead code.
0.07_01 2008-10-15 16:00 UTC
+ Fix : [RT #40055] : Not handling RV2SV => GV(SV) correctly, which
could cause 'no indirect; print' segfaults. Thanks Goro Fuji for
reporting.
0.06 2008-10-11 16:45 UTC
+ Doc : Nits.
+ Tst : Test "no indirect 'anything'", "foo Class->bar", and indirect
uses of exec() and system().
0.05 2008-10-02 14:40 UTC
+ Chg : Now the old check function is always called before storing an op
into the map.
+ Fix : Misc code and docs refinements.
0.04 2008-08-30 19:00 UTC
+ Fix : Clean up the op->src hash when we're done with an entersub.
+ Tst : No longer fork for testing. IPC::Cmd isn't required anymore.
0.03 2008-08-12 15:25 UTC
This release is kindly supported by Copenhagen Hotel Centrum WiFi.
+ Fix : Tests used not to pass PERL5OPTS to their kids. This lead to
failures under CPAN. I think.
+ Tst : Refinements.
0.02 2008-08-11 15:55 UTC
+ Fix : Some building failures with old gcc versions that didn't seem to
like the ((hint == 2) ? croak : warn)(msg) construct. I think.
+ Rem : Unused cruft from a previous implementation.
+ Tst : Fail more gracefully when we can't capture buffers or when the
child returned an error.
0.01 2008-08-10 20:40 UTC
First version, released on an unsuspecting world.