re PR c++/79064 (Cannot overload member function templates on type of literal)
authorMartin Sebor <msebor@redhat.com>
Fri, 16 Feb 2018 22:36:53 +0000 (22:36 +0000)
committerMartin Sebor <msebor@gcc.gnu.org>
Fri, 16 Feb 2018 22:36:53 +0000 (15:36 -0700)
gcc/testsuite/ChangeLog:

PR c++/79064
* g++.dg/overload15.C: New test.

From-SVN: r257769

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

index 1604854d8864831c09df9430c61c7aea5c662262..4329ecbd76e283e482eed291405009948d11639f 100644 (file)
@@ -1,3 +1,8 @@
+2018-02-16  Martin Sebor  <msebor@redhat.com>
+
+       PR c++/79064
+       * g++.dg/overload15.C: New test.
+
 2018-02-16  Yury Gribov  <tetra2005@gmail.com>
 
        PR target/81535
diff --git a/gcc/testsuite/g++.dg/template/overload15.C b/gcc/testsuite/g++.dg/template/overload15.C
new file mode 100644 (file)
index 0000000..567344c
--- /dev/null
@@ -0,0 +1,16 @@
+// PR c++79064 - Cannot overload member function templates on type of literal
+// { dg-do compile }
+
+template <unsigned N>
+void f (char (*)[0u - 1 > N ? 1 : 7]);
+
+template <unsigned N>
+void f (char (*)[0u - 1l > N ? 1 : 7]);
+
+void f ()
+{
+  char x[1], y[7];
+
+  f<0>(&x);
+  f<0>(&y);
+}