On Wednesday, 10 May 2017 at 18:41:30 UTC, Timon Gehr wrote:
On 10.05.2017 16:21, Stefan Koch wrote:
On Wednesday, 10 May 2017 at 14:13:09 UTC, Timon Gehr wrote:
On 10.05.2017 15:18, Stefan Koch wrote:

if you try assert([] is null), it should fail.

It doesn't. I have tried to make that point before, unsuccessfully. Empty arrays may or may not be null, but the empty array literal is
always null.
cat t3.d ----
static assert([] is null);
---
dmd t.d -c ---
t3.d(1): Error: static assert  ([] is null) is false
----

void main(){
    import std.stdio;
    enum x = [] is null;
    auto y = [] is null;
    writeln(x," ",y); // "false true"
}

Oh fudge.
Another case where the ctfe-engine goes the right way;
And the runtime version does not ... we should fix this one of these days.

Reply via email to