aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/compile/internal/gc/main.go
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2020-12-21 15:10:26 -0500
committerRuss Cox <rsc@golang.org>2020-12-22 19:32:21 +0000
commit280e7fd1ee47ad92b0031bbc0fa103ac25552950 (patch)
tree445d434b46e28b8b6a5e25c4ad11f5312d4ed0a0 /src/cmd/compile/internal/gc/main.go
parent51ba53f5c2d58dd0c02b5ee1f4ef1db2577c4d3a (diff)
downloadgo-280e7fd1ee47ad92b0031bbc0fa103ac25552950.tar.gz
go-280e7fd1ee47ad92b0031bbc0fa103ac25552950.zip
[dev.regabi] cmd/compile: only access Func method on concrete types
Sets up for removing Func from Node interface. That means that once the Name reorg is done, which will let us remove Name, Sym, and Val, Node will be basically a minimal interface. Passes buildall w/ toolstash -cmp. Change-Id: I6e87897572debd7f8e29b4f5167763dc2792b408 Reviewed-on: https://go-review.googlesource.com/c/go/+/279484 Trust: Russ Cox <rsc@golang.org> Reviewed-by: Matthew Dempsky <mdempsky@google.com>
Diffstat (limited to 'src/cmd/compile/internal/gc/main.go')
-rw-r--r--src/cmd/compile/internal/gc/main.go9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/cmd/compile/internal/gc/main.go b/src/cmd/compile/internal/gc/main.go
index 80b17ebbf8..94b4e0e674 100644
--- a/src/cmd/compile/internal/gc/main.go
+++ b/src/cmd/compile/internal/gc/main.go
@@ -270,9 +270,12 @@ func Main(archInit func(*Arch)) {
// before walk reaches a call of a closure.
timings.Start("fe", "xclosures")
for _, n := range Target.Decls {
- if n.Op() == ir.ODCLFUNC && n.Func().OClosure != nil {
- Curfn = n.(*ir.Func)
- transformclosure(Curfn)
+ if n.Op() == ir.ODCLFUNC {
+ n := n.(*ir.Func)
+ if n.Func().OClosure != nil {
+ Curfn = n
+ transformclosure(n)
+ }
}
}