Bug 14067 – template parameters of enum type in DDoc are broken
Status
RESOLVED
Resolution
DUPLICATE
Severity
normal
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2015-01-28T13:21:48Z
Last change time
2020-10-10T00:11:11Z
Keywords
ddoc
Assigned to
No Owner
Creator
sinkuupump
Comments
Comment #0 by sinkuupump — 2015-01-28T13:21:48Z
# Code:
enum E { a }
void fun(E e)()
{
}
///
alias FA = fun!(E.a);
struct S(E e) {}
///
alias SA = S!(E.a);
// stringof property
static assert(S!(E.a).stringof == "S!(E.a)"); // fail - stringof is "S!cast(E)0"
# Output of `dmd -D`:
alias FA = fun!cast(E)0.fun;
alias SA = S!cast(E)0.S;
Expected result is "fun!(E.a).fun". At least it should be "fun!(cast(E)0).fun"
std.experimental.logger documentation is broken due to this bug.
eg. http://dlang.org/phobos-prerelease/std_experimental_logger_core.html#.trace
alias trace = defaultLogFunction!cast(LogLevel)cast(ubyte)32u.defaultLogFunction( /* ... */ );
Comment #1 by pro.mathias.lang — 2020-10-10T00:11:11Z
Nice find. Yes the formatting is utterly broken. Technically, this is a duplicate of 8044, for which I just opened a PR for.
*** This issue has been marked as a duplicate of issue 8044 ***