This is not a bug, just two (I think) unnecessary non-0 checks in "g++-v3/bits/stl_tree.h", at lines 416 and 445. At these places, "__w->_M_left" and "__w->_M_right" can't be 0. (They are valid and red, which follows from lines 406-409, 414-415 and 435-438, 443-444). Release: 3.0.2
State-Changed-From-To: open->feedback State-Changed-Why: Are yor willing to prepare and, possibly, test a patch against the current mainline library or that released with 3.2.1? Thanks, Paolo.
Responsible-Changed-From-To: unassigned->paolo Responsible-Changed-Why: Analysed.
State-Changed-From-To: feedback->closed State-Changed-Why: Fixed with: http://gcc.gnu.org/ml/libstdc++/2002-11/msg00244.html
From: paolo@gcc.gnu.org To: gcc-gnats@gcc.gnu.org Cc: Subject: libstdc++/8645 Date: 22 Nov 2002 18:53:54 -0000 CVSROOT: /cvs/gcc Module name: gcc Changes by: paolo@gcc.gnu.org 2002-11-22 10:53:54 Modified files: libstdc++-v3 : ChangeLog libstdc++-v3/include/bits: stl_tree.h Log message: 2002-11-22 Laszlo Ersek <erseklaszlo@chello.hu> Paolo Carlini <pcarlini@unitus.it> PR libstdc++/8645 * include/bits/stl_tree.h (_Rb_tree_rebalance_for_erase): Don't check that __w->_M_left != 0 and __w->_M_right != 0 when they can't be otherwise. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/ChangeLog.diff?cvsroot=gcc&r1=1.1445&r2=1.1446 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/include/bits/stl_tree.h.diff?cvsroot=gcc&r1=1.16&r2=1.17