[Bug debug/11500] [3.4 regression] gcc HEAD emits an extraneous "line 0" debug line at the start of each function
mec at shout dot net
gcc-bugzilla@gcc.gnu.org
Fri Jul 11 20:20:00 GMT 2003
PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=11500
------- Additional Comments From mec at shout dot net 2003-07-11 20:20 -------
Subject: Re: [3.4 regression] gcc HEAD emits an extraneous "line 0" debug line at the start of each function
Sorry, I should specify the regressions.
The regressions in the gdb test suite are:
# gdb 5.3, gcc -gdwarf-2
gdb.base/annota1.exp: send SIGUSR1
gdb.base/condbreak.exp: run until breakpoint at marker1
gdb.base/condbreak.exp: run until breakpoint at marker2
gdb.base/ena-dis-br.exp: continue to auto-disabled break marker2
gdb.base/ena-dis-br.exp: continue to break marker1
gdb.base/ena-dis-br.exp: continue to break marker1, 2nd time
gdb.base/funcargs.exp: continue to call6k
gdb.base/funcargs.exp: print st
gdb.base/funcargs.exp: run to call5a
gdb.base/funcargs.exp: run to hitbottom
gdb.base/watchpoint.exp: run to marker1 in test_disabling_watchpoints
gdb.base/watchpoint.exp: run to marker1 in test_simple_watchpoint
gdb.base/watchpoint.exp: watchpoints found in watchpoint/breakpoint table
gdb.c++/classes.exp: print obj_with_enum (2)
gdb.c++/classes.exp: print obj_with_enum.priv_enum
gdb.c++/classes.exp: ptype obj_with_enum.priv_enum
gdb.c++/ovldbreak.exp: continue to bp overloaded : double
gdb.c++/ovldbreak.exp: continue to bp overloaded : short
gdb.c++/ovldbreak.exp: continue to bp overloaded : signed char
gdb.c++/ovldbreak.exp: continue to bp overloaded : unsigned char
gdb.c++/ovldbreak.exp: continue to bp overloaded : unsigned short
gdb.mi/mi-until.exp: until after current function
gdb.mi1/mi-until.exp: until after current function
gdb.trace/packetlen.exp: run trace experiment
I haven't analyzed what happens inside gdb. I think most of it is this:
test script sets a breakpoint at beginning of function like 'marker1'
gdb takes the breakpoint
gdb prints where it is
test script expects to see 'marker1'
because of the bogus 'line 0' at the beginning of each function,
gdb always prints '0x12345678 in marker1', because it's never
at the beginning of a line
The bogus 'line 0' probably causes some other ill effects but the above
happens in gdb.base/condbreak.exp at least. It would take more analysis
to trace them down.
More information about the Gcc-bugs
mailing list