This patch by Than McIntosh fixes a typo in cmd/cgo in the gccgo name mangling recipe. The code to implement new-style gccgo name mangling had a recipe that didn't quite match the one in the compiler (incorrect handling for '.'). This showed up as a failure in the gotools cgo test if the directory containing the test run included a "." character. Bootstrapped and ran Go tests on x86_64-pc-linux-gnu. Committed to mainline.
Ian
Index: gcc/go/gofrontend/MERGE =================================================================== --- gcc/go/gofrontend/MERGE (revision 265974) +++ gcc/go/gofrontend/MERGE (working copy) @@ -1,4 +1,4 @@ -da8c968474690d1e77442ac3361b2302ea8e1f36 +559fae430b81595efe151222385192a07a9fc3c3 The first line of this file holds the git revision number of the last merge done from the gofrontend repository. Index: libgo/go/cmd/cgo/out.go =================================================================== --- libgo/go/cmd/cgo/out.go (revision 265710) +++ libgo/go/cmd/cgo/out.go (working copy) @@ -1261,7 +1261,7 @@ func gccgoPkgpathToSymbolNew(ppath strin for _, c := range []byte(ppath) { switch { case 'A' <= c && c <= 'Z', 'a' <= c && c <= 'z', - '0' <= c && c <= '9', '_' == c: + '0' <= c && c <= '9', c == '_', c == '.': bsl = append(bsl, c) default: changed = true