1*c85f09ccSJohn Levon struct s;
2*c85f09ccSJohn Levon 
foo(struct s s)3*c85f09ccSJohn Levon void foo(struct s s)
4*c85f09ccSJohn Levon {
5*c85f09ccSJohn Levon }
6*c85f09ccSJohn Levon 
bar(void)7*c85f09ccSJohn Levon struct s bar(void)
8*c85f09ccSJohn Levon {
9*c85f09ccSJohn Levon 	struct s s;
10*c85f09ccSJohn Levon 	return s;
11*c85f09ccSJohn Levon }
12*c85f09ccSJohn Levon 
13*c85f09ccSJohn Levon /*
14*c85f09ccSJohn Levon  * check-name: incomplete struct
15*c85f09ccSJohn Levon  * check-command: sparse -Wno-decl $file
16*c85f09ccSJohn Levon  * check-known-to-fail
17*c85f09ccSJohn Levon  *
18*c85f09ccSJohn Levon  * check-error-start
19*c85f09ccSJohn Levon incomplete-struct.c:3:19: error: parameter 's' has incomplete type
20*c85f09ccSJohn Levon incomplete-struct.c:7:10: error: return type is incomplete
21*c85f09ccSJohn Levon incomplete-struct.c:9:11: error: 's' has incompelete type
22*c85f09ccSJohn Levon  * check-error-end
23*c85f09ccSJohn Levon  */
24