From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 31853 invoked by alias); 12 May 2004 15:26:33 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 31807 invoked by uid 48); 12 May 2004 15:26:26 -0000 Date: Thu, 13 May 2004 05:24:00 -0000 From: "jbglaw at lug-owl dot de" To: gcc-bugs@gcc.gnu.org Message-ID: <20040512152616.15398.jbglaw@lug-owl.de> Reply-To: gcc-bugzilla@gcc.gnu.org Subject: [Bug c/15398] New: ICE while cross-compiling glibc-HEAD with gcc-HEAD, affects at least alpha-linux and sparc-linux (probably all) X-Bugzilla-Reason: CC X-SW-Source: 2004-05/txt/msg01153.txt.bz2 List-Id: I'm trying to build a cross compiler from HEAD CVS (binutils/gcc/glibc). The sparc-linux bootstrap cross-compiler is generated OK, but it fails to build a part of glibc (./stdlib/atoi.c). This isn't specific to the sparc-linux target: it also happens eg. with an alpha-linux targeted compiler. I'll now cut'n'paste compiler output (containing the ./configure call) and the atoi.i file. If you want to see it as a file upload or email attachment, please let me know:) Another note: I'm quite interested in becoming more familiar with the whole GNU toolchain. I'm using it since ages, and all this work aims towards getting a fully supported vax-linux target. So I'd really like to see a typescript on how you debug this. I think I can learn more from that than from reading GCC sources for a whole week! Thanks, JBG ------------- Command Line to Call the Compiler ------------- sparc-linux-gcc -v -save-temps atoi.c -c -std=gnu99 -O -Wall -Winline -Wstrict-prototypes -Wwrite-strings -g -I../include -I. -I/home/jbglaw/cross_jb/xx_build/build-glibc/stdlib -I.. -I../libio -I/home/jbglaw/cross_jb/xx_build/build-glibc -I../sysdeps/sparc/sparc32/elf -I../sysdeps/sparc/elf -I../libidn/sysdeps/unix -I../linuxthreads/sysdeps/unix/sysv/linux/sparc/sparc32 -I../linuxthreads/sysdeps/unix/sysv/linux/sparc -I../linuxthreads/sysdeps/unix/sysv/linux -I../linuxthreads/sysdeps/pthread -I../sysdeps/pthread -I../linuxthreads/sysdeps/unix/sysv -I../linuxthreads/sysdeps/unix -I../linuxthreads/sysdeps/sparc/sparc32 -I../linuxthreads/sysdeps/sparc -I../sysdeps/unix/sysv/linux/sparc/sparc32 -I../sysdeps/unix/sysv/linux/sparc -I../sysdeps/unix/sysv/linux -I../sysdeps/gnu -I../sysdeps/unix/common -I../sysdeps/unix/mman -I../sysdeps/unix/inet -I../sysdeps/unix/sysv -I../sysdeps/unix/sparc -I../sysdeps/unix -I../sysdeps/posix -I../sysdeps/sparc/sparc32/fpu -I../sysdeps/sparc/sparc32 -I../sysdeps/wordsize-32 -I../sysdeps/ieee754/flt-32 -I../sysdeps/ieee754/dbl-64 -I../sysdeps/sparc/sparc32/soft-fp -I../sysdeps/sparc/fpu -I../sysdeps/sparc -I../sysdeps/ieee754 -I../sysdeps/generic/elf -I../sysdeps/generic -nostdinc -isystem /home/jbglaw/cross_jb/install/lib/gcc/sparc-linux/3.5.0/include -isystem /home/jbglaw/cross_jb/install/sparc-linux/sys-root/usr/include -D_LIBC_REENTRANT -include ../include/libc-symbols.h -o /home/jbglaw/cross_jb/xx_build/build-glibc/stdlib/atoi.o -MD -MP -MF /home/jbglaw/cross_jb/xx_build/build-glibc/stdlib/atoi.o.dt ------------- Output of compiler ------------- Reading specs from /home/jbglaw/cross_jb/install/lib/gcc/sparc-linux/3.5.0/specs Configured with: /home/jbglaw/cross_jb/gcc-HEAD-20040512/configure --target=sparc-linux --host=i686-host_pc-lin ux-gnu --prefix=/home/jbglaw/cross_jb/install --with-local-prefix=/home/jbglaw/cross_jb/install/sparc-linux/sys -root --disable-multilib --with-newlib --with-sysroot=/home/jbglaw/cross_jb/install/sparc-linux/sys-root --disa ble-nls --enable-threads=no --enable-symvers=gnu --enable-__cxa_atexit --enable-languages=c --disable-shared Thread model: single gcc version 3.5.0 20040512 (experimental) /home/jbglaw/cross_jb/install/libexec/gcc/sparc-linux/3.5.0/cc1 -E -quiet -nostdinc -v -I../include -I. -I/hom e/jbglaw/cross_jb/xx_build/build-glibc/stdlib -I.. -I../libio -I/home/jbglaw/cross_jb/xx_build/build-glibc -I.. /sysdeps/sparc/sparc32/elf -I../sysdeps/sparc/elf -I../libidn/sysdeps/unix -I../linuxthreads/sysdeps/unix/sysv/ linux/sparc/sparc32 -I../linuxthreads/sysdeps/unix/sysv/linux/sparc -I../linuxthreads/sysdeps/unix/sysv/linux - I../linuxthreads/sysdeps/pthread -I../sysdeps/pthread -I../linuxthreads/sysdeps/unix/sysv -I../linuxthreads/sys deps/unix -I../linuxthreads/sysdeps/sparc/sparc32 -I../linuxthreads/sysdeps/sparc -I../sysdeps/unix/sysv/linux/ sparc/sparc32 -I../sysdeps/unix/sysv/linux/sparc -I../sysdeps/unix/sysv/linux -I../sysdeps/gnu -I../sysdeps/uni x/common -I../sysdeps/unix/mman -I../sysdeps/unix/inet -I../sysdeps/unix/sysv -I../sysdeps/unix/sparc -I../sysd eps/unix -I../sysdeps/posix -I../sysdeps/sparc/sparc32/fpu -I../sysdeps/sparc/sparc32 -I../sysdeps/wordsize-32 -I../sysdeps/ieee754/flt-32 -I../sysdeps/ieee754/dbl-64 -I../sysdeps/sparc/sparc32/soft-fp -I../sysdeps/sparc/f pu -I../sysdeps/sparc -I../sysdeps/ieee754 -I../sysdeps/generic/elf -I../sysdeps/generic -MD /home/jbglaw/cross _jb/xx_build/build-glibc/stdlib/atoi.d -MF /home/jbglaw/cross_jb/xx_build/build-glibc/stdlib/atoi.o.dt -MP -MQ /home/jbglaw/cross_jb/xx_build/build-glibc/stdlib/atoi.o -D_LIBC_REENTRANT -isystem /home/jbglaw/cross_jb/insta ll/lib/gcc/sparc-linux/3.5.0/include -isystem /home/jbglaw/cross_jb/install/sparc-linux/sys-root/usr/include -i nclude ../include/libc-symbols.h atoi.c -mcpu=v7 -std=gnu99 -Wall -Winline -Wstrict-prototypes -Wwrite-strings -fworking-directory -O -o atoi.i #include "..." search starts here: #include <...> search starts here: ../include . /home/jbglaw/cross_jb/xx_build/build-glibc/stdlib .. ../libio /home/jbglaw/cross_jb/xx_build/build-glibc ../sysdeps/sparc/sparc32/elf ../sysdeps/sparc/elf ../libidn/sysdeps/unix ../linuxthreads/sysdeps/unix/sysv/linux/sparc/sparc32 ../linuxthreads/sysdeps/unix/sysv/linux/sparc ../linuxthreads/sysdeps/unix/sysv/linux ../linuxthreads/sysdeps/pthread ../sysdeps/pthread ../linuxthreads/sysdeps/unix/sysv ../linuxthreads/sysdeps/unix ../linuxthreads/sysdeps/sparc/sparc32 ../linuxthreads/sysdeps/sparc ../sysdeps/unix/sysv/linux/sparc/sparc32 ../sysdeps/unix/sysv/linux/sparc ../sysdeps/unix/sysv/linux ../sysdeps/gnu ../sysdeps/unix/common ../sysdeps/unix/mman ../sysdeps/unix/inet ../sysdeps/unix/sysv ../sysdeps/unix/sparc ../sysdeps/unix ../sysdeps/posix ../sysdeps/sparc/sparc32/fpu ../sysdeps/sparc/sparc32 ../sysdeps/wordsize-32 ../sysdeps/ieee754/flt-32 ../sysdeps/ieee754/dbl-64 ../sysdeps/sparc/sparc32/soft-fp ../sysdeps/sparc/fpu ../sysdeps/sparc ../sysdeps/ieee754 ../sysdeps/generic/elf ../sysdeps/generic /home/jbglaw/cross_jb/install/lib/gcc/sparc-linux/3.5.0/include /home/jbglaw/cross_jb/install/sparc-linux/sys-root/usr/include End of search list. /home/jbglaw/cross_jb/install/libexec/gcc/sparc-linux/3.5.0/cc1 -fpreprocessed atoi.i -quiet -dumpbase atoi.c -mcpu=v7 -auxbase-strip /home/jbglaw/cross_jb/xx_build/build-glibc/stdlib/atoi.o -g -O -Wall -Winline -Wstrict- prototypes -Wwrite-strings -std=gnu99 -version -o atoi.s GNU C version 3.5.0 20040512 (experimental) (sparc-linux) compiled by GNU C version 3.3.3 (Debian). GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 atoi.c:318: error: Inlined_to pointer is set but no predecesors found strtol/19: (inline copy in atoi/18) 12 insns tree always_inline called by: calls: __strtol_internal/2 atoi.c:318: internal compiler error: verify_cgraph_node failed. Please submit a full bug report, with preprocessed source if appropriate. See for instructions. ...and this is the generated atoi.i file: ------------- atoi.i ------------- # 1 "atoi.c" # 1 "/home/jbglaw/cross_jb/glibc-snapshot/stdlib//" # 1 "" # 1 "" # 1 "./../include/libc-symbols.h" 1 # 56 "./../include/libc-symbols.h" # 1 "/home/jbglaw/cross_jb/xx_build/build-glibc/config.h" 1 # 57 "./../include/libc-symbols.h" 2 # 766 "./../include/libc-symbols.h" # 1 "../sysdeps/wordsize-32/symbol-hacks.h" 1 # 767 "./../include/libc-symbols.h" 2 # 1 "" 2 # 1 "atoi.c" # 19 "atoi.c" # 1 "../include/stdlib.h" 1 # 1 "/home/jbglaw/cross_jb/install/lib/gcc/sparc-linux/3.5.0/include/stddef.h" 1 3 4 # 151 "/home/jbglaw/cross_jb/install/lib/gcc/sparc-linux/3.5.0/include/stddef.h" 3 4 typedef int ptrdiff_t; # 213 "/home/jbglaw/cross_jb/install/lib/gcc/sparc-linux/3.5.0/include/stddef.h" 3 4 typedef unsigned int size_t; # 325 "/home/jbglaw/cross_jb/install/lib/gcc/sparc-linux/3.5.0/include/stddef.h" 3 4 typedef int wchar_t; # 8 "../include/stdlib.h" 2 # 1 "../stdlib/stdlib.h" 1 # 25 "../stdlib/stdlib.h" # 1 "../include/features.h" 1 # 295 "../include/features.h" # 1 "../include/sys/cdefs.h" 1 # 1 "../misc/sys/cdefs.h" 1 # 1 "../include/sys/cdefs.h" 2 # 296 "../include/features.h" 2 # 318 "../include/features.h" # 1 "../include/gnu/stubs.h" 1 # 319 "../include/features.h" 2 # 26 "../stdlib/stdlib.h" 2 # 1 "/home/jbglaw/cross_jb/install/lib/gcc/sparc-linux/3.5.0/include/stddef.h" 1 3 4 # 34 "../stdlib/stdlib.h" 2 # 1 "../sysdeps/unix/sysv/linux/bits/waitflags.h" 1 # 43 "../stdlib/stdlib.h" 2 # 1 "../sysdeps/generic/bits/waitstatus.h" 1 # 63 "../sysdeps/generic/bits/waitstatus.h" # 1 "../include/endian.h" 1 # 1 "../string/endian.h" 1 # 37 "../string/endian.h" # 1 "../sysdeps/sparc/bits/endian.h" 1 # 38 "../string/endian.h" 2 # 2 "../include/endian.h" 2 # 64 "../sysdeps/generic/bits/waitstatus.h" 2 union wait { int w_status; struct { unsigned int:16; unsigned int __w_retcode:8; unsigned int __w_coredump:1; unsigned int __w_termsig:7; } __wait_terminated; struct { unsigned int:16; unsigned int __w_stopsig:8; unsigned int __w_stopval:8; } __wait_stopped; }; # 44 "../stdlib/stdlib.h" 2 # 68 "../stdlib/stdlib.h" typedef union { union wait *__uptr; int *__iptr; } __WAIT_STATUS __attribute__ ((__transparent_union__)); # 93 "../stdlib/stdlib.h" typedef struct { int quot; int rem; } div_t; typedef struct { long int quot; long int rem; } ldiv_t; __extension__ typedef struct { long long int quot; long long int rem; } lldiv_t; # 137 "../stdlib/stdlib.h" extern size_t __ctype_get_mb_cur_max (void) ; extern double atof (__const char *__nptr) __attribute__ ((__pure__)); extern int atoi (__const char *__nptr) __attribute__ ((__pure__)); extern long int atol (__const char *__nptr) __attribute__ ((__pure__)); __extension__ extern long long int atoll (__const char *__nptr) __attribute__ ((__pure__)); extern double strtod (__const char *__restrict __nptr, char **__restrict __endptr) ; extern float strtof (__const char *__restrict __nptr, char **__restrict __endptr) ; extern long double strtold (__const char *__restrict __nptr, char **__restrict __endptr) ; extern long int strtol (__const char *__restrict __nptr, char **__restrict __endptr, int __base) ; extern unsigned long int strtoul (__const char *__restrict __nptr, char **__restrict __endptr, int __base) ; __extension__ extern long long int strtoq (__const char *__restrict __nptr, char **__restrict __endptr, int __base) ; __extension__ extern unsigned long long int strtouq (__const char *__restrict __nptr, char **__restrict __endptr, int __base) ; __extension__ extern long long int strtoll (__const char *__restrict __nptr, char **__restrict __endptr, int __base) ; __extension__ extern unsigned long long int strtoull (__const char *__restrict __nptr, char **__restrict __endptr, int __base) ; # 225 "../stdlib/stdlib.h" # 1 "../include/xlocale.h" 1 # 1 "../locale/xlocale.h" 1 # 28 "../locale/xlocale.h" typedef struct __locale_struct { struct locale_data *__locales[13]; const unsigned short int *__ctype_b; const int *__ctype_tolower; const int *__ctype_toupper; const char *__names[13]; } *__locale_t; # 1 "../include/xlocale.h" 2 # 226 "../stdlib/stdlib.h" 2 extern long int strtol_l (__const char *__restrict __nptr, char **__restrict __endptr, int __base, __locale_t __loc) ; extern unsigned long int strtoul_l (__const char *__restrict __nptr, char **__restrict __endptr, int __base, __locale_t __loc) ; __extension__ extern long long int strtoll_l (__const char *__restrict __nptr, char **__restrict __endptr, int __base, __locale_t __loc) ; __extension__ extern unsigned long long int strtoull_l (__const char *__restrict __nptr, char **__restrict __endptr, int __base, __locale_t __loc) ; extern double strtod_l (__const char *__restrict __nptr, char **__restrict __endptr, __locale_t __loc) ; extern float strtof_l (__const char *__restrict __nptr, char **__restrict __endptr, __locale_t __loc) ; extern long double strtold_l (__const char *__restrict __nptr, char **__restrict __endptr, __locale_t __loc) ; extern double __strtod_internal (__const char *__restrict __nptr, char **__restrict __endptr, int __group) ; extern float __strtof_internal (__const char *__restrict __nptr, char **__restrict __endptr, int __group) ; extern long double __strtold_internal (__const char *__restrict __nptr, char **__restrict __endptr, int __group) ; extern long int __strtol_internal (__const char *__restrict __nptr, char **__restrict __endptr, int __base, int __group) ; extern unsigned long int __strtoul_internal (__const char *__restrict __nptr, char **__restrict __endptr, int __base, int __group) ; __extension__ extern long long int __strtoll_internal (__const char *__restrict __nptr, char **__restrict __endptr, int __base, int __group) ; __extension__ extern unsigned long long int __strtoull_internal (__const char * __restrict __nptr, char **__restrict __endptr, int __base, int __group) ; extern __inline double strtod (__const char *__restrict __nptr, char **__restrict __endptr) { return __strtod_internal (__nptr, __endptr, 0); } extern __inline long int strtol (__const char *__restrict __nptr, char **__restrict __endptr, int __base) { return __strtol_internal (__nptr, __endptr, __base, 0); } extern __inline unsigned long int strtoul (__const char *__restrict __nptr, char **__restrict __endptr, int __base) { return __strtoul_internal (__nptr, __endptr, __base, 0); } extern __inline float strtof (__const char *__restrict __nptr, char **__restrict __endptr) { return __strtof_internal (__nptr, __endptr, 0); } extern __inline long double strtold (__const char *__restrict __nptr, char **__restrict __endptr) { return __strtold_internal (__nptr, __endptr, 0); } __extension__ extern __inline long long int strtoq (__const char *__restrict __nptr, char **__restrict __endptr, int __base) { return __strtoll_internal (__nptr, __endptr, __base, 0); } __extension__ extern __inline unsigned long long int strtouq (__const char *__restrict __nptr, char **__restrict __endptr, int __base) { return __strtoull_internal (__nptr, __endptr, __base, 0); } __extension__ extern __inline long long int strtoll (__const char *__restrict __nptr, char **__restrict __endptr, int __base) { return __strtoll_internal (__nptr, __endptr, __base, 0); } __extension__ extern __inline unsigned long long int strtoull (__const char * __restrict __nptr, char **__restrict __endptr, int __base) { return __strtoull_internal (__nptr, __endptr, __base, 0); } extern __inline double atof (__const char *__nptr) { return strtod (__nptr, (char **) ((void *)0)); } extern __inline int atoi (__const char *__nptr) { return (int) strtol (__nptr, (char **) ((void *)0), 10); } extern __inline long int atol (__const char *__nptr) { return strtol (__nptr, (char **) ((void *)0), 10); } __extension__ extern __inline long long int atoll (__const char *__nptr) { return strtoll (__nptr, (char **) ((void *)0), 10); } # 408 "../stdlib/stdlib.h" extern char *l64a (long int __n) ; extern long int a64l (__const char *__s) __attribute__ ((__pure__)); # 1 "../include/sys/types.h" 1 # 1 "../posix/sys/types.h" 1 # 29 "../posix/sys/types.h" # 1 "../sysdeps/generic/bits/types.h" 1 # 28 "../sysdeps/generic/bits/types.h" # 1 "../sysdeps/sparc/sparc32/bits/wordsize.h" 1 # 29 "../sysdeps/generic/bits/types.h" 2 # 1 "/home/jbglaw/cross_jb/install/lib/gcc/sparc-linux/3.5.0/include/stddef.h" 1 3 4 # 32 "../sysdeps/generic/bits/types.h" 2 typedef unsigned char __u_char; typedef unsigned short int __u_short; typedef unsigned int __u_int; typedef unsigned long int __u_long; typedef signed char __int8_t; typedef unsigned char __uint8_t; typedef signed short int __int16_t; typedef unsigned short int __uint16_t; typedef signed int __int32_t; typedef unsigned int __uint32_t; __extension__ typedef signed long long int __int64_t; __extension__ typedef unsigned long long int __uint64_t; __extension__ typedef long long int __quad_t; __extension__ typedef unsigned long long int __u_quad_t; # 129 "../sysdeps/generic/bits/types.h" # 1 "../linuxthreads/sysdeps/unix/sysv/linux/sparc/bits/typesizes.h" 1 # 130 "../sysdeps/generic/bits/types.h" 2 __extension__ typedef unsigned long long int __dev_t; __extension__ typedef unsigned int __uid_t; __extension__ typedef unsigned int __gid_t; __extension__ typedef unsigned long int __ino_t; __extension__ typedef unsigned long long int __ino64_t; __extension__ typedef unsigned int __mode_t; __extension__ typedef unsigned int __nlink_t; __extension__ typedef long int __off_t; __extension__ typedef long long int __off64_t; __extension__ typedef int __pid_t; __extension__ typedef struct { int __val[2]; } __fsid_t; __extension__ typedef long int __clock_t; __extension__ typedef unsigned long int __rlim_t; __extension__ typedef unsigned long long int __rlim64_t; __extension__ typedef unsigned int __id_t; __extension__ typedef long int __time_t; __extension__ typedef unsigned int __useconds_t; __extension__ typedef int __suseconds_t; __extension__ typedef int __daddr_t; __extension__ typedef long int __swblk_t; __extension__ typedef int __key_t; __extension__ typedef int __clockid_t; __extension__ typedef int __timer_t; __extension__ typedef long int __blksize_t; __extension__ typedef long int __blkcnt_t; __extension__ typedef long long int __blkcnt64_t; __extension__ typedef unsigned long int __fsblkcnt_t; __extension__ typedef unsigned long long int __fsblkcnt64_t; __extension__ typedef unsigned long int __fsfilcnt_t; __extension__ typedef unsigned long long int __fsfilcnt64_t; __extension__ typedef int __ssize_t; typedef __off64_t __loff_t; typedef __quad_t *__qaddr_t; typedef char *__caddr_t; __extension__ typedef int __intptr_t; __extension__ typedef unsigned int __socklen_t; # 32 "../posix/sys/types.h" 2 typedef __u_char u_char; typedef __u_short u_short; typedef __u_int u_int; typedef __u_long u_long; typedef __quad_t quad_t; typedef __u_quad_t u_quad_t; typedef __fsid_t fsid_t; typedef __loff_t loff_t; typedef __ino_t ino_t; typedef __ino64_t ino64_t; typedef __dev_t dev_t; typedef __gid_t gid_t; typedef __mode_t mode_t; typedef __nlink_t nlink_t; typedef __uid_t uid_t; typedef __off_t off_t; typedef __off64_t off64_t; typedef __pid_t pid_t; typedef __id_t id_t; typedef __ssize_t ssize_t; typedef __daddr_t daddr_t; typedef __caddr_t caddr_t; typedef __key_t key_t; # 133 "../posix/sys/types.h" # 1 "../include/time.h" 1 # 1 "../time/time.h" 1 # 58 "../time/time.h" typedef __clock_t clock_t; # 74 "../time/time.h" typedef __time_t time_t; # 92 "../time/time.h" typedef __clockid_t clockid_t; # 104 "../time/time.h" typedef __timer_t timer_t; # 4 "../include/time.h" 2 # 134 "../posix/sys/types.h" 2 typedef __useconds_t useconds_t; typedef __suseconds_t suseconds_t; # 1 "/home/jbglaw/cross_jb/install/lib/gcc/sparc-linux/3.5.0/include/stddef.h" 1 3 4 # 148 "../posix/sys/types.h" 2 typedef unsigned long int ulong; typedef unsigned short int ushort; typedef unsigned int uint; # 191 "../posix/sys/types.h" typedef int int8_t __attribute__ ((__mode__ (__QI__))); typedef int int16_t __attribute__ ((__mode__ (__HI__))); typedef int int32_t __attribute__ ((__mode__ (__SI__))); typedef int int64_t __attribute__ ((__mode__ (__DI__))); typedef unsigned int u_int8_t __attribute__ ((__mode__ (__QI__))); typedef unsigned int u_int16_t __attribute__ ((__mode__ (__HI__))); typedef unsigned int u_int32_t __attribute__ ((__mode__ (__SI__))); typedef unsigned int u_int64_t __attribute__ ((__mode__ (__DI__))); typedef int register_t __attribute__ ((__mode__ (__word__))); # 213 "../posix/sys/types.h" # 1 "../include/endian.h" 1 # 214 "../posix/sys/types.h" 2 # 1 "../include/sys/select.h" 1 # 1 "../misc/sys/select.h" 1 # 31 "../misc/sys/select.h" # 1 "../sysdeps/generic/bits/select.h" 1 # 32 "../misc/sys/select.h" 2 # 1 "../sysdeps/unix/sysv/linux/bits/sigset.h" 1 # 23 "../sysdeps/unix/sysv/linux/bits/sigset.h" typedef int __sig_atomic_t; typedef struct { unsigned long int __val[(1024 / (8 * sizeof (unsigned long int)))]; } __sigset_t; # 35 "../misc/sys/select.h" 2 typedef __sigset_t sigset_t; # 1 "../include/time.h" 1 # 1 "../time/time.h" 1 # 118 "../time/time.h" struct timespec { __time_t tv_sec; long int tv_nsec; }; # 4 "../include/time.h" 2 # 45 "../misc/sys/select.h" 2 # 1 "../sysdeps/generic/bits/time.h" 1 # 69 "../sysdeps/generic/bits/time.h" struct timeval { __time_t tv_sec; __suseconds_t tv_usec; }; # 47 "../misc/sys/select.h" 2 # 55 "../misc/sys/select.h" typedef long int __fd_mask; # 67 "../misc/sys/select.h" typedef struct { __fd_mask fds_bits[1024 / (8 * sizeof (__fd_mask))]; } fd_set; typedef __fd_mask fd_mask; # 99 "../misc/sys/select.h" # 109 "../misc/sys/select.h" extern int select (int __nfds, fd_set *__restrict __readfds, fd_set *__restrict __writefds, fd_set *__restrict __exceptfds, struct timeval *__restrict __timeout); # 121 "../misc/sys/select.h" extern int pselect (int __nfds, fd_set *__restrict __readfds, fd_set *__restrict __writefds, fd_set *__restrict __exceptfds, const struct timespec *__restrict __timeout, const __sigset_t *__restrict __sigmask); # 3 "../include/sys/select.h" 2 extern int __pselect (int __nfds, fd_set *__readfds, fd_set *__writefds, fd_set *__exceptfds, const struct timespec *__timeout, const __sigset_t *__sigmask); extern int __select (int __nfds, fd_set *__restrict __readfds, fd_set *__restrict __writefds, fd_set *__restrict __exceptfds, struct timeval *__restrict __timeout); # 217 "../posix/sys/types.h" 2 # 1 "../sysdeps/unix/sysv/linux/sys/sysmacros.h" 1 # 29 "../sysdeps/unix/sysv/linux/sys/sysmacros.h" __extension__ extern __inline unsigned int gnu_dev_major (unsigned long long int __dev) ; __extension__ extern __inline unsigned int gnu_dev_minor (unsigned long long int __dev) ; __extension__ extern __inline unsigned long long int gnu_dev_makedev (unsigned int __major, unsigned int __minor) ; __extension__ extern __inline unsigned int gnu_dev_major (unsigned long long int __dev) { return ((__dev >> 8) & 0xfff) | ((unsigned int) (__dev >> 32) & ~0xfff); } __extension__ extern __inline unsigned int gnu_dev_minor (unsigned long long int __dev) { return (__dev & 0xff) | ((unsigned int) (__dev >> 12) & ~0xff); } __extension__ extern __inline unsigned long long int gnu_dev_makedev (unsigned int __major, unsigned int __minor) { return ((__minor & 0xff) | ((__major & 0xfff) << 8) | (((unsigned long long int) (__minor & ~0xff)) << 12) | (((unsigned long long int) (__major & ~0xfff)) << 32)); } # 220 "../posix/sys/types.h" 2 typedef __blksize_t blksize_t; typedef __blkcnt_t blkcnt_t; typedef __fsblkcnt_t fsblkcnt_t; typedef __fsfilcnt_t fsfilcnt_t; # 258 "../posix/sys/types.h" typedef __blkcnt64_t blkcnt64_t; typedef __fsblkcnt64_t fsblkcnt64_t; typedef __fsfilcnt64_t fsfilcnt64_t; # 1 "../linuxthreads/sysdeps/pthread/bits/pthreadtypes.h" 1 # 23 "../linuxthreads/sysdeps/pthread/bits/pthreadtypes.h" # 1 "../sysdeps/unix/sysv/linux/bits/sched.h" 1 # 83 "../sysdeps/unix/sysv/linux/bits/sched.h" struct __sched_param { int __sched_priority; }; # 24 "../linuxthreads/sysdeps/pthread/bits/pthreadtypes.h" 2 struct _pthread_fastlock { long int __status; int __spinlock; }; typedef struct _pthread_descr_struct *_pthread_descr; typedef struct __pthread_attr_s { int __detachstate; int __schedpolicy; struct __sched_param __schedparam; int __inheritsched; int __scope; size_t __guardsize; int __stackaddr_set; void *__stackaddr; size_t __stacksize; } pthread_attr_t; __extension__ typedef long long __pthread_cond_align_t; typedef struct { struct _pthread_fastlock __c_lock; _pthread_descr __c_waiting; char __padding[48 - sizeof (struct _pthread_fastlock) - sizeof (_pthread_descr) - sizeof (__pthread_cond_align_t)]; __pthread_cond_align_t __align; } pthread_cond_t; typedef struct { int __dummy; } pthread_condattr_t; typedef unsigned int pthread_key_t; typedef struct { int __m_reserved; int __m_count; _pthread_descr __m_owner; int __m_kind; struct _pthread_fastlock __m_lock; } pthread_mutex_t; typedef struct { int __mutexkind; } pthread_mutexattr_t; typedef int pthread_once_t; typedef struct _pthread_rwlock_t { struct _pthread_fastlock __rw_lock; int __rw_readers; _pthread_descr __rw_writer; _pthread_descr __rw_read_waiting; _pthread_descr __rw_write_waiting; int __rw_kind; int __rw_pshared; } pthread_rwlock_t; typedef struct { int __lockkind; int __pshared; } pthread_rwlockattr_t; typedef volatile int pthread_spinlock_t; typedef struct { struct _pthread_fastlock __ba_lock; int __ba_required; int __ba_present; _pthread_descr __ba_waiting; } pthread_barrier_t; typedef struct { int __pshared; } pthread_barrierattr_t; typedef unsigned long int pthread_t; # 267 "../posix/sys/types.h" 2 # 1 "../include/sys/types.h" 2 # 417 "../stdlib/stdlib.h" 2 extern long int random (void) ; extern void srandom (unsigned int __seed) ; extern char *initstate (unsigned int __seed, char *__statebuf, size_t __statelen) ; extern char *setstate (char *__statebuf) ; struct random_data { int32_t *fptr; int32_t *rptr; int32_t *state; int rand_type; int rand_deg; int rand_sep; int32_t *end_ptr; }; extern int random_r (struct random_data *__restrict __buf, int32_t *__restrict __result) ; extern int srandom_r (unsigned int __seed, struct random_data *__buf) ; extern int initstate_r (unsigned int __seed, char *__restrict __statebuf, size_t __statelen, struct random_data *__restrict __buf) ; extern int setstate_r (char *__restrict __statebuf, struct random_data *__restrict __buf) ; extern int rand (void) ; extern void srand (unsigned int __seed) ; extern int rand_r (unsigned int *__seed) ; extern double drand48 (void) ; extern double erand48 (unsigned short int __xsubi[3]) ; extern long int lrand48 (void) ; extern long int nrand48 (unsigned short int __xsubi[3]) ; extern long int mrand48 (void) ; extern long int jrand48 (unsigned short int __xsubi[3]) ; extern void srand48 (long int __seedval) ; extern unsigned short int *seed48 (unsigned short int __seed16v[3]) ; extern void lcong48 (unsigned short int __param[7]) ; struct drand48_data { unsigned short int __x[3]; unsigned short int __old_x[3]; unsigned short int __c; unsigned short int __init; unsigned long long int __a; }; extern int drand48_r (struct drand48_data *__restrict __buffer, double *__restrict __result) ; extern int erand48_r (unsigned short int __xsubi[3], struct drand48_data *__restrict __buffer, double *__restrict __result) ; extern int lrand48_r (struct drand48_data *__restrict __buffer, long int *__restrict __result) ; extern int nrand48_r (unsigned short int __xsubi[3], struct drand48_data *__restrict __buffer, long int *__restrict __result) ; extern int mrand48_r (struct drand48_data *__restrict __buffer, long int *__restrict __result) ; extern int jrand48_r (unsigned short int __xsubi[3], struct drand48_data *__restrict __buffer, long int *__restrict __result) ; extern int srand48_r (long int __seedval, struct drand48_data *__buffer) ; extern int seed48_r (unsigned short int __seed16v[3], struct drand48_data *__buffer) ; extern int lcong48_r (unsigned short int __param[7], struct drand48_data *__buffer) ; extern void *malloc (size_t __size) __attribute__ ((__malloc__)); extern void *calloc (size_t __nmemb, size_t __size) __attribute__ ((__malloc__)); extern void *realloc (void *__ptr, size_t __size) __attribute__ ((__malloc__)); extern void free (void *__ptr) ; extern void cfree (void *__ptr) ; # 1 "../include/alloca.h" 1 # 1 "../stdlib/alloca.h" 1 # 25 "../stdlib/alloca.h" # 1 "/home/jbglaw/cross_jb/install/lib/gcc/sparc-linux/3.5.0/include/stddef.h" 1 3 4 # 26 "../stdlib/alloca.h" 2 extern void *alloca (size_t __size) ; # 4 "../include/alloca.h" 2 # 1 "../sysdeps/sparc/stackinfo.h" 1 # 5 "../include/alloca.h" 2 extern void *__alloca (size_t __size); extern int __libc_use_alloca (size_t size) __attribute__ ((const)); extern int __libc_alloca_cutoff (size_t size) __attribute__ ((const)); # 1 "../linuxthreads/sysdeps/unix/sysv/linux/allocalim.h" 1 # 20 "../linuxthreads/sysdeps/unix/sysv/linux/allocalim.h" # 1 "../include/limits.h" 1 # 124 "../include/limits.h" # 1 "/home/jbglaw/cross_jb/install/lib/gcc/sparc-linux/3.5.0/include/limits.h" 1 3 4 # 125 "../include/limits.h" 2 # 144 "../include/limits.h" # 1 "../include/bits/posix1_lim.h" 1 # 1 "../posix/bits/posix1_lim.h" 1 # 130 "../posix/bits/posix1_lim.h" # 1 "../linuxthreads/sysdeps/unix/sysv/linux/sparc/bits/local_lim.h" 1 # 36 "../linuxthreads/sysdeps/unix/sysv/linux/sparc/bits/local_lim.h" # 1 "/home/jbglaw/cross_jb/install/sparc-linux/sys-root/usr/include/linux/limits.h" 1 3 4 # 37 "../linuxthreads/sysdeps/unix/sysv/linux/sparc/bits/local_lim.h" 2 # 131 "../posix/bits/posix1_lim.h" 2 # 1 "../include/bits/posix1_lim.h" 2 # 145 "../include/limits.h" 2 # 1 "../include/bits/posix2_lim.h" 1 # 1 "../posix/bits/posix2_lim.h" 1 # 1 "../include/bits/posix2_lim.h" 2 # 149 "../include/limits.h" 2 # 1 "../include/bits/xopen_lim.h" 1 # 34 "../include/bits/xopen_lim.h" # 1 "/home/jbglaw/cross_jb/xx_build/build-glibc/bits/stdio_lim.h" 1 # 35 "../include/bits/xopen_lim.h" 2 # 153 "../include/limits.h" 2 # 21 "../linuxthreads/sysdeps/unix/sysv/linux/allocalim.h" 2 extern inline int __libc_use_alloca (size_t size) { return (__builtin_expect (size <= 24576 / 4, 1) || __libc_alloca_cutoff (size)); } # 21 "../include/alloca.h" 2 # 579 "../stdlib/stdlib.h" 2 extern void *valloc (size_t __size) __attribute__ ((__malloc__)); extern int posix_memalign (void **__memptr, size_t __alignment, size_t __size) __attribute__ ((__malloc__)); extern void abort (void) __attribute__ ((__noreturn__)); extern int atexit (void (*__func) (void)) ; extern int on_exit (void (*__func) (int __status, void *__arg), void *__arg) ; extern void exit (int __status) __attribute__ ((__noreturn__)); extern void _Exit (int __status) __attribute__ ((__noreturn__)); extern char *getenv (__const char *__name) ; extern char *__secure_getenv (__const char *__name) ; extern int putenv (char *__string) ; extern int setenv (__const char *__name, __const char *__value, int __replace) ; extern int unsetenv (__const char *__name) ; extern int clearenv (void) ; # 663 "../stdlib/stdlib.h" extern char *mktemp (char *__template) ; # 674 "../stdlib/stdlib.h" extern int mkstemp (char *__template); # 683 "../stdlib/stdlib.h" extern int mkstemp64 (char *__template); # 693 "../stdlib/stdlib.h" extern char *mkdtemp (char *__template) ; extern int system (__const char *__command); extern char *canonicalize_file_name (__const char *__name) ; # 720 "../stdlib/stdlib.h" extern char *realpath (__const char *__restrict __name, char *__restrict __resolved) ; typedef int (*__compar_fn_t) (__const void *, __const void *); typedef __compar_fn_t comparison_fn_t; extern void *bsearch (__const void *__key, __const void *__base, size_t __nmemb, size_t __size, __compar_fn_t __compar); extern void qsort (void *__base, size_t __nmemb, size_t __size, __compar_fn_t __compar); extern int abs (int __x) __attribute__ ((__const__)); extern long int labs (long int __x) __attribute__ ((__const__)); __extension__ extern long long int llabs (long long int __x) __attribute__ ((__const__)); extern div_t div (int __numer, int __denom) __attribute__ ((__const__)); extern ldiv_t ldiv (long int __numer, long int __denom) __attribute__ ((__const__)); __extension__ extern lldiv_t lldiv (long long int __numer, long long int __denom) __attribute__ ((__const__)); # 784 "../stdlib/stdlib.h" extern char *ecvt (double __value, int __ndigit, int *__restrict __decpt, int *__restrict __sign) ; extern char *fcvt (double __value, int __ndigit, int *__restrict __decpt, int *__restrict __sign) ; extern char *gcvt (double __value, int __ndigit, char *__buf) ; extern char *qecvt (long double __value, int __ndigit, int *__restrict __decpt, int *__restrict __sign) ; extern char *qfcvt (long double __value, int __ndigit, int *__restrict __decpt, int *__restrict __sign) ; extern char *qgcvt (long double __value, int __ndigit, char *__buf) ; extern int ecvt_r (double __value, int __ndigit, int *__restrict __decpt, int *__restrict __sign, char *__restrict __buf, size_t __len) ; extern int fcvt_r (double __value, int __ndigit, int *__restrict __decpt, int *__restrict __sign, char *__restrict __buf, size_t __len) ; extern int qecvt_r (long double __value, int __ndigit, int *__restrict __decpt, int *__restrict __sign, char *__restrict __buf, size_t __len) ; extern int qfcvt_r (long double __value, int __ndigit, int *__restrict __decpt, int *__restrict __sign, char *__restrict __buf, size_t __len) ; extern int mblen (__const char *__s, size_t __n) ; extern int mbtowc (wchar_t *__restrict __pwc, __const char *__restrict __s, size_t __n) ; extern int wctomb (char *__s, wchar_t __wchar) ; extern size_t mbstowcs (wchar_t *__restrict __pwcs, __const char *__restrict __s, size_t __n) ; extern size_t wcstombs (char *__restrict __s, __const wchar_t *__restrict __pwcs, size_t __n) ; extern int rpmatch (__const char *__response) ; # 866 "../stdlib/stdlib.h" extern int getsubopt (char **__restrict __optionp, char *__const *__restrict __tokens, char **__restrict __valuep) ; extern void setkey (__const char *__key) ; extern int posix_openpt (int __oflag); extern int grantpt (int __fd) ; extern int unlockpt (int __fd) ; extern char *ptsname (int __fd) ; extern int ptsname_r (int __fd, char *__buf, size_t __buflen) ; extern int getpt (void); extern int getloadavg (double __loadavg[], int __nelem) ; # 9 "../include/stdlib.h" 2 extern __typeof (strtol_l) __strtol_l; extern __typeof (strtoul_l) __strtoul_l; extern __typeof (strtoll_l) __strtoll_l; extern __typeof (strtoull_l) __strtoull_l; extern __typeof (strtod_l) __strtod_l; extern __typeof (strtof_l) __strtof_l; extern __typeof (strtold_l) __strtold_l; extern long int __random (void); extern void __srandom (unsigned int __seed); extern char *__initstate (unsigned int __seed, char *__statebuf, size_t __statelen); extern char *__setstate (char *__statebuf); extern int __random_r (struct random_data *__buf, int32_t *__result); extern int __srandom_r (unsigned int __seed, struct random_data *__buf); extern int __initstate_r (unsigned int __seed, char *__statebuf, size_t __statelen, struct random_data *__buf); extern int __setstate_r (char *__statebuf, struct random_data *__buf); extern int __rand_r (unsigned int *__seed); extern int __erand48_r (unsigned short int __xsubi[3], struct drand48_data *__buffer, double *__result); extern int __nrand48_r (unsigned short int __xsubi[3], struct drand48_data *__buffer, long int *__result); extern int __jrand48_r (unsigned short int __xsubi[3], struct drand48_data *__buffer, long int *__result); extern int __srand48_r (long int __seedval, struct drand48_data *__buffer); extern int __seed48_r (unsigned short int __seed16v[3], struct drand48_data *__buffer); extern int __lcong48_r (unsigned short int __param[7], struct drand48_data *__buffer); extern int __drand48_iterate (unsigned short int __xsubi[3], struct drand48_data *__buffer); extern struct drand48_data __libc_drand48_data ; extern int __setenv (__const char *__name, __const char *__value, int __replace); extern int __unsetenv (__const char *__name); extern int __clearenv (void); extern char *__canonicalize_file_name (__const char *__name); extern char *__realpath (__const char *__name, char *__resolved); extern int __ptsname_r (int __fd, char *__buf, size_t __buflen); extern int __getpt (void); extern int __posix_openpt (int __oflag); extern int __add_to_environ (const char *name, const char *value, const char *combines, int replace); extern void _quicksort (void *const pbase, size_t total_elems, size_t size, __compar_fn_t cmp); extern int __on_exit (void (*__func) (int __status, void *__arg), void *__arg); extern int __cxa_atexit (void (*func) (void *), void *arg, void *d); extern int __cxa_atexit_internal (void (*func) (void *), void *arg, void *d) ; extern void __cxa_finalize (void *d); extern int __posix_memalign (void **memptr, size_t alignment, size_t size) __attribute__ ((__malloc__)); extern void *__libc_memalign (size_t alignment, size_t size) __attribute__ ((__malloc__)); extern int __libc_system (const char *line); extern double ____strtod_l_internal (__const char *__restrict __nptr, char **__restrict __endptr, int __group, __locale_t __loc) ; extern float ____strtof_l_internal (__const char *__restrict __nptr, char **__restrict __endptr, int __group, __locale_t __loc) ; extern long double ____strtold_l_internal (__const char *__restrict __nptr, char **__restrict __endptr, int __group, __locale_t __loc) ; extern long int ____strtol_l_internal (__const char *__restrict __nptr, char **__restrict __endptr, int __base, int __group, __locale_t __loc) ; extern unsigned long int ____strtoul_l_internal (__const char * __restrict __nptr, char **__restrict __endptr, int __base, int __group, __locale_t __loc) ; __extension__ extern long long int ____strtoll_l_internal (__const char *__restrict __nptr, char **__restrict __endptr, int __base, int __group, __locale_t __loc) ; __extension__ extern unsigned long long int ____strtoull_l_internal (__const char * __restrict __nptr, char ** __restrict __endptr, int __base, int __group, __locale_t __loc) ; extern __inline double __strtod_l (__const char *__restrict __nptr, char **__restrict __endptr, __locale_t __loc) { return ____strtod_l_internal (__nptr, __endptr, 0, __loc); } extern __inline long int __strtol_l (__const char *__restrict __nptr, char **__restrict __endptr, int __base, __locale_t __loc) { return ____strtol_l_internal (__nptr, __endptr, __base, 0, __loc); } extern __inline unsigned long int __strtoul_l (__const char *__restrict __nptr, char **__restrict __endptr, int __base, __locale_t __loc) { return ____strtoul_l_internal (__nptr, __endptr, __base, 0, __loc); } extern __inline float __strtof_l (__const char *__restrict __nptr, char **__restrict __endptr, __locale_t __loc) { return ____strtof_l_internal (__nptr, __endptr, 0, __loc); } extern __inline long double __strtold_l (__const char *__restrict __nptr, char **__restrict __endptr, __locale_t __loc) { return ____strtold_l_internal (__nptr, __endptr, 0, __loc); } __extension__ extern __inline long long int __strtoll_l (__const char *__restrict __nptr, char **__restrict __endptr, int __base, __locale_t __loc) { return ____strtoll_l_internal (__nptr, __endptr, __base, 0, __loc); } __extension__ extern __inline unsigned long long int __strtoull_l (__const char * __restrict __nptr, char **__restrict __endptr, int __base, __locale_t __loc) { return ____strtoull_l_internal (__nptr, __endptr, __base, 0, __loc); } # 199 "../include/stdlib.h" extern void * __default_morecore (ptrdiff_t); # 20 "atoi.c" 2 int atoi (const char *nptr) { return (int) strtol (nptr, (char **) ((void *)0), 10); } -- Summary: ICE while cross-compiling glibc-HEAD with gcc-HEAD, affects at least alpha-linux and sparc-linux (probably all) Product: gcc Version: 3.5.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: jbglaw at lug-owl dot de CC: gcc-bugs at gcc dot gnu dot org GCC host triplet: i686-linux GCC target triplet: sparc-linux http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15398