https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92061

            Bug ID: 92061
           Summary: build of gencondmd fails with clang-9.0 (trunk, gcc
                    9.2.1, probably other older versions of gcc as yet
                    untested) with undefined symbols for
                    ix86_binary_operator_ok and related.
           Product: gcc
           Version: 10.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: bootstrap
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ken.cunningham.webuse at gmail dot com
  Target Milestone: ---

See also <https://trac.macports.org/ticket/59253>

bootstrapping gcc-9.2.1 or gcc-devel (6 Oct 2019) with clang-9.0 fails due to:


/opt/local/bin/clang++-mp-9.0 -arch x86_64 -std=gnu++98   -g  -DIN_GCC   
-fno-strict-aliasing -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W
-Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-error=format-diag
-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 -Wl,-no_pie -L/opt/local/lib
-Wl,-headerpad_max_install_names
-Wl,-syslibroot,/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk
-no-pie -o build/gencondmd \
            build/gencondmd.o build/errors.o
../build-x86_64-apple-darwin18/libiberty/libiberty.a
clang: warning: argument unused during compilation: '-no-pie'
[-Wunused-command-line-argument]
Undefined symbols for architecture x86_64:
  "ix86_binary_operator_ok(rtx_code, machine_mode, rtx_def**)", referenced
from:
      ___cxx_global_var_init.100 in gencondmd.o
  "optimize_function_for_size_p(function*)", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_cfun", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_const_tiny_rtx", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_epilogue_completed", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_flag_cf_protection", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_flag_excess_precision", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_flag_finite_math_only", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_flag_fp_int_builtin_inexact", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_flag_peephole2", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_flag_pic", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_flag_rounding_math", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_flag_trapping_math", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_flag_unsafe_math_optimizations", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_insn", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_ix86_arch_features", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_ix86_cmodel", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_ix86_fpmath", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_ix86_isa_flags", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_ix86_isa_flags2", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_ix86_pmode", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_ix86_tls_dialect", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_ix86_tune_features", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_operands", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_optimize", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_reload_completed", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_reload_in_progress", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_rtx_class", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_target_flags", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
  "_x86_prefetch_sse", referenced from:
      ___cxx_global_var_init.100 in gencondmd.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[3]: *** [build/gencondmd] Error 1



bootstrapping with clang-8.0 succeeds, but with many warnings at the same point
in the build that look like this:


In file included from build/gencondmd.c:24:
5      
/opt/local/var/macports/build/_opt_macports-ports_lang_gcc9/gcc9/work/gcc-9.2.0/gcc/coretypes.h:76:1:
warning: class 'rtx_def' was previously declared as a struct; this is valid,
but may result in linker errors under the Microsoft C++ ABI [-Wmismatched-tags]
6       class rtx_def;
7       ^
8      
/opt/local/var/macports/build/_opt_macports-ports_lang_gcc9/gcc9/work/gcc-9.2.0/gcc/coretypes.h:56:8:
note: previous use is here
9       struct rtx_def;
10             ^
```

Reply via email to