今ExceptionalC++を読み直してみたらまずいのは
--list.end()でしたね。
ありがとうございました。