aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/testsuite/g++.dg/cpp2a/concepts-nodiscard1.C10
1 files changed, 10 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/cpp2a/concepts-nodiscard1.C b/gcc/testsuite/g++.dg/cpp2a/concepts-nodiscard1.C
new file mode 100644
index 0000000..28ce29b
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp2a/concepts-nodiscard1.C
@@ -0,0 +1,10 @@
+// PR c++/98019
+// { dg-do compile { target c++20 } }
+
+template <class T, class U> concept same_as = __is_same_as (T, U);
+
+[[nodiscard]] int foo() { return 0; }
+[[maybe_unused]] constexpr bool b = requires {
+ { foo() } -> same_as<int>;
+};
+[[maybe_unused]] constexpr auto x = sizeof(foo());