[RFC] Special casing dtors?

Keith Seitz keiths@redhat.com
Wed Mar 25 22:39:00 GMT 2009


Hi,

I've been looking a bit at a patch (in Fedora) which fixes prms/1112, 
and I notice that both valops.c and linespec.c treat destructors as 
"special case"s -- but nowhere does it say WHY.

I've searched through all the history I can find about this (including 
the Cygnus internal ueberbaum), and all I've been able to discover is 
that this has been in a LONG time (before 1990).

So out of curiosity, I removed all those special cases, and lo! There 
were no new failures, and one new pass in the testsuite (on x86, CVS HEAD).

Can anyone explain to me either why gdb treats dtors differently from 
"normal" methods or why we shouldn't commit something like the attached 
patch?

Keith

ChangeLog
2009-03-25  Keith Seitz  <keiths@redhat.com>

	* linespec.c (collect_methods): Delete.
	(add_matching_methods): Reove destructor special case.
	(find_method): Call find_methods directly instead of
	collect_methods.
	* valops.c (value_struct_elt): Remove destructor
	special cases.
	(check_field): Likewise.
	(value_struct_elt_for_reference): Likewise.
	(destructor_name_p): Remove misleading comment about dtors
	being "special cases".
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: dtor-special-case.patch
URL: <http://sourceware.org/pipermail/gdb-patches/attachments/20090325/cb26eea1/attachment.ksh>


More information about the Gdb-patches mailing list