Proposed clarification
Mark Mitchell
mark at codesourcery.com
Fri Feb 20 08:48:00 UTC 2004
Presently, the ABI is not 100% clear about whether two member function
types for non-static member functions of different classes can be
substitution candidates. For example, given:
struct S { };
struct T { };
would the function types pointed to be "void (S::*)()" and "void
(T::*)()" be the same type, for the purposes of substitution.
The EDG front end and G++ agree that they are not the same type, for the
purposes of substitution, and I believe that is consistent with the
spirit of the ABI, which already says that the types pointed to be "void
(*)()" and "void (S::*)()" are not the same type for the purposes of
substitution.
Therefore, I intend to update the ABI document with the attached change,
unless anyone objects.
Are there any objections?
--
Mark Mitchell
CodeSourcery, LLC
(916) 791-8304
mark at codesourcery.com
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: diffs
URL: <http://sourcerytools.com/pipermail/cxx-abi-dev/attachments/20040220/3312e8e2/attachment.ksh>
More information about the cxx-abi-dev
mailing list