in reply to Recursion Woes

Can you give a specific test-case that causes it to crash? I tried a couple of examples with 5.8.3 under linux and didn't get a problem.

In general, lexical variables tend to cause problems within deferred evals: I suspect that by the time the evals get compiled perl has already decided that the file-scope lexicals are not referred to, and thrown them away.

So, once you have a test-case, I'd suggest replacing 'my' with 'our' for all those file-scope variables (from $TERM to %OPS), and see if the test-case then passes.

Hugo

Replies are listed 'Best First'.
Re: Re: Recursion Woes
by ColonelPanic (Friar) on May 12, 2004 at 13:20 UTC
    Thanks for your suggestions. See the post above for an example that causes a crash. I did try using our, but it didn't make a difference. The lexicals are not getting thrown away, because the program produces the correct output. It is just a matter of the interpreter crashing after the script is finished, probably during garbage collection.


    When's the last time you used duct tape on a duct? --Larry Wall