From 10dd05992c343efcd01accf7975ccfcc17318001 Mon Sep 17 00:00:00 2001 From: hubicka Date: Tue, 8 Dec 2015 22:00:55 +0000 Subject: [PATCH] PR ipa/61886 * symtab.c (symtab_node::verify_base): Fix thinko in a conditional. (symtab_node::noninterposable_alias): Do not accept transparent aliases. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231427 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 7 +++++++ gcc/symtab.c | 4 ++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1668e4edc8eb..e4c720774dde 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2015-12-08 Jan Hubicka + + PR ipa/61886 + * symtab.c (symtab_node::verify_base): Fix thinko in a conditional. + (symtab_node::noninterposable_alias): Do not accept transparent + aliases. + 2015-12-08 Nathan Sidwell * config/nvptx/nvptx.c (decl_chunk_size, decl_chunk_mode, diff --git a/gcc/symtab.c b/gcc/symtab.c index 06d618bb3b4a..a9a0ab64cf99 100644 --- a/gcc/symtab.c +++ b/gcc/symtab.c @@ -1005,7 +1005,7 @@ symtab_node::verify_base (void) } if (!hashed_node && !(is_a (this) - || DECL_HARD_REGISTER (decl))) + && DECL_HARD_REGISTER (decl))) { error ("node not found in symtab assembler name hash"); error_found = true; @@ -1637,7 +1637,7 @@ symtab_node::resolve_alias (symtab_node *target, bool transparent) bool symtab_node::noninterposable_alias (symtab_node *node, void *data) { - if (decl_binds_to_current_def_p (node->decl)) + if (!node->transparent_alias && decl_binds_to_current_def_p (node->decl)) { symtab_node *fn = node->ultimate_alias_target (); -- 2.47.3