]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
PR ipa/61886
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 8 Dec 2015 22:00:55 +0000 (22:00 +0000)
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 8 Dec 2015 22:00:55 +0000 (22:00 +0000)
* 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
gcc/symtab.c

index 1668e4edc8ebaf3a796d7c3ab737d48c0485b79f..e4c720774ddeb04270678c817fc92b9f48c95e5a 100644 (file)
@@ -1,3 +1,10 @@
+2015-12-08  Jan Hubicka  <hubicka@ucw.cz>
+
+       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  <nathan@acm.org>
 
        * config/nvptx/nvptx.c (decl_chunk_size, decl_chunk_mode,
index 06d618bb3b4a20a809ab0780e0e3c47e1adf5707..a9a0ab64cf9938179204127196d0c8fd27ba20b9 100644 (file)
@@ -1005,7 +1005,7 @@ symtab_node::verify_base (void)
        }
       if (!hashed_node
          && !(is_a <varpool_node *> (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 ();