This is the mail archive of the gcc-prs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: c++/5390: Libiberty fails to demangle multi-digit template parameters.


The following reply was made to PR c++/5390; it has been noted by GNATS.

From: Carlo Wood <carlo at alinoe dot com>
To: bangerth at dealii dot org, gcc-bugs at gcc dot gnu dot org, gcc-prs at gcc dot gnu dot org,
  nobody at gcc dot gnu dot org, gcc-gnats at gcc dot gnu dot org
Cc:  
Subject: Re: c++/5390: Libiberty fails to demangle multi-digit template parameters.
Date: Fri, 7 Mar 2003 13:14:20 +0100

 On Fri, Mar 07, 2003 at 02:26:50AM -0000, bangerth at dealii dot org wrote:
 > Synopsis: Libiberty fails to demangle multi-digit template parameters.
 > 
 > State-Changed-From-To: open->feedback
 > State-Changed-By: bangerth
 > State-Changed-When: Fri Mar  7 02:26:50 2003
 > State-Changed-Why:
 >     Carlo, this report has been sitting idly for a year now.
 >     What is the present state? Is it still unsolved, or did
 >     your patch go in?
 >     
 >     Thanks
 >       Wolfgang
 > 
 > http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=5390
 
 
 I don't have 2.95.4 and don't even know if there is a CVS branch for it.
 
 The file libiberty/testsuite/demangle-expected still exists in version 3.3,
 and contains some broken mangled names (the way 2.95.x doesn't mangle them):
 my patch was not applied to 'libiberty/testsuite/demangle-expected' but it
 seems to have been partly applied, or someone did double work (and a bad job).
 
 c++filt of 3.3 does not demangle the correct mangled names (at least the
 ones I tried) - while it does demangle the old (wrong) mangled names.  By
 looking at libiberty/cplus-dem.c it seems that the patch was at least party
 applied, but someone made changes that broke it, or they ignored failing
 hunks.  As it is, libiberty/cplus-dem.c cannot demangle all the names as
 produced by 2.95.x.
 
 Because in the past my patches have been totally ignored too often, I did put
 this one in the bugs database, so it wouldn't get lost... But later I got so
 much demotivated that I unsubbed from all gcc mailinglists and stopped
 caring about gcc.  Therefore I must say now: I am sorry, but I can't bother
 to put more time into this one and fix it AGAIN - for the current cplus-dem.c.
 Perhaps you manage to manually fix the current cplus-dem.c by looking at
 the old patch and figuring out what was applied and what was not applied.
 Keep in mind that it is not possible, nor interesting to keep backwards
 compatibility with the mangled names as mangled by pre-2.95.x (the ones
 with a '-' in front of it in my testsuite/demangle-expected patch) in
 libiberty/testsuite/demangle-expected: if you do that then you garanteed
 have a broken demangler for the way 2.95.x mangles these names.  My patch
 (for cplus-dem.c) was the best possible fix imho.
 
 -- 
 Carlo Wood <carlo at alinoe dot com>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]