Maybe think assert should not be rewritten, but opCast!(bool) should test if the class reference is null, which would be consistent with opEquals