/* Test for _Thread_local in C11. Test of valid code. */ /* { dg-do compile } */ /* { dg-options "-std=c11 -pedantic-errors" } */ _Thread_local int a; static _Thread_local long b; extern _Thread_local int c, a; _Thread_local static int d; long _Thread_local extern b; _Thread_local int extern a; _Thread_local struct s; /* { dg-warning "useless" } */ _Thread_local int a = 1; extern _Thread_local int c = 2; /* { dg-warning "initialized and" } */ void f (void) { static _Thread_local int x; extern _Thread_local long b; _Thread_local extern int a; } inline void fi (void) { static _Thread_local const int v; (void) a; static _Thread_local int (*const p)[a]; }