oracle: fix panic when describing "unsafe" Fixes issue 14160 Change-Id: Ie27d79ba135cadd2e6f5d3b40b8eca25b6a030d9 Reviewed-on: https://go-review.googlesource.com/19158 Reviewed-by: Michael Matloob <matloob@golang.org>
diff --git a/oracle/describe.go b/oracle/describe.go index 2743f67..70ddacf 100644 --- a/oracle/describe.go +++ b/oracle/describe.go
@@ -680,6 +680,12 @@ return "const" case *types.PkgName: return "package" + case *types.Builtin: + return "builtin" // e.g. when describing package "unsafe" + case *types.Nil: + return "nil" + case *types.Label: + return "label" } panic(o) }
diff --git a/oracle/testdata/src/describe/main.go b/oracle/testdata/src/describe/main.go index 1cdcd3c..f48d6d0 100644 --- a/oracle/testdata/src/describe/main.go +++ b/oracle/testdata/src/describe/main.go
@@ -9,6 +9,7 @@ import ( "nosuchpkg" // @describe badimport1 "nosuchpkg" nosuchpkg2 "nosuchpkg" // @describe badimport2 "nosuchpkg2" + _ "unsafe" // @describe unsafe "unsafe" ) var _ nosuchpkg.T
diff --git a/oracle/testdata/src/describe/main.golden b/oracle/testdata/src/describe/main.golden index 74b0f80..bc6d9f7 100644 --- a/oracle/testdata/src/describe/main.golden +++ b/oracle/testdata/src/describe/main.golden
@@ -19,6 +19,13 @@ -------- @describe badimport2 -------- Error: can't import package "nosuchpkg" +-------- @describe unsafe -------- +import of package "unsafe" + builtin Alignof + builtin Offsetof + type Pointer unsafe.Pointer + builtin Sizeof + -------- @describe type-ref-builtin -------- reference to built-in type float64