blob: cb3e29abe8f3f2b2492de7cbd7975b823f923aad (
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
|
typedef struct st
{
char buf[16];
} st;
extern st foo (st);
extern st bar (st *);
extern char baz (st);
void test_1 (st a)
{
st b, c, d, e;
b = a;
c = foo(a);
d = bar(&a);
c = foo(e); /* { dg-warning "use of uninitialized value 'e'" } */
}
void test_2 (st a)
{
a = a;
}
st test_2a (void)
{
st a;
a = a; /* { dg-warning "use of uninitialized value 'a'" } */
return a;
}
void test_3 (st a)
{
a = foo (a);
}
st test_3a (void)
{
st a;
a = foo (a); /* { dg-warning "use of uninitialized value 'a'" } */
return a;
}
void test_3b (st a, st b)
{
a = foo (a);
foo (b);
a = foo (a);
foo (b);
a = foo (a);
foo (b);
}
void test_4 (st a)
{
a = bar (&a);
}
st test_4a (void)
{
st a;
a = bar (&a);
return a;
}
void test_5 (st a)
{
st b;
a = bar (&a);
b = b; /* { dg-warning "use of uninitialized value 'b'" } */
}
st test_6 (st a)
{
st b;
a = bar (&b);
b = b;
return b;
}
void test_6a (st a)
{
st b;
a = bar (&b);
b = b;
}
st test_7 (st a)
{
st b;
b = bar (&a);
return b;
}
void test_7a (st a)
{
st b;
b = bar (&a);
}
st test_8 (void)
{
st b;
b = bar (&b);
return b;
}
void test_8a (void)
{
st b;
b = bar (&b);
}
char test_9 (st a)
{
char c;
c = baz (a);
return c;
}
char test_10 (st a)
{
char c;
a = foo (a);
c = baz (a);
return c;
}
|