From: Russ Cox Date: Tue, 20 Jan 2009 23:36:57 +0000 (-0800) Subject: 6g: better genembedtramp fatal error, X-Git-Tag: weekly.2009-11-06~2323 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=35e37bbf4139d7a7eab49e857402c3edfe89af52;p=gostls13.git 6g: better genembedtramp fatal error, and don't put inaccessible private methods in signature. R=ken OCL=23138 CL=23140 --- diff --git a/src/cmd/6g/obj.c b/src/cmd/6g/obj.c index fa2c59dddd..fb2d382a3c 100644 --- a/src/cmd/6g/obj.c +++ b/src/cmd/6g/obj.c @@ -537,7 +537,7 @@ genembedtramp(Type *t, Sig *b) if(c == 1) goto out; } - fatal("genembedtramp"); + fatal("genembedtramp %T.%s", t, b->name); out: if(d == 0) diff --git a/src/cmd/gc/subr.c b/src/cmd/gc/subr.c index 428e705519..40912bce67 100644 --- a/src/cmd/gc/subr.c +++ b/src/cmd/gc/subr.c @@ -2489,6 +2489,8 @@ expand0(Type *t) u = methtype(t); if(u != T) { for(f=u->method; f!=T; f=f->down) { + if(!exportname(f->sym->name) && strcmp(f->sym->package, package) != 0) + continue; if(f->sym->uniq) continue; f->sym->uniq = 1;