https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87252
Bug ID: 87252 Summary: gcc-4.4 cross-builds broken, apparently in self-tests Product: gcc Version: 9.0 Status: UNCONFIRMED Keywords: build Severity: normal Priority: P3 Component: bootstrap Assignee: unassigned at gcc dot gnu.org Reporter: hp at gcc dot gnu.org CC: dmalcolm at gcc dot gnu.org Target Milestone: --- (Note: no cross-binutils or anything needed, just gcc sources and a native gcc-4.4. This is an *old* installation which identifies itself as "gcc version 4.4.4 20100630 (Red Hat 4.4.4-10) (GCC)".) Building sources from e.g. r264161, configured for a cross-build, for example (to wit, parameters and target not important) with the parameters "--target=arm-eabi --enable-languages=c" yields a broken build with an internal error as follows (right after manpage builds): ------------------------------------------------ /tmp/gcc44break/a/./gcc/xgcc -B/tmp/gcc44break/a/./gcc/ -xc -nostdinc /dev/null -S -o /dev/null -fself-test=/tmp/gcc44break/gcc/gcc/testsuite/selftests pure virtual method called terminate called without an active exception cc1: internal compiler error: Aborted 0xbad3b5 crash_signal /tmp/gcc44break/gcc/gcc/toplev.c:325 0x14f1f0e print_any_labels /tmp/gcc44break/gcc/gcc/diagnostic-show-locus.c:1491 0x14f1f0e print_line /tmp/gcc44break/gcc/gcc/diagnostic-show-locus.c:2259 0x14f1f0e diagnostic_show_locus(diagnostic_context*, rich_location*, diagnostic_t) /tmp/gcc44break/gcc/gcc/diagnostic-show-locus.c:2342 0x14f5d82 test_one_liner_labels /tmp/gcc44break/gcc/gcc/diagnostic-show-locus.c:2818 0x14f6b9f test_diagnostic_show_locus_one_liner /tmp/gcc44break/gcc/gcc/diagnostic-show-locus.c:2865 0x15037e7 selftest::for_each_line_table_case(void (*)(selftest::line_table_case const&)) /tmp/gcc44break/gcc/gcc/input.c:3525 0x14f29f7 selftest::diagnostic_show_locus_c_tests() /tmp/gcc44break/gcc/gcc/diagnostic-show-locus.c:3758 0x147f2f4 selftest::run_tests() /tmp/gcc44break/gcc/gcc/selftest-run-tests.c:88 0xbadad2 toplev::run_self_tests() /tmp/gcc44break/gcc/gcc/toplev.c:2234 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions. make[2]: *** [s-selftest-c] Error 1 rm cpp.pod fsf-funding.pod gcov.pod gfdl.pod gpl.pod gcc.pod gcov-dump.pod gcov-tool.pod make[2]: Leaving directory `/tmp/gcc44break/a/gcc' make[1]: *** [all-gcc] Error 2 make[1]: Leaving directory `/tmp/gcc44break/a' make: *** [all] Error 2 ------------------------------------------------ Just to be clear, this does not happen for a native build (bootstrap) with the same gcc. Also, gcc-4.9 works fine.