This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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...



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]