File: //opt/golang/1.22.0/src/cmd/go/testdata/script/chdir.txt
env OLD=$PWD
# basic -C functionality
cd $GOROOT/src/math
go list -C ../strings
stdout strings
! go list -C ../nonexist
stderr 'chdir.*nonexist'
# check for -C in subcommands with custom flag parsing
# cmd/go/chdir_test.go handles the normal ones more directly.
# go doc
go doc -C ../strings HasPrefix
# go env
go env -C $OLD/custom GOMOD
stdout 'custom[\\/]go.mod'
! go env -C ../nonexist
stderr '^go: chdir ../nonexist: '
# go test
go test -C ../strings -n
stderr 'strings\.test'
# go vet
go vet -C ../strings -n
stderr strings_test
# -C must be first on command line (as of Go 1.21)
! go test -n -C ../strings
stderr '^invalid value "../strings" for flag -C: -C flag must be first flag on command line$'
-- custom/go.mod --
module m