1*1f5207b7SJohn Levon #define NULL ((void *)0)
2*1f5207b7SJohn Levon 
3*1f5207b7SJohn Levon struct ture {
4*1f5207b7SJohn Levon 	int *a;
5*1f5207b7SJohn Levon };
6*1f5207b7SJohn Levon 
7*1f5207b7SJohn Levon struct ture *b;
8*1f5207b7SJohn Levon struct ture *c;
9*1f5207b7SJohn Levon 
func(void)10*1f5207b7SJohn Levon void func (void)
11*1f5207b7SJohn Levon {
12*1f5207b7SJohn Levon 	struct ture *ab;
13*1f5207b7SJohn Levon 	int ret = 0;
14*1f5207b7SJohn Levon 
15*1f5207b7SJohn Levon 	if (b) {
16*1f5207b7SJohn Levon 		ret = -1;
17*1f5207b7SJohn Levon 		goto foo;
18*1f5207b7SJohn Levon 	}
19*1f5207b7SJohn Levon 
20*1f5207b7SJohn Levon 	if (c) {}
21*1f5207b7SJohn Levon 
22*1f5207b7SJohn Levon 	ab = some_func();
23*1f5207b7SJohn Levon 	if (NULL == ab) {
24*1f5207b7SJohn Levon 		ret = -1;
25*1f5207b7SJohn Levon 		goto foo;
26*1f5207b7SJohn Levon 	}
27*1f5207b7SJohn Levon foo:
28*1f5207b7SJohn Levon 	if (ret) {
29*1f5207b7SJohn Levon 		return;
30*1f5207b7SJohn Levon 	}
31*1f5207b7SJohn Levon 	ab->a = 1;
32*1f5207b7SJohn Levon }
33*1f5207b7SJohn Levon /*
34*1f5207b7SJohn Levon  * check-name: Smatch implied #3
35*1f5207b7SJohn Levon  * check-command: smatch sm_implied3.c
36*1f5207b7SJohn Levon  */
37