From e54ad64ff346281b707c75c72566b63080864dcf Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Wed, 7 Mar 2012 08:24:10 -0800 Subject: [PATCH] test: add inherited interface test to ddd.go The gccgo compiler incorrectly gave an error for this code. R=golang-dev, rsc CC=golang-dev https://golang.org/cl/5767043 --- test/ddd.go | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/test/ddd.go b/test/ddd.go index f35836331b..3b595b5f8d 100644 --- a/test/ddd.go +++ b/test/ddd.go @@ -60,6 +60,10 @@ type U struct { *T } +type I interface { + Sum(...int) int +} + func main() { if x := sum(1, 2, 3); x != 6 { println("sum 6", x) @@ -207,6 +211,14 @@ func main() { println("i(=u).Sum", x) panic("fail") } + var s struct { + I + } + s.I = &u + if x := s.Sum(2, 3, 5, 8); x != 18 { + println("s{&u}.Sum", x) + panic("fail") + } /* TODO(rsc): Enable once nested method expressions work. if x := (*U).Sum(&U{}, 1, 3, 5, 2); x != 11 { println("(*U).Sum", x) -- 2.50.0