diff gcc/testsuite/g++.dg/cpp2a/nontype-class6.C @ 145:1830386684a0

gcc-9.2.0
author anatofuz
date Thu, 13 Feb 2020 11:34:05 +0900
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gcc/testsuite/g++.dg/cpp2a/nontype-class6.C	Thu Feb 13 11:34:05 2020 +0900
@@ -0,0 +1,17 @@
+// { dg-do compile { target c++2a } }
+
+struct A {
+  char ar[10];
+  constexpr A (const char *p) : ar()
+  {
+    for (int i = 0; i < 10; ++i)
+      if ((ar[i] = p[i]) == 0)
+	break;
+  }
+  // auto operator<=> (const A&) = default;
+};
+
+template <A a> constexpr A operator "" _sh() { return a; }
+
+constexpr auto a = "foo"_sh;
+static_assert (a.ar[0] == 'f');