First Last Prev Next    No search results available      Search page      Enter new bug
Bug#: 37976
Product:  
Component:  
Status: RESOLVED
Resolution: FIXED
Assigned To: Richard Guenther <rguenth@gcc.gnu.org>
Host:
Reported against  
Priority:  
Severity:  
Target Milestone:  
 
 
Target:
Reporter: Ryan Hill <dirtyepic@gentoo.org>
Add CC:
CC:
Remove selected CCs
Build:
URL:
Summary:
Keywords:
Known to work:
Known to fail:

Attachment Description Type Created Size Actions
percent_x.i percent_x.i text/plain 2008-10-31 02:58 14.35 KB Edit
Create a New Attachment (proposed patch, testcase, etc.) View All

Bug 37976 depends on: Show dependency tree
Show dependency graph
Bug 37976 blocks:

Additional Comments:






View Bug Activity   |   Format For Printing   |   Clone This Bug


Description:   Last confirmed: 2008-10-31 12:18 Opened: 2008-10-31 02:57
This looks like PR #29922, but I'm hitting it on the trunk while compiling
tcp-wrappers-7.6.  It didn't fail on my last system rebuild a week or two ago.


Using built-in specs.
Target: x86_64-pc-linux-gnu
Configured with:
/var/tmp/portage/sys-devel/gcc-4.4.0_pre9999/work/gcc-4.4.0-9999/configure
--prefix=/usr --bindir=/usr/x86_64-pc-linux-gnu/gcc-bin/4.4.0-pre9999
--includedir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.0-pre9999/include
--datadir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.4.0-pre9999
--mandir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.4.0-pre9999/man
--infodir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.4.0-pre9999/info
--with-gxx-include-dir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.0-pre9999/include/g++-v4
--host=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu --disable-altivec
--disable-fixed-point --disable-nls --with-system-zlib --disable-checking
--disable-werror --enable-secureplt --enable-multilib --disable-libmudflap
--disable-libssp --enable-libgomp --enable-cld --disable-libgcj
--enable-languages=c,c++ --enable-shared --enable-threads=posix
--enable-__cxa_atexit --enable-clocale=gnu
--with-bugurl=http://bugs.gentoo.org/ --with-pkgversion= --enable-linux-futex
--enable-checking
Thread model: posix
gcc version 4.4.0-pre9999 built 20081030 (Gentoo SVN ebuild) rev. 141462 ()
COLLECT_GCC_OPTIONS='-c' '-v' '-save-temps' '-O2' '-E' '-mtune=generic'
 /usr/libexec/gcc/x86_64-pc-linux-gnu/4.4.0-pre9999/cc1 -E -quiet -v
percent_x.c -mtune=generic -O2 -fpch-preprocess
ignoring nonexistent directory "/usr/local/include"
ignoring nonexistent directory
"/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.0-pre9999/../../../../x86_64-pc-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/lib/gcc/x86_64-pc-linux-gnu/4.4.0-pre9999/include
 /usr/lib/gcc/x86_64-pc-linux-gnu/4.4.0-pre9999/include-fixed
 /usr/include
