------- Comment #5 from bagnara at cs dot unipr dot it 2008-01-07 19:20 ------- Indeed the testcase does not compile with GCC 4.3 (while compiling perfectly with GCC 4.0, 4.1 and 4.2). For some reason, GCC 4.3 dislikes the implementation of the STL that is shipped with previous versions. I have thus reconstructed the testcase by compiling the non-preprocessed sources with GCC version 4.3.0 20071228. Here is what happens (note that, differently from what was the case, now the warning is give three times in a row): $ bunzip2 bug2.cc.bz2 $ md5sum bug2.cc 63b807d5f4dc8d88c00d84a2e951f048 bug2.cc $ g++ -W -Wall -Wno-parentheses -O2 -c bug.cc bug.cc: In function ‘void Parma_Polyhedra_Library::add_mul_assign(Parma_Polyhedra_Library::Checked_Number&, const Parma_Polyhedra_Library::Checked_Number&, const Parma_Polyhedra_Library::Checked_Number&) [with T = long int, Policy = Parma_Polyhedra_Library::Checked_Number_Default_Policy]’: bug.cc:3675: warning: ‘z’ is used uninitialized in this function bug.cc:3669: note: ‘z’ was declared here bug.cc: In member function ‘Parma_Polyhedra_Library::Poly_Gen_Relation Parma_Polyhedra_Library::Octagonal_Shape::relation_with(const Parma_Polyhedra_Library::Generator&) const [with T = __gmp_expr<__mpq_struct [1], __mpq_struct [1]>]’: bug.cc:3669: warning: ‘z’ may be used uninitialized in this function bug.cc:3669: note: ‘z’ was declared here bug.cc:3669: warning: ‘z’ may be used uninitialized in this function bug.cc:3669: note: ‘z’ was declared here bug.cc:3669: warning: ‘z’ may be used uninitialized in this function bug.cc:3669: note: ‘z’ was declared here $ -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33802