1*1f5207b7SJohn Levon #include "check_debug.h"
2*1f5207b7SJohn Levon 
3*1f5207b7SJohn Levon int x;
func(void)4*1f5207b7SJohn Levon void func(void)
5*1f5207b7SJohn Levon {
6*1f5207b7SJohn Levon 
7*1f5207b7SJohn Levon 	if (x < 1)
8*1f5207b7SJohn Levon 		__smatch_value("x");
9*1f5207b7SJohn Levon 	else
10*1f5207b7SJohn Levon 		__smatch_value("x");
11*1f5207b7SJohn Levon 
12*1f5207b7SJohn Levon 	if (12 < x)
13*1f5207b7SJohn Levon 		__smatch_value("x");
14*1f5207b7SJohn Levon 	else
15*1f5207b7SJohn Levon 		__smatch_value("x");
16*1f5207b7SJohn Levon 
17*1f5207b7SJohn Levon 	if (x <= 23)
18*1f5207b7SJohn Levon 		__smatch_value("x");
19*1f5207b7SJohn Levon 	else
20*1f5207b7SJohn Levon 		__smatch_value("x");
21*1f5207b7SJohn Levon 
22*1f5207b7SJohn Levon 	if (34 <= x)
23*1f5207b7SJohn Levon 		__smatch_value("x");
24*1f5207b7SJohn Levon 	else
25*1f5207b7SJohn Levon 		__smatch_value("x");
26*1f5207b7SJohn Levon 
27*1f5207b7SJohn Levon 	if (x >= 45)
28*1f5207b7SJohn Levon 		__smatch_value("x");
29*1f5207b7SJohn Levon 	else
30*1f5207b7SJohn Levon 		__smatch_value("x");
31*1f5207b7SJohn Levon 
32*1f5207b7SJohn Levon 	if (56 >= x)
33*1f5207b7SJohn Levon 		__smatch_value("x");
34*1f5207b7SJohn Levon 	else
35*1f5207b7SJohn Levon 		__smatch_value("x");
36*1f5207b7SJohn Levon 
37*1f5207b7SJohn Levon 	if (x > 67)
38*1f5207b7SJohn Levon 		__smatch_value("x");
39*1f5207b7SJohn Levon 	else
40*1f5207b7SJohn Levon 		__smatch_value("x");
41*1f5207b7SJohn Levon 
42*1f5207b7SJohn Levon 	if (78 > x)
43*1f5207b7SJohn Levon 		__smatch_value("x");
44*1f5207b7SJohn Levon 	else
45*1f5207b7SJohn Levon 		__smatch_value("x");
46*1f5207b7SJohn Levon 
47*1f5207b7SJohn Levon 	if (89 == x)
48*1f5207b7SJohn Levon 		__smatch_value("x");
49*1f5207b7SJohn Levon 	else
50*1f5207b7SJohn Levon 		__smatch_value("x");
51*1f5207b7SJohn Levon 
52*1f5207b7SJohn Levon 	if (100 != x)
53*1f5207b7SJohn Levon 		__smatch_value("x");
54*1f5207b7SJohn Levon 	else
55*1f5207b7SJohn Levon 		__smatch_value("x");
56*1f5207b7SJohn Levon 
57*1f5207b7SJohn Levon 	return;
58*1f5207b7SJohn Levon }
59*1f5207b7SJohn Levon /*
60*1f5207b7SJohn Levon  * check-name: smatch range comparison
61*1f5207b7SJohn Levon  * check-command: smatch -I.. sm_range3.c
62*1f5207b7SJohn Levon  *
63*1f5207b7SJohn Levon  * check-output-start
64*1f5207b7SJohn Levon sm_range3.c:8 func() x = s32min-0
65*1f5207b7SJohn Levon sm_range3.c:10 func() x = 1-s32max
66*1f5207b7SJohn Levon sm_range3.c:13 func() x = 13-s32max
67*1f5207b7SJohn Levon sm_range3.c:15 func() x = s32min-12
68*1f5207b7SJohn Levon sm_range3.c:18 func() x = s32min-23
69*1f5207b7SJohn Levon sm_range3.c:20 func() x = 24-s32max
70*1f5207b7SJohn Levon sm_range3.c:23 func() x = 34-s32max
71*1f5207b7SJohn Levon sm_range3.c:25 func() x = s32min-33
72*1f5207b7SJohn Levon sm_range3.c:28 func() x = 45-s32max
73*1f5207b7SJohn Levon sm_range3.c:30 func() x = s32min-44
74*1f5207b7SJohn Levon sm_range3.c:33 func() x = s32min-56
75*1f5207b7SJohn Levon sm_range3.c:35 func() x = 57-s32max
76*1f5207b7SJohn Levon sm_range3.c:38 func() x = 68-s32max
77*1f5207b7SJohn Levon sm_range3.c:40 func() x = s32min-67
78*1f5207b7SJohn Levon sm_range3.c:43 func() x = s32min-77
79*1f5207b7SJohn Levon sm_range3.c:45 func() x = 78-s32max
80*1f5207b7SJohn Levon sm_range3.c:48 func() x = 89
81*1f5207b7SJohn Levon sm_range3.c:50 func() x = s32min-88,90-s32max
82*1f5207b7SJohn Levon sm_range3.c:53 func() x = s32min-99,101-s32max
83*1f5207b7SJohn Levon sm_range3.c:55 func() x = 100
84*1f5207b7SJohn Levon  * check-output-end
85*1f5207b7SJohn Levon  */
86