https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65003
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2015-02-10 Ever confirmed|0 |1 --- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> --- snode = symtab_node::get (decl); if (snode->alias) { rtx target = DECL_RTL (snode->ultimate_alias_target ()->decl); place_block_symbol (target); SYMBOL_REF_BLOCK_OFFSET (symbol) = SYMBOL_REF_BLOCK_OFFSET (target); return; } is of course bogus, DECL_RTL is very unlikely a SYMBOL_REF, it should be a MEM with SYMBOL_REF as operand. The question is if we can assert that. If that wouldn't be the case, I guess the optimizers would need to prevent creation of the alias.