On 11/21/2017 05:59 AM, Gerald Pfeifer wrote:
On Mon, 20 Nov 2017, Aldy Hernandez wrote:
Minor oversight...
Actually, there appears to be another issue related to this when
bootstrapping with clang 3.4.1 (FreeBSD 10.4):
I have no idea how to bootstrap with clang :). Perhaps someone can
throw a hint.
I found a machine with clang, which seemed to compile hello worlds both
for C and C++:
$ clang -v
clang version 3.8.1 (tags/RELEASE_381/final)
Target: x86_64-unknown-linux-gnu
...
Then I tried either this:
CC=clang CXX=clang++ /blah/configure
or this:
/blah/configure CC=clang CXX=clang++
...with numerous problems building stage1, among which are:
make[3]: Entering directory '/opt/notnfs/aldyh/bld/trunk-with-clang/gcc'
clang++ -std=gnu++98 -c -g -DIN_GCC -fno-strict-aliasing
-fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall
-Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-format
-Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long
-Wno-variadic-macros -Wno-overlength-strings -fno-common
-DHAVE_CONFIG_H -DGENERATOR_FILE -fno-PIE -I. -Ibuild
-I/home/cygnus/aldyh/src/gcc-pristine/gcc
-I/home/cygnus/aldyh/src/gcc-pristine/gcc/build
-I/home/cygnus/aldyh/src/gcc-pristine/gcc/../include
-I/home/cygnus/aldyh/src/gcc-pristine/gcc/../libcpp/include \
-o build/print-rtl.o
/home/cygnus/aldyh/src/gcc-pristine/gcc/print-rtl.c
clang-3.8: warning: treating 'c' input as 'c++' when in C++ mode, this
behavior is deprecated
In file included from
/home/cygnus/aldyh/src/gcc-pristine/gcc/print-rtl.c:29:
/home/cygnus/aldyh/src/gcc-pristine/gcc/coretypes.h:73:1: warning: class
'rtx_def' was previously declared as a struct [-Wmismatched-tags]
class rtx_def;
^
/home/cygnus/aldyh/src/gcc-pristine/gcc/coretypes.h:55:8: note: previous
use is here
struct rtx_def;
^
In file included from
/home/cygnus/aldyh/src/gcc-pristine/gcc/print-rtl.c:29:
In file included from
/home/cygnus/aldyh/src/gcc-pristine/gcc/coretypes.h:400:
/home/cygnus/aldyh/src/gcc-pristine/gcc/machmode.h:313:1: warning:
'pod_mode' defined as a struct template here but previously declared as
a class template [-Wmismatched-tags]
struct pod_mode
^
/home/cygnus/aldyh/src/gcc-pristine/gcc/coretypes.h:66:20: note: did you
mean struct here?
template<typename> class pod_mode;
^~~~~
struct
Is there a magic set of flags I should use?
Aldy