// 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)
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
}
// 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 {
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))
// 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)
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
}
// 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 {
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))