blob: d0571fc4e1225b0ce84ff396c58673fde92e57ec (
plain)
| 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 -fsyntax-only %s -verify
 */
typedef void Void;
void foo() {
  int X;
  
  X = sizeof(int (void a));    // expected-error {{argument may not have 'void' type}}
  X = sizeof(int (int, void)); // expected-error {{must be the first and only parameter}}
  X = sizeof(int (void, ...)); // expected-error {{must be the first and only parameter}}
  X = sizeof(int (Void a));    // expected-error {{argument may not have 'void' type}}
  X = sizeof(int (int, Void)); // expected-error {{must be the first and only parameter}}
  X = sizeof(int (Void, ...)); // expected-error {{must be the first and only parameter}}
  // Accept these.
  X = sizeof(int (void));
  X = sizeof(int (Void));
}
// this is ok.
void bar(Void) {
}
void f(const void);            // expected-error {{parameter must not have type qualifiers}}
 |