Re: Bogus DWARF line#/address

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

 



No, no optimization options.  Just -ggdb, -Wno-deprecated.
I understand the "-O0" (oh-zero) is the same as no -O at all.
But I'll try it.  I'm pretty desparate for ideas.

-Allen

Eljay Love-Jensen wrote:

Hi Allen,

Was the code compiled with -O0?

--Eljay

> I'm trying to use gdb to debug code compiled with g++
> (3.4.3) from .cpp source files that have, in turn, been
> compiled from higher-level source code by a special
> compiler we're developing here called Metropolis.
> > Metropolis source files have .mmm extensions, and there is
> a .cpp file generated for each one. #line directives are
> inserted in the .cpp files so gdb can display the .mmm
> source, and breakpoints can be set in terms of lines in the
> .mmm files.
> > The problem: Sometimes setting a breakpoint at a .mmm file
> line results in a breakpoint at an absurd place, unrelated
> to the desired line.
> > I ran "readelf -wl" on the executable to see what addresses
> are being associated with what lines of code in the DWARF-2
> output. The results are interesting:
> > readelf shows that line 42 of P.mmm, where I want to set my
> breakpoint & can't, first gets one address associated
> with it (the wrong one, where my breakpoint really ends up).
> Then, further down in the output, it shows it getting the
> right one. (The wrong one is the address of the destructor
> of some class in the application.)
> > I've posted the relevant files here, at > http://www.eecs.berkeley.edu/~allenh/bogus_dwarf.
> READ_ME.txt tells what to look for & where.
> > Any help or suggestions with this would be greatly
> appreciated. I don't understand how g++ works enough to
> make sense of it.
> > g++ is version 3.4.3
> uname -a says:
> Linux hig.eecs.berkeley.edu 2.6.7-1.494.2.2smp #1 SMP Tue Aug 3 09:59:49 EDT 2004 i686 i686 i386 GNU/Linux
> > -Allen Hopkins


[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux