11f5207b7SJohn Levon #include "check_debug.h"
21f5207b7SJohn Levon 
31f5207b7SJohn Levon int *something();
41f5207b7SJohn Levon 
51f5207b7SJohn Levon int *one;
61f5207b7SJohn Levon int *two;
func(void)71f5207b7SJohn Levon int func(void)
81f5207b7SJohn Levon {
91f5207b7SJohn Levon 	one = something();
101f5207b7SJohn Levon 	two = one;
111f5207b7SJohn Levon 
121f5207b7SJohn Levon 	if (two == 1) {
131f5207b7SJohn Levon 		__smatch_value("one");
141f5207b7SJohn Levon 		__smatch_value("two");
151f5207b7SJohn Levon 	}
161f5207b7SJohn Levon 	__smatch_value("one");
171f5207b7SJohn Levon 	__smatch_value("two");
181f5207b7SJohn Levon 	if (one == 2) {
191f5207b7SJohn Levon 		__smatch_value("one");
201f5207b7SJohn Levon 		__smatch_value("two");
211f5207b7SJohn Levon 	}
221f5207b7SJohn Levon 	__smatch_value("one");
231f5207b7SJohn Levon 	__smatch_value("two");
241f5207b7SJohn Levon 	return 0;
251f5207b7SJohn Levon }
261f5207b7SJohn Levon /*
271f5207b7SJohn Levon  * check-name: smatch equivalent variables #1
281f5207b7SJohn Levon  * check-command: smatch -I.. -m64 sm_equiv1.c
291f5207b7SJohn Levon  *
301f5207b7SJohn Levon  * check-output-start
311f5207b7SJohn Levon sm_equiv1.c:13 func() one = 1
321f5207b7SJohn Levon sm_equiv1.c:14 func() two = 1
33*efe51d0cSJohn Levon sm_equiv1.c:16 func() one = 0-u64max
34*efe51d0cSJohn Levon sm_equiv1.c:17 func() two = 0-u64max
351f5207b7SJohn Levon sm_equiv1.c:19 func() one = 2
361f5207b7SJohn Levon sm_equiv1.c:20 func() two = 2
37*efe51d0cSJohn Levon sm_equiv1.c:22 func() one = 0-u64max
38*efe51d0cSJohn Levon sm_equiv1.c:23 func() two = 0-u64max
391f5207b7SJohn Levon  * check-output-end
401f5207b7SJohn Levon  */
41