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