http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46547

           Summary: internal compiler error when converting a long double
                    complex to a bool
           Product: gcc
           Version: 4.5.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: kumbe...@llnl.gov


I have reduced the original application down to a small reproducer. The
following code fails to compile. It works with gcc 4.3.0, intel (icc), sun
(cc), and pathscale (pathcc). PGI's pgcc also generates an ICE with the
function and I'll submit the bug to them as well.

void foo (void) {
  _Bool d;
  long double _Complex *s;

  d = *s++;
}


When you try to compile with gcc version 4.5.1. It generates an error:
foo.c: In function 'foo':
foo.c:5:7: internal compiler error: in gimplify_expr, at gimplify.c:7137



My full output from gcc -v... is:

Using built-in specs.
COLLECT_GCC=/usr/local/apps/gnu/4.5.1/bin/gcc
COLLECT_LTO_WRAPPER=/usr/gapps/opnsrc/gnu/dev/lnx-2.5-o/4.5.1/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.5.1/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: ../gcc-4.5.1/configure --prefix=/usr/apps/gnu/4.5.1
--with-mpfr-include=/usr/apps/gnu/4.5.1/include
--with-mpfr-lib=/usr/apps/gnu/4.5.1/lib --with-libelf=/usr/apps/gnu/4.5.1
--disable-multilib --with-gmp=/usr/apps/gnu/4.5.1/lib
--with-gmp-include=/usr/apps/gnu/4.5.1/include
--enable-languages=c,c++,fortran,java,objc --enable-lto
Thread model: posix
gcc version 4.5.1 (GCC) 
COLLECT_GCC_OPTIONS='-c' '-v' '-save-temps' '-mtune=generic' '-march=x86-64'

/usr/gapps/opnsrc/gnu/dev/lnx-2.5-o/4.5.1/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.5.1/cc1
-E -quiet -v -iprefix
/usr/gapps/opnsrc/gnu/dev/lnx-2.5-o/4.5.1/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.5.1/
foo.c -mtune=generic -march=x86-64 -fpch-preprocess -o foo.i
ignoring nonexistent directory
"/usr/gapps/opnsrc/gnu/dev/lnx-2.5-o/4.5.1/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.5.1/../../../../x86_64-unknown-linux-gnu/include"
ignoring duplicate directory
"/usr/gapps/opnsrc/gnu/dev/lnx-2.5-o/4.5.1/bin/../lib/gcc/../../lib/gcc/x86_64-unknown-linux-gnu/4.5.1/include"
ignoring duplicate directory
"/usr/gapps/opnsrc/gnu/dev/lnx-2.5-o/4.5.1/bin/../lib/gcc/../../lib/gcc/x86_64-unknown-linux-gnu/4.5.1/include-fixed"
ignoring nonexistent directory
"/usr/gapps/opnsrc/gnu/dev/lnx-2.5-o/4.5.1/bin/../lib/gcc/../../lib/gcc/x86_64-unknown-linux-gnu/4.5.1/../../../../x86_64-unknown-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:

/usr/gapps/opnsrc/gnu/dev/lnx-2.5-o/4.5.1/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.5.1/include

/usr/gapps/opnsrc/gnu/dev/lnx-2.5-o/4.5.1/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.5.1/include-fixed
 /usr/local/include
 /usr/gapps/opnsrc/gnu/dev/lnx-2.5-o/4.5.1/bin/../lib/gcc/../../include
 /usr/include
End of search list.
COLLECT_GCC_OPTIONS='-c' '-v' '-save-temps' '-mtune=generic' '-march=x86-64'

/usr/gapps/opnsrc/gnu/dev/lnx-2.5-o/4.5.1/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.5.1/cc1
-fpreprocessed foo.i -quiet -dumpbase foo.c -mtune=generic -march=x86-64
-auxbase foo -version -o foo.s
GNU C (GCC) version 4.5.1 (x86_64-unknown-linux-gnu)
        compiled by GNU C version 4.5.1, GMP version 4.2.2, MPFR version 2.4.2,
MPC version 0.8.1
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
GNU C (GCC) version 4.5.1 (x86_64-unknown-linux-gnu)
        compiled by GNU C version 4.5.1, GMP version 4.2.2, MPFR version 2.4.2,
MPC version 0.8.1
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 59090c9e0e8cd3d0437c78809f831ff7
foo.c: In function 'foo':
foo.c:5:7: internal compiler error: in gimplify_expr, at gimplify.c:7137

Reply via email to