On Saturday, 8 June 2013 at 18:05:16 UTC, Eric wrote:
The following code will cause the compiler to crash:

import std.traits;

interface Identity(V, K) if (hasMember!(V, "k")) {
}

class Foo(K): Identity!(Foo!K, K) {
    K k;
}

void main() {
    new Foo!double;
}

This occurs on both compiler versions, 2.062 and v2.063-devel-53aa503.

At a minimum the compiler should print an error message instead
of seg-faulting, but I would hope that the above code would actually compile
successfully.

-Eric

I should also add that many of the "functions" in std.traits
will cause the compiler to crash when used to constrain an interface
in this manner.


Reply via email to