(root)/
gcc-13.2.0/
gcc/
testsuite/
g++.dg/
tls/
thread_local10.C
// PR c++/58624

// { dg-do run { target c++11 } }
// { dg-add-options tls }
// { dg-require-effective-target tls_runtime }

int i;

template <typename> struct A
{
  static thread_local int s;

  A () { i = s; }
};

int f() { return 42; }
template <typename T> thread_local int A<T>::s = f();

int main () {
  A<void> a;
  if (i != 42)
    __builtin_abort();
}