binutils/libiberty patch for c++filt to demangle ObjC++ symbols
Andrew Pinski
pinskia@gmail.com
Fri Apr 13 17:27:00 GMT 2007
On 4/13/07, Dave MacLachlan <dmaclach@google.com> wrote:
> This is a patch for c++filt so it can demangle ObjC++ symbols. Turns
> out that if you have an Objective C++ file (.mm) with a static var
> inside of a method it will get mangled in such a fashion that the
> current c++filt can't unmangle it:
>
> @implementation Foo
> + (void)bar:(id)sender {
> static int baz = 1;
> }
> @end
>
> gets mangled to
>
> _ZZ11+[Foo bar:]E3baz
Actually I think this is the way it gets mangled on Darwin, I think it
gets mangled differently on any other target as the other targets
actually mangle the message name instead of keeping it as "+[Foo
bar:]".
So you might want to double check what happens under Linux with the
objective-C++ front-end also.
Thanks,
Andrew Pinski
More information about the Binutils
mailing list