This is the mail archive of the
gdb@sources.redhat.com
mailing list for the GDB project.
Re: Namespaces with gcc v3 stabs+?
- From: Michael Elizabeth Chastain <mec at shout dot net>
- To: carlton at math dot stanford dot edu, drow at mvista dot com
- Cc: gdb at sources dot redhat dot com
- Date: Fri, 6 Dec 2002 15:05:54 -0600
- Subject: Re: Namespaces with gcc v3 stabs+?
David Carlton writes:
> So for now I'd lean towards getting GCC to emit stabs+ info as it did
> in 2.95.3: that should be cheap on everybody's part, and profitable
> enough.
Sounds good to me. If that's okay with drow, then that's what I'll
request in the bug report.
If gcc doesn't fix the bug at all, then I can point to the bug report
and mark the test case as "xfail". My view is that, since "xfail" is
caused by a bug in an external program, we'd better have a bug report
to go with it.
> What systems are there that GCC supports for which stabs+ can be used
> but DWARF 2 can't? How important are they? Who's supporting them?
> Are there other more modern debug formats that really should be used
> on those systems in place of stabs?
If the user builds gcc with "--with-stabs", gcc prefers dbx
(the gcc name for stabs). Besides that, there are about 90 configurations
which default to dbx, most of them without dwarf2 support. Darwin and
Cygwin are the big ones, with some arm configurations in there.
Michael C
% cd /berman/migchain/source/gcc-3.2.1/gcc/config
% grep -r -i dbx_debug *
I found these configurations which prefer dbx:
darwin.h dbx, dwarf2
interix.h dbx, sdb
lynx-ng.h dbx, sdb
lynx.h dbx, sdb
netware.h dbx
nextstep.h dbx
psos.h dbx
alpha/linux-ecoff.h dbx
alpha/openbsd.h dbx
arc/arc.h dbx, dwarf-2
arm/aout.h dbx
arm/coff.h dbx, sdb
arm/netbsd.h dbx
arm/rix-gas.h dbx
avr/avr.h dbx
convex/convex.h dbx
cris/aout.h dbx
d30v/d30v.h dbx
i386/cygwin.h dbx, sdb
i386/i386elf.h dbx
i386/gstabs.h dbx
i386/i386-interix.h dbx, sdb
i386/osf1elfgdb.h dbx
i386/osfrose.h dbx
i386/sco5.h dbx, sdb, dwarf, dwarf-2
i386/sequent.h dbx
i386/sol2.h dbx
i386/sun.h dbx
i386/svr3dbx.h dbx
i386/win32.h dbx, sdb
i860/bsd.h dbx
i860/fx2800.h dbx
i960/i960.h dbx, sdb
m32r/m32r.h dbx, dwarf, dwarf-2
m68k/3b1g.h dbx
m68k/altos3068.h dbx
m68k/ccur-GAS.h dbx
m68k/hp2bsd.h dbx
m68k/hp310g.h dbx
m68k/hp320g.h dbx
m68k/hp3bsd.h dbx
m68k/hp3bsd44.h dbx
m68k/isi.h dbx
m68k/linux.h dbx
m68k/linux-aout.h dbx
m68k/m68kv4.h dbx
m68k/netbsd.h dbx
m68k/news.h dbx
m68k/openbsd.h dbx
m68k/pbb.h dbx
m68k/sun2.h dbx
m68k/sun3.h dbx
m68k/vxm68k.h dbx
m88k/aout-dbx.h dbx
m88k/luna.h dbx
m88k/m88k-aout.h dbx
mcore/mcore-pe.h dbx
mips/dec-bsd.h dbx
mips/elf.h dbx, dwarf-2
mips/elf64.h dbx
mips/iris5gas.h dbx, sdb, mips
mips/isa3264.h dbx
mips/netbsd.h dbx
mips/openbsd.h dbx
mips/osfrose.h dbx
mn10200/mn10200.h dbx
ns32k/merlin.h dbx
ns32k/netbsd.h dbx
ns32k/pc532.h dbx
ns32k/sequent.h dbx
ns32k/tek6000.h dbx
pa/pa.h dbx
romp/romp.h dbx
rs6000/netbsd.h dbx
rs6000/vxppc.h dbx
sparc/linux64.h dbx, dwarf2
sparc/litecoff.h dbx
sparc/netbsd.h dbx
sparc/openbsd.h dbx
sparc/pbd.h dbx
sparc/sol2-bi.h dbx # if TARGET_ARCH32
sparc/sol2.h dbx
sparc/sparc.h dbx
sparc/vxsim.h dbx
sparc/vxsparc64.h dbx
v850/v850.h dbx
vax/vax.h dbx
vax/vaxv.h dbx