At 03:24 PM 6/29/2001 +0200, [EMAIL PROTECTED] wrote:
>I use Parse::RecDescent with VMS, when i create a new parser object a snd.
>time the program failed
>
>one parse object alone works fine but the second one ...
>
>my $gramm = new Parse::RecDescent ($grammar);
>...
>$gramm = ();
>my $parse = new Parse::RecDescent ($gr);
>
>Assertion failed: file "PERL_SRC:[PERL5_005_03]PP.C;1", line 2662 at 
>/PERL_ROOT/DEBLIB/Parse/RecDescent.pm line 1737.
>%SYSTEM-F-ABORT, abort


I've never used this module, but I would recommend seeing if the same 
behavior is exhibited with Perl 5.6.1 (assuming you have that available).  
If the line number is correct, you are blowing up on the line with the 
comment "would leak, so croak" in a routine called pp_splice.  Many, many 
leaks were fixed in 5.6.1.

    /* At this point, MARK .. SP-1 is our new LIST */

    newlen = SP - MARK;
    diff = newlen - length;
    if (newlen && !AvREAL(ary)) {
        if (AvREIFY(ary))
            av_reify(ary);
        else
            assert(AvREAL(ary));                /* would leak, so croak */
    }



Reply via email to