runtime: export cgoCheck functions
authorIan Lance Taylor <ian@gcc.gnu.org>
Sat, 2 Dec 2017 00:46:00 +0000 (00:46 +0000)
committerIan Lance Taylor <ian@gcc.gnu.org>
Sat, 2 Dec 2017 00:46:00 +0000 (00:46 +0000)
    The functions cgoCheckPointer and cgoCheckResult are called by code
    generated by cgo. That means that we need to export them using
    go:linkname, as otherwise they are local symbols. The cgo code
    currently uses weak references to only call the symbols if they are
    defined, which is why it has been working--the cgo code has not been
    doing any checks.

    Reviewed-on: https://go-review.googlesource.com/80295

From-SVN: r255347

gcc/go/gofrontend/MERGE
libgo/go/runtime/cgocall.go

index 61f941599741828a053446913a30781b501212ef..ecb38ee31e8002ee2f1406508a6826162402032a 100644 (file)
@@ -1,4 +1,4 @@
-1949a203fca0c8bde6f2690ebc36427c5e3953c7
+338f7434175bb71f3c8905e9ad7f480aec3afee6
 
 The first line of this file holds the git revision number of the last
 merge done from the gofrontend repository.
index 2e0e591138a326ce31164e568fad8abd6508109d..4a416fbf6adbcb0e6313e57a0164fe62920c0198 100644 (file)
@@ -11,6 +11,10 @@ import (
        "unsafe"
 )
 
+// Functions called by cgo-generated code.
+//go:linkname cgoCheckPointer runtime.cgoCheckPointer
+//go:linkname cgoCheckResult runtime.cgoCheckResult
+
 // Pointer checking for cgo code.
 
 // We want to detect all cases where a program that does not use