// { dg-do run } // { dg-options "-O2" } // { dg-require-effective-target tls_runtime } // { dg-add-options tls } // { dg-additional-sources "static-1a.cc" } extern "C" void abort (); extern int test (); struct A { static __thread int i; }; __thread int A::i = 8; int main () { if (A::i != 8) abort (); if (test ()) abort (); if (A::i != 17) abort (); return 0; }