]> Cypherpunks repositories - gostls13.git/commitdiff
[dev.typeparams] cmd/compile/internal/types2: return Universe for ((*Package)(nil...
authorRobert Griesemer <gri@golang.org>
Sun, 6 Jun 2021 04:23:48 +0000 (21:23 -0700)
committerRobert Griesemer <gri@golang.org>
Sun, 6 Jun 2021 17:31:50 +0000 (17:31 +0000)
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>
src/cmd/compile/internal/types2/package.go

index c5804a05adce008469e21128c93db895b3aff519..8044e7e6a76ce25254bcacab3599d547698e64a6 100644 (file)
@@ -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.