http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60642
--- Comment #3 from Luke Allardyce <lukeallardyce at gmail dot com> --- On further inspection it looks like vtable symbols for template classes are not being tagged struct __attribute((abi_tag("test"))) foo { void f(); virtual ~foo(); }; template<typename> struct __attribute((abi_tag("test"))) bar { void f(); virtual ~bar(); }; extern template class bar<int>; int main() { foo f; f.f(); bar<int> b; b.f(); } $ g++ test.cpp -c $ nm test.o 0000000000000108 s EH_frame1 00000000000000c2 s GCC_except_table0 U __Unwind_Resume U __ZN3barB4testIiE1fEv 00000000000000a6 S __ZN3barB4testIiEC1Ev U __ZN3barB4testIiED1Ev U __ZN3fooB4test1fEv 000000000000008a S __ZN3fooB4testC1Ev U __ZN3fooB4testD1Ev U __ZTV3barIiE U __ZTV3fooB4test U ___gxx_personality_v0 0000000000000000 T _main