Reduced Code: import std.traits; class Parent(T) { static class Child {} } pragma(msg, fullyQualifiedName!(Parent!(int[]).Child));
I have created a PR https://github.com/dlang/phobos/pull/4437 Can someone explain to me how exactly the PR fixes the bug? I believe there is something strange happening under the hood. Perhaps a deeper bug??
Reduced to a compiler bug: issue 16183.
Commits pushed to master at https://github.com/dlang/phobos https://github.com/dlang/phobos/commit/59df244abb8296089285c14935c498d624bc5890 Fix for issue 16182 https://issues.dlang.org/show_bug.cgi?id=16182 It is beyond my comprension as to why this irrelevant change helps fixes #16182. I believe there is something amiss becuase expression fqnSym!(__traits(parent, T)) ~ '.' is returning a char[] while fqnSym!(__traits(parent, T)) ~ "." returns a string. This while expression fqnSym!(__traits(parent, T)) returns a string. https://github.com/dlang/phobos/commit/f75eeb596d44544e98a23ee1fd0b60f9ae8b0956 Merge pull request #4437 from puneet/master Fix for for issue 16182 - std.traits.fullyQualifiedName Bug
Commits pushed to stable at https://github.com/dlang/phobos https://github.com/dlang/phobos/commit/59df244abb8296089285c14935c498d624bc5890 Fix for issue 16182 https://github.com/dlang/phobos/commit/f75eeb596d44544e98a23ee1fd0b60f9ae8b0956 Merge pull request #4437 from puneet/master
The PR was merged, but the commit message syntax included an invalid "for" between "issue" and the number, so the bot didn't close it -> closing now