From: Jorropo Date: Sat, 28 Jun 2025 00:20:22 +0000 (+0200) Subject: slices: update TestIssue68488 to avoid false positives X-Git-Tag: go1.25rc2~2^2~3 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=d168ad18e1;p=gostls13.git slices: update TestIssue68488 to avoid false positives Fixes #74387 Even tho we are abusing unsafe.SliceData a bit here it's probably fine; in case this test fail, it means some memory alias is happening which is not good for GC purposes. We don't care about false keep alives for stack locations tho. Change-Id: I9434bad8c6d9fbc39c738690617dc7cf91d82aef Reviewed-on: https://go-review.googlesource.com/c/go/+/684755 Reviewed-by: David Chase LUCI-TryBot-Result: Go LUCI Reviewed-by: Keith Randall Reviewed-by: Keith Randall Auto-Submit: Jorropo --- diff --git a/src/slices/slices_test.go b/src/slices/slices_test.go index edf7e7b610..19a3e9b0dd 100644 --- a/src/slices/slices_test.go +++ b/src/slices/slices_test.go @@ -1454,6 +1454,8 @@ func TestRepeatPanics(t *testing.T) { } } +var leak *int + func TestIssue68488(t *testing.T) { s := make([]int, 3) clone := Clone(s[1:1]) @@ -1461,6 +1463,7 @@ func TestIssue68488(t *testing.T) { case &s[0], &s[1], &s[2]: t.Error("clone keeps alive s due to array overlap") } + leak = &s[1] // see go.dev/issue/74387 } // This test asserts the behavior when the primary slice operand is nil.