diff options
| author | Damien Neil <dneil@google.com> | 2019-02-28 09:10:36 -0800 |
|---|---|---|
| committer | Damien Neil <dneil@google.com> | 2019-02-28 17:31:37 +0000 |
| commit | 444039e0546c3db1e8f73fb0a74ed21e45a09cb9 (patch) | |
| tree | 8549079be800a1df9ad2f381d7f202ea480e0b11 /src/fmt/errors.go | |
| parent | 72d24a7484063d1ca1113badb481f725382e39b8 (diff) | |
| download | go-444039e0546c3db1e8f73fb0a74ed21e45a09cb9.tar.xz | |
fmt: fix %d and other non-string verbs on errors
When formatting an error with a non-string formatting verb such as %d,
use the default formatting behavior rather than treating this as a bad
verb.
For example, this should print 42, not %!d(main.E=42):
var E int
func (E) Error() string { return "error" }
fmt.Printf("%d", E(42))
Fixes #30472
Change-Id: I62fd309c8ee9839a69052b0ec7f1808449dcee8e
Reviewed-on: https://go-review.googlesource.com/c/164557
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Diffstat (limited to 'src/fmt/errors.go')
| -rw-r--r-- | src/fmt/errors.go | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/src/fmt/errors.go b/src/fmt/errors.go index 0fd3e83814..7506b6a20b 100644 --- a/src/fmt/errors.go +++ b/src/fmt/errors.go @@ -130,8 +130,7 @@ func fmtError(p *pp, verb rune, err error) (handled bool) { w = newPrinter() defer w.free() default: - w.badVerb(verb) - return true + return false } } |
