B??
と解釈されてるかどうかが変わっているきがするんだけどどうclass A { weak lazy var hoge: B? = { return B??.none }() } class B {}
Playground execution failed: error: cannot convert return expression of type 'B?' to return type 'B?' error: MyPlayground.playground:4:30: error: cannot convert value of type 'B??' to specified type 'B?' weak lazy var hoge: B? = { ^ error: cannot assign value of type 'B?' to type 'B??' error: cannot assign value of type 'B?' to type 'B??'