aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Griesemer <gri@golang.org>2021-08-19 21:35:57 -0700
committerCherry Mui <cherryyz@google.com>2021-09-01 22:32:32 +0000
commit36c171763e4bb5acab9dd9c987e41acbffd143b1 (patch)
treefc8f0ce3f4aa266e9d4241c98139575caf78d88c
parent678b07d5e513a8bbe6780475e88bd92ed1b7b28a (diff)
downloadgo-36c171763e4bb5acab9dd9c987e41acbffd143b1.tar.gz
go-36c171763e4bb5acab9dd9c987e41acbffd143b1.zip
[release-branch.go1.17] go/types: don't override x.mode before using it
Changing the mode of x before using the old value is clearly wrong. And x is not needed anymore afterward so besides being misplaced, the assignment is not needed in the first place. Tested manually as it's a bit complicated to set up a test. Fixes #47854. Change-Id: I06f1fa9443eb98009b4276f566d557fd52f1d6d3 Reviewed-on: https://go-review.googlesource.com/c/go/+/343809 Trust: Robert Griesemer <gri@golang.org> Reviewed-by: Matthew Dempsky <mdempsky@google.com> (cherry picked from commit e17439e0877d6ddb6881d9eb59758c27cc62f930) Reviewed-on: https://go-review.googlesource.com/c/go/+/347149 Run-TryBot: Robert Griesemer <gri@golang.org> Run-TryBot: Robert Findley <rfindley@google.com> Reviewed-by: Robert Findley <rfindley@google.com> Trust: Robert Findley <rfindley@google.com> Trust: Cherry Mui <cherryyz@google.com> TryBot-Result: Go Bot <gobot@golang.org>
-rw-r--r--src/go/types/call.go1
1 files changed, 0 insertions, 1 deletions
diff --git a/src/go/types/call.go b/src/go/types/call.go
index 631ea426c6b..336b526a284 100644
--- a/src/go/types/call.go
+++ b/src/go/types/call.go
@@ -224,7 +224,6 @@ func (check *Checker) exprList(elist []ast.Expr, allowCommaOk bool) (xlist []*op
// exactly one (possibly invalid or comma-ok) value
xlist = []*operand{&x}
if allowCommaOk && (x.mode == mapindex || x.mode == commaok || x.mode == commaerr) {
- x.mode = value
x2 := &operand{mode: value, expr: e, typ: Typ[UntypedBool]}
if x.mode == commaerr {
x2.typ = universeError