Keypaths subscript setter accesses the properties getter?

@John_McCall @Joe_Groff is this still not fixed in Swift 5.7, or broken again?

Big +1 on hopefully seeing a fix for this issue! Triggering the getter at the beginning of a keypath-based set seems to leave no good options for implementing certain IUO-like or efficient lazy-like functionality (where you don't want to run the lazy initializer if a value is being set before the property is read from)

We're also experiencing this and it's preventing us from making the ideal API we'd like. The main issue is that the getter for our property does a read from disk which is something i'd like to avoid doing when unnecessary.

Surprisingly, i realized SwiftUI would trigger this a lot when dealing with the Environment. So either they're doing something different or they're also hitting this issue, in which case it could be a bigger reason to hopefully get it fixed.