2012-02-16 23:48:57 -05:00
|
|
|
// errorcheck
|
2009-06-19 14:00:39 -07:00
|
|
|
|
|
|
|
// 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.
|
|
|
|
|
2012-02-19 13:19:43 +11:00
|
|
|
// Verify allowed and disallowed conversions.
|
|
|
|
// Does not compile.
|
|
|
|
|
2009-06-19 14:00:39 -07:00
|
|
|
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
|
2010-08-31 07:34:01 -07:00
|
|
|
var f1 []int = e[0:]
|
|
|
|
var f2 = []int(e[0:])
|
2009-06-19 14:00:39 -07:00
|
|
|
|
|
|
|
var g = []int(nil)
|
|
|
|
|
2010-06-08 18:50:02 -07:00
|
|
|
type H []int
|
2009-06-19 14:00:39 -07:00
|
|
|
type J []int
|
2010-06-08 18:50:02 -07:00
|
|
|
|
2009-06-19 14:00:39 -07:00
|
|
|
var h H
|
2010-06-08 18:50:02 -07:00
|
|
|
var j1 J = h // ERROR "compat|illegal|cannot"
|
2009-06-19 14:00:39 -07:00
|
|
|
var j2 = J(h)
|