decl2.c (maybe_make_one_only): Always make things comdat on ELF targets, too.

* decl2.c (maybe_make_one_only): Always make things comdat on
	ELF targets, too.

From-SVN: r30341
This commit is contained in:
Jason Merrill 1999-11-02 07:33:05 +00:00 committed by Jason Merrill
parent c4d6cee389
commit b78121f657
2 changed files with 12 additions and 3 deletions

View File

@ -1,3 +1,8 @@
1999-11-01 Jason Merrill <jason@yorick.cygnus.com>
* decl2.c (maybe_make_one_only): Always make things comdat on
ELF targets, too.
1999-10-31 Mark Mitchell <mark@codesourcery.com>
* decl.c (finish_function): Call free_after_parsing for functions

View File

@ -2365,9 +2365,13 @@ void
maybe_make_one_only (decl)
tree decl;
{
/* This is not necessary on targets that support weak symbols, because
the implicit instantiations will defer to the explicit one. */
if (! supports_one_only () || SUPPORTS_WEAK)
/* We used to say that this was not necessary on targets that support weak
symbols, because the implicit instantiations will defer to the explicit
one. However, that's not actually the case in SVR4; a strong definition
after a weak one is an error. Also, not making explicit
instantiations one_only means that we can end up with two copies of
some template instantiations. */
if (! supports_one_only ())
return;
/* We can't set DECL_COMDAT on functions, or finish_file will think