Skip to content

Commit 8410e86

Browse files
authored
Merge pull request #31449 from CodaFi/real-loc
[NFC] Remove TypeLoc from typeCheckExpression
2 parents 762720e + caa0334 commit 8410e86

File tree

6 files changed

+14
-16
lines changed

6 files changed

+14
-16
lines changed

lib/Sema/CSApply.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4253,7 +4253,7 @@ namespace {
42534253
{ Identifier() });
42544254

42554255
auto resultTy = TypeChecker::typeCheckExpression(
4256-
callExpr, cs.DC, TypeLoc::withoutLoc(valueType), CTP_CannotFail);
4256+
callExpr, cs.DC, valueType, CTP_CannotFail);
42574257
assert(resultTy && "Conversion cannot fail!");
42584258
(void)resultTy;
42594259

@@ -8059,7 +8059,7 @@ static Optional<SolutionApplicationTarget> applySolutionToForEachStmt(
80598059
Expr *convertElementExpr = elementExpr;
80608060
if (TypeChecker::typeCheckExpression(
80618061
convertElementExpr, dc,
8062-
TypeLoc::withoutLoc(optPatternType),
8062+
optPatternType,
80638063
CTP_CoerceOperand).isNull()) {
80648064
return None;
80658065
}

lib/Sema/TypeCheckConstraints.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1982,7 +1982,7 @@ bool GenericRequirementsCheckListener::diagnoseUnsatisfiedRequirement(
19821982

19831983
#pragma mark High-level entry points
19841984
Type TypeChecker::typeCheckExpression(Expr *&expr, DeclContext *dc,
1985-
TypeLoc convertType,
1985+
Type convertType,
19861986
ContextualTypePurpose convertTypePurpose,
19871987
TypeCheckExprOptions options) {
19881988
SolutionApplicationTarget target(
@@ -2106,7 +2106,7 @@ Type TypeChecker::typeCheckParameterDefault(Expr *&defaultValue,
21062106
bool isAutoClosure) {
21072107
assert(paramType && !paramType->hasError());
21082108
return typeCheckExpression(
2109-
defaultValue, DC, TypeLoc::withoutLoc(paramType),
2109+
defaultValue, DC, paramType,
21102110
isAutoClosure ? CTP_AutoclosureDefaultParameter : CTP_DefaultParameter);
21112111
}
21122112

@@ -2481,7 +2481,7 @@ bool TypeChecker::typeCheckCondition(Expr *&expr, DeclContext *dc) {
24812481
return true;
24822482

24832483
auto resultTy = TypeChecker::typeCheckExpression(
2484-
expr, dc, TypeLoc::withoutLoc(boolDecl->getDeclaredType()),
2484+
expr, dc, boolDecl->getDeclaredType(),
24852485
CTP_Condition);
24862486
return !resultTy;
24872487
}

lib/Sema/TypeCheckDecl.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1056,7 +1056,7 @@ EnumRawValuesRequest::evaluate(Evaluator &eval, EnumDecl *ED,
10561056
{
10571057
Expr *exprToCheck = prevValue;
10581058
if (TypeChecker::typeCheckExpression(exprToCheck, ED,
1059-
TypeLoc::withoutLoc(rawTy),
1059+
rawTy,
10601060
CTP_EnumCaseRawValue)) {
10611061
TypeChecker::checkEnumElementErrorHandling(elt, exprToCheck);
10621062
}

lib/Sema/TypeCheckStmt.cpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -524,7 +524,7 @@ class StmtChecker : public StmtVisitor<StmtChecker, Stmt*> {
524524
}
525525

526526
auto exprTy = TypeChecker::typeCheckExpression(E, DC,
527-
TypeLoc::withoutLoc(ResultTy),
527+
ResultTy,
528528
ctp, options);
529529
RS->setResult(E);
530530

@@ -585,7 +585,7 @@ class StmtChecker : public StmtVisitor<StmtChecker, Stmt*> {
585585
}
586586

587587
TypeChecker::typeCheckExpression(exprToCheck, DC,
588-
TypeLoc::withoutLoc(contextType),
588+
contextType,
589589
contextTypePurpose);
590590

591591
// Propagate the change into the inout expression we stripped before.
@@ -608,7 +608,7 @@ class StmtChecker : public StmtVisitor<StmtChecker, Stmt*> {
608608
Type exnType = getASTContext().getErrorDecl()->getDeclaredType();
609609
if (!exnType) return TS;
610610

611-
TypeChecker::typeCheckExpression(E, DC, TypeLoc::withoutLoc(exnType),
611+
TypeChecker::typeCheckExpression(E, DC, exnType,
612612
CTP_ThrowStmt);
613613
TS->setSubExpr(E);
614614

@@ -1592,7 +1592,7 @@ Stmt *StmtChecker::visitBraceStmt(BraceStmt *BS) {
15921592
}
15931593

15941594
auto resultTy =
1595-
TypeChecker::typeCheckExpression(SubExpr, DC, TypeLoc(),
1595+
TypeChecker::typeCheckExpression(SubExpr, DC, Type(),
15961596
CTP_Unused, options);
15971597

15981598
// If a closure expression is unused, the user might have intended
@@ -1673,7 +1673,7 @@ static Expr* constructCallToSuperInit(ConstructorDecl *ctor,
16731673

16741674
DiagnosticSuppression suppression(ctor->getASTContext().Diags);
16751675
auto resultTy =
1676-
TypeChecker::typeCheckExpression(r, ctor, TypeLoc(), CTP_Unused,
1676+
TypeChecker::typeCheckExpression(r, ctor, Type(), CTP_Unused,
16771677
TypeCheckExprFlags::IsDiscarded);
16781678
if (!resultTy)
16791679
return nullptr;

lib/Sema/TypeChecker.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -653,7 +653,7 @@ swift::getTypeOfCompletionOperator(DeclContext *DC, Expr *LHS,
653653
bool swift::typeCheckExpression(DeclContext *DC, Expr *&parsedExpr) {
654654
auto &ctx = DC->getASTContext();
655655
DiagnosticSuppression suppression(ctx.Diags);
656-
auto resultTy = TypeChecker::typeCheckExpression(parsedExpr, DC, TypeLoc(),
656+
auto resultTy = TypeChecker::typeCheckExpression(parsedExpr, DC, Type(),
657657
CTP_Unused);
658658
return !resultTy;
659659
}

lib/Sema/TypeChecker.h

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -694,16 +694,14 @@ Expr *findLHS(DeclContext *DC, Expr *E, Identifier name);
694694
/// to be possible.
695695
///
696696
/// \param convertType The type that the expression is being converted to,
697-
/// or null if the expression is standalone. The location information is
698-
/// only used for diagnostics should the conversion fail; it is safe to pass
699-
/// a TypeLoc without location information.
697+
/// or null if the expression is standalone.
700698
///
701699
/// \param options Options that control how type checking is performed.
702700
///
703701
/// \returns The type of the top-level expression, or Type() if an
704702
/// error occurred.
705703
Type typeCheckExpression(Expr *&expr, DeclContext *dc,
706-
TypeLoc convertType = TypeLoc(),
704+
Type convertType = Type(),
707705
ContextualTypePurpose convertTypePurpose = CTP_Unused,
708706
TypeCheckExprOptions options = TypeCheckExprOptions());
709707

0 commit comments

Comments
 (0)