var i:UInt16 = ~0
i += 1
// Arithmetic operation '65535 + 1' (on type 'UInt16') results in an overflow)
だとコンパイルエラーで弾いてくれる
i++ は素通りして 0 になる。
これは仕様どうり?それとも未定義動作なんかね?