This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug c++/12161] New: ICE during bootstrap, locale-inst.c, cp/call.c: 4571


PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.

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

           Summary: ICE during bootstrap, locale-inst.c, cp/call.c: 4571
           Product: gcc
           Version: 3.4
            Status: UNCONFIRMED
          Severity: critical
          Priority: P2
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: mec at shout dot net
                CC: gcc-bugs at gcc dot gnu dot org
 GCC build triplet: i686-pc-linux-gnu
  GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu

gcc ICE's during bootstrap while compiling locale-inst.c.

This is a regression from gcc 3.3.1.
This happens with gcc HEAD 2003-09-03 17:51:23 UTC.

I pre-processed locale-inst.c into locale-inst.ii and renamed it to z6.ii.  I
will attach z6.ii so that you can reproduce the bug.

The full ICE is:

GGC heuristics: --param ggc-min-expand=38 --param ggc-min-heapsize=15575
z6.ii: In member function `std::money_base::pattern std::moneypunct<_CharT,
_Intl>::neg_format() const [with _CharT = char, bool _Intl =  true]':
z6.ii:26531:   instantiated from here
z6.ii:20295: internal compiler error: tree check: expected tree_list, have
goto_stmt in build_over_call, at cp/call.c:4571

The ICE is sensitive to the size of ggc-min-heapsize.  If I set ggc-min-heapsize
to 12000, the ICE goes away.  If I set ggc-min-heapsize to 16384, the ICE goes
away.  15575 happens to be the "natural" value of ggc-min-heapsize reported by
"gcc -v" on my machine (128 MB memory with some memory stolen for video).

Compile with:

 
/berman/fsf/_today_/berman/build/target/native/gcc/gcc-HEAD-binutils-2.14/gcc/xgcc
-v -B
/berman/fsf/_today_/berman/build/target/native/gcc/gcc-HEAD-binutils-2.14/gcc/
-O2 -g -fno-implicit-templates -S --param ggc-min-expand=38 --param
ggc-min-heapsize=15575 z6.ii

I did some date-searching and came up with these dates:

2003-08-29 18:00:00 UTC  works fine
2003-08-29 23:00:00 UTC  ICE, "segment violation"
2003-08-29 23:30:00 UTC  ICE, cp/call.c: 4571

The 23:00 ICE is a different ICE that happens earlier and is not sensitive to
heap size.  It looks like a bug that has already been fixed.

The 23:30 ICE is sensitive to heap size.  This version of gcc works fine with
ggc-min-heapsize equal to 65536, 32768, 16384, or 12000.  It ICEs out with
ggc-min-heapsize equal to 15575.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]