public inbox for gdb-prs@sourceware.org help / color / mirror / Atom feed
From: "pmuldoon at redhat dot com" <sourceware-bugzilla@sourceware.org> To: gdb-prs@sourceware.org Subject: [Bug python/13363] gdb crash when I try to print a std::queue in python pretty printer Date: Tue, 01 Nov 2011 08:31:00 -0000 [thread overview] Message-ID: <bug-13363-4717-0X3oQY7rhI@http.sourceware.org/bugzilla/> (raw) In-Reply-To: <bug-13363-4717@http.sourceware.org/bugzilla/> http://sourceware.org/bugzilla/show_bug.cgi?id=13363 --- Comment #6 from Phil Muldoon <pmuldoon at redhat dot com> 2011-11-01 08:30:46 UTC --- If you look at the commit for that function, all it adds is an exception handler for GDB exceptions. Because the function reaches: type = typy_lookup_typename (type_name, block); Below the exception handler, then no exceptions have been generated in the preceding function calls in the exception handler block. This means that all of the above functions succeeded without generating an exception. So when it reaches the lookup_typename, then it has already passed any/all of the changes in that commit. So if we look at the commit here: http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/python/py-type.c.diff?cvsroot=src&r1=1.26&r2=1.27 You will see that that if the demangle type matches any case in the switch statement, then the function will exit with a return type of some kind before it gets to to crashing line. So it is not exiting, but continuing on to: type_name = cp_comp_to_string (demangled, 10); This is obviously failing as the next call has type_name as NULL. This call is the same as before the commit, except now it is in the exception handling block which should have no effect on the outcome of that call. But this does not help us solve the problem in your case as I cannot reproduce the error on Linux. If you feel up to it, you can step into cp_comp_to_string from your GDB in GDB session and see what is going on. I would especially be interested of the contents on demangled. The resultant call in cp_comp_to_string is the libiberty function cp_demangle_print. I doubt there is much interest there. I am hoping the demangled contents will give us a clue. -- Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
next prev parent reply other threads:[~2011-11-01 8:31 UTC|newest] Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top 2011-10-31 8:48 [Bug python/13363] New: " asmwarrior at gmail dot com 2011-10-31 11:42 ` [Bug python/13363] " pmuldoon at redhat dot com 2011-10-31 12:35 ` pmuldoon at redhat dot com 2011-10-31 12:45 ` pmuldoon at redhat dot com 2011-10-31 14:35 ` asmwarrior at gmail dot com 2011-10-31 14:57 ` pmuldoon at redhat dot com 2011-11-01 1:41 ` asmwarrior at gmail dot com 2011-11-01 5:00 ` xunxun1982 at gmail dot com 2011-11-01 8:31 ` pmuldoon at redhat dot com [this message] 2011-11-01 11:26 ` pmuldoon at redhat dot com 2011-11-01 11:28 ` pmuldoon at redhat dot com 2011-11-01 11:58 ` asmwarrior at gmail dot com 2011-11-01 12:56 ` asmwarrior at gmail dot com 2011-11-04 11:57 ` cvs-commit at gcc dot gnu.org 2011-11-04 12:09 ` pmuldoon at redhat dot com
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=bug-13363-4717-0X3oQY7rhI@http.sourceware.org/bugzilla/ \ --to=sourceware-bugzilla@sourceware.org \ --cc=gdb-prs@sourceware.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).