aboutsummaryrefslogtreecommitdiff
path: root/src/runtime/slice.go
diff options
context:
space:
mode:
authorKeith Randall <khr@google.com>2019-03-25 12:34:27 -0700
committerKeith Randall <khr@golang.org>2019-03-25 20:46:35 +0000
commitdb16de920370892b0241d3fa0617dddff2417a4d (patch)
tree3a85666fe3b1d1d16dc457ae286e4f133e0c1ce0 /src/runtime/slice.go
parent501632339f36e7e836ec94958351cee51ee76461 (diff)
downloadgo-db16de920370892b0241d3fa0617dddff2417a4d.tar.xz
runtime: remove kindNoPointers
We already have the ptrdata field in a type, which encodes exactly the same information that kindNoPointers does. My problem with kindNoPointers is that it often leads to double-negative code like: t.kind & kindNoPointers != 0 Much clearer is: t.ptrdata == 0 Update #27167 Change-Id: I92307d7f018a6bbe3daca4a4abb4225e359349b1 Reviewed-on: https://go-review.googlesource.com/c/go/+/169157 Run-TryBot: Keith Randall <khr@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Diffstat (limited to 'src/runtime/slice.go')
-rw-r--r--src/runtime/slice.go2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/runtime/slice.go b/src/runtime/slice.go
index dca41ff8cd..79cfc69c54 100644
--- a/src/runtime/slice.go
+++ b/src/runtime/slice.go
@@ -171,7 +171,7 @@ func growslice(et *_type, old slice, cap int) slice {
}
var p unsafe.Pointer
- if et.kind&kindNoPointers != 0 {
+ if et.ptrdata == 0 {
p = mallocgc(capmem, nil, false)
// The append() that calls growslice is going to overwrite from old.len to cap (which will be the new length).
// Only clear the part that will not be overwritten.