| // Copyright 2009 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 various correct and incorrect permutations of send-only, |
| // receive-only, and bidirectional channels. |
| 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" |
| x, ok = <-cs // ERROR "receive" |
| case cr <- 0: // ERROR "send" |
| case x := <-cs: // ERROR "receive" |
| for _ = range cs {// ERROR "receive" |
| for range cs {// ERROR "receive" |
| close(cr) // ERROR "receive" |