bug in mangling example?

Jim Dehnert dehnert at baalbek.engr.sgi.com
Fri Apr 14 02:29:23 UTC 2000


> Date: Thu, 13 Apr 2000 17:47:21 -0700 (PDT)
> From: Alex Samuel <samuel at codesourcery.com>
> 
> The 13th mangling example, 
> 
>     _Z3fooIiPFidEiEv
> 
> is supposed to encode
> 
>     void foo<int,int(*)(double),int>()
> 
> The standard states,
> 
>     "Empty parameter lists, whether declared as () or conventionally
>     as (void), are encoded with a void parameter specifier (v)."
> 
> so I believe the mangled form should have an extra `v' at the end.
> The first encodes its return type (it being a template function), and
> the second encodes its empty parameter list.

I think so, and have changed it (not on the web yet).  Does anyone
believe that wasn't intended?  The reason for including the 'v' was to
eliminate ambiguity with data, but it isn't necessary for that purpose
when the return type is encoded.

> BTW is there a plan at some point to number sections and subsections
> of the ABI standard?

Plan?  No.  Comtemplation?  Yes.  I've also considered Standard-style
naming.  But so far I'm too lazy...

Jim

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




More information about the cxx-abi-dev mailing list