@@ -628,9 +628,7 @@ namespace {
628
628
if (AnyFunctionRef (fnDecl).hasExternalPropertyWrapperParameters () &&
629
629
(declRefExpr->getFunctionRefKind () == FunctionRefKind::Compound ||
630
630
declRefExpr->getFunctionRefKind () == FunctionRefKind::Unapplied)) {
631
- auto &appliedWrappers = solution.appliedPropertyWrappers [locator.getAnchor ()];
632
- result = buildPropertyWrapperFnThunk (result, fullType->getAs <FunctionType>(), fnDecl,
633
- ref, appliedWrappers);
631
+ result = buildSingleCurryThunk (result, fnDecl, locator);
634
632
}
635
633
}
636
634
@@ -8360,8 +8358,6 @@ namespace {
8360
8358
8361
8359
AutoClosureExpr *rewriteClosure (ClosureExpr *closure) {
8362
8360
auto &solution = Rewriter.solution ;
8363
- auto closureType = solution.simplifyType (solution.getType (closure));
8364
- FunctionType *closureFnType = closureType->castTo <FunctionType>();
8365
8361
8366
8362
// Apply types to synthesized property wrapper vars.
8367
8363
for (auto *param : *closure->getParameters ()) {
@@ -8399,9 +8395,8 @@ namespace {
8399
8395
8400
8396
TypeChecker::checkParameterList (closure->getParameters (), closure);
8401
8397
8402
- auto &appliedWrappers = Rewriter.solution .appliedPropertyWrappers [closure];
8403
- return Rewriter.buildPropertyWrapperFnThunk (closure, closureFnType, closure,
8404
- ConcreteDeclRef (), appliedWrappers);
8398
+ return Rewriter.buildSingleCurryThunk (
8399
+ closure, closure, Rewriter.cs .getConstraintLocator (closure));
8405
8400
}
8406
8401
8407
8402
// / Rewrite the function for the given solution.
0 commit comments