]> Cypherpunks repositories - gostls13.git/commitdiff
runtime: use efaceOf where applicable
authorMatthew Dempsky <mdempsky@google.com>
Wed, 2 Oct 2019 22:41:13 +0000 (15:41 -0700)
committerMatthew Dempsky <mdempsky@google.com>
Thu, 3 Oct 2019 02:09:41 +0000 (02:09 +0000)
Prepared with gofmt -r.

Change-Id: Ifea325c209d800b5692d318955930b10debb548b
Reviewed-on: https://go-review.googlesource.com/c/go/+/198494
Run-TryBot: Matthew Dempsky <mdempsky@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
src/runtime/cgocall.go
src/runtime/iface.go

index 3595e49ed5ab16884ef761dce0814ee4dffa6fbd..5f8ff8139a5cfdf03a5383a5185e0d9f211046fc 100644 (file)
@@ -411,7 +411,7 @@ func cgoCheckPointer(ptr interface{}, arg interface{}) {
                return
        }
 
-       ep := (*eface)(unsafe.Pointer(&ptr))
+       ep := efaceOf(&ptr)
        t := ep._type
 
        top := true
@@ -423,7 +423,7 @@ func cgoCheckPointer(ptr interface{}, arg interface{}) {
                if p == nil || !cgoIsGoPointer(p) {
                        return
                }
-               aep := (*eface)(unsafe.Pointer(&arg))
+               aep := efaceOf(&arg)
                switch aep._type.kind & kindMask {
                case kindBool:
                        if t.kind&kindMask == kindUnsafePointer {
@@ -650,7 +650,7 @@ func cgoCheckResult(val interface{}) {
                return
        }
 
-       ep := (*eface)(unsafe.Pointer(&val))
+       ep := efaceOf(&val)
        t := ep._type
        cgoCheckArg(t, ep.data, t.kind&kindDirectIface == 0, false, cgoResultFail)
 }
index bb4eccc9bd22f3c2bdcf02fc9ad9d53dd6dcf4dd..243e51fc480021955e6a6abfd9f8fa20258ff82d 100644 (file)
@@ -295,11 +295,11 @@ var (
        stringEface interface{} = stringInterfacePtr("")
        sliceEface  interface{} = sliceInterfacePtr(nil)
 
-       uint16Type *_type = (*eface)(unsafe.Pointer(&uint16Eface))._type
-       uint32Type *_type = (*eface)(unsafe.Pointer(&uint32Eface))._type
-       uint64Type *_type = (*eface)(unsafe.Pointer(&uint64Eface))._type
-       stringType *_type = (*eface)(unsafe.Pointer(&stringEface))._type
-       sliceType  *_type = (*eface)(unsafe.Pointer(&sliceEface))._type
+       uint16Type *_type = efaceOf(&uint16Eface)._type
+       uint32Type *_type = efaceOf(&uint32Eface)._type
+       uint64Type *_type = efaceOf(&uint64Eface)._type
+       stringType *_type = efaceOf(&stringEface)._type
+       sliceType  *_type = efaceOf(&sliceEface)._type
 )
 
 // The conv and assert functions below do very similar things.