From 3b099df59c47c4f09da0941c096098dde00a87dc Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Sat, 20 Apr 2024 10:44:13 -0600 Subject: Allow function types as template parameters in name canonicalizer This adds function types as template parameters in the C++ name canonicalizer. Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=11907 Approved-By: John Baldwin --- gdb/cp-name-parser.y | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'gdb/cp-name-parser.y') diff --git a/gdb/cp-name-parser.y b/gdb/cp-name-parser.y index c0138ef..cf3e8bf 100644 --- a/gdb/cp-name-parser.y +++ b/gdb/cp-name-parser.y @@ -596,6 +596,7 @@ template_arg : typespec_2 | '&' '(' start ')' { $$ = state->fill_comp (DEMANGLE_COMPONENT_UNARY, state->make_operator ("&", 1), $3); } | exp + | function ; function_args : typespec_2 @@ -2062,6 +2063,9 @@ canonicalize_tests () should_be_the_same ("x::y::z<0b111>", "x::y::z<0D7>"); should_be_the_same ("x::y::z<0xff'ff>", "x::y::z<65535>"); + + should_be_the_same ("something", "something< void() >"); + should_be_the_same ("something", "something"); } #endif -- cgit v1.1