1  // { dg-do compile }
       2  // { dg-require-effective-target tls }
       3  
       4  int tp1;
       5  static int tp2;
       6  extern int tp3;
       7  
       8  int tp4 = 1;
       9  static int tp5 = 1;
      10  
      11  #pragma omp threadprivate (tp1, tp2, tp3, tp4, tp5)
      12  
      13  #pragma omp threadprivate (undef)	// { dg-error "undeclared" }
      14  
      15  int tp6;
      16  int foo(void) { return tp6; }
      17  
      18  #pragma omp threadprivate (tp6)		// { dg-error "after first use" }