// RUN: %clang_cc1 -fvisibility hidden -emit-llvm -o - %s | FileCheck %s // Verify that symbols are hidden. // CHECK: @_ZN1CIiE5Inner6Inner26StaticE = weak_odr hidden global // CHECK: define weak_odr hidden void @_ZN1CIiE5Inner1fEv // CHECK: define weak_odr hidden void @_ZN1CIiE5Inner6Inner21gEv template struct C { struct Inner { void f(); struct Inner2 { void g(); static int Static; }; }; }; template void C::Inner::f() { } template void C::Inner::Inner2::g() { } template int C::Inner::Inner2::Static; extern template struct C; template struct C;