[cfe-dev] Name mangling scheme
Cédric Venet
cedric.venet at laposte.net
Sun Apr 6 08:10:35 PDT 2008
> >
> > The same as gcc 3.x? I didn't found any real documentation on it.
>
> Well, Itanium C++ ABI is *the* documentation on "gnu-v3" C++ name
> mangling scheme. I'm not sure why you think it's not a "real"
> documentation.
What I mean is that in the g++ documentation, I didn't found any indication that it use the itanium c++ name mangling.
>
> > Perhaps the scheme should be configurable and selectable, but I am
> not sure
> > this is a good idea.
>
> I think Microsoft C++-compatible name mangling could be useful.
>
The problem I can see (perhaps) is that (citing Wikipedia):
" Name mangling is only one of several application binary interface issues in a C++ implementation. Other ABI issues like exception handling, virtual table layout, structure padding, etc. cause differing C++ implementations to be incompatible. "
If we do MS compatible mangling but don't follow the MS ABI on other point, it would allow linking with dll not compatible, introducing runtime bug, potentially hard to understand.
And the only information I found on it are reverse engineered incomplet document like these:
http://mearie.org/documents/mscmangle
http://www.kegel.com/mangle.html
http://en.wikipedia.org/wiki/Microsoft_Visual_C%2B%2B_Name_Mangling
Cédric
More information about the cfe-dev
mailing list