[Bug c++/21123] [4.0 regression] ICE in cp_expr_size, at cp/cp-objcp-common.c:101
--- Additional Comments From mki at maconomy dot dk 2005-07-15 16:52 --- Meetoo :-( Note that the bug is on hppa2.0w-hp-hpux11.11 but not on i686-pc-linux-gnu. (And on HP 3.4.3 works but 4.0.1 doesn't.) -- What|Removed |Added CC| |mki at maconomy dot dk http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21123
[Bug c++/21123] [4.0 regression] ICE in cp_expr_size, at cp/cp-objcp-common.c:101
--- Additional Comments From mki at maconomy dot dk 2005-07-15 19:11 --- I'm using gas from binutils-2.16. But the ICE seems to appear before as is run at all (If the cc1plus command succeeds it will be followed by "/usr/local/binutils-2.16/bin/as -o trauscher.o trauscher.s"). The linker can thus not have any influence either. IMHO ;-) When I'm testing trauscher's example I get the following output, which says "something" about my setup. (11.11 with PHSS_30970 installed). Dave, how does your working configuration look like? -bash-3.00$ /usr/local/gcc-4.0.1/bin/g++ -v -save-temps -c trauscher.cpp Using built-in specs. Target: hppa2.0w-hp-hpux11.11 Configured with: /data/develop/src/gcc-4.0.1/o/../configure --enable-languages=c,c++ --with-gnu-as --without-gnu-ld --with-as=/usr/local/binutils-2.16/bin/as --prefix=/usr/local/gcc-4.0.1 Thread model: single gcc version 4.0.1 /usr/local/gcc-4.0.1/libexec/gcc/hppa2.0w-hp-hpux11.11/4.0.1/cc1plus -E -quiet -v trauscher.cpp -fpch-preprocess -o trauscher.ii ignoring nonexistent directory "/usr/local/gcc-4.0.1/hppa2.0w-hp-hpux11.11/include" #include "..." search starts here: #include <...> search starts here: /usr/local/gcc-4.0.1/include/c++/4.0.1 /usr/local/gcc-4.0.1/include/c++/4.0.1/hppa2.0w-hp-hpux11.11 /usr/local/gcc-4.0.1/include/c++/4.0.1/backward /usr/local/include /usr/local/gcc-4.0.1/include /usr/local/gcc-4.0.1/lib/gcc/hppa2.0w-hp-hpux11.11/4.0.1/include /usr/include End of search list. /usr/local/gcc-4.0.1/libexec/gcc/hppa2.0w-hp-hpux11.11/4.0.1/cc1plus -fpreprocessed trauscher.ii -quiet -dumpbase trauscher.cpp -auxbase trauscher -version -o trauscher.s GNU C++ version 4.0.1 (hppa2.0w-hp-hpux11.11) compiled by GNU C version 4.0.1. GGC heuristics: --param ggc-min-expand=99 --param ggc-min-heapsize=130816 trauscher.cpp: In member function 'A C::_ZTv0_n12_N1C1fEv()': trauscher.cpp:20: internal compiler error: in cp_expr_size, at cp/cp-objcp-common.c:101 Please submit a full bug report, with preprocessed source if appropriate. See http://gcc.gnu.org/bugs.html> for instructions. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21123
[Bug c++/21123] [4.0 regression] ICE in cp_expr_size, at cp/cp-objcp-common.c:101
--- Additional Comments From mki at maconomy dot dk 2005-07-27 16:30 --- Hi, Dave, you mentioned that it "needs debugging on a system that can reproduce it". Is there anything I can do to debug it? It seems like you know what to look for... Something like building gcc with -save-temps, once with --disable-checking and once with --enable-checking, and find the difference in .ii and .s files? What is the right way to do that? I can't provide access to machine where it can be tested. Perhaps [EMAIL PROTECTED] can? /Mads -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21123
[Bug c++/23162] New: internal compiler error: in c_expand_expr, at c-common.c:4138
Compiling a 1.5 Mb ii gave an ICE. It has been reduced as much as I could, giving the following case: -bash-3.00$ cat d.cpp namespace std { template struct auto_ptr_ref { }; template class auto_ptr { public: auto_ptr(auto_ptr& __a) {} auto_ptr(auto_ptr_ref<_Tp> __ref) {} auto_ptr& operator=(auto_ptr_ref<_Tp> __ref) {} template operator auto_ptr_ref<_Tp1>() {} template operator auto_ptr<_Tp1>() {} }; } class C { virtual std::auto_ptr foo() const; }; class D : virtual C { ~D(); virtual std::auto_ptr foo() const { } }; D::~D() {} -bash-3.00$ /usr/local/gcc-3.4.4/bin/g++ -v --save-temp d.cpp Reading specs from /usr/local/gcc-3.4.4/lib/gcc/hppa2.0w-hp-hpux11.11/3.4.4/specs Configured with: /data/develop/src/gcc-3.4.4/configure --enable-languages=c,c++ --with-gnu-as --without-gnu-ld --with-as=/usr/local/binutils-2.16/bin/as --prefix=/usr/local/gcc-3.4.4 Thread model: single gcc version 3.4.4 /usr/local/gcc-3.4.4/libexec/gcc/hppa2.0w-hp-hpux11.11/3.4.4/cc1plus -E -quiet -v d.cpp -o d.ii ignoring nonexistent directory "/usr/local/gcc-3.4.4/hppa2.0w-hp-hpux11.11/include" #include "..." search starts here: #include <...> search starts here: /usr/local/gcc-3.4.4/include/c++/3.4.4 /usr/local/gcc-3.4.4/include/c++/3.4.4/hppa2.0w-hp-hpux11.11 /usr/local/gcc-3.4.4/include/c++/3.4.4/backward /usr/local/include /usr/local/gcc-3.4.4/include /usr/local/gcc-3.4.4/lib/gcc/hppa2.0w-hp-hpux11.11/3.4.4/include /usr/include End of search list. /usr/local/gcc-3.4.4/libexec/gcc/hppa2.0w-hp-hpux11.11/3.4.4/cc1plus -fpreprocessed d.ii -quiet -dumpbase d.cpp -auxbase d -version -o d.s GNU C++ version 3.4.4 (hppa2.0w-hp-hpux11.11) compiled by GNU C version 3.4.4. GGC heuristics: --param ggc-min-expand=99 --param ggc-min-heapsize=130816 d.cpp: In member function `std::auto_ptr D::_ZTv0_n12_NK1D3fooEv() const': d.cpp:30: internal compiler error: in c_expand_expr, at c-common.c:4138 Please submit a full bug report, with preprocessed source if appropriate. See http://gcc.gnu.org/bugs.html> for instructions. -bash-3.00$ Same ICE with 3.4.3. 3.3.6 as well as 4.0.1 complains (probably correctly) that the reduced code isn't valid. Upgrading to 4.0.1 isn't possible at the moment bco other ICEs, so I hope to find a 3.x.x solution... -- Summary: internal compiler error: in c_expand_expr, at c- common.c:4138 Product: gcc Version: 3.4.4 Status: UNCONFIRMED Severity: normal Priority: P2 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: mki at maconomy dot dk CC: gcc-bugs at gcc dot gnu dot org GCC build triplet: hppa2.0w-hp-hpux11.11 GCC host triplet: hppa2.0w-hp-hpux11.11 GCC target triplet: hppa2.0w-hp-hpux11.11 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23162
[Bug c++/23162] [3.4 only] internal compiler error: in c_expand_expr, at c-common.c:4138
--- Additional Comments From mki at maconomy dot dk 2005-08-01 13:45 --- Forgot to mention: The ICE seems to be platform specific. My testcase works on linux with 3.3.4, 3.4.3 and 4.0.1. It thus (to me) seems slightly related to PR c++/21123... (But --disable-checking makes no difference.) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23162