https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91027
--- Comment #5 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> --- > --- Comment #3 from Jan Hubicka <hubicka at ucw dot cz> --- > Hi, > this patch triggers another confusion in ipa-devirt. > It tries to build type inheritnace graph but since D frotnend produces > only functions with DECL_VIRTUAL but no BINFOs and other things it > segfaults eventually. > > Working around it makes it to work. So this adds new question why D > frontend needs to set DECL_VIRTUAL? I've finally managed to try this patch on sparc-sun-solaris2.11. It turns the previous SEGV into an ICE: during IPA pass: pure-const lto1: internal compiler error: in get_odr_type, at ipa-devirt.c:1908 0x715763 get_odr_type(tree_node*, bool) /vol/gcc/src/hg/trunk/local/gcc/ipa-devirt.c:1908 0x71a5a3 build_type_inheritance_graph() /vol/gcc/src/hg/trunk/local/gcc/ipa-devirt.c:2255 0x75f723 symbol_table::remove_unreachable_nodes(__FILE*) /vol/gcc/src/hg/trunk/local/gcc/ipa.c:319 0x414387 read_cgraph_and_symbols(unsigned int, char const**) /vol/gcc/src/hg/trunk/local/gcc/lto/lto-common.c:2906 0x3f7513 lto_main() /vol/gcc/src/hg/trunk/local/gcc/lto/lto.c:624