Testcase attached: when a class is declared with #pragma visibility hidden on, references to `vtable for __cxxabiv1::__class_type_info' are emitted with relocations that assume hidden visibility. This is incorrect, and is a regression against 4.1 and I think 4.2.
To reproduce, compile the testcase, on an ELF toolchain, with: g++-4.3 -shared -frtti -fPIC -o libtest.so test-cpp-rtti-linkage-error.cpp -- Summary: With #pragma visibility, `vtable for __cxxabiv1::__class_type_info' is emitted as a hidden- visibility relocation Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: benjamin at smedbergs dot us http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35368