]> git.ipfire.org Git - thirdparty/gcc.git/commit
re PR lto/53808 (Undefined symbol when building a library with lto)
authorJason Merrill <jason@redhat.com>
Wed, 30 Jul 2014 17:27:14 +0000 (13:27 -0400)
committerJason Merrill <jason@gcc.gnu.org>
Wed, 30 Jul 2014 17:27:14 +0000 (13:27 -0400)
commitd5d0ed2d89a56273efe30331c3e94651134615e7
tree043925ba81282b0a865db1992b86c852a51fdf2f
parentea3e455ac77a67e96a916c4c64249be8e20124cd
re PR lto/53808 (Undefined symbol when building a library with lto)

PR lto/53808
PR c++/61659
* pt.c (push_template_decl_real): Set DECL_COMDAT on templates.
(check_explicit_specialization): Clear it on specializations.
* decl.c (duplicate_decls, start_decl): Likewise.
(grokmethod, grokfndecl): Set DECL_COMDAT on inlines.
* method.c (implicitly_declare_fn): Set DECL_COMDAT.  Determine
linkage after setting the appropriate flags.
* tree.c (decl_linkage): Don't check DECL_COMDAT.
* decl2.c (mark_needed): Mark clones.
(import_export_decl): Not here.

From-SVN: r213307
gcc/cp/ChangeLog
gcc/cp/decl.c
gcc/cp/decl2.c
gcc/cp/method.c
gcc/cp/pt.c
gcc/cp/tree.c
gcc/testsuite/g++.dg/opt/devirt4.C