[go] go/types, types2: simplify Checker.exprList

0 views
Skip to first unread message

Gopher Robot (Gerrit)

unread,
Mar 28, 2023, 2:13:22 PM3/28/23
to Robert Griesemer, goph...@pubsubhelper.golang.org, golang-...@googlegroups.com, Robert Griesemer, Robert Findley, golang-co...@googlegroups.com

Gopher Robot submitted this change.

View Change



4 is the latest approved patch-set.
No files were changed between the latest approved patch-set and the submitted one.

Approvals: Robert Findley: Looks good to me, approved Robert Griesemer: Looks good to me, but someone else must approve; Run TryBots; Automatically submit change Gopher Robot: TryBots succeeded
go/types, types2: simplify Checker.exprList

Change-Id: I7e9e5bef9364afc959c66d9765180c4ed967f517
Reviewed-on: https://go-review.googlesource.com/c/go/+/478755
Run-TryBot: Robert Griesemer <g...@google.com>
TryBot-Result: Gopher Robot <go...@golang.org>
Reviewed-by: Robert Griesemer <g...@google.com>
Auto-Submit: Robert Griesemer <g...@google.com>
Reviewed-by: Robert Findley <rfin...@google.com>
---
M src/cmd/compile/internal/types2/assignments.go
M src/cmd/compile/internal/types2/builtins.go
M src/cmd/compile/internal/types2/call.go
M src/go/types/assignments.go
M src/go/types/builtins.go
M src/go/types/call.go
6 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/src/cmd/compile/internal/types2/assignments.go b/src/cmd/compile/internal/types2/assignments.go
index 74987ec..adef1e8 100644
--- a/src/cmd/compile/internal/types2/assignments.go
+++ b/src/cmd/compile/internal/types2/assignments.go
@@ -361,7 +361,7 @@
// resulting in 2 or more values; otherwise we have an assignment mismatch.
if r != 1 {
if returnStmt != nil {
- rhs, _ := check.exprList(orig_rhs, false)
+ rhs := check.exprList(orig_rhs)
check.returnError(returnStmt, lhs, rhs)
} else {
check.assignError(orig_rhs, l, r)
diff --git a/src/cmd/compile/internal/types2/builtins.go b/src/cmd/compile/internal/types2/builtins.go
index 94fddca..e35dab8 100644
--- a/src/cmd/compile/internal/types2/builtins.go
+++ b/src/cmd/compile/internal/types2/builtins.go
@@ -45,7 +45,7 @@
switch id {
default:
// make argument getter
- xlist, _ := check.exprList(call.ArgList, false)
+ xlist := check.exprList(call.ArgList)
arg = func(x *operand, i int) { *x = *xlist[i] }
nargs = len(xlist)
// evaluate first argument, if present
diff --git a/src/cmd/compile/internal/types2/call.go b/src/cmd/compile/internal/types2/call.go
index 517befe..1400aba 100644
--- a/src/cmd/compile/internal/types2/call.go
+++ b/src/cmd/compile/internal/types2/call.go
@@ -226,7 +226,7 @@
}

// evaluate arguments
- args, _ := check.exprList(call.ArgList, false)
+ args := check.exprList(call.ArgList)
sig = check.arguments(call, sig, targs, args, xlist)

if wasGeneric && sig.TypeParams().Len() == 0 {
@@ -261,12 +261,12 @@
return statement
}

-func (check *Checker) exprList(elist []syntax.Expr, allowCommaOk bool) (xlist []*operand, commaOk bool) {
+func (check *Checker) exprList(elist []syntax.Expr) (xlist []*operand) {
switch len(elist) {
case 0:
// nothing to do
case 1:
- return check.multiExpr(elist[0], allowCommaOk)
+ xlist, _ = check.multiExpr(elist[0], false)
default:
// multiple (possibly invalid) values
xlist = make([]*operand, len(elist))
diff --git a/src/go/types/assignments.go b/src/go/types/assignments.go
index fdf5a4b..26de0a0 100644
--- a/src/go/types/assignments.go
+++ b/src/go/types/assignments.go
@@ -359,7 +359,7 @@
// resulting in 2 or more values; otherwise we have an assignment mismatch.
if r != 1 {
if returnStmt != nil {
- rhs, _ := check.exprList(orig_rhs, false)
+ rhs := check.exprList(orig_rhs)
check.returnError(returnStmt, lhs, rhs)
} else {
check.assignError(orig_rhs, l, r)
diff --git a/src/go/types/builtins.go b/src/go/types/builtins.go
index 783e000..9659a7c 100644
--- a/src/go/types/builtins.go
+++ b/src/go/types/builtins.go
@@ -46,7 +46,7 @@
switch id {
default:
// make argument getter
- xlist, _ := check.exprList(call.Args, false)
+ xlist := check.exprList(call.Args)
arg = func(x *operand, i int) { *x = *xlist[i] }
nargs = len(xlist)
// evaluate first argument, if present
diff --git a/src/go/types/call.go b/src/go/types/call.go
index 47734e8..f8aa261 100644
--- a/src/go/types/call.go
+++ b/src/go/types/call.go
@@ -228,7 +228,7 @@
}

// evaluate arguments
- args, _ := check.exprList(call.Args, false)
+ args := check.exprList(call.Args)
sig = check.arguments(call, sig, targs, args, xlist)

if wasGeneric && sig.TypeParams().Len() == 0 {
@@ -263,12 +263,12 @@
return statement
}

-func (check *Checker) exprList(elist []ast.Expr, allowCommaOk bool) (xlist []*operand, commaOk bool) {
+func (check *Checker) exprList(elist []ast.Expr) (xlist []*operand) {
switch len(elist) {
case 0:
// nothing to do
case 1:
- return check.multiExpr(elist[0], allowCommaOk)
+ xlist, _ = check.multiExpr(elist[0], false)
default:
// multiple (possibly invalid) values
xlist = make([]*operand, len(elist))

To view, visit change 478755. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: go
Gerrit-Branch: master
Gerrit-Change-Id: I7e9e5bef9364afc959c66d9765180c4ed967f517
Gerrit-Change-Number: 478755
Gerrit-PatchSet: 8
Gerrit-Owner: Robert Griesemer <g...@golang.org>
Gerrit-Reviewer: Gopher Robot <go...@golang.org>
Gerrit-Reviewer: Robert Findley <rfin...@google.com>
Gerrit-Reviewer: Robert Griesemer <g...@google.com>
Gerrit-MessageType: merged
Reply all
Reply to author
Forward
0 new messages