diff options
| author | Matthew Dempsky <mdempsky@google.com> | 2023-08-16 14:39:47 -0700 |
|---|---|---|
| committer | Gopher Robot <gobot@golang.org> | 2023-08-17 19:36:58 +0000 |
| commit | 7e2e648a2d55547f0e541668b893329ec195691a (patch) | |
| tree | 8040f7f28288ac768ba939a9ecd20cb8437d8bc0 /src/cmd/compile/internal/noder/reader.go | |
| parent | f4e6815652cf3c4803001dd9ab7f0d7f125a466c (diff) | |
| download | go-7e2e648a2d55547f0e541668b893329ec195691a.tar.xz | |
cmd/compile/internal/typecheck: normalize go/defer statements earlier
Normalizing go/defer statements to always use functions with zero
parameters and zero results was added to escape analysis, because that
was the earliest point at which all three frontends converged. Now
that we only have the unified frontend, we can do it during typecheck,
which is where we perform all other desugaring and normalization
rewrites.
Change-Id: Iebf7679b117fd78b1dffee2974bbf85ebc923b23
Reviewed-on: https://go-review.googlesource.com/c/go/+/520260
Reviewed-by: Cuong Manh Le <cuong.manhle.vn@gmail.com>
Run-TryBot: Matthew Dempsky <mdempsky@google.com>
Auto-Submit: Matthew Dempsky <mdempsky@google.com>
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Diffstat (limited to 'src/cmd/compile/internal/noder/reader.go')
| -rw-r--r-- | src/cmd/compile/internal/noder/reader.go | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/cmd/compile/internal/noder/reader.go b/src/cmd/compile/internal/noder/reader.go index a07fec68ec..013c73f3d5 100644 --- a/src/cmd/compile/internal/noder/reader.go +++ b/src/cmd/compile/internal/noder/reader.go @@ -3143,7 +3143,7 @@ func (r *reader) inlClosureFunc(origPos src.XPos, sig *types.Type) *ir.Func { } // TODO(mdempsky): Remove hard-coding of typecheck.Target. - return ir.NewClosureFunc(origPos, r.inlPos(origPos), sig, curfn, typecheck.Target) + return ir.NewClosureFunc(origPos, r.inlPos(origPos), ir.OCLOSURE, sig, curfn, typecheck.Target) } func (r *reader) exprList() []ir.Node { |
