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