On Thu, Jan 03, 2008 at 07:20:38AM -0800, Ovid wrote:

> We couldn't reproduce the segfaults in the debugger or with
> Devel::Trace, but after a lot of work, a colleague and I found the
> culprit:  Contextual::Return.  Like Sub::Uplevel, it overrides
> CORE::GLOBAL::caller.

That probably explains the segfaults when using Hook::LexWrap in some
circumstances as well.  A few years ago I could reliably make perl
segfault by calling a wrapped function in void context - that is, just
throwing the result away.  At the time, the fix was:

  my $rubbish = wrapped_subroutine(...);

Unfortunately I forget what version of 5.8.x this was.  It might be in
the p5p archives.

-- 
David Cantrell | top google result for "internet beard fetish club"

  For every vengeance, there is an equal and opposite revengeance.
                                            -- Cartoon Law X

Reply via email to