From 095de8795ab55184c2c0029a9609f9d114d27234 Mon Sep 17 00:00:00 2001 From: =?utf8?q?R=C3=A9my=20Oudompheng?= Date: Tue, 7 Jan 2014 18:25:11 +0100 Subject: [PATCH] cmd/gc: add missing dupok flag for interface method wrappers. R=rsc CC=golang-codereviews https://golang.org/cl/48420044 --- src/cmd/gc/subr.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/cmd/gc/subr.c b/src/cmd/gc/subr.c index f8e321c962..779580295f 100644 --- a/src/cmd/gc/subr.c +++ b/src/cmd/gc/subr.c @@ -2591,8 +2591,10 @@ genwrapper(Type *rcvr, Type *method, Sym *newnam, int iface) funcbody(fn); curfn = fn; - // wrappers where T is anonymous (struct{ NamedType }) can be duplicated. - if(rcvr->etype == TSTRUCT || isptr[rcvr->etype] && rcvr->type->etype == TSTRUCT) + // wrappers where T is anonymous (struct or interface) can be duplicated. + if(rcvr->etype == TSTRUCT || + rcvr->etype == TINTER || + isptr[rcvr->etype] && rcvr->type->etype == TSTRUCT) fn->dupok = 1; typecheck(&fn, Etop); typechecklist(fn->nbody, Etop); -- 2.48.1