1 // RUN: %clang_cc1 %s -fsyntax-only -verify -pedantic 2 3 struct emp_1 { // expected-warning {{empty struct is a GNU extension}} 4 }; 5 6 union emp_2 { // expected-warning {{empty union is a GNU extension}} 7 }; 8 9 struct emp_3 { // expected-warning {{struct without named members is a GNU extension}} 10 int : 0; 11 }; 12 13 union emp_4 { // expected-warning {{union without named members is a GNU extension}} 14 int : 0; 15 }; 16 17 struct emp_5 { // expected-warning {{struct without named members is a GNU extension}} 18 int : 0; 19 int : 0; 20 }; 21 22 union emp_6 { // expected-warning {{union without named members is a GNU extension}} 23 int : 0; 24 int : 0; 25 }; 26 27 struct nonamed_1 { // expected-warning {{struct without named members is a GNU extension}} 28 int : 4; 29 }; 30 31 union nonamed_2 { // expected-warning {{union without named members is a GNU extension}} 32 int : 4; 33 }; 34 35 struct nonamed_3 { // expected-warning {{struct without named members is a GNU extension}} 36 int : 4; 37 unsigned int : 4; 38 }; 39 40 union nonamed_4 { // expected-warning {{union without named members is a GNU extension}} 41 int : 4; 42 unsigned int : 4; 43 }; 44