[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index][Thread Index][Top&Search][Original]

Re: [ID 20000127.002] 5.005_63 `Out of memory' on trivial program with



On Thu, Jan 27, 2000 at 01:03:56PM -0800, Gurusamy Sarathy wrote:
> On Thu, 27 Jan 2000 15:37:06 EST, Ilya Zakharevich wrote:
> >mjd@plover.com writes:
> >> "fish" =~ /fish/;
> >> print @-;
> >> ================================================================
> >> Out of memory!

>     #3  0x8105f07 in Perl_stack_grow (my_perl=0x8169f70, sp=0x816c168, p=0x816c168, 
> 	n=135701629) at scope.c:62
>     #4  0x80ce4bd in Perl_pp_rv2av (my_perl=0x8169f70) at pp_hot.c:504

>     504             EXTEND(SP, maxarg);          
>     (gdb) l
>     499         }
>     500
>     501         if (GIMME == G_ARRAY) {
>     502             I32 maxarg = AvFILL(av) + 1;
>     503             (void)POPs;                     /* XXXX May be optimized away? */
>     504             EXTEND(SP, maxarg);          
>     505             if (SvRMAGICAL(av)) {
>     506                 U32 i; 
>     507                 for (i=0; i < maxarg; i++) {
>     508                     SV **svp = av_fetch(av, i, FALSE);
>     (gdb) p maxarg
>     $3 = 135701629

> I think av_fill() doesn't know about 'D' magic, as don't many other
> functions in av.c.

Why should they know about particular magic-type letters?  Why would
not they just use mg_len?

Ilya


Follow-Ups from:
Gurusamy Sarathy <gsar@ActiveState.com>
References to:
Ilya Zakharevich <ilya@math.ohio-state.edu>
Gurusamy Sarathy <gsar@ActiveState.com>

[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index][Thread Index][Top&Search][Original]