go/test/fixedbugs/issue33062.go
Cherry Zhang e0739d1200 test: add a test for gccgo bug #33062.
Gccgo generates incorrect type equality functions for some types.
CL 185817 fixes it. This CL adds a test.

Updates #33062.

Change-Id: Id445c5d44a437512c65c46a029e49b7fc32e4d89
Reviewed-on: https://go-review.googlesource.com/c/go/+/185818
Run-TryBot: Cherry Zhang <cherryyz@google.com>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2019-07-11 22:30:42 +00:00

33 lines
568 B
Go

// run
// Copyright 2019 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 33062: gccgo generates incorrect type equality
// functions.
package main
type simpleStruct struct {
int
string
}
type complexStruct struct {
int
simpleStruct
}
func main() {
x := complexStruct{1, simpleStruct{2, "xxx"}}
ix := interface{}(x)
y := complexStruct{1, simpleStruct{2, "yyy"}}
iy := interface{}(y)
if ix != ix {
panic("FAIL")
}
if ix == iy {
panic("FAIL")
}
}