[CSBindings] Reset literal coverage when retracting constraint

This commit is contained in:
Pavel Yaskevich
2021-01-29 15:15:27 -08:00
parent 8e90882ee1
commit 321cc07ba2
2 changed files with 10 additions and 0 deletions

View File

@@ -206,6 +206,11 @@ struct LiteralRequirement {
bool canBeNil,
DeclContext *useDC) const;
void resetCoverage() {
assert(isCovered() && "literal requirement is uncovered");
CoveredBy = nullptr;
}
/// Determines whether literal protocol associated with this
/// meta-information is viable for inclusion as a defaultable binding.
bool viableAsBinding() const { return !isCovered() && hasDefaultType(); }