// RUN: %clang_cc1 -fvisibility hidden -emit-llvm -o - %s | FileCheck %s

// Verify that symbols are hidden.
// CHECK: @_ZN1CIiE5Inner6Inner26StaticE = weak hidden global
// CHECK: define weak_odr hidden void @_ZN1CIiE5Inner1fEv
// CHECK: define weak_odr hidden void @_ZN1CIiE5Inner6Inner21gEv

template<typename T>
struct C {
  struct Inner {
    void f();
    struct Inner2 {
      void g();
      static int Static;
    };
  };
};

template<typename T> void C<T>::Inner::f() { }
template<typename T> void C<T>::Inner::Inner2::g() { }
template<typename T> int C<T>::Inner::Inner2::Static;

extern template struct C<int>;
template struct C<int>;
