11f5207b7SJohn Levon #include "check_debug.h"
21f5207b7SJohn Levon 
one(void)31f5207b7SJohn Levon int one(void)
41f5207b7SJohn Levon {
51f5207b7SJohn Levon 	return 1;
61f5207b7SJohn Levon }
71f5207b7SJohn Levon 
81f5207b7SJohn Levon 
main(unsigned int x,unsigned int y)91f5207b7SJohn Levon int main(unsigned int x, unsigned int y)
101f5207b7SJohn Levon {
111f5207b7SJohn Levon 	if (one())
121f5207b7SJohn Levon 		__smatch_states("register_impossible_return");
131f5207b7SJohn Levon 	else
141f5207b7SJohn Levon 		__smatch_states("register_impossible_return");
151f5207b7SJohn Levon }
161f5207b7SJohn Levon 
171f5207b7SJohn Levon /*
181f5207b7SJohn Levon  * check-name: smatch impossible #2
191f5207b7SJohn Levon  * check-command: smatch -I.. sm_impossible2.c
201f5207b7SJohn Levon  *
211f5207b7SJohn Levon  * check-output-start
221f5207b7SJohn Levon sm_impossible2.c:12 main() register_impossible_return: no states
23*6523a3aaSJohn Levon sm_impossible2.c:14 main() [register_impossible_return] impossible = 'impossible'
241f5207b7SJohn Levon  * check-output-end
251f5207b7SJohn Levon  */
26