diff options
Diffstat (limited to 'test/chan/perm.go')
-rw-r--r-- | test/chan/perm.go | 68 |
1 files changed, 34 insertions, 34 deletions
diff --git a/test/chan/perm.go b/test/chan/perm.go index 502e787a5..d08c03519 100644 --- a/test/chan/perm.go +++ b/test/chan/perm.go @@ -7,51 +7,51 @@ package main var ( - cr <-chan int; - cs chan<- int; - c chan int; + cr <-chan int + cs chan<- int + c chan int ) func main() { - cr = c; // ok - cs = c; // ok - c = cr; // ERROR "illegal types|incompatible|cannot" - c = cs; // ERROR "illegal types|incompatible|cannot" - cr = cs; // ERROR "illegal types|incompatible|cannot" - cs = cr; // ERROR "illegal types|incompatible|cannot" - - c <- 0; // ok - ok := c <- 0; // ok - _ = ok; - <-c; // ok - x, ok := <-c; // ok - _, _ = x, ok; - - cr <- 0; // ERROR "send" - ok = cr <- 0; // ERROR "send" - _ = ok; - <-cr; // ok - x, ok = <-cr; // ok - _, _ = x, ok; - - cs <- 0; // ok - ok = cs <- 0; // ok - _ = ok; - <-cs; // ERROR "receive" - x, ok = <-cs; // ERROR "receive" - _, _ = x, ok; + cr = c // ok + cs = c // ok + c = cr // ERROR "illegal types|incompatible|cannot" + c = cs // ERROR "illegal types|incompatible|cannot" + cr = cs // ERROR "illegal types|incompatible|cannot" + cs = cr // ERROR "illegal types|incompatible|cannot" + + c <- 0 // ok + ok := c <- 0 // ok + _ = ok + <-c // ok + x, ok := <-c // ok + _, _ = x, ok + + cr <- 0 // ERROR "send" + ok = cr <- 0 // ERROR "send" + _ = ok + <-cr // ok + x, ok = <-cr // ok + _, _ = x, ok + + cs <- 0 // ok + ok = cs <- 0 // ok + _ = ok + <-cs // ERROR "receive" + x, ok = <-cs // ERROR "receive" + _, _ = x, ok select { case c <- 0: // ok case x := <-c: // ok - _ = x; + _ = x case cr <- 0: // ERROR "send" case x := <-cr: // ok - _ = x; + _ = x - case cs <- 0: // ok; + case cs <- 0: // ok case x := <-cs: // ERROR "receive" - _ = x; + _ = x } } |