Skip to content

Commit 7f66540

Browse files
committed
[Constraint solver] Handle 'bind' constraints lazily.
1 parent 4779907 commit 7f66540

File tree

1 file changed

+1
-10
lines changed

1 file changed

+1
-10
lines changed

lib/Sema/CSSimplify.cpp

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4156,6 +4156,7 @@ ConstraintSystem::addConstraintImpl(ConstraintKind kind, Type first,
41564156
TypeMatchOptions subflags = TMF_GenerateConstraints;
41574157
switch (kind) {
41584158
case ConstraintKind::Equal:
4159+
case ConstraintKind::Bind:
41594160
case ConstraintKind::BindParam:
41604161
case ConstraintKind::Subtype:
41614162
case ConstraintKind::Conversion:
@@ -4188,16 +4189,6 @@ ConstraintSystem::addConstraintImpl(ConstraintKind kind, Type first,
41884189
case ConstraintKind::Defaultable:
41894190
return simplifyDefaultableConstraint(first, second, subflags, locator);
41904191

4191-
case ConstraintKind::Bind: { // FIXME: This should go through matchTypes() above
4192-
// FALLBACK CASE: do the slow thing.
4193-
auto c = Constraint::create(*this, kind, first, second, DeclName(),
4194-
FunctionRefKind::Compound,
4195-
getConstraintLocator(locator));
4196-
if (isFavored) c->setFavored();
4197-
addConstraint(c);
4198-
return SolutionKind::Solved;
4199-
}
4200-
42014192
case ConstraintKind::ValueMember:
42024193
case ConstraintKind::UnresolvedValueMember:
42034194
case ConstraintKind::TypeMember:

0 commit comments

Comments
 (0)