diff options
Diffstat (limited to 'clang/test')
-rw-r--r-- | clang/test/Parser/declarators.c | 1 | ||||
-rw-r--r-- | clang/test/Sema/MicrosoftExtensions.c | 15 | ||||
-rw-r--r-- | clang/test/Sema/anonymous-struct-union.c | 2 | ||||
-rw-r--r-- | clang/test/SemaObjC/ivar-lookup.m | 4 |
4 files changed, 19 insertions, 3 deletions
diff --git a/clang/test/Parser/declarators.c b/clang/test/Parser/declarators.c index c424d697353..e3024206e4f 100644 --- a/clang/test/Parser/declarators.c +++ b/clang/test/Parser/declarators.c @@ -113,6 +113,7 @@ enum E1 { e1 }: // expected-error {{expected ';'}} struct EnumBitfield { // expected-warning {{struct without named members is a GNU extension}} enum E2 { e2 } : 4; // ok struct S { int n; }: // expected-error {{expected ';'}} + // expected-warning@-1 {{declaration does not declare anything}} }; diff --git a/clang/test/Sema/MicrosoftExtensions.c b/clang/test/Sema/MicrosoftExtensions.c index 429dd943a74..f64012098b2 100644 --- a/clang/test/Sema/MicrosoftExtensions.c +++ b/clang/test/Sema/MicrosoftExtensions.c @@ -39,9 +39,24 @@ struct nested2 { NESTED1; // expected-warning {{anonymous structs are a Microsoft extension}} }; +struct nested3 { + long d; + struct nested4 { // expected-warning {{anonymous structs are a Microsoft extension}} + long e; + }; + union nested5 { // expected-warning {{anonymous unions are a Microsoft extension}} + long f; + }; +}; + +typedef union nested6 { + long f; +} NESTED6; + struct test { int c; struct nested2; // expected-warning {{anonymous structs are a Microsoft extension}} + NESTED6; // expected-warning {{anonymous unions are a Microsoft extension}} }; void foo() diff --git a/clang/test/Sema/anonymous-struct-union.c b/clang/test/Sema/anonymous-struct-union.c index 35d31754162..26dbeb87f5f 100644 --- a/clang/test/Sema/anonymous-struct-union.c +++ b/clang/test/Sema/anonymous-struct-union.c @@ -37,7 +37,7 @@ void test_unqual_references(struct X x, const struct X xc) { struct Redecl { int x; // expected-note{{previous declaration is here}} - struct y { }; + struct y { }; // expected-warning{{declaration does not declare anything}} union { int x; // expected-error{{member of anonymous union redeclares 'x'}} diff --git a/clang/test/SemaObjC/ivar-lookup.m b/clang/test/SemaObjC/ivar-lookup.m index 938c8eb189a..57f432c717a 100644 --- a/clang/test/SemaObjC/ivar-lookup.m +++ b/clang/test/SemaObjC/ivar-lookup.m @@ -99,9 +99,9 @@ extern struct foo x; }; struct S { __typeof(myStatus) __in; // fails. - struct S1 { + struct S1 { // expected-warning {{declaration does not declare anything}} __typeof(myStatus) __in; // fails. - struct S { + struct S { // expected-warning {{declaration does not declare anything}} __typeof(myStatus) __in; // fails. }; }; |