swift
ee988c0d - Sema: Infer key path immutability during expression availability checking.

Commit
39 days ago
Sema: Infer key path immutability during expression availability checking. Accessor availability diagnostics for key path expressions were first introduced by https://github.com/swiftlang/swift/pull/83931. Those changes were insufficient because sometimes key path expressions are generated in the AST with more mutability than is needed by the context and so setter availability could be diagnosed inappropriately. Key path expression binding was refined in https://github.com/swiftlang/swift/pull/84491 to make this less likely to occur. However, there are still some circumstances in which a mutable key path is generated in the AST and then immediately coerced into an immutable key path to satisfy the contextual type. This change infers the immutability of these key path expressions by looking through surrounding conversion expressions.
Author
Committer
Parents
Loading