End of search list.
COMPILER_PATH=/usr/libexec/gcc/x86_64-pc-linux-gnu/4.4.0-pre9999/:/usr/libexec/gcc/x86_64-pc-linux-gnu/4.4.0-pre9999/:/usr/libexec/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.0-pre9999/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/libexec/gcc/x86_64-pc-linux-gnu/4.4.0-pre9999/:/usr/libexec/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.0-pre9999/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.0-pre9999/../../../../x86_64-pc-linux-gnu/bin/
LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.0-pre9999/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.0-pre9999/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.0-pre9999/../../../../lib64/:/lib/../lib64/:/usr/lib/../lib64/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.0-pre9999/../../../../x86_64-pc-linux-gnu/lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.0-pre9999/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-c' '-v' '-save-temps' '-O2' '-E' '-mtune=generic'
Using built-in specs.
Target: x86_64-pc-linux-gnu
Configured with:
/var/tmp/portage/sys-devel/gcc-4.4.0_pre9999/work/gcc-4.4.0-9999/configure
--prefix=/usr --bindir=/usr/x86_64-pc-linux-gnu/gcc-bin/4.4.0-pre9999
--includedir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.0-pre9999/include
--datadir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.4.0-pre9999
--mandir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.4.0-pre9999/man
--infodir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.4.0-pre9999/info
--with-gxx-include-dir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.0-pre9999/include/g++-v4
--host=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu --disable-altivec
--disable-fixed-point --disable-nls --with-system-zlib --disable-checking
--disable-werror --enable-secureplt --enable-multilib --disable-libmudflap
--disable-libssp --enable-libgomp --enable-cld --disable-libgcj
--enable-languages=c,c++ --enable-shared --enable-threads=posix
--enable-__cxa_atexit --enable-clocale=gnu
--with-bugurl=http://bugs.gentoo.org/ --with-pkgversion= --enable-linux-futex
--enable-checking
Thread model: posix
gcc version 4.4.0-pre9999 built 20081030 (Gentoo SVN ebuild) rev. 141462 ()
COLLECT_GCC_OPTIONS='-c' '-v' '-save-temps' '-O2' '-o'
'/var/cache/ccache/tmp.hash.kali.5429.o' '-mtune=generic'
 /usr/libexec/gcc/x86_64-pc-linux-gnu/4.4.0-pre9999/cc1 -fpreprocessed
/var/cache/ccache/percent_x.tmp.kali.5429.i -quiet -dumpbase
percent_x.tmp.kali.5429.i -mtune=generic -auxbase-strip
/var/cache/ccache/tmp.hash.kali.5429.o -O2 -version -o
percent_x.tmp.kali.5429.s
GNU C () version 4.4.0-pre9999 built 20081030 (Gentoo SVN ebuild) rev. 141462
(x86_64-pc-linux-gnu)
        compiled by GNU C version 4.4.0-pre9999 built 20081030 (Gentoo SVN
ebuild) rev. 141462, GMP version 4.2.4, MPFR version 2.3.2.
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
Compiler executable checksum: e9c90fc3428f6f69e680d8fe0bdc6284
percent_x.c: In function 'percent_x':
percent_x.c:31: internal compiler error: in insert_into_preds_of_block, at
tree-ssa-pre.c:3120
Please submit a full bug report,
with preprocessed source if appropriate.

(Please note that despite having "Gentoo" in the version name, this is vanilla
GCC - no patches have been applied.)

The ICE is not triggered with -O{0,1,s}.

------- Comment #1 From Ryan Hill 2008-10-31 02:58 -------
Created an attachment (id=16594) [edit]
percent_x.i

------- Comment #2 From Richard Guenther 2008-10-31 11:42 -------
Reducing.

------- Comment #3 From Richard Guenther 2008-10-31 12:18 -------
Reduced testcase:

void percent_x(int ch, char *p, char* ok_chars)                                 
{ 
  char *cp = ch == 'a' ? p : "";                                                
  for (;*(cp += __builtin_strspn (cp, ok_chars));)
    ;                                                                           
}

__builtin_strspn is partially redundant for cp == "" (it's zero).  The
zero is of wrong type becaue fold_builtin_strspn returns integer_zero_node
instead of size_zero_node.

------- Comment #4 From Richard Guenther 2008-10-31 12:18 -------
Mine.  More functions need audit.

------- Comment #5 From Richard Guenther 2008-11-01 12:47 -------
Fixed.

------- Comment #6 From Richard Guenther 2008-11-01 12:49 -------
Subject: Bug 37976

Author: rguenth
Date: Sat Nov  1 12:47:38 2008
New Revision: 141514

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=141514
Log:
2008-11-01  Richard Guenther  <rguenther@suse.de>

        PR middle-end/37976
        * builtins.c (fold_builtin_strspn): Return a size_t.
        (fold_builtin_strcspn): Likewise.

        * gcc.c-torture/compile/pr37976.c: New testcase.

Added:
    trunk/gcc/testsuite/gcc.c-torture/compile/pr37976.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/builtins.c
    trunk/gcc/testsuite/ChangeLog

------- Comment #7 From Jakub Jelinek 2008-11-03 16:38 -------
*** Bug 38003 has been marked as a duplicate of this bug. ***

First Last Prev Next    No search results available      Search page      Enter new bug