[phobos] enforce() vs. assert() for range primitives

Jonathan M Davis jmdavisprog at gmail.com
Wed Aug 18 17:27:41 PDT 2010


On Wednesday, August 18, 2010 17:09:59 Michel Fortin wrote:
> Le 2010-08-18 à 19:08, Jonathan M Davis a écrit :
> > The ideal situation would be to use asserts in all cases where it's going
> > to be bugs in the program rather than bad user input and that they go
> > away in release mode.
> 
> I'd say the ideal situation would be to have the 'in' contracts checked on
> the caller's side. That way a program compiled in debug mode would still
> check the input it sends to Phobos, and whether Phobos was compiled in
> debug or release mode would only affect its internal checks, not the
> checks about its inputs.

That would be nice. I doubt that that could be done very reasonably, if at all. 
But it would make good sense. If you could do it, there would be code bloat in 
the debug version, but it would go away in release, so it shouldn't be a big 
deal. A great idea, but I rather doubt it'll happen. But as you said, it would 
be the ideal situation.

- Jonathan M Davis


More information about the phobos mailing list