blob: 5eb996a487e2ae2565bb2be798fefe55998ace17 [file] [log] [blame]
Test of unimported completions respecting the effective Go version of the file.
(See unprefixed file for same test of imported completions.)
These symbols below were introduced to go/types in go1.22:
Alias
Info.FileVersions
(Checker).PkgNameOf
The underlying logic depends on versions.FileVersion, which only
behaves correctly in go1.22. (When go1.22 is assured, we can remove
the min_go flag but leave the test inputs unchanged.)
-- flags --
-ignore_extra_diags -min_go=go1.22
-- go.mod --
module example.com
go 1.21
-- a/a.go --
package a
// package-level func
var _ = types.Sat //@rankl("Sat", "Satisfies")
var _ = types.Ali //@rankl("Ali", "!Alias")
// (We don't offer completions of methods
// of types from unimported packages, so the fact that
// we don't implement std version filtering isn't evident.)
// field
var _ = new(types.Info).Use //@rankl("Use", "!Uses")
var _ = new(types.Info).Fil //@rankl("Fil", "!FileVersions")
// method
var _ = new(types.Checker).Obje //@rankl("Obje", "!ObjectOf")
var _ = new(types.Checker).PkgN //@rankl("PkgN", "!PkgNameOf")
-- b/b.go --
//go:build go1.22
package a
// package-level decl
var _ = types.Sat //@rankl("Sat", "Satisfies")
var _ = types.Ali //@rankl("Ali", "Alias")