From: Ian Lance Taylor Date: Thu, 2 Oct 2014 17:56:50 +0000 (+0000) Subject: re PR go/61880 (Linking with external functions in C does not work in GO when using... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=4e3bba8fc39cc53c374f68c17763e9928f322847;p=gcc.git re PR go/61880 (Linking with external functions in C does not work in GO when using gccgo, while it works in gc) PR go/61880 compiler: symbol names should have '.' replaced with '_' Package and symbol names issued by the cgo tool and compiler should be the same for the object files to link. A minimal change to fix only: https://code.google.com/p/gofrontend/issues/detail?id=36 and https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61880 From-SVN: r215810 --- diff --git a/gcc/go/gofrontend/gogo.cc b/gcc/go/gofrontend/gogo.cc index dcc2ae64961..81a555fdd88 100644 --- a/gcc/go/gofrontend/gogo.cc +++ b/gcc/go/gofrontend/gogo.cc @@ -258,10 +258,7 @@ Gogo::pkgpath_for_symbol(const std::string& pkgpath) char c = s[i]; if ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') - || (c >= '0' && c <= '9') - || c == '_' - || c == '.' - || c == '$') + || (c >= '0' && c <= '9')) ; else s[i] = '_';