1// compile
2
3// Copyright 2009 The Go Authors. All rights reserved.
4// Use of this source code is governed by a BSD-style
5// license that can be found in the LICENSE file.
6
7package bug219
8
9func f(func()) int { return 0 }
10
11// this doesn't work:
12// bug219.go:16: syntax error near if
13func g1() {
14	if x := f(func() {
15		if true {}
16	}); true {
17		_ = x;
18	}
19}
20
21// this works
22func g2() {
23	if x := f(func() {
24		//if true {}
25	}); true {
26		_ = x;
27	}
28}
29
30// this works
31func g3() {
32	x := f(func() {
33		if true {}
34	});
35	if true {
36		_ = x;
37	}
38}
39