diff options
| author | Robert Griesemer <gri@golang.org> | 2023-04-18 19:20:28 -0700 |
|---|---|---|
| committer | Gopher Robot <gobot@golang.org> | 2023-04-19 14:06:32 +0000 |
| commit | 522eace4ca496626bcb3b65f9dcb6e8db2673fed (patch) | |
| tree | a4a04d72bf7ddc0dfd342e2318d28a56d6900190 /src | |
| parent | 969ab34e4629bdda410c8468d4f45a08e4fec9f8 (diff) | |
| download | go-522eace4ca496626bcb3b65f9dcb6e8db2673fed.tar.xz | |
go/types, types2: be deliberate with Checker.use in Checker.assignVar
Follow-up on comment in CL 486135. Cleanup.
Change-Id: Ib0480d52e30687350f8328965c18fa83262df0a3
Reviewed-on: https://go-review.googlesource.com/c/go/+/486215
Run-TryBot: Robert Griesemer <gri@google.com>
Auto-Submit: Robert Griesemer <gri@google.com>
Reviewed-by: Robert Griesemer <gri@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Robert Findley <rfindley@google.com>
Diffstat (limited to 'src')
| -rw-r--r-- | src/cmd/compile/internal/types2/assignments.go | 3 | ||||
| -rw-r--r-- | src/go/types/assignments.go | 3 |
2 files changed, 4 insertions, 2 deletions
diff --git a/src/cmd/compile/internal/types2/assignments.go b/src/cmd/compile/internal/types2/assignments.go index 59f29b8f62..15d2a89934 100644 --- a/src/cmd/compile/internal/types2/assignments.go +++ b/src/cmd/compile/internal/types2/assignments.go @@ -235,9 +235,10 @@ func (check *Checker) lhsVar(lhs syntax.Expr) Type { func (check *Checker) assignVar(lhs, rhs syntax.Expr, x *operand) { T := check.lhsVar(lhs) // nil if lhs is _ if T == Typ[Invalid] { - check.use(rhs) if x != nil { x.mode = invalid + } else { + check.use(rhs) } return } diff --git a/src/go/types/assignments.go b/src/go/types/assignments.go index f036142caa..b0d11dfb82 100644 --- a/src/go/types/assignments.go +++ b/src/go/types/assignments.go @@ -234,9 +234,10 @@ func (check *Checker) lhsVar(lhs ast.Expr) Type { func (check *Checker) assignVar(lhs, rhs ast.Expr, x *operand) { T := check.lhsVar(lhs) // nil if lhs is _ if T == Typ[Invalid] { - check.use(rhs) if x != nil { x.mode = invalid + } else { + check.use(rhs) } return } |
