# Go should refuse to build code that is too new according to go.mod.

# go.mod too new
env GOTOOLCHAIN=local
! go build .
stderr '^go: go.mod requires go >= 1.99999 \(running go 1\..+\)$'

# go.mod referenced from go.work too new
cp go.work.old go.work
! go build .
stderr '^go: module . listed in go.work file requires go >= 1.99999, but go.work lists go 1.10; to update it:\n\tgo work use$'

! go work sync
stderr '^go: cannot load module . listed in go.work file: go.mod requires go >= 1.99999 \(running go 1\..+\)$'

# go.work too new
cp go.work.new go.work
cp go.mod.old go.mod
! go build .
stderr '^go: go.work requires go >= 1.99999 \(running go 1\..+\)$'

# vendor too new
rm go.work
mv notvendor vendor
! go build -mod=vendor .
stderr '^go: golang.org/x/text in vendor'${/}'modules.txt requires go >= 1.99999 \(running go 1\..+\)$'

-- go.mod --
module example
go 1.99999

-- p.go --
package p

-- go.mod.old --
module example
go 1.10

-- go.work.new --
go 1.99999
use .

-- go.work.old --
go 1.10
use .

-- notvendor/modules.txt --
# golang.org/x/text v0.9.0
## explicit; go 1.99999
golang.org/x/text/internal/language
