On 11/24/13 11:18 AM, ilya-stromberg wrote:
On Sunday, 24 November 2013 at 14:12:18 UTC, Maxim Fomin wrote:
void* ptr;
if(ptr)

was a shortcut for 'if(ptr != NULL)' probably since C was created.

Small code change:

import std.stdio;

class Foo
{
}

void main()
{
     Foo f;

     if(f == null)
     {
         writeln("f is true");
     }

     if(f != null)
     {
         writeln("f is false");
     }
}

DMD output:

Error: use 'is' instead of '==' when comparing with null
Error: use '!is' instead of '!=' when comparing with null

Ugh, if the compiler disallows comparison of reference with "==" and "!=" and tells you to use "is" and "!is", can't compiler just allow you to write "==" and understand it as "is"? What's the big deal?

Reply via email to