| # go.dev/issue/65612 |
| # go vet should set the GoVersion for command line files. |
| |
| env TESTGO_VERSION=go1.22.1 |
| env TESTGO_VERSION_SWITCH=switch |
| |
| go vet -n -json example.com/m |
| stderr '"GoVersion": "go1.22.0"' |
| |
| # A command line file should use the local go version. |
| go vet -n -json main.go |
| stderr '"GoVersion": "go1.22.1"' |
| |
| # In workspace mode, the command line file version should use go.work version. |
| cp go.work.orig go.work |
| go vet -n -json example.com/m |
| stderr '"GoVersion": "go1.22.0' |
| |
| go vet -n -json main.go |
| stderr '"GoVersion": "go1.22.2' |
| |
| # Without go.mod or go.work, the command line file version should use local go version . |
| env TESTGO_VERSION=go1.22.3 |
| rm go.mod |
| rm go.work |
| |
| ! go vet -n -json example.com/m |
| |
| go vet -n -json main.go |
| stderr '"GoVersion": "go1.22.3"' |
| |
| -- go.mod -- |
| module example.com/m |
| |
| go 1.22.0 |
| |
| -- go.work.orig -- |
| go 1.22.2 |
| |
| use . |
| |
| -- main.go -- |
| package main |