[cxx-abi-dev] Pointer to member function mangling

Jason Merrill jason at redhat.com
Tue Feb 19 17:18:35 UTC 2002


>>>>> "Jason" == Jason Merrill <jason at redhat.com> writes:

> My question has to do with encoding a cv-qualified pointer to member
> function type, i.e.

>   void (A::*)() const

> What do other compilers produce?  What do other demanglers expect?

> g++ currently emits

>   MK1AFvvE

> or, member of class "const A" of type "function of (void) returning void".
> I don't see how this can be deduced from the above text.  

> IMO more consistent with the language semantics would be

>   M1AKFvvE

> or, member of A of type "function of (void) const returning void".  The C++
> standard states unambiguously that the cv-quals are part of the function
> type.

As an additional data point, the Intel ia64 compiler (Version 5.0.1, Build
20010705) produces

    M1AFvvE

or, member of A of type "function of (void) returning void".  Which I think
we can all agree is wrong; the const doesn't appear anywhere.

Does anyone have access to an HP compiler for comparison?  Is anyone at HP
still reading this list?

Jason



More information about the cxx-abi-dev mailing list