https://issues.dlang.org/show_bug.cgi?id=14286

Simen Kjaeraas <simen.kja...@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |simen.kja...@gmail.com

--- Comment #2 from Simen Kjaeraas <simen.kja...@gmail.com> ---
Indeed. For clarification: the inner struct can be templated, the outer cannot:

struct Inner1   {}
struct Inner2() {}

struct Outer1   { Inner1    a; alias a this; }
struct Outer2   { Inner2!() a; alias a this; }
struct Outer3() { Inner1    a; alias a this; }
struct Outer4() { Inner2!() a; alias a this; }

// Non-template outer struct:
static assert( is(Outer1 : Inner1));
static assert( is(Outer2 : Inner2!()));

// Templated outer struct:
static assert(!is(Outer3 : Inner1));
static assert(!is(Outer4 : Inner2!()));

--

Reply via email to