Bug 65545 - Demangling of char template parameters always produces integer value
Summary: Demangling of char template parameters always produces integer value
Status: NEW
Alias: None
Product: gcc
Classification: Unclassified
Component: demangler (show other bugs)
Version: 4.9.2
: P3 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-03-24 20:37 UTC by Colin Hirsch
Modified: 2016-12-18 22:35 UTC (History)
2 users (show)

See Also:
Host:
Target:
Build:
Known to work:
Known to fail:
Last reconfirmed: 2016-01-24 00:00:00


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Colin Hirsch 2015-03-24 20:37:31 UTC
Given a template class declared with a "char" template parameters, for example

   template< char ... C > struct one;

and demangling the class name of an instance like

   one< 'a' >

with the abi::__cxa_demangle() function then the demangled result is

   one<(char)97>

which is much harder to read...

It would be great if this could be fixed to print 'c' whenever isprint() is true for the value of c.

Thanks!
Comment 1 Andrew Pinski 2016-01-24 19:05:01 UTC
demangler is part of libgcc.

Confirmed.
Comment 2 jsm-csl@polyomino.org.uk 2016-01-25 23:44:40 UTC
No, it's part of libiberty.