]> Cypherpunks repositories - gostls13.git/commitdiff
internal/reflectlite: use unsafe.String in name.name and name.tag
authorTobias Klauser <tklauser@distanz.ch>
Wed, 9 Nov 2022 10:09:42 +0000 (11:09 +0100)
committerGopher Robot <gobot@golang.org>
Thu, 10 Nov 2022 18:42:48 +0000 (18:42 +0000)
Same as CL 448675 did in package reflect.

Change-Id: I26277d8dcf2d2e204724d6fa5cc6e1ad391633f5
Reviewed-on: https://go-review.googlesource.com/c/go/+/448936
Reviewed-by: Michael Knyszek <mknyszek@google.com>
Run-TryBot: Ian Lance Taylor <iant@google.com>
Auto-Submit: Tobias Klauser <tobias.klauser@gmail.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com>
Reviewed-by: Ian Lance Taylor <iant@google.com>
src/internal/reflectlite/type.go

index 21e3c1278d0423f14f20b656bd48df425a38e96b..43440b11263863bf85db282efd8af1c501c07c73 100644 (file)
@@ -6,10 +6,7 @@
 // any package except for "runtime" and "unsafe".
 package reflectlite
 
-import (
-       "internal/unsafeheader"
-       "unsafe"
-)
+import "unsafe"
 
 // Type is the representation of a Go type.
 //
@@ -341,27 +338,21 @@ func (n name) readVarint(off int) (int, int) {
        }
 }
 
-func (n name) name() (s string) {
+func (n name) name() string {
        if n.bytes == nil {
-               return
+               return ""
        }
        i, l := n.readVarint(1)
-       hdr := (*unsafeheader.String)(unsafe.Pointer(&s))
-       hdr.Data = unsafe.Pointer(n.data(1+i, "non-empty string"))
-       hdr.Len = l
-       return
+       return unsafe.String(n.data(1+i, "non-empty string"), l)
 }
 
-func (n name) tag() (s string) {
+func (n name) tag() string {
        if !n.hasTag() {
                return ""
        }
        i, l := n.readVarint(1)
        i2, l2 := n.readVarint(1 + i + l)
-       hdr := (*unsafeheader.String)(unsafe.Pointer(&s))
-       hdr.Data = unsafe.Pointer(n.data(1+i+l+i2, "non-empty string"))
-       hdr.Len = l2
-       return
+       return unsafe.String(n.data(1+i+l+i2, "non-empty string"), l2)
 }
 
 func (n name) pkgPath() string {