aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/api/goapi.go
diff options
context:
space:
mode:
authorBrad Fitzpatrick <bradfitz@golang.org>2012-03-11 17:55:15 -0700
committerBrad Fitzpatrick <bradfitz@golang.org>2012-03-11 17:55:15 -0700
commite31fa68a43d71efb73cf0745ab0f911400a40a5e (patch)
tree16afb27edf747177ec3cbe9da4ca00a9cfdf3bc8 /src/cmd/api/goapi.go
parent764880e2b2a025e7eb4dfdb226f50ff2586aa384 (diff)
downloadgo-e31fa68a43d71efb73cf0745ab0f911400a40a5e.tar.xz
cmd/api: work on Windows again, and make gccgo files work a bit more
handle string and []byte conversions. R=golang-dev, dsymonds CC=golang-dev https://golang.org/cl/5754082
Diffstat (limited to 'src/cmd/api/goapi.go')
-rw-r--r--src/cmd/api/goapi.go9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/cmd/api/goapi.go b/src/cmd/api/goapi.go
index 552e2f331e..1782b73ceb 100644
--- a/src/cmd/api/goapi.go
+++ b/src/cmd/api/goapi.go
@@ -579,7 +579,14 @@ func (w *Walker) varValueType(vi interface{}) (string, error) {
}
}
// maybe a function call; maybe a conversion. Need to lookup type.
- return "", fmt.Errorf("not a known function %q", w.nodeString(v.Fun))
+ // TODO(bradfitz): this is a hack, but arguably most of this tool is,
+ // until the Go AST has type information.
+ nodeStr := w.nodeString(v.Fun)
+ switch nodeStr {
+ case "string", "[]byte":
+ return nodeStr, nil
+ }
+ return "", fmt.Errorf("not a known function %q", nodeStr)
default:
return "", fmt.Errorf("unknown const value type %T", vi)
}