PR c++/125317
gcc/cp/ChangeLog:
* parser.cc (cp_parser_requirement_body): Set
parser->greater_than_is_operator_p.
gcc/testsuite/ChangeLog:
* g++.dg/cpp2a/concepts-requires42.C: New test.
Reviewed-by: Jason Merrill <jason@redhat.com>
if (!braces.require_open (parser))
return error_mark_node;
+ /* Within the body of a requires expression, a '>' token is always the
+ greater-than operator. */
+ auto gto = make_temp_override (parser->greater_than_is_operator_p, true);
+
tree reqs = cp_parser_requirement_seq (parser);
if (!braces.require_close (parser))
--- /dev/null
+// PR c++/125317
+// { dg-do compile { target c++20 } }
+
+template<bool = requires { 0 > 0; }> int x;