Date: Sun, 20 May 2007 17:13:22 +0200 From: Marius Strobl <marius@alchemy.franken.de> To: Alexander Kabaev <kabaev@gmail.com> Cc: freebsd-sparc64@freebsd.org Subject: Re: GCC 4.2 broken on sparc64? Message-ID: <20070520151322.GA91477@alchemy.franken.de> In-Reply-To: <464F317E.90508@uchicago.edu> References: <464F317E.90508@uchicago.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, May 19, 2007 at 12:18:54PM -0500, Nathan Whitehorn wrote: > Building with the new GCC 4.2 on -CURRENT, I get this: > usr.bin/cc/cc_tools/../../../../contrib/gcclibs/libcpp/include > -I/usr/src/gnu/usr.bin/cc/cc_tools/../../../../contrib/gcclibs/libdecnumber > -g -DGENERATOR_FILE -DHAVE_CONFIG_H > -I/usr/obj/usr/src/tmp/legacy/usr/include -c > /usr/src/gnu/usr.bin/cc/cc_tools/../../../../contrib/gcc/gengtype.c > In file included from ./tm.h:5, > from > /usr/src/gnu/usr.bin/cc/cc_tools/../../../../contrib/gcc/gengtype.c:24: > ./options.h:515: error: redeclaration of enumerator `OPT_Werror' > ./options.h:362: error: previous definition of 'OPT_Werror' was here > ./options.h:534: error: redeclaration of enumerator `OPT_Wsystem_headers' > ./options.h:417: error: previous definition of 'OPT_Wsystem_headers' was > here > ./options.h:549: error: redeclaration of enumerator `OPT_d' > ./options.h:427: error: previous definition of 'OPT_d' was here > ./options.h:820: error: redeclaration of enumerator `OPT_o' > ./options.h:682: error: previous definition of 'OPT_o' was here > ./options.h:822: error: redeclaration of enumerator `OPT_pedantic' > ./options.h:683: error: previous definition of 'OPT_pedantic' was here > ./options.h:823: error: redeclaration of enumerator `OPT_pedantic_errors' > ./options.h:684: error: previous definition of 'OPT_pedantic_errors' was > here > *** Error code 1 > > I can't figure out what generates this file, and am at a loss to fix it. > -Nathan Hi Alexander, compiling GCC 4.2 natively as part of the sparc64 world apparently is broken due to some file not being generated as expected. This also happens with a post symbol versioning world installed, cross- compiling it works fine though. Another variant I see is (the full log is at http://people.freebsd.org/~marius/build.txt): cc -O2 -fno-strict-aliasing -pipe -DIN_GCC -DHAVE_CONFIG_H -DPREFIX=\"/usr/obj/usr/src/tmp/usr\" -I/usr/obj/usr/src/tmp/usr/src/gnu/usr.bin/cc/cc_int/../cc_tools -I/usr/src/gnu/usr.bin/cc/cc_int/../cc_tools -I/usr/src/gnu/usr.bin/cc/cc_int/../../../../contrib/gcc -I/usr/src/gnu/usr.bin/cc/cc_int/../../../../contrib/gcc/config -I/usr/src/gnu/usr.bin/cc/cc_int/../../../../contrib/gcclibs/include -I/usr/src/gnu/usr.bin/cc/cc_int/../../../../contrib/gcclibs/libcpp/include -I/usr/src/gnu/usr.bin/cc/cc_int/../../../../contrib/gcclibs/libdecnumber -I/usr/obj/usr/src/tmp/legacy/usr/include -c /usr/src/gnu/usr.bin/cc/cc_int/../../../../contrib/gcc/c-lex.c /usr/src/gnu/usr.bin/cc/cc_int/../../../../contrib/gcc/c-lex.c: In function 'c_lex_with_flags': /usr/src/gnu/usr.bin/cc/cc_int/../../../../contrib/gcc/c-lex.c:374: error: 'PURE_ZERO' undeclared (first use in this function) /usr/src/gnu/usr.bin/cc/cc_int/../../../../contrib/gcc/c-lex.c:374: error: (Each undeclared identifier is reported only once /usr/src/gnu/usr.bin/cc/cc_int/../../../../contrib/gcc/c-lex.c:374: error: for each function it appears in.) /usr/src/gnu/usr.bin/cc/cc_int/../../../../contrib/gcc/c-lex.c:466: error: 'const union cpp_token_u' has no member named 'pragma' /usr/src/gnu/usr.bin/cc/cc_int/../../../../contrib/gcc/c-lex.c: In function 'interpret_float': /usr/src/gnu/usr.bin/cc/cc_int/../../../../contrib/gcc/c-lex.c:644: error: 'CPP_N_DFLOAT' undeclared (first use in this function) Do you have an idea what's causing this? I remeber one of your earlier GCC 4.1 snapshots exhibiting similar problems, the next one worked fine though. Marius
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070520151322.GA91477>