go/test/fixedbugs/issue20185.go
Todd Neal cee5cd5a02 cmd/compile: fix error when typeswitching on untyped
Fixes #20185
Fixes #19977

Change-Id: I8434713d20616ff0c0bc8f33f017e2548a5cccfa
Reviewed-on: https://go-review.googlesource.com/42210
Run-TryBot: Todd Neal <todd@tneal.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Josh Bleecher Snyder <josharian@gmail.com>
2017-04-30 17:25:47 +00:00

26 lines
555 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 nil"
default:
_ = t
}
}
const x = 1
func G() {
switch t := x.(type) { // ERROR "cannot type switch on non-interface value x \(type untyped number\)"
default:
}
}