bug-gawk
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [bug-gawk] Function argument corruption in 4.2.0


From: Andrew J. Schorr
Subject: Re: [bug-gawk] Function argument corruption in 4.2.0
Date: Mon, 13 Nov 2017 15:36:30 -0500
User-agent: Mutt/1.5.21 (2010-09-15)

Hi,

On Mon, Nov 13, 2017 at 01:05:26PM -0700, address@hidden wrote:
> I'm not up to starting on this now, but another tool for exploration
> would be to use the gawk debugger to see at what point in the awk
> program the data becomes bad.
> 
> You can then add a call to stopme() right before it.  Then rerun with
> gdb on gawk itself, set a breakoint in the C stopme() routine, and go
> from there.

This is the line that causes the assertion:

function label_exists_for_destination(linenos, destination, label,    n, seen)
{
    # This kludge resolves a data corruption issue in GNU Awk 4.2.0; TODO: root
    # cause the problem and report it upstream.
    # destination = destination ""

    $0 = linenos
...

When that assignment occurs, the reference count on $1 is 2.
At that moment, the value of $0 is:
    //#label_exists_for_destination
And $1 has the same value.

> Andy, thanks for looking into this; it does have the scent of code
> that you were involved with during development.

I am insanely buried. But this is a nasty bug...

Regards,
Andy



reply via email to

[Prev in Thread] Current Thread [Next in Thread]