// +build ignore,OMIT package main import ( "fmt" "math/rand" "time" ) func init() { rand.Seed(time.Now().UnixNano()) } func main() { a, b := make(chan string), make(chan string) go func() { a <- "a" }() go func() { b <- "b" }() if rand.Intn(2) == 0 { a = nil // HL fmt.Println("nil a") } else { b = nil // HL fmt.Println("nil b") } select { case s := <-a: fmt.Println("got", s) case s := <-b: fmt.Println("got", s) } }