Home | History | Annotate | Download | only in temp
      1 // RUN: %clang_cc1 -verify %s
      2 
      3 template<typename T> struct S {
      4   static int a, b;
      5 };
      6 
      7 template<typename T> int S<T>::a, S<T>::b; // expected-error {{can only declare a single entity}}
      8 
      9 // FIXME: the last two diagnostics here are terrible.
     10 template<typename T> struct A { static A a; } A<T>::a; // expected-error {{expected ';' after struct}} \
     11                                                           expected-error {{use of undeclared identifier 'T'}} \
     12                                                           expected-error {{cannot name the global scope}} \
     13                                                           expected-error {{no member named 'a' in the global namespace}}
     14 
     15 template<typename T> struct B { } f(); // expected-error {{expected ';' after struct}} \
     16                                           expected-error {{requires a type specifier}}
     17 
     18 template<typename T> struct C { } // expected-error {{expected ';' after struct}}
     19 
     20 A<int> c;
     21