diff options
author | Ian Lance Taylor <ian@gcc.gnu.org> | 2017-12-02 00:46:00 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@gcc.gnu.org> | 2017-12-02 00:46:00 +0000 |
commit | 79c9f76563e0c0943c9dc44bd1b892175c3239b9 (patch) | |
tree | d493104ca59804fbe820b492ad9b9be9ec0ea2d1 | |
parent | 9638589faff5b5ec33afba0b5a4560a3f0b5aaa6 (diff) | |
download | gcc-79c9f76563e0c0943c9dc44bd1b892175c3239b9.tar.gz |
runtime: export cgoCheck functions
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
-rw-r--r-- | gcc/go/gofrontend/MERGE | 2 | ||||
-rw-r--r-- | libgo/go/runtime/cgocall.go | 4 |
2 files changed, 5 insertions, 1 deletions
diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE index 61f94159974..ecb38ee31e8 100644 --- a/gcc/go/gofrontend/MERGE +++ b/gcc/go/gofrontend/MERGE @@ -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. diff --git a/libgo/go/runtime/cgocall.go b/libgo/go/runtime/cgocall.go index 2e0e591138a..4a416fbf6ad 100644 --- a/libgo/go/runtime/cgocall.go +++ b/libgo/go/runtime/cgocall.go @@ -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 |