This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
gdb-7.3 blocker(s) - breakpoint/linespec
- From: Jan Kratochvil <jan dot kratochvil at redhat dot com>
- To: gdb at sourceware dot org
- Cc: Keith Seitz <keiths at redhat dot com>
- Date: Wed, 8 Jun 2011 20:12:20 +0200
- Subject: gdb-7.3 blocker(s) - breakpoint/linespec
Hi,
I was asked to restate the pending patches which IMO block the gdb-7.3
release:
http://sourceware.org/gdb/wiki/GDB_7.3_Release
Particularly the part:
DWARF2/physname regression PR c++/12506:
which I consider rather as a general catch-all of the physname regressions:
gdb-7.1: some baseline
42284fd: physname applied
gdb-7.2: some regressions like PR c++/12506 can be seen
gdb-7.3: There should be no regressions against either gdb-7.1 or gdb-7.2.
The last point is tricky as physname brought in some new features so one
cannot even revert it if one would want to. One such new gdb-7.2 feature was
tab-completable name `name(params)' for template functions with demangled name
`int name(params)'.
There was patch by Keith:
[RFA] c++/12506
http://sourceware.org/ml/gdb-patches/2011-03/msg00189.html
but that one is concluded as invalid. (The testcase may be applicable.)
There is now patch by Keith:
[RFA] 12266 (typedef'd parameters) revisited again
http://sourceware.org/ml/gdb-patches/2011-06/msg00062.html
which I already commented in
Re: [RFA] 12266 (typedef'd parameters) revisited again - what should go for gdb-7.3?
http://sourceware.org/ml/gdb-patches/2011-06/msg00101.html
as a summary:
* also fixes PR 12506 - but the DW_TAG_linkage_name reader of mine is a more
complete fix - as long as gcc still produces DW_TAG_MIPS_linkage_name.
* implements new feature to: break funcname(typedefparam1,typedefparam2)
But such specification never worked in any GDB before so I do not find it
a gdb-7.3 blocker. It may be an important enough feature to land it on the
branch (IMO not - 7.3 is very late now, let the other maintainers decide).
Then there are patches by me which try to catch any regressions since gdb-7.1
by gdb-breakpoint*.pl test scripts crafted for this purpose and posted in:
Re: [RFA] 12266 (typedef'd parameters) revisited again
http://sourceware.org/ml/gdb-patches/2011-06/msg00067.html
One test run takes 4 hours on my box which is a bit inconvenient. I have
tested everything only on libstdc++.so and libwebkitgtk.so and only one
particular `break' type in GDB. I do not say the fixes I push for fix all the
regressions but it is at least the first step, IMO sufficient to be able to at
least place a breakpoint some way - like people want to in various bugreports.
Mandatory patches to fix physname regressions (=against FSF gdb-7.1). They
are in no particular order but with one-line fix ups they are all applicable:
[patch] Remove DMGL_VERBOSE
http://sourceware.org/ml/gdb-patches/2011-06/msg00036.html
- Unreplied, I find it mostly [obv]ious.
Re: [patch] Follow DW_AT_linkage_name for methods #2
http://sourceware.org/ml/gdb-patches/2011-06/msg00040.html
- Already approved but it waits on GCC approval of its libiberty/ part:
[gcc patch 0/3] libiberty: New DMGL_RET_DROP
http://gcc.gnu.org/ml/gcc-patches/2011-06/msg00150.html
[patch 1/2] physname reg.: linespec minsym fallback
http://sourceware.org/ml/gdb-patches/2011-06/msg00079.html
- In fact unreplied.
[patch 2/2] physname reg.: linespec eager keep_name_info
http://sourceware.org/ml/gdb-patches/2011-06/msg00080.html
- Unreplied.
Re: [patch] physname regression: Non-matching type false breakpoint
http://sourceware.org/ml/gdb-patches/2011-06/msg00089.html
- Replied (possibly approved) by Pedro.
The patches above give me zero gdb-breakpoint*.pl regressions as stated in
that mail referenced above:
Re: [RFA] 12266 (typedef'd parameters) revisited again
http://sourceware.org/ml/gdb-patches/2011-06/msg00067.html
Additionally related to this patches:
Re: [patch] Fix C++ demangling of minsyms with symver
http://sourceware.org/ml/gdb-patches/2011-06/msg00045.html
- Looks like approved but this has never been a regressions and the fix IMO
does not affect real world users, planning to check it only in gdb-7.4+.
Related Bugs I have opened which are not fixed but they are not regressions:
Assertion `found' failed.
http://sourceware.org/bugzilla/show_bug.cgi?id=12822
- My fix of PR 12573 was incomplete waiting on gcc -frecord-gcc-switches
(GCC PR 32998), not sure if it the reason here or not.
physname: discrepancies between DW_AT_name and demangler
http://sourceware.org/bugzilla/show_bug.cgi?id=12823
- It is more an item to check for future DW_AT_linkage_name-less
size-optimized .debug files depending on correct physname computation.
Too slow break on -O2 -g code
http://sourceware.org/bugzilla/show_bug.cgi?id=12828
- GDB hangs expanding CUs, it is strongly interdependent with PR 10738
(Cannot set breakpoint on inlined function).
Thanks,
Jan