[Bug c++/17420] New: libstdc++ miscompiled with patch of 2004/08/30

rearnsha at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Sat Sep 11 17:11:00 GMT 2004


This patch:

2004-08-30  Richard Henderson  <rth@redhat.com>

        * class.c (build_base_path): Use build_address directly.
        * typeck.c (build_unary_op): Don't lower &a.b to pointer
        arithmetic directly.
        * typeck2.c (store_init_value): Don't assume !TREE_CONSTANT
        means !initializer_constant_valid_p.


causes miscompilation of libstdc++ on arm.  This leads to several C++
regressions in the testsuite.  One example is g++.dg/rtti/typeid4.C

There are a number of files that are compiled differently after this change, but
I think the key one for the above test is
_ZNSoC1EPSt15basic_streambufIcSt11char_traitsIcEE (aka std::basic_ostream<char,
std::char_traits<char> >::basic_ostream(std::basic_streambuf<char,
std::char_traits<char> >*))

in src/ostream.o

-- 
           Summary: libstdc++ miscompiled with patch of 2004/08/30
           Product: gcc
           Version: 4.0.0
            Status: UNCONFIRMED
          Keywords: wrong-code
          Severity: critical
          Priority: P1
         Component: c++
        AssignedTo: rth at gcc dot gnu dot org
        ReportedBy: rearnsha at gcc dot gnu dot org
                CC: gcc-bugs at gcc dot gnu dot org
GCC target triplet: arm-unknown-elf


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17420



More information about the Gcc-bugs mailing list