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