The following testcase produces an ICE. I couldn't reduce it any further. Fails
with GCC 4.2.2/4.2.3 under i686-pc-linux-gnu/i686-pc-mingw32.

#include <tr1/array>
#include <tr1/memory>
int main()
{
        typedef std::tr1::array<std::tr1::shared_ptr<int>, 1> Array;
        Array array;
        for (Array::iterator iter(array.begin());;)
        {
                try
                {
                        (iter++)->reset(new int);
                }
                catch (...) {}
        }
}

g++ -O test.cpp
test.cpp: In function 'int main()':
test.cpp:3: internal compiler error: in coalesce_abnormal_edges, at
tree-outof-ssa.c:643


-- 
           Summary: ICE in coalesce_abnormal_edges
           Product: gcc
           Version: 4.2.3
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: gcc at david dot osborn dot name


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

Reply via email to