diff options
author | Russ Cox <rsc@golang.org> | 2008-11-05 15:59:34 -0800 |
---|---|---|
committer | Russ Cox <rsc@golang.org> | 2008-11-05 15:59:34 -0800 |
commit | cad41bce2766a05e572163d0338471c22e269d5c (patch) | |
tree | 44d161aceb965f108e9449915edf94f487f90388 /src/cmd/gc/subr.c | |
parent | 0e227f85a2bb9feb58d8090e0235884a55688ac6 (diff) | |
download | golang-cad41bce2766a05e572163d0338471c22e269d5c.tar.gz |
fix renamed-package bug in exported names:
always show original name
R=ken
OCL=18603
CL=18603
Diffstat (limited to 'src/cmd/gc/subr.c')
-rw-r--r-- | src/cmd/gc/subr.c | 21 |
1 files changed, 7 insertions, 14 deletions
diff --git a/src/cmd/gc/subr.c b/src/cmd/gc/subr.c index b6e225f81..fbeef81f0 100644 --- a/src/cmd/gc/subr.c +++ b/src/cmd/gc/subr.c @@ -912,14 +912,13 @@ out: int Sconv(Fmt *fp) { - char buf[500]; Sym *s; char *opk, *pkg, *nam; s = va_arg(fp->args, Sym*); if(s == S) { - snprint(buf, sizeof(buf), "<S>"); - goto out; + fmtstrcpy(fp, "<S>"); + return 0; } pkg = "<nil>"; @@ -934,18 +933,12 @@ Sconv(Fmt *fp) nam = s->name; if(!(fp->flags & FmtShort)) - if(strcmp(pkg, package) || strcmp(opk, package) || (fp->flags & FmtLong)) { - if(strcmp(opk, pkg) == 0) { - snprint(buf, sizeof(buf), "%s.%s", pkg, nam); - goto out; - } - snprint(buf, sizeof(buf), "(%s)%s.%s", opk, pkg, nam); - goto out; + if(strcmp(opk, package) || (fp->flags & FmtLong)) { + fmtprint(fp, "%s.%s", opk, nam); + return 0; } - snprint(buf, sizeof(buf), "%s", nam); - -out: - return fmtstrcpy(fp, buf); + fmtstrcpy(fp, nam); + return 0; } static char* |