https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70594
--- Comment #49 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Author: jakub Date: Thu Apr 14 19:21:31 2016 New Revision: 234987 URL: https://gcc.gnu.org/viewcvs?rev=234987&root=gcc&view=rev Log: PR c++/70594 * ipa-utils.h (polymorphic_ctor_dtor_p): New prototype. * ipa-polymorphic-call.c (polymorphic_ctor_dtor_p): New function. (inlined_polymorphic_ctor_dtor_block_p): Use it. * tree-ssa-live.c (remove_unused_scope_block_p): When in_ctor_dtor_block, avoid discarding not just BLOCKs with BLOCK_ABSTRACT_ORIGIN being FUNCTION_DECL, but even when block_ultimate_origin is FUNCTION_DECL. (remove_unused_locals): If current_function_decl is polymorphic_ctor_dtor_p, pass initial true to remove_unused_scope_block_p' is_ctor_dtor_block. Modified: trunk/gcc/ChangeLog trunk/gcc/ipa-polymorphic-call.c trunk/gcc/ipa-utils.h trunk/gcc/tree-ssa-live.c