2003-02-04 David Carlton <carlton@math.stanford.edu>

* gdb.texinfo (C@t{++}): Recommend DWARF 2, then stabs+.
	(Variables): Recommend stabs+ and DWARF 2.
	(C plus plus expressions): Correct info about
	compiler versions, debug formats.
	(Contributors): Change 'DWARF2' to 'DWARF 2'.
	PR symtab/874.
This commit is contained in:
David Carlton 2003-02-04 21:14:46 +00:00
parent 0cf824c9e4
commit 0179ffacc7
2 changed files with 35 additions and 33 deletions

View File

@ -1,3 +1,12 @@
2003-02-04 David Carlton <carlton@math.stanford.edu>
* gdb.texinfo (C@t{++}): Recommend DWARF 2, then stabs+.
(Variables): Recommend stabs+ and DWARF 2.
(C plus plus expressions): Correct info about
compiler versions, debug formats.
(Contributors): Change 'DWARF2' to 'DWARF 2'.
PR symtab/874.
2003-02-01 Andrew Cagney <ac131313@redhat.com> 2003-02-01 Andrew Cagney <ac131313@redhat.com>
* gdbint.texinfo (Target Architecture Definition): Delete * gdbint.texinfo (Target Architecture Definition): Delete

View File

@ -371,7 +371,7 @@ Henkel-Wallace, Rich Pixley, Steve Chamberlain, and John Gilmore.
David Johnson wrote the original COFF support; Pace Willison did David Johnson wrote the original COFF support; Pace Willison did
the original support for encapsulated COFF. the original support for encapsulated COFF.
Brent Benson of Harris Computer Systems contributed DWARF2 support. Brent Benson of Harris Computer Systems contributed DWARF 2 support.
Adam de Boor and Bradley Davis contributed the ISI Optimum V support. Adam de Boor and Bradley Davis contributed the ISI Optimum V support.
Per Bothner, Noboyuki Hikichi, and Alessandro Forin contributed MIPS Per Bothner, Noboyuki Hikichi, and Alessandro Forin contributed MIPS
@ -4711,13 +4711,12 @@ No symbol "foo" in current context.
To solve such problems, either recompile without optimizations, or use a To solve such problems, either recompile without optimizations, or use a
different debug info format, if the compiler supports several such different debug info format, if the compiler supports several such
formats. For example, @value{NGCC}, the @sc{gnu} C/C@t{++} compiler usually formats. For example, @value{NGCC}, the @sc{gnu} C/C@t{++} compiler
supports the @samp{-gstabs} option. @samp{-gstabs} produces debug info usually supports the @option{-gstabs+} option. @option{-gstabs+}
in a format that is superior to formats such as COFF. You may be able produces debug info in a format that is superior to formats such as
to use DWARF2 (@samp{-gdwarf-2}), which is also an effective form for COFF. You may be able to use DWARF 2 (@option{-gdwarf-2}), which is also
debug info. See @ref{Debugging Options,,Options for Debugging Your an effective form for debug info. @xref{Debugging Options,,Options
Program or @sc{gnu} CC, gcc.info, Using @sc{gnu} CC}, for more for Debugging Your Program or @sc{gnu} CC, gcc.info, Using @sc{gnu} CC}.
information.
@node Arrays @node Arrays
@ -7812,11 +7811,12 @@ effectively, you must compile your C@t{++} programs with a supported
C@t{++} compiler, such as @sc{gnu} @code{g++}, or the HP ANSI C@t{++} C@t{++} compiler, such as @sc{gnu} @code{g++}, or the HP ANSI C@t{++}
compiler (@code{aCC}). compiler (@code{aCC}).
For best results when using @sc{gnu} C@t{++}, use the stabs debugging For best results when using @sc{gnu} C@t{++}, use the DWARF 2 debugging
format. You can select that format explicitly with the @code{g++} format; if it doesn't work on your system, try the stabs+ debugging
command-line options @samp{-gstabs} or @samp{-gstabs+}. See format. You can select those formats explicitly with the @code{g++}
@ref{Debugging Options,,Options for Debugging Your Program or @sc{gnu} command-line options @option{-gdwarf-2} and @option{-gstabs+}.
CC, gcc.info, Using @sc{gnu} CC}, for more information. @xref{Debugging Options,,Options for Debugging Your Program or @sc{gnu}
CC, gcc.info, Using @sc{gnu} CC}.
@menu @menu
* C Operators:: C and C@t{++} operators * C Operators:: C and C@t{++} operators
@ -8062,28 +8062,21 @@ and @samp{@{&"hi", &"there", &"fred"@}} is a three-element array of pointers.
@cindex expressions in C@t{++} @cindex expressions in C@t{++}
@value{GDBN} expression handling can interpret most C@t{++} expressions. @value{GDBN} expression handling can interpret most C@t{++} expressions.
@cindex C@t{++} support, not in @sc{coff} @cindex debugging C@t{++} programs
@cindex @sc{coff} versus C@t{++} @cindex C@t{++} compilers
@cindex C@t{++} and object formats @cindex debug formats and C@t{++}
@cindex object formats and C@t{++} @cindex @value{NGCC} and C@t{++}
@cindex a.out and C@t{++}
@cindex @sc{ecoff} and C@t{++}
@cindex @sc{xcoff} and C@t{++}
@cindex @sc{elf}/stabs and C@t{++}
@cindex @sc{elf}/@sc{dwarf} and C@t{++}
@c FIXME!! GDB may eventually be able to debug C++ using DWARF; check
@c periodically whether this has happened...
@quotation @quotation
@emph{Warning:} @value{GDBN} can only debug C@t{++} code if you use the @emph{Warning:} @value{GDBN} can only debug C@t{++} code if you use the
proper compiler. Typically, C@t{++} debugging depends on the use of proper compiler and the proper debug format. Currently, @value{GDBN}
additional debugging information in the symbol table, and thus requires works best when debugging C@t{++} code that is compiled with
special support. In particular, if your compiler generates a.out, MIPS @value{NGCC} 2.95.3 or with @value{NGCC} 3.1 or newer, using the options
@sc{ecoff}, RS/6000 @sc{xcoff}, or @sc{elf} with stabs extensions to the @option{-gdwarf-2} or @option{-gstabs+}. DWARF 2 is preferred over
symbol table, these facilities are all available. (With @sc{gnu} CC, stabs+. Most configurations of @value{NGCC} emit either DWARF 2 or
you can use the @samp{-gstabs} option to request stabs debugging stabs+ as their default debug format, so you usually don't need to
extensions explicitly.) Where the object code format is standard specify a debug format explicitly. Other compilers and/or debug formats
@sc{coff} or @sc{dwarf} in @sc{elf}, on the other hand, most of the C@t{++} are likely to work badly or not at all when using @value{GDBN} to debug
support in @value{GDBN} does @emph{not} work. C@t{++} code.
@end quotation @end quotation
@enumerate @enumerate