gcc-3.3.2 says error: integer constant is too large for "long" type
David Wuertele
dave-gnus@bfnet.com
Wed Feb 4 00:59:00 GMT 2004
I'm looking for a clue as to why I get an error with my crosstool
generated toolchain, but not with any other. Here is my source file,
test.c:
int main ()
{
unsigned long long int test = 0x0008000000000000;
}
Here is the verbose output of the gcc-2.96 which works fine:
# /usr/tools/bin/mipsel-linux-g++ -v -o test.o test.c
Reading specs from /usr/tools/lib/gcc-lib/mipsel-linux/2.96/specs
gcc version 2.96 20000731 (Red Hat Linux 7.1 2.96-99.1)
/usr/tools/lib/gcc-lib/mipsel-linux/2.96/cpp0 -lang-c++ -D__GNUG__=2 -D__EXCEPTIONS -v -D__GNUC__=2 -D__GNUC_MINOR__=96 -D__GNUC_PATCHLEVEL__=0 -DMIPSEL -D_MIPSEL -Dunix -Dmips -D_mips -DR3000 -D_R3000 -Dlinux -D__ELF__ -D__PIC__ -D__pic__ -D__MIPSEL__ -D_MIPSEL -D__unix__ -D__mips__ -D__mips__ -D__R3000__ -D_R3000 -D__linux__ -D__ELF__ -D__PIC__ -D__pic__ -D__MIPSEL -D__unix -D__mips -D__mips -D__R3000 -D__linux -Asystem(posix) -Acpu(mips) -Amachine(mips) -D__NO_INLINE__ -D__LANGUAGE_C -D_LANGUAGE_C -DLANGUAGE_C -D__SIZE_TYPE__=unsigned int -D__PTRDIFF_TYPE__=int -D_MIPS_FPSET=32 -D_MIPS_ISA=_MIPS_ISA_MIPS1 -D_MIPS_SIM=_MIPS_SIM_ABI32 -D_MIPS_SZINT=32 -D_MIPS_SZLONG=32 -D_MIPS_SZPTR=32 -U__mips -D__mips -U__mips64 test.c /tmp/cchtpGrf.ii
GNU CPP version 2.96 20000731 (Red Hat Linux 7.1 2.96-99.1) (cpplib) (MIPSel GNU/Linux with ELF)
ignoring nonexistent directory "/usr/tools/mipsel-linux/sys-include"
#include "..." search starts here:
#include <...> search starts here:
/usr/tools/include/g++-3
/usr/tools/lib/gcc-lib/mipsel-linux/2.96/include
/usr/tools/mipsel-linux/include
End of search list.
/usr/tools/lib/gcc-lib/mipsel-linux/2.96/cc1plus /tmp/cchtpGrf.ii -quiet -dumpbase test.c -version -o /tmp/ccWVkyUk.s
GNU C++ version 2.96 20000731 (Red Hat Linux 7.1 2.96-99.1) (mipsel-linux) compiled by GNU C version 2.96 20000731 (Red Hat Linux 7.1 2.96-99.1).
/usr/tools/lib/gcc-lib/mipsel-linux/2.96/../../../../mipsel-linux/bin/as -v -KPIC -o /tmp/ccvb9GQq.o /tmp/ccWVkyUk.s
GNU assembler version 2.11.92.0.10 (mipsel-linux) using BFD version 2.11.92.0.10 20011021
/usr/tools/lib/gcc-lib/mipsel-linux/2.96/collect2 -dynamic-linker /lib/ld.so.1 -o test.o /usr/tools/lib/gcc-lib/mipsel-linux/2.96/../../../../mipsel-linux/lib/crt1.o /usr/tools/lib/gcc-lib/mipsel-linux/2.96/../../../../mipsel-linux/lib/crti.o /usr/tools/lib/gcc-lib/mipsel-linux/2.96/crtbegin.o -L/usr/tools/lib/gcc-lib/mipsel-linux/2.96 -L/usr/tools/lib/gcc-lib/mipsel-linux/2.96/../../../../mipsel-linux/lib /tmp/ccvb9GQq.o -lstdc++ -lm -lgcc -lc -lgcc /usr/tools/lib/gcc-lib/mipsel-linux/2.96/crtend.o /usr/tools/lib/gcc-lib/mipsel-linux/2.96/../../../../mipsel-linux/lib/crtn.o
Here is the verbose output of the gcc-3.3.2 which complains:
# mipsel-unknown-linux-gnu-g++ -v -o test.o test.c >mulg.out 2>&1
Reading specs from /opt/crosstool/mipsel-unknown-linux-gnu/gcc-3.3.2-glibc-2.3.2/lib/gcc-lib/mipsel-unknown-linux-gnu/3.3.2/specs
Configured with: /opt/crosstool/crosstool-0.27/build/mipsel-unknown-linux-gnu/gcc-3.3.2-glibc-2.3.2/gcc-3.3.2/configure --target=mipsel-unknown-linux-gnu --host=i686-host_pc-linux-gnu --prefix=/opt/crosstool/mipsel-unknown-linux-gnu/gcc-3.3.2-glibc-2.3.2 --with-headers=/opt/crosstool/mipsel-unknown-linux-gnu/gcc-3.3.2-glibc-2.3.2/mipsel-unknown-linux-gnu/include --with-local-prefix=/opt/crosstool/mipsel-unknown-linux-gnu/gcc-3.3.2-glibc-2.3.2/mipsel-unknown-linux-gnu --disable-nls --enable-threads=posix --enable-symvers=gnu --enable-__cxa_atexit --enable-languages=c,c++ --enable-shared --enable-c99 --enable-long-long
Thread model: posix
gcc version 3.3.2
/opt/crosstool/mipsel-unknown-linux-gnu/gcc-3.3.2-glibc-2.3.2/lib/gcc-lib/mipsel-unknown-linux-gnu/3.3.2/cc1plus -quiet -v -D__GNUC__=3 -D__GNUC_MINOR__=3 -D__GNUC_PATCHLEVEL__=2 -D_GNU_SOURCE test.c -D__GNUG__=3 -quiet -dumpbase test.c -auxbase test -version -o /tmp/ccS61Zui.s
GNU C++ version 3.3.2 (mipsel-unknown-linux-gnu)
compiled by GNU C version 3.2.2 20030222 (Red Hat Linux 3.2.2-5).
GGC heuristics: --param ggc-min-expand=98 --param ggc-min-heapsize=128736
#include "..." search starts here:
#include <...> search starts here:
/opt/crosstool/mipsel-unknown-linux-gnu/gcc-3.3.2-glibc-2.3.2/include/c++/3.3.2
/opt/crosstool/mipsel-unknown-linux-gnu/gcc-3.3.2-glibc-2.3.2/include/c++/3.3.2/mipsel-unknown-linux-gnu
/opt/crosstool/mipsel-unknown-linux-gnu/gcc-3.3.2-glibc-2.3.2/include/c++/3.3.2/backward
/opt/crosstool/mipsel-unknown-linux-gnu/gcc-3.3.2-glibc-2.3.2/include
/opt/crosstool/mipsel-unknown-linux-gnu/gcc-3.3.2-glibc-2.3.2/lib/gcc-lib/mipsel-unknown-linux-gnu/3.3.2/include
/opt/crosstool/mipsel-unknown-linux-gnu/gcc-3.3.2-glibc-2.3.2/mipsel-unknown-linux-gnu/sys-include
/opt/crosstool/mipsel-unknown-linux-gnu/gcc-3.3.2-glibc-2.3.2/mipsel-unknown-linux-gnu/include
End of search list.
test.c: In function `int main()':
test.c:3: error: integer constant is too large for "long" type
I'm sure the answer is obvious to someone who is intimate with gcc,
but I could sure use a pointer.
Thanks,
Dave
------
Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com
More information about the crossgcc
mailing list