]> Cypherpunks.ru repositories - gostls13.git/commitdiff
misc/cgo/testshared: correct test of gccgo version number
authorIan Lance Taylor <iant@golang.org>
Wed, 10 Nov 2021 17:35:59 +0000 (09:35 -0800)
committerIan Lance Taylor <iant@golang.org>
Thu, 11 Nov 2021 04:54:05 +0000 (04:54 +0000)
We still don't run the gccgo tests, because they don't run in module mode.
But now we at least get the version number check right.

Change-Id: Ifde4512c30605d1cb7e3a521f381a05c783549b7
Reviewed-on: https://go-review.googlesource.com/c/go/+/362996
Trust: Ian Lance Taylor <iant@golang.org>
Run-TryBot: Ian Lance Taylor <iant@golang.org>
Reviewed-by: Than McIntosh <thanm@google.com>
TryBot-Result: Go Bot <gobot@golang.org>

misc/cgo/testshared/shared_test.go

index 672811fe0e333b7031b7fcd41c6e4b206c882cad..d5d018f1516a774ecc4313a7a45c9a55da548077 100644 (file)
@@ -20,6 +20,7 @@ import (
        "regexp"
        "runtime"
        "sort"
+       "strconv"
        "strings"
        "testing"
        "time"
@@ -694,7 +695,15 @@ func requireGccgo(t *testing.T) {
        if err != nil {
                t.Fatalf("%s -dumpversion failed: %v\n%s", gccgoPath, err, output)
        }
-       if string(output) < "5" {
+       dot := bytes.Index(output, []byte{'.'})
+       if dot > 0 {
+               output = output[:dot]
+       }
+       major, err := strconv.Atoi(string(output))
+       if err != nil {
+               t.Skipf("can't parse gccgo version number %s", output)
+       }
+       if major < 5 {
                t.Skipf("gccgo too old (%s)", strings.TrimSpace(string(output)))
        }