diff options
author | Ian Lance Taylor <ian@gcc.gnu.org> | 2019-11-19 23:04:08 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@gcc.gnu.org> | 2019-11-19 23:04:08 +0000 |
commit | 0c6ce0ae553a9a73bf4eb27d16ee751167806f8d (patch) | |
tree | 243f5f5dc8187a7e9ad55250bf754fc5f47e5477 | |
parent | fce6467b1ef93c162f955a10d9bdb2bfb2e12c1c (diff) | |
download | gcc-0c6ce0ae553a9a73bf4eb27d16ee751167806f8d.zip gcc-0c6ce0ae553a9a73bf4eb27d16ee751167806f8d.tar.gz gcc-0c6ce0ae553a9a73bf4eb27d16ee751167806f8d.tar.bz2 |
libgo: better cmd/cgo handling for '.' in pkgpath
Updates cgo's gccgoPkgpathToSymbolNew() to bring it into
conformance with the way that gccgo now handles package
paths with embedded dots (see CL 200838). See also
https://gcc.gnu.org/PR61880, a related bug. This CL is a
copy of CL 207957 in the main Go repo.
Updates golang/go#35623.
Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/207977
From-SVN: r278470
-rw-r--r-- | gcc/go/gofrontend/MERGE | 2 | ||||
-rw-r--r-- | libgo/go/cmd/cgo/out.go | 4 |
2 files changed, 4 insertions, 2 deletions
diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE index a981bb8..4eab78b 100644 --- a/gcc/go/gofrontend/MERGE +++ b/gcc/go/gofrontend/MERGE @@ -1,4 +1,4 @@ -25d5e9dca49ad3f49393b254dd87f8df51487c65 +245904ac148f15db530fb8d50f526c47d08024c5 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/cmd/cgo/out.go b/libgo/go/cmd/cgo/out.go index 7282933..97886e1 100644 --- a/libgo/go/cmd/cgo/out.go +++ b/libgo/go/cmd/cgo/out.go @@ -1318,8 +1318,10 @@ func gccgoPkgpathToSymbolNew(ppath string) string { for _, c := range []byte(ppath) { switch { case 'A' <= c && c <= 'Z', 'a' <= c && c <= 'z', - '0' <= c && c <= '9', c == '_', c == '.': + '0' <= c && c <= '9', c == '_': bsl = append(bsl, c) + case c == '.': + bsl = append(bsl, ".x2e"...) default: changed = true encbytes := []byte(fmt.Sprintf("..z%02x", c)) |