2012-01-19 Kai Tietz <ktietz@redhat.com>
PR c++/51344
* decl2.c (save_template_attributes): Use merge_attributes
instead of chaining up via TREE_CHAIN.
2012-01-19 Kai Tietz <ktietz@redhat.com>
* g++.dg/torture/pr51344.C: New test.
From-SVN: r183313
+2012-01-19 Kai Tietz <ktietz@redhat.com>
+
+ PR c++/51344
+ * decl2.c (save_template_attributes): Use merge_attributes
+ instead of chaining up via TREE_CHAIN.
+
2012-01-19 Jason Merrill <jason@redhat.com>
PR c++/51889
old_attrs = *q;
- /* Place the late attributes at the beginning of the attribute
+ /* Merge the late attributes at the beginning with the attribute
list. */
- TREE_CHAIN (tree_last (late_attrs)) = *q;
+ late_attrs = merge_attributes (late_attrs, *q);
*q = late_attrs;
if (!DECL_P (*decl_p) && *decl_p == TYPE_MAIN_VARIANT (*decl_p))
+2012-01-19 Kai Tietz <ktietz@redhat.com>
+
+ * g++.dg/torture/pr51344.C: New test.
+
2012-01-19 Tobias Burnus <burnus@net-b.de>
PR fortran/51904
--- /dev/null
+/* { dg-do compile } */
+template <class T>
+class B
+{
+ friend __attribute__((cdecl)) A& operator >>(A& a, B& b)
+ {
+ return a;
+ }
+};