]> Cypherpunks repositories - gostls13.git/commitdiff
go/types, types2: be deliberate with Checker.use in Checker.assignVar
authorRobert Griesemer <gri@golang.org>
Wed, 19 Apr 2023 02:20:28 +0000 (19:20 -0700)
committerGopher Robot <gobot@golang.org>
Wed, 19 Apr 2023 14:06:32 +0000 (14:06 +0000)
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>
src/cmd/compile/internal/types2/assignments.go
src/go/types/assignments.go

index 59f29b8f6202b23fea51672270b25c87d1ce520a..15d2a89934d15edf1c12d8d78d289a7c9680e525 100644 (file)
@@ -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
        }
index f036142caacc039ccae57c8bab3815bdf0f077d4..b0d11dfb822a6c42bbde8054dc74927fb0d2c52d 100644 (file)
@@ -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
        }