Dies somewhere deep in template instantiation, but only when -O2 is turned on.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - command invoked: g++-4 -v -Iutil -IObject -I. -O2 --save-temps Object/art_object_expr_gcc41death.cc -o Object/art_object_expr_gcc41death.o - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - g++ output: Using built-in specs. Target: powerpc-apple-darwin7 Configured with: ../configure --prefix=/sw --prefix=/sw/lib/gcc4 --enable-languages=c,c++,f95,objc --infodir=/share/info --with-gmp=/sw --with-included-gettext --host=powerpc-apple-darwin7 --with-as=/sw/lib/odcctools/bin/as --with-ld=/sw/lib/odcctools/bin/ld Thread model: posix gcc version 4.1.0 20050417 (experimental) /sw/lib/gcc4/libexec/gcc/powerpc-apple-darwin7/4.1.0/cc1plus -E -quiet -v -Iutil -IObject -I. -D__DYNAMIC__ -D__APPLE_CC__=1 Object/art_object_expr_gcc41death.cc -fPIC -O2 -fpch-preprocess -o art_object_expr_gcc41death.ii ignoring nonexistent directory "/sw/lib/gcc4/lib/gcc/powerpc-apple-darwin7/4.1.0/../../../../powerpc-apple-darwin7/include" #include "..." search starts here: #include <...> search starts here: util Object . /sw/lib/gcc4/lib/gcc/powerpc-apple-darwin7/4.1.0/../../../../include/c++/4. 1.0 /sw/lib/gcc4/lib/gcc/powerpc-apple-darwin7/4.1.0/../../../../include/c++/4. 1.0/powerpc-apple-darwin7 /sw/lib/gcc4/lib/gcc/powerpc-apple-darwin7/4.1.0/../../../../include/c++/4. 1.0/backward /usr/local/include /sw/lib/gcc4/include /sw/lib/gcc4/lib/gcc/powerpc-apple-darwin7/4.1.0/include /usr/include /System/Library/Frameworks /Library/Frameworks End of search list. /sw/lib/gcc4/libexec/gcc/powerpc-apple-darwin7/4.1.0/cc1plus -fpreprocessed art_object_expr_gcc41death.ii -fPIC -quiet -dumpbase art_object_expr_gcc41death.cc -auxbase art_object_expr_gcc41death -O2 -version -o art_object_expr_gcc41death.s GNU C++ version 4.1.0 20050417 (experimental) (powerpc-apple-darwin7) compiled by GNU C version 3.3 20030304 (Apple Computer, Inc. build 1640). GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 util/persistent_object_manager_gcc41death.tcc: In member function 'util::persistent_object_manager::visit_info* util::persistent_object_manager::__read_pointer(std::istream&, const P&, util::memory::shared_owner_pointer_tag) const [with P = util::memory::count_ptr<ART::entity::index_expr>]': util/persistent_object_manager_gcc41death.tcc:84: internal compiler error: in compare_values, at tree-vrp.c:292 Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://gcc.gnu.org/bugs.html> for instructions. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - remarks: 1) known to work with 4.0.0 (release), 3.4.x, 3.3.x 2) works for g++ (4.1-20050417) when -O2 is changed to -O1 Took hours to reduce to this test case. May try to reduce further with more time... First test-case attachment follows... -- Summary: [4.1 regression] internal compiler error: in compare_values, at tree-vrp.c:292 Product: gcc Version: 4.1.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: fang at csl dot cornell dot edu CC: gcc-bugs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21227