]> Cypherpunks repositories - gostls13.git/commitdiff
go/importer: revert incorrect change that slipped in prior CL
authorRobert Griesemer <gri@golang.org>
Wed, 13 Jan 2016 18:41:37 +0000 (10:41 -0800)
committerRobert Griesemer <gri@golang.org>
Wed, 13 Jan 2016 19:10:31 +0000 (19:10 +0000)
The package of anonymous fields is the package in which they were
declared, not the package of the anonymous field's type. Was correct
before and incorrectly changed with https://golang.org/cl/18549.

Change-Id: I9fd5bfbe9d0498c8733b6ca7b134a85defe16113
Reviewed-on: https://go-review.googlesource.com/18596
Reviewed-by: Alan Donovan <adonovan@google.com>
src/go/internal/gcimporter/gcimporter.go

index 2365d84931cd86fcd6bc70df61f3b596b15cb839..0ef8eb4fc6ca78bf65f81c0326ad4745e49b20a6 100644 (file)
@@ -492,12 +492,10 @@ func (p *parser) parseField(parent *types.Package) (*types.Var, string) {
                // anonymous field - typ must be T or *T and T must be a type name
                switch typ := deref(typ).(type) {
                case *types.Basic: // basic types are named types
-                       pkg = nil
+                       pkg = nil // objects defined in Universe scope have no package
                        name = typ.Name()
                case *types.Named:
-                       obj := typ.Obj()
-                       pkg = obj.Pkg()
-                       name = obj.Name()
+                       name = typ.Obj().Name()
                default:
                        p.errorf("anonymous field expected")
                }