# Test that wildcards don't look in useless directories.

# First make sure that badpkg fails the list of '...'.
! go list ./...
stderr badpkg

# Check that the list of './goodpkg...' succeeds. That implies badpkg was skipped.
go list ./goodpkg...

-- go.mod --
module m

go 1.16
-- goodpkg/x.go --
package goodpkg
-- badpkg/x.go --
pkg badpkg
