More mangling issues

Jim Dehnert dehnert at baalbek.engr.sgi.com
Wed Mar 15 22:05:03 UTC 2000


> From loewis at informatik.hu-berlin.de  Wed Mar 15 07:09:25 2000
> 
> > > > Same for functions, which leads to the question what _Z3fooPPM2ABFiE is.
> > >
> > > If I'm not mistaken: Ret? foo(int (AB::***)()).
> > 
> > Actually, the mangling means that foo is a pointer to a pointer to a
> > member function of AB with int result and no parameters, which I think
> > is represented as:
> > 
> >         int (AB::***foo)();
> > 
> > True?
> 
> No; this declaration is an object declaration. There is no need to put
> the type of in object into its external name, so that would be _Z3foo.
> The type is specified only for a function (or method).

Good point.  So the original mangling _Z3fooPPM2ABFiE, is invalid.
(Though, if types were present for objects, I think my declaration
would be the right one?)

Note that since yesterday's message I've converted the examples to a
table to make it easier to read, and in the process I fixed most of
them.  Most, if not all, of the fixes involved inserting the F...E
delimiters around function types.

Jim

-	    Jim Dehnert		dehnert at sgi.com
				(650)933-4272




More information about the cxx-abi-dev mailing list