More mangling issues

Martin von Loewis loewis at informatik.hu-berlin.de
Thu Mar 16 12:38:24 UTC 2000


> Why do we half-mangle external declarations? That is, why _Z3foo rather than
> foo? There is something that reads "[...] and file scope variables are not
> mangled"

You are right, that 'int (**A::Afoo)()' declaration should be mangled
as 'foo'. I'd prefer to say 'global namespace' instead of 'file
scope', though. For one thing,

namespace Foo{
   int bar;
}

is mangled as _ZN3Foo3barE, and is still "file scope". Also, "file
scope" is often used to describe 

static int foo;

and we don't have an external name for that at all.

Martin




More information about the cxx-abi-dev mailing list