diff options
Diffstat (limited to 'src/pkg/runtime/error.go')
-rw-r--r-- | src/pkg/runtime/error.go | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/pkg/runtime/error.go b/src/pkg/runtime/error.go index bd7090883..e704ff872 100644 --- a/src/pkg/runtime/error.go +++ b/src/pkg/runtime/error.go @@ -75,19 +75,20 @@ func newErrorString(s string, ret *interface{}) { } // An errorCString represents a runtime error described by a single C string. -type errorCString uintptr +// Not "type errorCString uintptr" because of http://golang.org/issue/7084. +type errorCString struct{ cstr uintptr } func (e errorCString) RuntimeError() {} func cstringToGo(uintptr) string func (e errorCString) Error() string { - return "runtime error: " + cstringToGo(uintptr(e)) + return "runtime error: " + cstringToGo(e.cstr) } // For calling from C. func newErrorCString(s uintptr, ret *interface{}) { - *ret = errorCString(s) + *ret = errorCString{s} } type stringer interface { |