David Dyck <[EMAIL PROTECTED]> wrote:
:On Sun, 2 Mar 2003 at 14:32 +0100, Andreas J. Koenig <[EMAIL PROTECTED]:
:> >>>>> On Sun, 2 Mar 2003 00:22:30 -0800 (PST), David Dyck <[EMAIL PROTECTED]> said:
:>
:>   > Here's a smaller script that assume that Inline::C has
:>   > been installed and passes its test with perl 5.8.0, but
:>   > fails with todays 5.8.1.
:>
:> The infinite loop with your example program started with patch 18533
:> on the trunk.
:
:If I apply patch 18533 in reverse to regexec.c, then the infinite loop
:goes away.  Of course, that breaks the test case that was added
:to t/op/subst.t!  (I've only included the regexec.c portion
:of patch 18533)
:
:Change 18533 by [EMAIL PROTECTED] on 2003/01/21 02:15:29

I spent some time on this tonight without getting very far.

It would help a lot to remove some of the module dependencies in the
script, but I had no luck trying even to get past Inline itself -
I think if the test case could be reduced to use just RecDescent and
Text::Balanced it'd probably be quite straightforward to track down
from there.

The simplest I had with Inline was:
BEGIN {
    require Inline;
    Inline->import(qw/ Config DIRECTORY _Inline_test /);
    Inline->import('C', 'void true() { }');
    Inline->import('C', 'void true2() { }');
}

.. and I'm guessing that it is Inline itself that is requiring the
BEGIN; I don't know whether it is also intrinsic to the bug.

I probably won't have much time to look further into this for the next
few days.

Hugo

Reply via email to