From 33d8cdeedc4e69cd2d4eae10f024af826a73ce47 Mon Sep 17 00:00:00 2001 From: Russ Cox Date: Tue, 22 Nov 2022 10:24:11 -0500 Subject: [PATCH] reflect: deprecate SliceHeader and StringHeader These are replaced by unsafe.String etc, which were added in Go 1.20. Per https://go.dev/wiki/Deprecated, we must wait until Go 1.21 to mark them deprecated. Fixes #56906. Change-Id: I4198c3f3456e9e2031f6c7232842e187e6448892 Reviewed-on: https://go-review.googlesource.com/c/go/+/452762 TryBot-Result: Gopher Robot Auto-Submit: Russ Cox Reviewed-by: Ian Lance Taylor Reviewed-by: Emmanuel Odeke Run-TryBot: Russ Cox --- api/next/56906.txt | 2 ++ src/reflect/value.go | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) create mode 100644 api/next/56906.txt diff --git a/api/next/56906.txt b/api/next/56906.txt new file mode 100644 index 0000000000..aa4424af11 --- /dev/null +++ b/api/next/56906.txt @@ -0,0 +1,2 @@ +pkg reflect, type SliceHeader //deprecated #56906 +pkg reflect, type StringHeader //deprecated #56906 diff --git a/src/reflect/value.go b/src/reflect/value.go index 5feca61434..22f3eb02cd 100644 --- a/src/reflect/value.go +++ b/src/reflect/value.go @@ -2743,7 +2743,7 @@ func (v Value) UnsafePointer() unsafe.Pointer { // it references will not be garbage collected, so programs must keep // a separate, correctly typed pointer to the underlying data. // -// In new code, use unsafe.String or unsafe.StringData instead. +// Deprecated: Use unsafe.String or unsafe.StringData instead. type StringHeader struct { Data uintptr Len int @@ -2756,7 +2756,7 @@ type StringHeader struct { // it references will not be garbage collected, so programs must keep // a separate, correctly typed pointer to the underlying data. // -// In new code, use unsafe.Slice or unsafe.SliceData instead. +// Deprecated: Use unsafe.Slice or unsafe.SliceData instead. type SliceHeader struct { Data uintptr Len int -- 2.48.1