mirror of https://github.com/golang/go.git
cmd/gc: do not omit wrapper for expression (interface{...}).F
Fixes #6723. R=rsc CC=golang-codereviews https://golang.org/cl/41570047
This commit is contained in:
parent
0a37002367
commit
f303921251
|
|
@ -476,9 +476,8 @@ imethods(Type *t)
|
||||||
last->link = a;
|
last->link = a;
|
||||||
last = a;
|
last = a;
|
||||||
|
|
||||||
// Compiler can only refer to wrappers for
|
// Compiler can only refer to wrappers for non-blank methods.
|
||||||
// named interface types and non-blank methods.
|
if(isblanksym(method))
|
||||||
if(t->sym == S || isblanksym(method))
|
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
// NOTE(rsc): Perhaps an oversight that
|
// NOTE(rsc): Perhaps an oversight that
|
||||||
|
|
|
||||||
|
|
@ -73,7 +73,14 @@ func main() {
|
||||||
f4 := I2.Sum
|
f4 := I2.Sum
|
||||||
eq(f4(t1, a, 17), 27)
|
eq(f4(t1, a, 17), 27)
|
||||||
eq(f4(t2, a, 18), 28)
|
eq(f4(t2, a, 18), 28)
|
||||||
|
|
||||||
|
// issue 6723
|
||||||
|
f5 := (interface {
|
||||||
|
I2
|
||||||
|
}).Sum
|
||||||
|
eq(f5(t1, a, 19), 29)
|
||||||
|
eq(f5(t2, a, 20), 30)
|
||||||
|
|
||||||
mt1 := method4a.T1(4)
|
mt1 := method4a.T1(4)
|
||||||
mt2 := &method4a.T2{4}
|
mt2 := &method4a.T2{4}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue