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 ^ ```