test: add test for conversion of untyped bool to interface

gccgo miscompiled this case.

Updates #40152

Change-Id: I8448c155e802e39d8fc7cda4930ce62cb6363ce5
Reviewed-on: https://go-review.googlesource.com/c/go/+/242000
Run-TryBot: Ian Lance Taylor <iant@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Emmanuel Odeke <emm.odeke@gmail.com>
Reviewed-by: Cherry Zhang <cherryyz@google.com>
This commit is contained in:
Ian Lance Taylor 2020-07-10 12:21:41 -07:00
parent 6072d6ee3e
commit 12d40adac4

View File

@ -0,0 +1,21 @@
// run
// Copyright 2020 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.
// Gccgo mishandles converting an untyped boolean to an interface type.
package main
func t(args ...interface{}) bool {
x := true
return x == args[0]
}
func main() {
r := t("x" == "x" && "y" == "y")
if !r {
panic(r)
}
}