1/* RUN: %clang_cc1 -fsyntax-only %s -verify 2 */ 3 4typedef void Void; 5 6void foo() { 7 int X; 8 9 X = sizeof(int (void a)); // expected-error {{argument may not have 'void' type}} 10 X = sizeof(int (int, void)); // expected-error {{must be the first and only parameter}} 11 X = sizeof(int (void, ...)); // expected-error {{must be the first and only parameter}} 12 13 X = sizeof(int (Void a)); // expected-error {{argument may not have 'void' type}} 14 X = sizeof(int (int, Void)); // expected-error {{must be the first and only parameter}} 15 X = sizeof(int (Void, ...)); // expected-error {{must be the first and only parameter}} 16 17 // Accept these. 18 X = sizeof(int (void)); 19 X = sizeof(int (Void)); 20} 21 22// this is ok. 23void bar(Void) { 24} 25 26void f(const void); // expected-error {{parameter must not have type qualifiers}} 27