1  // { dg-do compile }
       2  // { dg-require-effective-target tls }
       3  
       4  int i, j;
       5  
       6  #pragma omp threadprivate (i)
       7  
       8  void bar(void);
       9  void foo(void)
      10  {
      11    int k;
      12    extern int l;
      13    extern int m;
      14  
      15  #pragma omp threadprivate (m)
      16  
      17    #pragma omp parallel copyin(i)
      18      bar();
      19    #pragma omp parallel copyin(j)	// { dg-error "threadprivate" }
      20      bar();
      21    #pragma omp parallel copyin(k)	// { dg-error "threadprivate" }
      22      bar();
      23    #pragma omp parallel copyin(l)	// { dg-error "threadprivate" }
      24      bar();
      25    #pragma omp parallel copyin(m)
      26      bar();
      27  }