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

             Bug #: 54038
           Summary: finalize_type_size enters infinite loop becasue
                    TYPE_NEXT_VARIANT (variant) == variant
    Classification: Unclassified
           Product: gcc
           Version: 4.8.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: jamb...@gcc.gnu.org
              Host: x86_64-linux-gnu
            Target: x86_64-linux-gnu


Created attachment 27837
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=27837
Delta reduced testcase

When compiling the attached testcase, which is delta-reduced from
Mozilla Firefox, gcc ends up in an endless loop at the end of
finalize_type_size in stor-layout.c because TYPE_NEXT_VARIANT
(variant) is variant itself.

This value is assigned to it in function build_cplus_array_type in
cp/tree.c (near line 811).

I compile the testcase with the following flags, no optimization is
required:

g++ -S -fpermissive -std=gnu++0x zzz.i

I'm currently on revision 189631.  I'll try to do some bisecting
tomorrow.

Reply via email to