blob: 911f41870d92f53b8b1aa5bb66b2ce30c521d8fd [file] [log] [blame]
Zhongxing Xuef8b28e2008-10-17 05:19:52 +00001// RUN: clang -checker-simple -verify %s
Zhongxing Xu2e971202008-10-25 14:11:23 +00002// RUN: clang -checker-simple -analyzer-store-region -verify %s
Zhongxing Xuef8b28e2008-10-17 05:19:52 +00003
Zhongxing Xu72e16822008-10-24 08:51:58 +00004struct s {
5 int data;
6 int data_array[10];
7};
Zhongxing Xuef8b28e2008-10-17 05:19:52 +00008
Zhongxing Xu234a7d22008-10-27 09:19:25 +00009typedef struct {
10 int data;
11} STYPE;
12
Zhongxing Xuef8b28e2008-10-17 05:19:52 +000013void f(void) {
14 int a[10];
15 int (*p)[10];
16 p = &a;
17 (*p)[3] = 1;
18
19 struct s d;
20 struct s *q;
21 q = &d;
Zhongxing Xu72e16822008-10-24 08:51:58 +000022 q->data = 3;
23 d.data_array[9] = 17;
Zhongxing Xuef8b28e2008-10-17 05:19:52 +000024}
Zhongxing Xu2e971202008-10-25 14:11:23 +000025
26void f2() {
27 char *p = "/usr/local";
28 char (*q)[4];
29 q = &"abc";
30}
Zhongxing Xu234a7d22008-10-27 09:19:25 +000031
32void f3() {
33 STYPE s;
34}