]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR c++/51199 ([C++11][DR 547] gcc forms impossible types derived from function...
authorPaolo Carlini <paolo.carlini@oracle.com>
Mon, 12 May 2014 08:42:41 +0000 (08:42 +0000)
committerPaolo Carlini <paolo@gcc.gnu.org>
Mon, 12 May 2014 08:42:41 +0000 (08:42 +0000)
2014-05-12  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51199
* g++.dg/template/pr51199.C: New.

From-SVN: r210321

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

index ff89aa50598cb7f2d1c21d0d842502116eb2f409..80b1b54e743bd312b332cd314061f8894dc356fa 100644 (file)
@@ -1,3 +1,8 @@
+2014-05-12  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       PR c++/51199
+       * g++.dg/template/pr51199.C: New.
+
 2014-05-11  Hans-Peter Nilsson  <hp@bitrange.com>
 
        * gcc.c-torture/execute/20101011-1.c [__MMIX__] (DO_TEST): Define as 0.
diff --git a/gcc/testsuite/g++.dg/template/pr51199.C b/gcc/testsuite/g++.dg/template/pr51199.C
new file mode 100644 (file)
index 0000000..e56b254
--- /dev/null
@@ -0,0 +1,17 @@
+// PR c++/51199
+
+typedef void FC() const;
+
+template<class T>
+struct add_ref {
+  typedef T& type;  // { dg-error "forming reference" }
+};
+
+typedef add_ref<FC>::type ref_type;
+
+template<class T>
+struct add_ptr {
+  typedef T* type;  // { dg-error "forming pointer" } 
+};
+
+typedef add_ptr<FC>::type ptr_type;