]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
2014-05-17 Paolo Carlini <paolo.carlini@oracle.com>
authorpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 17 May 2014 20:22:30 +0000 (20:22 +0000)
committerpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 17 May 2014 20:22:30 +0000 (20:22 +0000)
PR c++/52875
* g++.dg/cpp0x/decltype58.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210562 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/cpp0x/decltype58.C [new file with mode: 0644]

index 3c7ff36e95fa42454a87093a39897730d7e5a13f..d543cb3777a8333564f903caaf8a41453546c3b9 100644 (file)
@@ -1,3 +1,8 @@
+2014-05-17  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       PR c++/52875
+       * g++.dg/cpp0x/decltype58.C: New.
+
 2014-05-17  Marc Glisse  <marc.glisse@inria.fr>
 
        PR tree-optimization/61140
diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype58.C b/gcc/testsuite/g++.dg/cpp0x/decltype58.C
new file mode 100644 (file)
index 0000000..c3918bf
--- /dev/null
@@ -0,0 +1,24 @@
+// PR c++/52875
+// { dg-do compile { target c++11 } }
+
+struct A
+{
+  friend void swap(A&,A&)  {}
+};
+
+class B
+{
+  A a;
+    
+  template <class T>
+  friend auto swap(T& x, T& y) -> decltype(swap(x.a,y.a))
+  {
+    swap(x.a,y.a);
+  }
+};
+
+int main()
+{
+  B x, y;
+  swap(x, y);
+}