This is the mail archive of the 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]
Other format: [Raw text]

gdb-7.3 blocker(s) - breakpoint/linespec


I was asked to restate the pending patches which IMO block the gdb-7.3

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
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
which I already commented in
	Re: [RFA] 12266 (typedef'd parameters) revisited again - what should go for gdb-7.3?
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

One test run takes 4 hours on my box which is a bit inconvenient.  I have
tested everything only on and 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
 - Unreplied, I find it mostly [obv]ious.

Re: [patch] Follow DW_AT_linkage_name for methods #2
 - Already approved but it waits on GCC approval of its libiberty/ part:
	[gcc patch 0/3] libiberty: New DMGL_RET_DROP

[patch 1/2] physname reg.: linespec minsym fallback
 - In fact unreplied.

[patch 2/2] physname reg.: linespec eager keep_name_info
 - Unreplied.

Re: [patch] physname regression: Non-matching type false breakpoint
 - 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

Additionally related to this patches:

Re: [patch] Fix C++ demangling of minsyms with symver
 - 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.
 - 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
 - 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
 - GDB hangs expanding CUs, it is strongly interdependent with PR 10738
   (Cannot set breakpoint on inlined function).


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