1
0
mirror of https://github.com/golang/go synced 2024-11-20 11:04:56 -07:00

cmd/compile: simplify exporting OTYPE nodes

We only export packages that typechecked successfully, and OTYPE nodes
will always have their Type field set.

Changes the package export format, but only in the compiler-specific
section. No version bump necessary.

Change-Id: I722f5827e73948fceb0432bc8b3b22471fea8f61
Reviewed-on: https://go-review.googlesource.com/63273
Run-TryBot: Matthew Dempsky <mdempsky@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Alan Donovan <adonovan@google.com>
This commit is contained in:
Matthew Dempsky 2017-09-12 13:42:10 -07:00
parent 0d8a3b208c
commit 577967799c
2 changed files with 2 additions and 10 deletions

View File

@ -1227,11 +1227,7 @@ func (p *exporter) expr(n *Node) {
case OTYPE:
p.op(OTYPE)
p.pos(n)
if p.bool(n.Type == nil) {
p.sym(n)
} else {
p.typ(n.Type)
}
p.typ(n.Type)
// case OTARRAY, OTMAP, OTCHAN, OTSTRUCT, OTINTER, OTFUNC:
// should have been resolved by typechecking - handled by default case

View File

@ -947,11 +947,7 @@ func (p *importer) node() *Node {
// unreachable - should have been resolved by typechecking
case OTYPE:
pos := p.pos()
if p.bool() {
return npos(pos, mkname(p.sym()))
}
return npos(pos, typenod(p.typ()))
return npos(p.pos(), typenod(p.typ()))
// case OTARRAY, OTMAP, OTCHAN, OTSTRUCT, OTINTER, OTFUNC:
// unreachable - should have been resolved by typechecking