The Wire · Showcase
SWIFT FIXES AVAILABILITY CRASHES, KOTLIN CLEANS UP TYPE CHECKING
By RepoJournal · Filed · About Mobile platforms
Swift's compiler is plugging a hole where property wrapper projections could crash back-deployed apps, while Kotlin's type system gets a major cleanup across the FIR pipeline.
Swift shipped three critical compiler fixes overnight that touch the foundation of what gets compiled. The biggest: property wrapper projections weren't inheriting availability annotations from their wrapped properties [1], which means back-deployed code referencing those projections could hit missing symbols at runtime. This one's a real gotcha for library authors. Meanwhile, the sema checker now offers fix-its for unreachable conditionals [2], automatically stripping dead code and dedenting the branches that should survive. That's the kind of quality-of-life improvement that compounds across a codebase. Swift also fixed ABI mangling for declarations using @_preInverseGenerics with ~Copyable/~Escapable constraints [3], stopping false positives in swift-api-digester. On the Kotlin side, the FIR compiler pipeline got a significant cleanup [5], removing the SUBTYPING_BETWEEN_CONTEXT_RECEIVERS constraint and rewriting suspicious pattern matches over ConeKotlinType [6]. This is infrastructure work that should quiet down noisy diagnostics and make the type checker more predictable. One Swift PR had to be reverted because it broke testing [4], so watch for that if you're tracking nightlies.
Action items
- → If you maintain libraries with property wrappers, test projections against older deployment targets apple/swift [plan]
- → Monitor the Swift reverted trap-source-location PR to know when it lands safely apple/swift [monitor]
- → Update Kotlin compiler if you're hitting false SuspiciousWhenOverConeKotlinType warnings JetBrains/kotlin [plan]
References
- [1] Sema: Infer availability for property wrapper projection variables ↗ apple/swift
- [2] Sema: Offer fix-its for useless conditional statements ↗ apple/swift
- [3] ASTMangler: honor @_preInverseGenerics in mangleAnyDecl to match mangleEntity ↗ apple/swift
- [4] Revert "Merge pull request #89436 from hnrklssn/swiftify-trap-source-location" ↗ apple/swift
- [5] [FIR] Remove SUBTYPING_BETWEEN_CONTEXT_RECEIVERS JetBrains/kotlin
- [6] Check for suspicious whens over ConeKotlinType KT-86547 ↗ JetBrains/kotlin
FAQ
- What changed in Mobile platforms on May 31, 2026?
- Swift's compiler is plugging a hole where property wrapper projections could crash back-deployed apps, while Kotlin's type system gets a major cleanup across the FIR pipeline.
- What should Mobile platforms teams do about it?
- If you maintain libraries with property wrappers, test projections against older deployment targets • Monitor the Swift reverted trap-source-location PR to know when it lands safely • Update Kotlin compiler if you're hitting false SuspiciousWhenOverConeKotlinType warnings
- Which Mobile platforms repositories shipped on May 31, 2026?
- apple/swift, JetBrains/kotlin