The session below, with the file below, gives "internal compiler error: in int_mode_for_mode, at stor- layout.c:251". The error only occurs at -O1 or higher. This sounds like bug 17407, but that's supposedly fixed and didn't require optimization. The file is an odd-looking Delta reduction of a much larger file, which was originally supposed to be valid code; but I haven't gotten the include paths set up properly yet.
File: { }; class NameOne; { { { { { } { } } } } } struct NameTwo::private_data { struct offsets { }; }; class NameThree : public NameFour { NameThree( NameOne frame, const char *name, NameFive *target, float min, float max, orientation direction); }; NameThree::NameThree(NameOne frame, const char *name, NameFive *target, float minv, float maxv, orientation direction) : NameFour(frame, name, target, minv, maxv, direction) Session: 9> /opt/gcc401chk/bin/g++ -v -O1 ../cpp/bugfiles/GCC_bugfiles/error/105107_OutlineView_min.ii Using built-in specs. Target: i686-pc-linux-gnu Configured with: ../configure --enable-checking --prefix=/opt/gcc401chk --enable-languages=c,c+ + Thread model: posix gcc version 4.0.1 /opt/gcc401chk/libexec/gcc/i686-pc-linux-gnu/4.0.1/cc1plus -fpreprocessed ../cpp/bugfiles/ GCC_bugfiles/error/105107_OutlineView_min.ii -quiet -dumpbase 105107_OutlineView_min.ii - mtune=pentiumpro -auxbase 105107_OutlineView_min -O1 -version -o /tmp/cctwDCac.s GNU C++ version 4.0.1 (i686-pc-linux-gnu) compiled by GNU C version 3.3.4 (pre 3.3.5 20040809). GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 ../cpp/bugfiles/GCC_bugfiles/error/105107_OutlineView_min.ii:28: internal compiler error: in int_mode_for_mode, at stor-layout.c:251 Please submit a full bug report, -- Summary: internal compiler error: in int_mode_for_mode, at stor- layout.c:251 at -O1 Product: gcc Version: 4.0.1 Status: UNCONFIRMED Severity: minor Priority: P2 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: flash at pobox dot com 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 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23089