diff gcc/testsuite/g++.dg/ext/visibility/anon8.C @ 111:04ced10e8804

gcc 7
author kono
date Fri, 27 Oct 2017 22:46:09 +0900
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gcc/testsuite/g++.dg/ext/visibility/anon8.C	Fri Oct 27 22:46:09 2017 +0900
@@ -0,0 +1,33 @@
+// PR c++/34213
+// { dg-do compile }
+
+template <void (*fn) ()>
+void call ()			// { dg-message "note" }
+{
+  fn ();
+}
+
+namespace
+{
+  struct B1
+  {
+    static void fn1 () {}
+    static void fn4 ();
+  };
+  void fn3 () {}
+  void B1::fn4 () {}
+  static void fn5 () {}
+}
+
+int main ()
+{
+  struct B2
+  {
+    static void fn2 () {}
+  };
+  call<&B1::fn1> ();
+  call<&B2::fn2> ();	// { dg-error "linkage|no matching" }
+  call<&fn3> ();
+  call<&B1::fn4> ();
+  call<&fn5> ();	// { dg-error "linkage|no matching" "" { target { ! c++11 } } }
+}