]> Cypherpunks.ru repositories - gostls13.git/commitdiff
reflect: pass the right element type in verifyGCBitsSlice
authorMichael Anthony Knyszek <mknyszek@google.com>
Sat, 28 Oct 2023 16:30:57 +0000 (16:30 +0000)
committerGopher Robot <gobot@golang.org>
Thu, 2 Nov 2023 17:24:08 +0000 (17:24 +0000)
Currently verifyGCBitsSlice creates a new array type to represent the
slice backing store, but passes the element type as the slice type in
this construction. This is incorrect, but the tests currently don't care
about it. They will in a follow-up CL, so fix it now.

Change-Id: I6ed8a9808ae78c624be316db1566376fa0e12758
Reviewed-on: https://go-review.googlesource.com/c/go/+/537981
Reviewed-by: Cherry Mui <cherryyz@google.com>
Reviewed-by: Keith Randall <khr@golang.org>
Auto-Submit: Michael Knyszek <mknyszek@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>

src/reflect/all_test.go

index c2a987f45e9ac26d488082df1d51b29aa66268dd..5bff2efbc413cbf39cabfd04370cbc32d0775457 100644 (file)
@@ -7042,7 +7042,7 @@ func verifyGCBitsSlice(t *testing.T, typ Type, cap int, bits []byte) {
        // repeat a bitmap for a small array or executing a repeat in
        // a GC program.
        val := MakeSlice(typ, 0, cap)
-       data := NewAt(ArrayOf(cap, typ), val.UnsafePointer())
+       data := NewAt(ArrayOf(cap, typ.Elem()), val.UnsafePointer())
        heapBits := GCBits(data.Interface())
        // Repeat the bitmap for the slice size, trimming scalars in
        // the last element.