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:
Rémy Oudompheng 2014-01-07 13:26:48 +01:00
parent 0a37002367
commit f303921251
2 changed files with 10 additions and 4 deletions

View file

@ -476,9 +476,8 @@ imethods(Type *t)
last->link = a;
last = a;
// Compiler can only refer to wrappers for
// named interface types and non-blank methods.
if(t->sym == S || isblanksym(method))
// Compiler can only refer to wrappers for non-blank methods.
if(isblanksym(method))
continue;
// NOTE(rsc): Perhaps an oversight that

View file

@ -73,7 +73,14 @@ func main() {
f4 := I2.Sum
eq(f4(t1, a, 17), 27)
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)
mt2 := &method4a.T2{4}