swift
120b4c99 - SILGen: Carry WMO of type lowering context to closure captures.

Commit
3 years ago
SILGen: Carry WMO of type lowering context to closure captures. TypeConverter doesn't know by itself what SILModule it's currently lowering on behalf of, so the existing code forming the TypeExpansionContext for opaque types incorrectly set the isWholeModule flag to always false. This created a miscompile when a public API contained a closure that captured a value involving private types from another file in the same module because of mismatched type expansion contexts inside and outside the closure. Fixes rdar://93821679
Author
Committer
Parents
Loading