Update documentation
[deliverable/binutils-gdb.git] / gdb / PROBLEMS
CommitLineData
e2c9a72c 1
f2c06f52 2 Known problems in GDB 6.0
e2c9a72c 3
36cc83a3 4 See also: http://www.gnu.org/software/gdb/bugs/
e2c9a72c 5
e6beb428
AC
6mips*-*-*
7powerpc*-*-*
8sparc*-*-*
9
10GDB's SPARC, MIPS and PowerPC targets, in 6.0, have not been updated
11to use the new frame mechanism.
12
13People encountering problems with these targets should consult GDB's
14web pages and mailing lists (http://www.gnu.org/software/gdb/) to see
15if there is an update.
16
17arm-*-*
18
19GDB's ARM target, in 6.0, has not been updated to use the new frame
20mechanism.
21
ce2826aa 22Fortunately the ARM target, in the GDB's mainline sources, has been
e6beb428
AC
23updated so people encountering problems should consider downloading a
24more current GDB (http://www.gnu.org/software/gdb/current).
25
e8ac10a6
MC
26gdb/1091: Constructor breakpoints ignored
27gdb/1193: g++ 3.3 creates multiple constructors: gdb 5.3 can't set breakpoints
e2c9a72c 28
e8ac10a6
MC
29When gcc 3.x compiles a C++ constructor or C++ destructor, it generates
302 or 3 different versions of the object code. These versions have
31unique mangled names (they have to, in order for linking to work), but
32they have identical source code names, which leads to a great deal of
33confusion. Specifically, if you set a breakpoint in a constructor or a
34destructor, gdb will put a breakpoint in one of the versions, but your
35program may execute the other version. This makes it impossible to set
36breakpoints reliably in constructors or destructors.
37
38gcc 3.x generates these multiple object code functions in order to
39implement virtual base classes. gcc 2.x generated just one object code
40function with a hidden parameter, but gcc 3.x conforms to a multi-vendor
41ABI for C++ which requires multiple object code functions.
This page took 0.138068 seconds and 4 git commands to generate.