>>12 の話に戻るけどさ、

auto_ptr<B> p = auto_ptr<D>(); // (1)
p = auto_ptr<D>(); // (2)

g++ 3.1 で (1) が通らないんだけど、
誰か解説してくれ