annotate clang/test/Sema/void_arg.c @ 169:1f21f60db75c

Added tag llvm10 for changeset 980e56f2e095
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 09:26:57 +0900
parents 1d019706d866
children c4bab56944e8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
150
anatofuz
parents:
diff changeset
1 /* RUN: %clang_cc1 -fsyntax-only %s -verify
anatofuz
parents:
diff changeset
2 */
anatofuz
parents:
diff changeset
3
anatofuz
parents:
diff changeset
4 typedef void Void;
anatofuz
parents:
diff changeset
5
anatofuz
parents:
diff changeset
6 void foo() {
anatofuz
parents:
diff changeset
7 int X;
anatofuz
parents:
diff changeset
8
anatofuz
parents:
diff changeset
9 X = sizeof(int (void a)); // expected-error {{argument may not have 'void' type}}
anatofuz
parents:
diff changeset
10 X = sizeof(int (int, void)); // expected-error {{must be the first and only parameter}}
anatofuz
parents:
diff changeset
11 X = sizeof(int (void, ...)); // expected-error {{must be the first and only parameter}}
anatofuz
parents:
diff changeset
12
anatofuz
parents:
diff changeset
13 X = sizeof(int (Void a)); // expected-error {{argument may not have 'void' type}}
anatofuz
parents:
diff changeset
14 X = sizeof(int (int, Void)); // expected-error {{must be the first and only parameter}}
anatofuz
parents:
diff changeset
15 X = sizeof(int (Void, ...)); // expected-error {{must be the first and only parameter}}
anatofuz
parents:
diff changeset
16
anatofuz
parents:
diff changeset
17 // Accept these.
anatofuz
parents:
diff changeset
18 X = sizeof(int (void));
anatofuz
parents:
diff changeset
19 X = sizeof(int (Void));
anatofuz
parents:
diff changeset
20 }
anatofuz
parents:
diff changeset
21
anatofuz
parents:
diff changeset
22 // this is ok.
anatofuz
parents:
diff changeset
23 void bar(Void) {
anatofuz
parents:
diff changeset
24 }
anatofuz
parents:
diff changeset
25
anatofuz
parents:
diff changeset
26 void f(const void); // expected-error {{parameter must not have type qualifiers}}