1// run
2
3// Copyright 2014 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 main
8
9func main() {
10	c := make(chan bool, 1)
11	ok := true
12	for i := 0; i < 12; i++ {
13		select {
14		case _, ok = <-c:
15			if i < 10 && !ok {
16				panic("BUG")
17			}
18		default:
19		}
20		if i < 10 && !ok {
21			panic("BUG")
22		}
23		if i >= 10 && ok {
24			close(c)
25		}
26	}
27}
28