This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
Mangling question
- From: Joe Kelsey <joek at mail dot flyingcroc dot net>
- To: gcc-help at gnu dot org
- Date: Wed, 29 May 2002 07:14:22 -0700
- Subject: Mangling question
I was trying to figure out why my class wasn't defined due to linker
errors I received. The linker complained about undefined symbol
_$_6Shared
Where Shared is the name of the undefined class. I read the mangling
documentation and I cannot figure out where this comes from. $ is some
sort of static indicator, so what is _$_? Indicating the static
constructor?
Also, what are
__ti6Shared
__tf6Shared
t means template, i means integer and f means float, but the constructor
is not a template nor does it take a float argument or return a float
argument. And the extra underscores are not for BSD compatibility, as
the normal method name mangling does not start with an underscore.
Maybe the mangling document needs updating.
/Joe
p.s., the undefined problem was due to a stupid programming error, pure
virtual destructor when what I needed was an empty virtual destructor...