Home | History | Annotate | Download | only in PCH
      1 // RUN: %clang_cc1 -pedantic-errors -std=c++11 -triple x86_64-linux-gnu -emit-pch %s -o %t
      2 // RUN: %clang_cc1 -pedantic-errors -std=c++11 -triple x86_64-linux-gnu -include-pch %t -verify %s
      3 // REQUIRES: x86-registered-target
      4 #ifndef HEADER_INCLUDED
      5 
      6 #define HEADER_INCLUDED
      7 extern thread_local int a;
      8 extern _Thread_local int b;
      9 extern int c;
     10 
     11 #else
     12 
     13 _Thread_local int a; // expected-error {{thread-local declaration of 'a' with static initialization follows declaration with dynamic initialization}}
     14 // expected-note@7 {{previous declaration is here}}
     15 thread_local int b; // expected-error {{thread-local declaration of 'b' with dynamic initialization follows declaration with static initialization}}
     16 // expected-note@8 {{previous declaration is here}}
     17 thread_local int c; // expected-error {{thread-local declaration of 'c' follows non-thread-local declaration}}
     18 // expected-note@9 {{previous declaration is here}}
     19 
     20 #endif
     21