go/test/fixedbugs/issue20185.go

26 строки
581 B
Go

// errorcheck
// Copyright 2017 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.
// Issue 20185: type switching on untyped values (e.g. nil or consts)
// caused an internal compiler error.
package p
func F() {
switch t := nil.(type) { // ERROR "cannot type switch on non-interface value|not an interface"
default:
_ = t
}
}
const x = 1
func G() {
switch t := x.(type) { // ERROR "cannot type switch on non-interface value|declared but not used|not an interface"
default:
}
}