http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44463
Jan Hubicka <hubicka at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |NEW
CC| |rguenther at suse dot de
--- Comment #7 from Jan Hubicka <hubicka at gcc dot gnu.org> 2011-01-07
00:52:34 UTC ---
Richi,
I am going to post alias fix that resolve most of breakness, but we still have
multiple decl problem with 1to1.
The reason is simple, there is
void x(void) __attribute__((weak, alias("y")));
in one unit and
void x(void) { printf("strong\n"); }
in the other, so it is alias that gets prevailed by real function body.
lto-symtab handles that but we end up with two declarations, one in cgraph (the
one with body) and other in alias pairs as those are not subject of merging.
I think when merging decls, we need to remove associated alias pairs too.
lto-symtab is mostly yours, any idea how this can be best implemented?
Unasigning myself until this is discussed better.
Honza