Commits

gregomni committed c6a43759687
[SR-427][AST] Report DoesNotConform for failed substitutions in a bound generic type. If a BoundGenericType is unable to get a substitution for an archetype it uses ErrorType as the replacement (Module.cpp:705). In such a case we should report DoesNotConform in lookupConformance(), which ends up generating reasonable error messages. Prior to this change the conformance would succeed and then IRGen would crash on emitting an ErrorType during emitForeignTypeMetadataRef(). Also added test that tickles crash near the same place as SR-427.