• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download

foo(void)1 static int foo(void)
2 {
3 	goto l;
4 	({
5 l:
6 		0;
7 	});
8 	goto l;
9 }
10 
bar(void)11 static void bar(void)
12 {
13 	goto l;
14 	goto l;
15 	({
16 l:
17 		0;
18 	});
19 }
20 
baz(void)21 static void baz(void)
22 {
23 	({
24 l:
25 		0;
26 	});
27 	goto l;
28 	goto l;
29 }
30 
31 /*
32  * check-name: label-stmt-expr2
33  *
34  * check-error-start
35 label-stmt-expr2.c:3:9: error: label 'l' used outside statement expression
36 label-stmt-expr2.c:5:1:    label 'l' defined here
37 label-stmt-expr2.c:8:9: error: label 'l' used outside statement expression
38 label-stmt-expr2.c:5:1:    label 'l' defined here
39 label-stmt-expr2.c:13:9: error: label 'l' used outside statement expression
40 label-stmt-expr2.c:16:1:    label 'l' defined here
41 label-stmt-expr2.c:27:9: error: label 'l' used outside statement expression
42 label-stmt-expr2.c:24:1:    label 'l' defined here
43 label-stmt-expr2.c:28:9: error: label 'l' used outside statement expression
44 label-stmt-expr2.c:24:1:    label 'l' defined here
45  * check-error-end
46  */
47