mirror of
https://github.com/golang/go
synced 2024-09-04 23:44:16 +00:00
[dev.typeparams] cmd/compile: don't compile blank functions
After typechecking a blank function, we can clear out its body and skip applying middle-end optimizations (inlining, escape analysis). We already skip sending them through SSA, and the previous CL updated inlining and escape analysis regress tests to not depend on compiling blank functions. Updates #47446. Change-Id: Ie678763b0e6ff13dd606ce14906b1ccf1bbccaae Reviewed-on: https://go-review.googlesource.com/c/go/+/338095 Trust: Matthew Dempsky <mdempsky@google.com> Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Robert Griesemer <gri@golang.org>
This commit is contained in:
parent
adedf54288
commit
506fd520d5
|
@ -51,8 +51,8 @@ func FuncBody(n *ir.Func) {
|
||||||
Stmts(n.Body)
|
Stmts(n.Body)
|
||||||
CheckUnused(n)
|
CheckUnused(n)
|
||||||
CheckReturn(n)
|
CheckReturn(n)
|
||||||
if base.Errors() > errorsBefore {
|
if ir.IsBlank(n.Nname) || base.Errors() > errorsBefore {
|
||||||
n.Body = nil // type errors; do not compile
|
n.Body = nil // blank function or type errors; do not compile
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue