]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/cgo: remove unnecessary space in cgo export header
authorQuim Muntal <quimmuntal@gmail.com>
Thu, 14 Jan 2021 20:29:49 +0000 (21:29 +0100)
committerIan Lance Taylor <iant@golang.org>
Thu, 14 Jan 2021 21:49:46 +0000 (21:49 +0000)
The cgo header has an unnecessary space in the exported function
definition on non-windows goos.

This was introduced in go1.16 so it would be good to fix it before
release.

Example:

// Current behavior, notice there is an unecessary space
// between extern and void
extern  void Foo();

// With this CL
extern void Foo();

Change-Id: Ic2c21f8d806fe35a7be7183dbfe35ac605b6e4f6
Reviewed-on: https://go-review.googlesource.com/c/go/+/283892
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Trust: Katie Hockman <katie@golang.org>

src/cmd/cgo/out.go

index 11c53facf8f979488f52f494e287d61ec6bf494e..fa6f0efbbe0e20ecf5b6ba8bed7f5229083a8768 100644 (file)
@@ -953,9 +953,9 @@ func (p *Package) writeExports(fgo2, fm, fgcc, fgcch io.Writer) {
                // Build the wrapper function compiled by gcc.
                gccExport := ""
                if goos == "windows" {
-                       gccExport = "__declspec(dllexport)"
+                       gccExport = "__declspec(dllexport) "
                }
-               s := fmt.Sprintf("%s %s %s(", gccExport, gccResult, exp.ExpName)
+               s := fmt.Sprintf("%s%s %s(", gccExport, gccResult, exp.ExpName)
                if fn.Recv != nil {
                        s += p.cgoType(fn.Recv.List[0].Type).C.String()
                        s += " recv"