reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | // RUN: %clang_cc1 -fsyntax-only -verify %s -std=c++11 extern int a; auto a = 0; // expected-note 2{{here}} auto a = 0; // expected-error {{redefinition}} int a = 0; // expected-error {{redefinition}} extern auto a; // expected-error {{requires an initializer}} extern int b; // expected-note {{here}} auto b = 0.0; // expected-error {{different type}} struct S { static int a; static int b; // expected-note {{here}} }; auto S::a = 0; // expected-note 2{{here}} auto S::a; // expected-error {{redefinition}} expected-error {{requires an initializer}} int S::a = 0; // expected-error {{redefinition}} auto S::b = 0.0; // expected-error {{different type}} void f() { extern int a; extern auto a; // expected-error {{requires an initializer}} } |