typo in subject - should be [PR116928]
On June 5, 2025 2:34:23 PM EDT, Eczbek <eczbek.v...@gmail.com> wrote: >From 0210a1a410cfafd79521e15cd96682ed3d5b4943 Mon Sep 17 00:00:00 2001 >From: Eczbek <eczbek.v...@gmail.com> >Date: Thu, 5 Jun 2025 14:27:48 -0400 >Subject: [PATCH] c++: [PR116928] > > PR c++/116928 > >gcc/cp/ChangeLog: > > * parser.cc (cp_parser_braced_list): > >gcc/testsuite/ChangeLog: > > * g++.dg/parse/template32.C: New test. > >c++: Fix greater-than operator in braced-init-lists [PR116928] >--- > gcc/cp/parser.cc | 4 ++++ > gcc/testsuite/g++.dg/parse/template32.C | 4 ++++ > 2 files changed, 8 insertions(+) > create mode 100644 gcc/testsuite/g++.dg/parse/template32.C > >diff --git a/gcc/cp/parser.cc b/gcc/cp/parser.cc >index 86337635f48..8cfb981fe4f 100644 >--- a/gcc/cp/parser.cc >+++ b/gcc/cp/parser.cc >@@ -26942,6 +26942,10 @@ cp_parser_braced_list (cp_parser *parser, bool >*non_constant_p /*=nullptr*/) > location_t start_loc = cp_lexer_peek_token (parser->lexer)->location; > auto oas = make_temp_override (parser->omp_array_section_p, false); > >+ /* Within a brace-enclosed initializer list, a `>' token is always the >+ greater-than operator. */ >+ auto gto = make_temp_override (parser->greater_than_is_operator_p, true); >+ > /* Consume the `{' token. */ > matching_braces braces; > bool found_opening_brace = braces.require_open (parser); >diff --git a/gcc/testsuite/g++.dg/parse/template32.C >b/gcc/testsuite/g++.dg/parse/template32.C >new file mode 100644 >index 00000000000..8229e9f5f53 >--- /dev/null >+++ b/gcc/testsuite/g++.dg/parse/template32.C >@@ -0,0 +1,4 @@ >+// PR c++/116928 >+// { dg-do compile { target c++11 } } >+ >+template<int = { 0 > 0 }> struct A;