diff options
| author | Matthew Dempsky <mdempsky@google.com> | 2023-08-24 17:05:50 -0700 |
|---|---|---|
| committer | Gopher Robot <gobot@golang.org> | 2023-08-25 16:39:04 +0000 |
| commit | b036d7e17f1cf5ecf9411e604fbc5bb40dc3dc95 (patch) | |
| tree | 514ede18b2e45ac7fc7e5b0593c3d27dca3bbc11 /src/cmd/compile/internal/noder | |
| parent | 99ea5b9765dc79e8d8f7e37bd55d6ab949eb739c (diff) | |
| download | go-b036d7e17f1cf5ecf9411e604fbc5bb40dc3dc95.tar.xz | |
cmd/compile/internal/noder: avoid ir.Node temps in FixValue
Instead of constructing an untyped basic literal IR node, having
typecheck convert it and return a new one, only to extract the
constant.Value; just have typecheck export the underlying value
conversion function, so we can call it directly.
Change-Id: Ie98f5362b3926a728d80262b0274a0b4fd023eaf
Reviewed-on: https://go-review.googlesource.com/c/go/+/522878
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Keith Randall <khr@google.com>
Reviewed-by: Cuong Manh Le <cuong.manhle.vn@gmail.com>
Auto-Submit: Matthew Dempsky <mdempsky@google.com>
Run-TryBot: Matthew Dempsky <mdempsky@google.com>
Diffstat (limited to 'src/cmd/compile/internal/noder')
| -rw-r--r-- | src/cmd/compile/internal/noder/helpers.go | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/cmd/compile/internal/noder/helpers.go b/src/cmd/compile/internal/noder/helpers.go index 5349db3879..8aa93ef5dc 100644 --- a/src/cmd/compile/internal/noder/helpers.go +++ b/src/cmd/compile/internal/noder/helpers.go @@ -58,7 +58,7 @@ func FixValue(typ *types.Type, val constant.Value) constant.Value { val = constant.ToComplex(val) } if !typ.IsUntyped() { - val = typecheck.DefaultLit(ir.NewBasicLit(src.NoXPos, val), typ).Val() + val = typecheck.ConvertVal(val, typ, false) } ir.AssertValidTypeForConst(typ, val) return val |
