https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68851
--- Comment #1 from Markus Trippelsdorf <trippels at gcc dot gnu.org> --- Still reducing. But Martin emailed me a patch, that fixes the issue: diff --git a/gcc/ipa-comdats.c b/gcc/ipa-comdats.c index 3aabd71..f7a6ff4 100644 --- a/gcc/ipa-comdats.c +++ b/gcc/ipa-comdats.c @@ -210,7 +210,12 @@ set_comdat_group (symtab_node *symbol, { symtab_node *head = (symtab_node *)head_p; - gcc_assert (!symbol->get_comdat_group ()); + if (symbol->get_comdat_group ()) + { + gcc_assert (symbol->get_comdat_group () == head->get_comdat_group ()); + return false; + } + symbol->set_comdat_group (head->get_comdat_group ()); symbol->add_to_same_comdat_group (head); return false;