I'm sure Holly will be able to fill in more detail or correct me if I'm wrong about anything, but IIRC SE-0293 didn't change the behavior of the synthesized memberwise initializer with regards to wrapped properties at all. That is, if Wrapper
provides an init(wrappedValue:)
then the memberwise initializer for a type like:
struct S {
@Wrapper
var x: Int
}
still has a signature of init(x: Int)
, not init(@Wrapper x: Int)
. We'd probably need another proposal to update the interaction of property wrappers with the memberwise initializer, and whenever such a proposal comes around I think there's some other ways we can improve the model too.
As far as:
It looks like this was reported as SR-15033 and fixed by PR #38854.