Walter Bright:
assert(x != NULL);if(x != NULL) { x->foo = 42; // ... } ...Your code is doomed to having problems using assert this way.
That usage of assert is fine. D programs use it that way. (And you are going to break lot of D code if you will change the semantics of D assert).
Bye, bearophile