1*1f5207b7SJohn Levon #include "check_debug.h"
2*1f5207b7SJohn Levon 
3*1f5207b7SJohn Levon int a, b;
4*1f5207b7SJohn Levon 
frob(int size)5*1f5207b7SJohn Levon int frob(int size)
6*1f5207b7SJohn Levon {
7*1f5207b7SJohn Levon 	if (a <= 0 || a > 10)
8*1f5207b7SJohn Levon 		return;
9*1f5207b7SJohn Levon 	if (a % 4) {
10*1f5207b7SJohn Levon 		__smatch_implied(a);
11*1f5207b7SJohn Levon 	} else {
12*1f5207b7SJohn Levon 		__smatch_implied(a);
13*1f5207b7SJohn Levon 	}
14*1f5207b7SJohn Levon 
15*1f5207b7SJohn Levon 	if (b <= 0 || b > 100)
16*1f5207b7SJohn Levon 		return;
17*1f5207b7SJohn Levon 	if (b % 4) {
18*1f5207b7SJohn Levon 		__smatch_implied(b);
19*1f5207b7SJohn Levon 	} else {
20*1f5207b7SJohn Levon 		__smatch_implied(b);
21*1f5207b7SJohn Levon 	}
22*1f5207b7SJohn Levon 
23*1f5207b7SJohn Levon 
24*1f5207b7SJohn Levon 
25*1f5207b7SJohn Levon 	return 0;
26*1f5207b7SJohn Levon }
27*1f5207b7SJohn Levon 
28*1f5207b7SJohn Levon /*
29*1f5207b7SJohn Levon  * check-name: smatch mod condition
30*1f5207b7SJohn Levon  * check-command: smatch -I.. sm_mod.c
31*1f5207b7SJohn Levon  *
32*1f5207b7SJohn Levon  * check-output-start
33*1f5207b7SJohn Levon sm_mod.c:10 frob() implied: a = '1-10'
34*1f5207b7SJohn Levon sm_mod.c:12 frob() implied: a = '4,8'
35*1f5207b7SJohn Levon sm_mod.c:18 frob() implied: b = '1-99'
36*1f5207b7SJohn Levon sm_mod.c:20 frob() implied: b = '4-100'
37*1f5207b7SJohn Levon  * check-output-end
38*1f5207b7SJohn Levon  */
39