Re: [gcc patch] Re: C++ member function template id not matching linkage name (PR debug/49408)

Jason Merrill
2011-06-29T20:56:56Z

On 06/29/2011 04:00 PM, Jan Kratochvil wrote:
> On Mon, 27 Jun 2011 20:00:24 +0200, Jason Merrill wrote:
>> They should be supressed whenever the function appears in an
>> expression context, either as a pointer to member function (i.e. the
>> operand of '&')
>
> Done, therefore it is no longer restricted only to templates as before.
>
>> or as the function being called in a call expression.
>
> I implemented it in the patch below but I do not agree + understand it.
>
> The call expression is in libiberty/testsuite/demangle-expected modified by
> this patch as:
>
> # decltype/fn call test
> --format=gnu-v3
> _Z4add3IidEDTclL_Z1gEfp_fp0_EET_T0_
> -decltype (g({parm#1}, {parm#2})) add3<int, double>(int, double)
> +decltype (g) add3<int, double>(int, double)

Here you're suppressing the arguments to a call, which we want to keep;
we only want to suppress printing the parameter types (which are not
part of the source expression).

Jason