From: Ian Lance Taylor Date: Wed, 10 Jan 2018 15:18:55 +0000 (+0000) Subject: cmd/go: check for another GCC error message X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=d0ac0d52e93267911a6ef1bcbde87bccdebd5058;p=gcc.git cmd/go: check for another GCC error message GCC always recognizes the -fsplit-stack option, but then tests whether it is supported by the selected target. If not, it reports cc1: error: ‘-fsplit-stack’ is not supported by this compiler configuration Check for that error message when deciding whether a compiler option works. Reviewed-on: https://go-review.googlesource.com/87137 From-SVN: r256433 --- diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE index 6f8fa9c4d0d..cb13cf09304 100644 --- a/gcc/go/gofrontend/MERGE +++ b/gcc/go/gofrontend/MERGE @@ -1,4 +1,4 @@ -c22eb29a62b4fd72ad2ea09ebe5fcea5b8ed78b8 +87df767807acac466edb3bb6445ad83a48141d17 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/go/internal/work/exec.go b/libgo/go/cmd/go/internal/work/exec.go index f955573e297..963a5151ead 100644 --- a/libgo/go/cmd/go/internal/work/exec.go +++ b/libgo/go/cmd/go/internal/work/exec.go @@ -1857,9 +1857,11 @@ func (b *Builder) gccSupportsFlag(compiler []string, flag string) bool { // GCC says "unrecognized command line option". // clang says "unknown argument". // Older versions of GCC say "unrecognised debug output level". + // For -fsplit-stack GCC says "'-fsplit-stack' is not supported". supported := !bytes.Contains(out, []byte("unrecognized")) && !bytes.Contains(out, []byte("unknown")) && - !bytes.Contains(out, []byte("unrecognised")) + !bytes.Contains(out, []byte("unrecognised")) && + !bytes.Contains(out, []byte("is not supported")) b.flagCache[key] = supported return supported }