annotate clang/test/Sema/deref.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 -verify -std=c90 -pedantic %s
anatofuz
parents:
diff changeset
2 */
anatofuz
parents:
diff changeset
3 void
anatofuz
parents:
diff changeset
4 foo (void)
anatofuz
parents:
diff changeset
5 {
anatofuz
parents:
diff changeset
6 struct b;
anatofuz
parents:
diff changeset
7 struct b* x = 0;
anatofuz
parents:
diff changeset
8 struct b* y = &*x;
anatofuz
parents:
diff changeset
9 }
anatofuz
parents:
diff changeset
10
anatofuz
parents:
diff changeset
11 void foo2 (void)
anatofuz
parents:
diff changeset
12 {
anatofuz
parents:
diff changeset
13 typedef int (*arrayptr)[];
anatofuz
parents:
diff changeset
14 arrayptr x = 0;
anatofuz
parents:
diff changeset
15 arrayptr y = &*x;
anatofuz
parents:
diff changeset
16 }
anatofuz
parents:
diff changeset
17
anatofuz
parents:
diff changeset
18 void foo3 (void)
anatofuz
parents:
diff changeset
19 {
anatofuz
parents:
diff changeset
20 void* x = 0;
anatofuz
parents:
diff changeset
21 void* y = &*x; /* expected-warning{{address of an expression of type 'void'}} */
anatofuz
parents:
diff changeset
22 }
anatofuz
parents:
diff changeset
23
anatofuz
parents:
diff changeset
24 extern const void cv1;
anatofuz
parents:
diff changeset
25
anatofuz
parents:
diff changeset
26 const void *foo4 (void)
anatofuz
parents:
diff changeset
27 {
anatofuz
parents:
diff changeset
28 return &cv1;
anatofuz
parents:
diff changeset
29 }
anatofuz
parents:
diff changeset
30
anatofuz
parents:
diff changeset
31 extern void cv2;
anatofuz
parents:
diff changeset
32 void *foo5 (void)
anatofuz
parents:
diff changeset
33 {
anatofuz
parents:
diff changeset
34 return &cv2; /* expected-warning{{address of an expression of type 'void'}} */
anatofuz
parents:
diff changeset
35 }
anatofuz
parents:
diff changeset
36
anatofuz
parents:
diff changeset
37 typedef const void CVT;
anatofuz
parents:
diff changeset
38 extern CVT cv3;
anatofuz
parents:
diff changeset
39
anatofuz
parents:
diff changeset
40 const void *foo6 (void)
anatofuz
parents:
diff changeset
41 {
anatofuz
parents:
diff changeset
42 return &cv3;
anatofuz
parents:
diff changeset
43 }
anatofuz
parents:
diff changeset
44