aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCuong Manh Le <cuong.manhle.vn@gmail.com>2022-06-07 09:22:32 +0700
committerCuong Manh Le <cuong.manhle.vn@gmail.com>2022-06-09 01:34:36 +0000
commitc50c6bbc030ea170320f438c3f328fa475e87e2b (patch)
treedeb902c7b16e8ace599c9a068788b03f107f965f
parentd6df08693cd1639a7d9f0df292b4aa469b1cd748 (diff)
downloadgo-c50c6bbc030ea170320f438c3f328fa475e87e2b.tar.xz
[dev.unified] cmd/compile: set base.Pos when process assignDef in Unified IR
CL 410343 changes Unified IR to visit LHS before RHS/X in assign/for statement. Thus, it needs to set base.Pos before processing assignee expression, so invalid type can be reported with correct position. Updates #53058 Change-Id: Ic9f60cbf35c8bd71cb391e806396572c37811af7 Reviewed-on: https://go-review.googlesource.com/c/go/+/410794 Reviewed-by: Cherry Mui <cherryyz@google.com> Run-TryBot: Cuong Manh Le <cuong.manhle.vn@gmail.com> Reviewed-by: Keith Randall <khr@golang.org> Reviewed-by: Keith Randall <khr@google.com> TryBot-Result: Gopher Robot <gobot@golang.org>
-rw-r--r--src/cmd/compile/internal/noder/reader.go1
-rw-r--r--test/run.go1
2 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 d050275f9e..3cd6ec5668 100644
--- a/src/cmd/compile/internal/noder/reader.go
+++ b/src/cmd/compile/internal/noder/reader.go
@@ -1338,6 +1338,7 @@ func (r *reader) assign() (ir.Node, bool) {
case assignDef:
pos := r.pos()
+ setBasePos(pos)
_, sym := r.localIdent()
typ := r.typ()
diff --git a/test/run.go b/test/run.go
index 8763660ea8..866654629e 100644
--- a/test/run.go
+++ b/test/run.go
@@ -1999,7 +1999,6 @@ var unifiedFailures = setOf(
"fixedbugs/issue7921.go", // prints "… escapes to heap", but test expects "string(…) escapes to heap"
"typeparam/issue47631.go", // unified IR can handle local type declarations
- "fixedbugs/issue49767.go", // unified IR reports channel element too large on different line than irgen
)
func setOf(keys ...string) map[string]bool {