immutableオブジェクトのコンストラクタに渡ってきたmutableなthisを、
コンパイラのなんのお咎めもなく外に持ち出せるって話だけど、
これはスタック変数へのポインタを関数外に持ち出せてしまう問題と同じなわけだし、
やっぱり仕方ないんじゃないかなあ。

scope変数に対する静的解析を実装すれば解決できるんだろうけど。