diff options
author | Robert Griesemer <gri@golang.org> | 2021-06-05 21:23:48 -0700 |
---|---|---|
committer | Robert Griesemer <gri@golang.org> | 2021-06-06 17:31:50 +0000 |
commit | c23294d6b356590d5ebcaf153048111ee9b30465 (patch) | |
tree | 3c331b1a21368100ae64e5cab2b5fce0cd129ab9 /src/cmd/compile/internal/types2/package.go | |
parent | a5be3eaee2cc0b8e5da216bdf545b9ca44789892 (diff) | |
download | go-c23294d6b356590d5ebcaf153048111ee9b30465.tar.gz go-c23294d6b356590d5ebcaf153048111ee9b30465.zip |
[dev.typeparams] cmd/compile/internal/types2: return Universe for ((*Package)(nil)).Scope()
For #46594.
Change-Id: I53776cbdc1b8f6da511abe2c6659a7313d7a163a
Reviewed-on: https://go-review.googlesource.com/c/go/+/325469
Trust: Robert Griesemer <gri@golang.org>
Run-TryBot: Robert Griesemer <gri@golang.org>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
Diffstat (limited to 'src/cmd/compile/internal/types2/package.go')
-rw-r--r-- | src/cmd/compile/internal/types2/package.go | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/cmd/compile/internal/types2/package.go b/src/cmd/compile/internal/types2/package.go index c5804a05ad..8044e7e6a7 100644 --- a/src/cmd/compile/internal/types2/package.go +++ b/src/cmd/compile/internal/types2/package.go @@ -48,7 +48,13 @@ func (pkg *Package) SetName(name string) { pkg.name = name } // Scope returns the (complete or incomplete) package scope // holding the objects declared at package level (TypeNames, // Consts, Vars, and Funcs). -func (pkg *Package) Scope() *Scope { return pkg.scope } +// For a nil pkg receiver, Scope returns the Universe scope. +func (pkg *Package) Scope() *Scope { + if pkg != nil { + return pkg.scope + } + return Universe +} // A package is complete if its scope contains (at least) all // exported objects; otherwise it is incomplete. |