@@ -86,9 +86,7 @@ void ConnectedComponent::buildRequirements(Type subjectType,
86
86
subjectType = constraintType;
87
87
}
88
88
89
- // For compatibility with the old GenericSignatureBuilder, drop requirements
90
- // containing ErrorTypes.
91
- } else if (!ConcreteType->hasError ()) {
89
+ } else {
92
90
// If there are multiple protocol typealiases in the connected component,
93
91
// lower them all to a series of identical concrete-type aliases.
94
92
for (auto name : Aliases) {
@@ -190,11 +188,6 @@ void RequirementBuilder::addRequirementRules(ArrayRef<unsigned> rules) {
190
188
return ;
191
189
}
192
190
193
- // Requirements containing error types originate from invalid code
194
- // and should not appear in the generic signature.
195
- if (prop->getConcreteType ()->hasError ())
196
- return ;
197
-
198
191
Type superclassType = Map.getTypeFromSubstitutionSchema (
199
192
prop->getConcreteType (),
200
193
prop->getSubstitutions (),
@@ -216,11 +209,6 @@ void RequirementBuilder::addRequirementRules(ArrayRef<unsigned> rules) {
216
209
return ;
217
210
}
218
211
219
- // Requirements containing error types originate from invalid code
220
- // and should not appear in the generic signature.
221
- if (prop->getConcreteType ()->hasError ())
222
- return ;
223
-
224
212
Type concreteType = Map.getTypeFromSubstitutionSchema (
225
213
prop->getConcreteType (),
226
214
prop->getSubstitutions (),
@@ -291,11 +279,6 @@ void RequirementBuilder::addTypeAliasRules(ArrayRef<unsigned> rules) {
291
279
continue ;
292
280
}
293
281
294
- // Requirements containing error types originate from invalid code
295
- // and should not appear in the generic signature.
296
- if (prop->getConcreteType ()->hasError ())
297
- continue ;
298
-
299
282
Type concreteType = Map.getTypeFromSubstitutionSchema (
300
283
prop->getConcreteType (),
301
284
prop->getSubstitutions (),
0 commit comments