- To: Benjamin Kosnik <bkoz at redhat dot com>
- Subject: Re: RFC c++ debugging thread
- From: Carlo Wood <carlo at alinoe dot com>
- Date: Mon, 2 Jul 2001 02:54:35 +0200
- Cc: libstdc++ at gcc dot gnu dot org
- References: <200106291900.f5TJ0YP01645@fillmore.constant.com> <20010630174403.B5098@alinoe.com>
On Sat, Jun 30, 2001 at 05:44:03PM +0200, Carlo Wood wrote:
...
> 2) The 'next' command often doesn't work: it just finishes the whole program. I therefore
> have to use 'step' more often then I like, resulting in entering functions I don't
> want to enter (like libstdc++/STL stuff). I don't know why/when this happens, but
> it seems to happen often when returning from a function (on a '}' of a function that
> I am exiting, I *always* type 's' to avoid losing the trace).
...
Here is an example of that I just ran into :/
(gdb) s
1068 M_demangler.add_substitution((*iter).start_pos(), type);
(gdb) s
std::reverse_iterator<std::__normal_iterator<libcw::debug::(anonymous namespace)::qualifier_ct*, std::vector<libcw::debug::(anonymous namespace)::qualifier_ct, std::allocator<libcw::debug::(anonymous namespace)::qualifier_ct> > > >::operator*() const (this=0xbffff2e8)
at /usr/local/gcc-3.0/include/g++-v3/bits/stl_iterator.h:224
224 _Iterator __tmp = current;
(gdb) s
225 return *--__tmp;
(gdb) n
DEMANGLER: Entering decode_type("KcES3_cS3_S3_", "") <unfinished>
DEMANGLER: Entering decode_builtin_type("cES3_cS3_S3_", "") [41; "char"]
DEMANGLER: Entering decode_type("KcES3_cS3_S3_", "") <unfinished>
DEMANGLER: Entering decode_builtin_type("cES3_cS3_S3_", "") [41; "char"]
DEMANGLER: Entering decode_type("KcES3_cS3_S3_", "") <unfinished>
DEMANGLER: Entering decode_builtin_type("cES3_cS3_S3_", "") [41; "char"]
DEMANGLER: Entering decode_type("KcES3_cS3_S3_", "") <unfinished>
DEMANGLER: Entering decode_builtin_type("cES3_cS3_S3_", "") [41; "char"]
DEMANGLER: Entering decode_type("KcES3_cS3_S3_", "") <unfinished>
DEMANGLER: Entering decode_builtin_type("cES3_cS3_S3_", "") [41; "char"]
DEMANGLER: Entering decode_type("KcES3_cS3_S3_", "") <unfinished>
DEMANGLER: Entering decode_builtin_type("cES3_cS3_S3_", "") [41; "char"]
[...big snip...]
Entering decode_builtin_type("cES3_cS3_S3_", "") [41; "char"]
DEMANGLER:
Entering decode_type("KcES3_cS3_S3_", "") <unfinished>
DEMANGLER:
Entering decode_builtin_type("cES3_cS3_S3_", "") [41; "char"]
DEMANGLER:
Entering decode_type("KcES3_cS3_S3_", "") <unfinished>
DEMANGLER:
Entering decode_builtin_type("cES3_cS3_S3_", "") [41; "char"]
DEMANGLER:
Entering decode_type("KcES3_cS3_S3_", "")
Program received signal SIGQUIT, Quit.
0x401a6dd1 in __kill () from /lib/libc.so.6
One would expect it to just leave the current function, and not finish the program.
--
Carlo Wood <carlo@alinoe.com>