class A { weak lazy var hoge: B? = nil } class B {} これなんか変なコンパイルエラーなったPlayground execution failed: error: cannot convert return expression of type 'B?' to return type 'B?' error: cannot assign value of type 'B?' to type 'B??' error: cannot assign value of type 'B?' to type 'B??'lazy なくすとエラーなくなるんだけど、 lazy ってその変数の型には影響しないよね