Bug 11192 – std.demangle doesn't demangle alias template arguments

Status
RESOLVED
Resolution
FIXED
Severity
normal
Priority
P2
Component
phobos
Product
D
Version
D2
Platform
All
OS
All
Creation time
2013-10-07T13:24:00Z
Last change time
2014-08-07T16:48:38Z
Assigned to
nobody
Creator
peter.alexander.au

Comments

Comment #0 by peter.alexander.au — 2013-10-07T13:24:54Z
import std.demangle, std.stdio; void foo(alias x)() {} void main() { int bar; foo!bar.mangleof.demangle.writeln(); } Gives: void foo.main().pure nothrow @safe void foo!(_D3foo4mainFZv3bari).foo() Notice that _D3foo4mainFZv3bari remains mangled. I would expect something along the lines of: void foo.main().pure nothrow @safe void foo!(void foo.main().int bar).foo()
Comment #1 by github-bugzilla — 2014-08-07T16:48:38Z
Commits pushed to master at https://github.com/D-Programming-Language/druntime https://github.com/D-Programming-Language/druntime/commit/9fee06f6c01961e59f7e1de0a5265851781d76d2 Fix Issue 11192 - std.demangle doesn't demangle alias template arguments https://github.com/D-Programming-Language/druntime/commit/5eb5aac988c085096a81d1d25c9e570ef80f6b89 Merge pull request #906 from sinkuu/fix_demangle_alias Issue 11192 - std.demangle doesn't demangle alias template arguments