Hi, While compiling Broadcast 2000 on a gcc 3.1 snapshot on 64 bit systems, the compiler ICEs on an apparent confusion between "longest" and "int" specifier. We were able to reproduce this on x86_64, s390 (64bit), but not on x86. So this appears to be a generic 64bit problem :/ gcc -v ... output and preprocessed sourcode is in the How-To-Repeat section. Release: 3.1 20020415 (prerelease) Environment: host: x86_64-suse-linux-gnu build: x86_64-suse-linux-gnu target: x86_64-suse-linux-gnu configured with: ../configure --enable-threads=posix --prefix=/usr --with-local-prefix=/usr/local --infodir=/usr/share/info --mandir=/usr/share/man --enable-languages=c,c++,f77,objc --disable-libgcj --disable-multilib --with-gxx-include-dir=/usr/include/g++ --with-slibdir=/lib --with-system-zlib --enable-shared --libdir=/usr/lib64 --enable-checking x86_64-suse-linux How-To-Repeat: sh-2.05# g++ -v --save-temps -c -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I. -DHAVE_OSS -DHAVE_ESOUND -DHAVE_FIREWIRE -I../bcbase filehtal.C Reading specs from /usr/lib64/gcc-lib/x86_64-suse-linux/3.1/specs Configured with: ../configure --enable-threads=posix --prefix=/usr --with-local-prefix=/usr/local --infodir=/usr/share/info --mandir=/usr/share/man --enable-languages=c,c++,f77,objc --disable-libgcj --disable-multilib --with-gxx-include-dir=/usr/include/g++ --with-slibdir=/lib --with-system-zlib --enable-shared --libdir=/usr/lib64 --enable-checking x86_64-suse-linux Thread model: posix gcc version 3.1 20020415 (prerelease) /usr/lib64/gcc-lib/x86_64-suse-linux/3.1/cpp0 -lang-c++ -D__GNUG__=3 -D__DEPRECATED -D__EXCEPTIONS -D__GXX_ABI_VERSION=100 -v -I. -I../bcbase -D__GNUC__=3 -D__GNUC_MINOR__=1 -D__GNUC_PATCHLEVEL__=0 -D__ELF__ -Dunix -D__gnu_linux__ -Dlinux -D__ELF__ -D__unix__ -D__gnu_linux__ -D__linux__ -D__unix -D__linux -Asystem(posix) -D__NO_INLINE__ -D__STDC_HOSTED__=1 -D_GNU_SOURCE -Acpu=x86_64 -Amachine=x86_64 -D__x86_64 -D__x86_64__ -D__SIZE_TYPE__=unsigned long int -D__PTRDIFF_TYPE__=long int -D__tune_athlon__ -D__tune_athlon_sse__ -D__LONG_MAX__=9223372036854775807L -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_OSS -DHAVE_ESOUND -DHAVE_FIREWIRE filehtal.C filehtal.ii GNU CPP version 3.1 20020415 (prerelease) (cpplib) (x86-64 Linux/ELF) #include "..." search starts here: #include <...> search starts here: . ../bcbase /usr/include/g++ /usr/include/g++/x86_64-suse-linux /usr/include/g++/backward /usr/local/include /usr/lib64/gcc-lib/x86_64-suse-linux/3.1/include /usr/x86_64-suse-linux/include /usr/include End of search list. /usr/lib64/gcc-lib/x86_64-suse-linux/3.1/cc1plus -fpreprocessed filehtal.ii -quiet -dumpbase filehtal.C -version -o filehtal.s GNU CPP version 3.1 20020415 (prerelease) (cpplib) (x86-64 Linux/ELF) GNU C++ version 3.1 20020415 (prerelease) (x86_64-suse-linux) compiled by GNU C version 3.1 20020415 (prerelease). In file included from filehtal.C:6: filehtal.h:34: `longest HTALTag::get_property(char*, long int)' has already been declared in `HTALTag' filehtal.h:43: `int HTALTag::set_property(char*, long int)' has already been declared in `HTALTag' filehtal.C:543: redefinition of `longest HTALTag::get_property(char*, long int) ' filehtal.C:534: `long int HTALTag::get_property(char*, long int)' previously defined here filehtal.C:543: no `longest HTALTag::get_property(char*, long int)' member function declared in class `HTALTag' filehtal.C: In member function `long int HTALTag::get_property(char*, long int)': filehtal.C:545: Internal compiler error in make_decl_rtl, at varasm.c:833 Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions. See attachments for filehtal.ii.gz
Fix: no clue.
From: hubicka@gcc.gnu.org To: gcc-gnats@gcc.gnu.org Cc: Subject: c++/6419 Date: 15 Oct 2002 08:24:37 -0000 CVSROOT: /cvs/gcc Module name: egcs Changes by: hubicka@gcc.gnu.org 2002-10-15 01:24:36 Modified files: gcc : ChangeLog expr.c final.c gcc/config/i386: i386.c i386.md xmmintrin.h gcc/testsuite : ChangeLog Added files: gcc/testsuite/gcc.dg: i386-ssetype-1.c i386-ssetype-2.c i386-ssetype-3.c i386-ssetype-4.c i386-ssetype-5.c Log message: * i386.md (movv2di_internal): New pattern. (movv2df_internal, movv8hi_internal, movv16qi_internal): Fix predicate. (movv2di): New expander. * i386.c (ix86_preferred_reload_class): Return NO_REGS for vector operands. * i386.c (ix86_expand_timode_binop_builtin): Delete. (builtin_description): Add SSE1 logicals; rename SSE2 logicals. (ix86_init_mmx_sse_builtins): Kill SSE1 logicals. (ix86_expand_builtin): Likewise. * i386.h (sse_andti4_df_1, sse_andti3_df_2, sse_andti3_sf_1, sse_andti3_sf_2, sse_andti3, sse_andnti4_df_1, sse_andti3_df_2, sse_andti3_sf_1, sse_andti3_sf_2, sse_andnti3, sse_orti4_df_1, sse_orti3_df_2, sse_orti3_sf_1, sse_orti3_sf_2, sse_orti3, sse_xorti4_df_1, sse_xorti3_df_2, sse_xorti3_sf_1, sse_xorti3_sf_2, sse_xorti3): Kill. (sse_andv4sf3, sse_andnv4sf3, sse_orv2df3, sse_xorv2df3, sse_andv2df3, sse_andnv2df3, sse_orv2df3, sse_xorv2df3): New expanders. (*sse_andv4sf3, *sse_andnv2df3, *sse_orv4sf3, *sse_xorv4sf3, *sse_andv2df3, *sse_andnv2df3, *sse_orv2df3, *sse_xorv2df3): New patterns. (*sse_andsf3, *sse_andndf3, *sse_ordf3, *sse_xordf3, *sse_anddf3, *sse_andndf3, *sse_orv2df3, *sse_xorv2df3): New patterns. * xmmintrin.h (__m128i): Define as __v2di. PR c/7344 * predict.c (can_predict_insn_p): New function. (estimate_probability): Avoid unnecesary work. (process_note_prediction): Likewise. * toplev.c (rest_of_compilation): Account early branch prediction pass as TV_BRANCH_PROB. PR c++/6419 (expand_expr): Use DECL_RTL_SET_P. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/ChangeLog.diff?cvsroot=gcc&r1=1.15703&r2=1.15704 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/expr.c.diff?cvsroot=gcc&r1=1.486&r2=1.487 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/final.c.diff?cvsroot=gcc&r1=1.269&r2=1.270 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/config/i386/i386.c.diff?cvsroot=gcc&r1=1.468&r2=1.469 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/config/i386/i386.md.diff?cvsroot=gcc&r1=1.388&r2=1.389 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/config/i386/xmmintrin.h.diff?cvsroot=gcc&r1=1.6&r2=1.7 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.2139&r2=1.2140 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/testsuite/gcc.dg/i386-ssetype-1.c.diff?cvsroot=gcc&r1=NONE&r2=1.1 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/testsuite/gcc.dg/i386-ssetype-2.c.diff?cvsroot=gcc&r1=NONE&r2=1.1 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/testsuite/gcc.dg/i386-ssetype-3.c.diff?cvsroot=gcc&r1=NONE&r2=1.1 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/testsuite/gcc.dg/i386-ssetype-4.c.diff?cvsroot=gcc&r1=NONE&r2=1.1 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/testsuite/gcc.dg/i386-ssetype-5.c.diff?cvsroot=gcc&r1=NONE&r2=1.1
State-Changed-From-To: open->closed State-Changed-Why: PR c++/6419 (expand_expr): Use DECL_RTL_SET_P.
From: hubicka@gcc.gnu.org To: gcc-gnats@gcc.gnu.org Cc: Subject: c++/6419 Date: 17 Oct 2002 17:17:52 -0000 CVSROOT: /cvs/gcc Module name: egcs Branch: gcc-3_2-branch Changes by: hubicka@gcc.gnu.org 2002-10-17 10:17:52 Modified files: gcc : ChangeLog expr.c Log message: PR c++/6419 * expr.c (expand_expr): Use DECL_RTL_SET_P. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_2-branch&r1=1.13152.2.657.2.96&r2=1.13152.2.657.2.97 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/expr.c.diff?cvsroot=gcc&only_with_tag=gcc-3_2-branch&r1=1.423.2.19.4.3&r2=1.423.2.19.4.4