On Sunday, 24 February 2013 at 04:47:41 UTC, Jonathan M Davis wrote:
However, now that I think about it, equal takes a predicate, so it would
probably work to do something like

equal!"equal(a, b)"(["hello"d], ["hello"]);

- Jonathan M Davis

Yes, and you don't even need to use a mixin.

This is a known "issue", and is specifically covered and "pseudo-documented" the source unittests.

Copy pasted straight from the source:

//Should not compile, because "string == dstring" is illegal
static assert(!is(typeof(equal(["hello", "world"], ["hello"d, "world"d])))); //However, arrays of non-matching string can be compared using equal!equal. Neat-o!
equal!equal(["hello", "world"], ["hello"d, "world"d]);

Reply via email to