| // errorcheck |
| |
| // 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. |
| |
| // Verify allowed and disallowed conversions. |
| // Does not compile. |
| |
| package main |
| |
| // everything here is legal except the ERROR line |
| |
| var c chan int |
| var d1 chan<- int = c |
| var d2 = (chan<- int)(c) |
| |
| var e *[4]int |
| var f1 []int = e[0:] |
| var f2 = []int(e[0:]) |
| |
| var g = []int(nil) |
| |
| type H []int |
| type J []int |
| |
| var h H |
| var j1 J = h // ERROR "compat|illegal|cannot" |
| var j2 = J(h) |