blob: 500364038566baba9a65f953a01dabde30171212 [file] [log] [blame] [edit]
// run
// Copyright 2010 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file
// Test that a select statement proceeds when a value is ready.
package main
func f() *int {
println("BUG: called f")
return new(int)
}
func main() {
var x struct {
a int
}
c := make(chan int, 1)
c1 := make(chan int)
c <- 42
select {
case *f() = <-c1:
// nothing
case x.a = <-c:
if x.a != 42 {
println("BUG:", x.a)
}
}
}