aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/compile/internal/types2/package.go
diff options
context:
space:
mode:
authorRobert Griesemer <gri@golang.org>2021-06-05 21:23:48 -0700
committerRobert Griesemer <gri@golang.org>2021-06-06 17:31:50 +0000
commitc23294d6b356590d5ebcaf153048111ee9b30465 (patch)
tree3c331b1a21368100ae64e5cab2b5fce0cd129ab9 /src/cmd/compile/internal/types2/package.go
parenta5be3eaee2cc0b8e5da216bdf545b9ca44789892 (diff)
downloadgo-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.go8
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.