Template not seeming to instantiate a second time with default alias parameter

ag0aep6g via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Tue Aug 30 13:55:20 PDT 2016


On 08/30/2016 10:41 PM, wobbles wrote:
> class Node(T, alias func = (T t => t*t))(){
> //whatever
> }
>
> //instantiate
> Node!(int) intNode;
> Node!(float) floatNode;   // fails as lambda func expects an int.
>
> Am I doing something wrong or is this a bug?

Proper test case:

----
class Node(T, alias func = (T t) => t*t)
{
     void method() { func(T.init); }
}

//instantiate
Node!(int) intNode;
Node!(float) floatNode;   // fails as lambda func expects an int.
----

Looks like a bug to me. Similar to this:
https://issues.dlang.org/show_bug.cgi?id=14501


More information about the Digitalmars-d-learn mailing list