Partial implementation of C++11 thread_local.
[official-gcc.git] / gcc / testsuite / g++.dg / tls / thread_local2.C
blob4cbef155ead855eb5d8a7880e1f378ffeb7a63bf
1 // { dg-do run }
2 // { dg-options "-std=c++11" }
3 // { dg-require-effective-target tls_runtime }
5 extern "C" void abort();
7 struct A
9   A();
10   int i;
13 A &f()
15   thread_local A a;
16   return a;
19 int j;
20 A::A(): i(j) { }
22 int main()
24   j = 42;
25   if (f().i != 42)
26     abort ();