https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63598
--- Comment #2 from John David Anglin <danglin at gcc dot gnu.org> --- If I apply this change Index: ipa-icf.c =================================================================== --- ipa-icf.c (revision 216524) +++ ipa-icf.c (working copy) @@ -584,8 +584,12 @@ || (DECL_COMDAT_GROUP (original->decl) && (DECL_COMDAT_GROUP (original->decl) == DECL_COMDAT_GROUP (alias->decl))))) - local_original - = dyn_cast <cgraph_node *> (original->noninterposable_alias ()); + { + local_original + = dyn_cast <cgraph_node *> (original->noninterposable_alias ()); + if (!local_original) + return false; + } if (redirect_callers) { , the following error occurs in stage1: /usr/ccs/bin/ld: Invalid symbol type for plabel (.libs/libstdc++.lax/libsupc++co nvenience.a/tinfo.o, std::type_info::__is_pointer_p() const). collect2: error: ld returned 1 exit status