@@ -4277,9 +4277,7 @@ Expr *ExprRewriter::coerceTupleToTuple(Expr *expr, TupleType *fromTuple,
42774277 if (fromTupleExpr)
42784278 fromEltType = fromTupleExpr->getElement (sources[i])->getType ();
42794279
4280- toSugarFields.push_back (TupleTypeElt (fromEltType,
4281- toElt.getName (),
4282- toElt.isVararg ()));
4280+ toSugarFields.push_back (toElt.getWithType (fromEltType));
42834281 fromTupleExprFields[sources[i]] = fromElt;
42844282 continue ;
42854283 }
@@ -4314,12 +4312,9 @@ Expr *ExprRewriter::coerceTupleToTuple(Expr *expr, TupleType *fromTuple,
43144312 fromTupleExpr->setElement (sources[i], convertedElt);
43154313
43164314 // Record the sugared field name.
4317- toSugarFields.push_back (TupleTypeElt (convertedElt->getType (),
4318- toElt.getName (),
4319- toElt.isVararg ()));
4320- fromTupleExprFields[sources[i]] = TupleTypeElt (convertedElt->getType (),
4321- fromElt.getName (),
4322- fromElt.isVararg ());
4315+ toSugarFields.push_back (toElt.getWithType (convertedElt->getType ()));
4316+ fromTupleExprFields[sources[i]] =
4317+ fromElt.getWithType (convertedElt->getType ());
43234318 }
43244319
43254320 // Convert all of the variadic arguments to the destination type.
@@ -4356,10 +4351,8 @@ Expr *ExprRewriter::coerceTupleToTuple(Expr *expr, TupleType *fromTuple,
43564351
43574352 fromTupleExpr->setElement (fromFieldIdx, convertedElt);
43584353
4359- fromTupleExprFields[fromFieldIdx] = TupleTypeElt (
4360- convertedElt->getType (),
4361- fromElt.getName (),
4362- fromElt.isVararg ());
4354+ fromTupleExprFields[fromFieldIdx] =
4355+ fromElt.getWithType (convertedElt->getType ());
43634356 }
43644357
43654358 // Find the appropriate injection function.
@@ -4452,15 +4445,12 @@ Expr *ExprRewriter::coerceScalarToTuple(Expr *expr, TupleType *toTuple,
44524445 assert (expr->getType ()->isEqual (field.getVarargBaseTy ()) &&
44534446 " scalar field is not equivalent to dest vararg field?!" );
44544447
4455- sugarFields.push_back (TupleTypeElt (field.getType (),
4456- field.getName (),
4457- true ));
4448+ sugarFields.push_back (field);
44584449 }
44594450 else {
44604451 assert (expr->getType ()->isEqual (field.getType ()) &&
44614452 " scalar field is not equivalent to dest tuple field?!" );
4462- sugarFields.push_back (TupleTypeElt (expr->getType (),
4463- field.getName ()));
4453+ sugarFields.push_back (field.getWithType (expr->getType ()));
44644454 }
44654455
44664456 // Record the
0 commit comments