mirror of
https://github.com/apple/swift.git
synced 2026-06-20 15:42:51 +02:00
1ca2b61f7a
The ConformanceCandidate constructor would eagerly instantiate metadata for all non-generic types in the conformance cache. This was not the intention of the code though, because it can compare nominal type descriptors -- which are emitted statically -- for those types that have them, namely everything except for foreign and Objective-C classes. Change the order of two calls so that the lazy path has a chance to run. This fixes a crash when type metadata uses weakly-linked symbols which are not available, which can come up in backward deployment scenarios. Fixes <rdar://problem/59460603>.