Re: [patch] PR 59195: C++ demangler handles conversion operator incorrectly

2013-11-22 Thread Ian Lance Taylor
On Thu, Nov 21, 2013 at 1:22 PM, Cary Coutant wrote: > I've made a small revision to this patch to handle recursive > invocations of d_expression and d_operator_name, restoring the > previous values of is_expression and is_conversion instead of just > setting them to 0 upon return. I've also added

Re: [patch] PR 59195: C++ demangler handles conversion operator incorrectly

2013-11-21 Thread Cary Coutant
I've made a small revision to this patch to handle recursive invocations of d_expression and d_operator_name, restoring the previous values of is_expression and is_conversion instead of just setting them to 0 upon return. I've also added the long test case that results in a substitution misnumberin

[patch] PR 59195: C++ demangler handles conversion operator incorrectly

2013-11-19 Thread Cary Coutant
In PR 59195, I describe a demangler problem with parsing conversion operators that have template parameters: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59195 For example, $ c++filt _ZN1AcvPT_I1CEEv fails -- it should print "A::operator C*()". $ c++filt _ZN1AcvT_IiEI1CEEv prints "A::ope