summaryrefslogtreecommitdiff
path: root/gcc/ipa-devirt.c
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2016-03-10 16:05:59 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2016-03-10 16:05:59 +0000
commit76333f63d2ce20bec1e45e5e39358e20131cd3fe (patch)
tree3b8921295eeff1ab5d2f0acc25532f985862f311 /gcc/ipa-devirt.c
parent26d3655d96030e617b3ed2649770d0d74d5a8906 (diff)
downloadgcc-76333f63d2ce20bec1e45e5e39358e20131cd3fe.tar.gz
PR ipa/69630
* ipa-devirt.c (possible_polymorphic_call_targets): Do not ICE on cxa_pure_virtual. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@234114 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ipa-devirt.c')
-rw-r--r--gcc/ipa-devirt.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/ipa-devirt.c b/gcc/ipa-devirt.c
index 2da5c013cf5..e4fb56210f6 100644
--- a/gcc/ipa-devirt.c
+++ b/gcc/ipa-devirt.c
@@ -3177,11 +3177,11 @@ possible_polymorphic_call_targets (tree otr_type,
if (!outer_type->all_derivations_known)
{
- if (!speculative && final_warning_records)
+ if (!speculative && final_warning_records
+ && TREE_CODE (TREE_TYPE (nodes[0]->decl)) == METHOD_TYPE)
{
if (complete
&& nodes.length () == 1
- && TREE_CODE (TREE_TYPE (nodes[0]->decl)) == METHOD_TYPE
&& warn_suggest_final_types
&& !outer_type->derived_types.length ())
{