From: Luuk van Dijk Date: Thu, 15 Dec 2011 16:38:47 +0000 (+0100) Subject: gc: omit argument names from function types in error messages X-Git-Tag: weekly.2011-12-22~185 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=5b2f8d96cec0b1800cc099e022175b3588fd86a2;p=gostls13.git gc: omit argument names from function types in error messages Fixes #2563 R=rsc CC=golang-dev https://golang.org/cl/5495047 --- diff --git a/src/cmd/gc/fmt.c b/src/cmd/gc/fmt.c index 886488a368..c627adb34f 100644 --- a/src/cmd/gc/fmt.c +++ b/src/cmd/gc/fmt.c @@ -680,7 +680,7 @@ typefmt(Fmt *fp, Type *t) case TSTRUCT: if(t->funarg) { fmtstrcpy(fp, "("); - if(fmtmode == FTypeId) { // no argument names on function signature, and no "noescape" tags + if(fmtmode == FTypeId || fmtmode == FErr) { // no argument names on function signature, and no "noescape" tags for(t1=t->type; t1!=T; t1=t1->down) if(t1->down) fmtprint(fp, "%hT, ", t1); diff --git a/test/fixedbugs/bug389.go b/test/fixedbugs/bug389.go new file mode 100644 index 0000000000..40d6c419cf --- /dev/null +++ b/test/fixedbugs/bug389.go @@ -0,0 +1,12 @@ +// errchk $G $D/$F.go + +// Copyright 2011 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +// Issue 2563 +package foo + +func fn(a float32) {} + +var f func(arg int) = fn // ERROR "cannot use fn .type func.float32.. as type func.int. in assignment" \ No newline at end of file