mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
go/internal/gccgoimporter: revise previous anonymous field fix.
Revise the fix for #31540 to take into account the possibility that we may see an alias to a name that has already been installed into package scope. This scenario is not possible to reproduce with the current importer unit tests; changes to the harness to enable this scenario will be added in a later CL. Updates #31540. Change-Id: Ie155d5e0b998604177a78471cba2413f57d40229 Reviewed-on: https://go-review.googlesource.com/c/go/+/173440 Reviewed-by: Ian Lance Taylor <iant@golang.org>
This commit is contained in:
parent
13d0af4e70
commit
d152ff286f
1 changed files with 1 additions and 1 deletions
|
|
@ -493,6 +493,7 @@ func (p *parser) parseNamedType(nlist []int) types.Type {
|
|||
// type alias
|
||||
if p.tok == '=' {
|
||||
p.next()
|
||||
p.aliases[nlist[len(nlist)-1]] = name
|
||||
if obj != nil {
|
||||
// use the previously imported (canonical) type
|
||||
t := obj.Type()
|
||||
|
|
@ -502,7 +503,6 @@ func (p *parser) parseNamedType(nlist []int) types.Type {
|
|||
}
|
||||
t := p.parseType(pkg, nlist...)
|
||||
obj = types.NewTypeName(token.NoPos, pkg, name, t)
|
||||
p.aliases[nlist[len(nlist)-1]] = name
|
||||
scope.Insert(obj)
|
||||
return t
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue