This is the mail archive of the gdb@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

[carlo@alinoe.com: Re: RFC c++ debugging thread]


Sent originally to the wrong list.
Note I am not subbed to gdb@sources.redhat.com.

-- 
Carlo Wood <carlo@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>



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]