mirror of
https://github.com/golang/go
synced 2024-11-24 22:47:58 -07:00
6g: set kind to KindUnsafePointer where appropriate in reflect structures.
R=rsc, ken2, r CC=golang-dev https://golang.org/cl/2355043
This commit is contained in:
parent
4d4b74c7b3
commit
454f03ff0b
@ -598,6 +598,7 @@ dcommontype(Sym *s, int ot, Type *t)
|
||||
// alg uint8;
|
||||
// align uint8;
|
||||
// fieldAlign uint8;
|
||||
// kind uint8;
|
||||
// string *string;
|
||||
// *nameInfo;
|
||||
// }
|
||||
@ -615,9 +616,11 @@ dcommontype(Sym *s, int ot, Type *t)
|
||||
i = kinds[t->etype];
|
||||
if(t->etype == TARRAY && t->bound < 0)
|
||||
i = KindSlice;
|
||||
if(isptr[t->etype] && t->type->etype == TANY)
|
||||
i = KindUnsafePointer;
|
||||
if(!haspointers(t))
|
||||
i |= KindNoPointers;
|
||||
ot = duint8(s, ot, i);
|
||||
ot = duint8(s, ot, i); // kind
|
||||
longsymnames = 1;
|
||||
p = smprint("%-T", t);
|
||||
longsymnames = 0;
|
||||
@ -810,6 +813,7 @@ ok:
|
||||
case TPTR32:
|
||||
case TPTR64:
|
||||
if(t->type->etype == TANY) {
|
||||
// ../../pkg/runtime/type.go:/UnsafePointerType
|
||||
ot = dcommontype(s, ot, t);
|
||||
break;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user