gcc itself asks me to report this - I 'm doing the best I can... compiling mplayer source code. using make problem occurs when compiling the libavcodec (CVS checkout of ffmpeg from today, november 10 2002, integrated into the mplayer source code as instruced) Gcc exits with Segmentation fault to generate the preprocessor file, I descended in the relevant directory and manually issued the gcc command gcc -v -save-temps -O4 -march=athlon-xp -mcpu=athlon-xp -pipe -ffast-math -fomit-frame-pointer -D_REENTRANT -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Wall -g -DHAVE_AV_CONFIG_H -I.. -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE -c -o utils.o utils.c the utils.i file is attached. gcc output is gcc: warning: -pipe ignored because -save-temps specified Reading specs from /usr/lib/gcc-lib/i486-suse-linux/3.2/specs Configured with: ../configure --enable-threads=posix --prefix=/usr --with-local-prefix=/usr/local --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib --enable-languages=c,c++,f77,objc,java,ada --enable-libgcj --with-gxx-include-dir=/usr/include/g++ --with-slibdir=/lib --with-system-zlib --enable-shared --enable-__cxa_atexit i486-suse-linux Thread model: posix gcc version 3.2 /usr/lib/gcc-lib/i486-suse-linux/3.2/cpp0 -lang-c -v -I.. -D__GNUC__=3 -D__GNUC_MINOR__=2 -D__GNUC_PATCHLEVEL__=0 -D__GXX_ABI_VERSION=102 -D__ELF__ -Dunix -D__gnu_linux__ -Dlinux -D__ELF__ -D__unix__ -D__gnu_linux__ -D__linux__ -D__unix -D__linux -Asystem=posix -D__OPTIMIZE__ -D__FAST_MATH__ -D__STDC_HOSTED__=1 -Acpu=i386 -Amachine=i386 -Di386 -D__i386 -D__i386__ -D__athlon -D__athlon__ -D__athlon_sse__ -D__tune_athlon__ -D__tune_athlon_sse__ -D__SSE__ -D__MMX__ -D__3dNOW__ -D__3dNOW_A__ -D_REENTRANT -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_AV_CONFIG_H -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE utils.c -Wall utils.i GNU CPP version 3.2 (cpplib) (i386 Linux/ELF) #include "..." search starts here: #include <...> search starts here: .. /usr/local/include /usr/lib/gcc-lib/i486-suse-linux/3.2/include /usr/i486-suse-linux/include /usr/include End of search list. /usr/lib/gcc-lib/i486-suse-linux/3.2/cc1 -fpreprocessed utils.i -quiet -dumpbase utils.c -march=athlon-xp -mcpu=athlon-xp -g -O4 -Wall -version -ffast-math -fomit-frame-pointer -o utils.s GNU CPP version 3.2 (cpplib) (i386 Linux/ELF) GNU C version 3.2 (i486-suse-linux) compiled by GNU C version 3.2. In file included from utils.c:20: dsputil.h:277: warning: static declaration for `lrintf' follows non-static dsputil.h: In function `lrintf': dsputil.h:279: internal error: Segmentation fault Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions. Release: 3.2 Environment: System: Linux otty 2.4.19-4GB #1 Fri Sep 13 13:19:15 UTC 2002 i686 unknown Architecture: i686 host: i486-suse-linux-gnu build: i486-suse-linux-gnu target: i486-suse-linux-gnu configured with: ../configure --enable-threads=posix --prefix=/usr --with-local- prefix=/usr/local --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/us r/lib --enable-languages=c,c++,f77,objc,java,ada --enable-libgcj --with-gxx-incl ude-dir=/usr/include/g++ --with-slibdir=/lib --with-system-zlib --enable-shared --enable-__cxa_atexit i486-suse-linux
State-Changed-From-To: open->analyzed State-Changed-Why: Confirmed. A smaller testcase is the following: ----------------------snip here------------------ extern inline int foo () { return 0; } extern inline int bar () { return 0; } static inline int bar () { return foo(); } ----------------------snip here------------------ Just compile with "gcc -O -c" to see the ICE. The bug is present in gcc 3.1 - 3.2.1 and mainline. It is a regression from gcc 3.0.x where the code compiled fine. Thus, "high priority".
Responsible-Changed-From-To: unassigned->ebotcazou Responsible-Changed-Why: Working on a fix.
From: ebotcazou@gcc.gnu.org To: gcc-gnats@gcc.gnu.org Cc: Subject: c/8518 Date: 20 Nov 2002 10:37:11 -0000 CVSROOT: /cvs/gcc Module name: gcc Changes by: ebotcazou@gcc.gnu.org 2002-11-20 02:37:09 Modified files: gcc : ChangeLog c-decl.c Log message: PR c/8518 * c-decl.c (duplicate_decls): Outline the second definition of an extern inline function in all cases. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=1.15954&r2=1.15955 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-decl.c.diff?cvsroot=gcc&r1=1.353&r2=1.354
State-Changed-From-To: analyzed->closed State-Changed-Why: Fixed.
From: ebotcazou@gcc.gnu.org To: gcc-gnats@gcc.gnu.org Cc: Subject: c/8518 Date: 23 Nov 2002 08:20:03 -0000 CVSROOT: /cvs/gcc Module name: gcc Branch: gcc-3_2-branch Changes by: ebotcazou@gcc.gnu.org 2002-11-23 00:20:03 Modified files: gcc : ChangeLog c-decl.c Log message: PR c/8518 * c-decl.c (duplicate_decls): Outline the second definition of an extern inline function in all cases. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_2-branch&r1=1.13152.2.657.2.145&r2=1.13152.2.657.2.146 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-decl.c.diff?cvsroot=gcc&only_with_tag=gcc-3_2-branch&r1=1.300.2.10.2.4&r2=1.300.2.10.2.5