File tree Expand file tree Collapse file tree 1 file changed +16
-3
lines changed Expand file tree Collapse file tree 1 file changed +16
-3
lines changed Original file line number Diff line number Diff line change @@ -8993,10 +8993,16 @@ ExprWalker::rewriteTarget(SolutionApplicationTarget target) {
8993
8993
result.setExpr (resultExpr);
8994
8994
8995
8995
if (cs.isDebugMode ()) {
8996
+ // If target is a multi-statement closure or
8997
+ // a tap expression, expression will not be fully
8998
+ // type checked until these types are visited in
8999
+ // processDelayed().
8996
9000
auto &log = llvm::errs ();
8997
- log << " ---Type-checked expression---\n " ;
8998
- resultExpr->dump (log);
8999
- log << " \n " ;
9001
+ if (!ClosuresToTypeCheck.empty () || !TapsToTypeCheck.empty ()) {
9002
+ log << " ---Partially type-checked expression---\n " ;
9003
+ resultExpr->dump (log);
9004
+ log << " \n " ;
9005
+ }
9000
9006
}
9001
9007
}
9002
9008
@@ -9057,6 +9063,13 @@ Optional<SolutionApplicationTarget> ConstraintSystem::applySolution(
9057
9063
return None;
9058
9064
9059
9065
rewriter.finalize ();
9066
+
9067
+ if (isDebugMode ()) {
9068
+ auto &log = llvm::errs ();
9069
+ log << " ---Fully type-checked expression---\n " ;
9070
+ resultTarget->getAsExpr ()->dump (log);
9071
+ log << " \n " ;
9072
+ }
9060
9073
9061
9074
return resultTarget;
9062
9075
}
You can’t perform that action at this time.
0 commit comments