aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp
diff options
context:
space:
mode:
authorJason Merrill <jason@redhat.com>2014-07-30 17:29:25 -0400
committerJason Merrill <jason@gcc.gnu.org>2014-07-30 17:29:25 -0400
commite00f67c6e04054bfcb860f31844a0007d5200d9c (patch)
tree0bee47504df3b88b73391824c6a036eace8b5860 /gcc/cp
parent5b9802c45c2c0cfe93d261518e5ca466197cbf8f (diff)
downloadgcc-e00f67c6e04054bfcb860f31844a0007d5200d9c.zip
gcc-e00f67c6e04054bfcb860f31844a0007d5200d9c.tar.gz
gcc-e00f67c6e04054bfcb860f31844a0007d5200d9c.tar.bz2
re PR lto/53808 (Undefined symbol when building a library with lto)
PR lto/53808 PR c++/61659 * pt.c (push_template_decl_real): Don't set DECL_COMDAT on friends. From-SVN: r213311
Diffstat (limited to 'gcc/cp')
-rw-r--r--gcc/cp/ChangeLog6
-rw-r--r--gcc/cp/pt.c1
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index f010207..3d85843 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,9 @@
+2014-07-30 Jason Merrill <jason@redhat.com>
+
+ PR lto/53808
+ PR c++/61659
+ * pt.c (push_template_decl_real): Don't set DECL_COMDAT on friends.
+
2014-07-30 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57397
diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c
index 33a8bf4..baabcb1 100644
--- a/gcc/cp/pt.c
+++ b/gcc/cp/pt.c
@@ -5021,6 +5021,7 @@ template arguments to %qD do not match original template %qD",
}
if (flag_implicit_templates
+ && !is_friend
&& VAR_OR_FUNCTION_DECL_P (decl))
/* Set DECL_COMDAT on template instantiations; if we force
them to be emitted by explicit instantiation or -frepo,