このような式は演算子の優先順位規則が異なるため、読みにくい可能性があります。
例:
fun foo(b: Boolean?, i: Int?) { val x = b ?: i == null // `(b ?: i) == null` と評価される val y = i ?: 0 + 1 // `i ?: (0 + 1)` と評価される }