From c14f71c78839f51652d6420fb03b3538914ad062 Mon Sep 17 00:00:00 2001 From: Russ Cox Date: Tue, 1 Nov 2011 21:48:27 -0400 Subject: [PATCH] runtime: update for error R=golang-dev, iant, r CC=golang-dev https://golang.org/cl/5306075 --- src/pkg/runtime/error.go | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/pkg/runtime/error.go b/src/pkg/runtime/error.go index 6c37f888f20..13dc52b32aa 100644 --- a/src/pkg/runtime/error.go +++ b/src/pkg/runtime/error.go @@ -6,7 +6,7 @@ package runtime // The Error interface identifies a run time error. type Error interface { - String() string + error // RuntimeError is a no-op function but // serves to distinguish types that are runtime @@ -28,7 +28,7 @@ type TypeAssertionError struct { func (*TypeAssertionError) RuntimeError() {} -func (e *TypeAssertionError) String() string { +func (e *TypeAssertionError) Error() string { inter := e.interfaceString if inter == "" { inter = "interface" @@ -98,7 +98,7 @@ type errorString string func (e errorString) RuntimeError() {} -func (e errorString) String() string { +func (e errorString) Error() string { return "runtime error: " + string(e) } @@ -123,6 +123,8 @@ func printany(i interface{}) { print("nil") case stringer: print(v.String()) + case error: + print(v.Error()) case int: print(v) case string: