diff --git a/gc.go b/gc.go index 79fda59..2424231 100644 --- a/gc.go +++ b/gc.go @@ -126,6 +126,12 @@ func (t *gcToolchain) Gc(pkg *Package, files []string) error { for _, d := range pkg.includePaths() { args = append(args, "-I", d) } + + if (version.Version > 1.8) && pkg.Goroot { + // stdlib with special std flag + args = append(args, "-std") + } + if pkg.Goroot && pkg.ImportPath == "runtime" { // runtime compiles with a special gc flag to emit // additional reflect type data. diff --git a/internal/version/version16.go b/internal/version/version16.go index db590d7..b966c78 100644 --- a/internal/version/version16.go +++ b/internal/version/version16.go @@ -1,5 +1,5 @@ // +build go1.6 -// +build !go1.7,!go1.8 +// +build !go1.7,!go1.8,!go1.9,!go1.10 package version diff --git a/internal/version/version17.go b/internal/version/version17.go index 0b445e2..3c5471f 100644 --- a/internal/version/version17.go +++ b/internal/version/version17.go @@ -1,5 +1,5 @@ // +build go1.7 -// +build !go1.8 +// +build !go1.8,!go1.9,!go1.10 package version diff --git a/internal/version/version18.go b/internal/version/version18.go index 65af048..1bef253 100644 --- a/internal/version/version18.go +++ b/internal/version/version18.go @@ -1,4 +1,5 @@ // +build go1.8 +// +build !go1.9,!go1.10 package version diff --git a/internal/version/version19.go b/internal/version/version19.go new file mode 100644 index 0000000..b96ad71 --- /dev/null +++ b/internal/version/version19.go @@ -0,0 +1,7 @@ +// +build go1.9,go1.10 + +package version + +const ( + Version = 1.9 +)