mirror of
https://github.com/golang/go
synced 2024-11-21 13:34:39 -07:00
cmd/gc: fix PkgPath of byte, rune types
Fixes #3853. R=ken2 CC=golang-dev https://golang.org/cl/6492071
This commit is contained in:
parent
9b8c94a46f
commit
a96c2b8c1a
@ -680,6 +680,12 @@ dtypesym(Type *t)
|
||||
Sig *a, *m;
|
||||
Type *t1, *tbase, *t2;
|
||||
|
||||
// Replace byte, rune aliases with real type.
|
||||
// They've been separate internally to make error messages
|
||||
// better, but we have to merge them in the reflect tables.
|
||||
if(t == bytetype || t == runetype)
|
||||
t = types[t->etype];
|
||||
|
||||
if(isideal(t))
|
||||
fatal("dtypesym %T", t);
|
||||
|
||||
|
@ -1384,7 +1384,30 @@ func TestImportPath(t *testing.T) {
|
||||
path string
|
||||
}{
|
||||
{TypeOf(&base64.Encoding{}).Elem(), "encoding/base64"},
|
||||
{TypeOf(int(0)), ""},
|
||||
{TypeOf(int8(0)), ""},
|
||||
{TypeOf(int16(0)), ""},
|
||||
{TypeOf(int32(0)), ""},
|
||||
{TypeOf(int64(0)), ""},
|
||||
{TypeOf(uint(0)), ""},
|
||||
{TypeOf(uint8(0)), ""},
|
||||
{TypeOf(uint16(0)), ""},
|
||||
{TypeOf(uint32(0)), ""},
|
||||
{TypeOf(uint64(0)), ""},
|
||||
{TypeOf(uintptr(0)), ""},
|
||||
{TypeOf(float32(0)), ""},
|
||||
{TypeOf(float64(0)), ""},
|
||||
{TypeOf(complex64(0)), ""},
|
||||
{TypeOf(complex128(0)), ""},
|
||||
{TypeOf(byte(0)), ""},
|
||||
{TypeOf(rune(0)), ""},
|
||||
{TypeOf([]byte(nil)), ""},
|
||||
{TypeOf([]rune(nil)), ""},
|
||||
{TypeOf(string("")), ""},
|
||||
{TypeOf((*interface{})(nil)).Elem(), ""},
|
||||
{TypeOf((*byte)(nil)), ""},
|
||||
{TypeOf((*rune)(nil)), ""},
|
||||
{TypeOf((*int64)(nil)), ""},
|
||||
{TypeOf(map[string]int{}), ""},
|
||||
{TypeOf((*error)(nil)).Elem(), ""},
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user