Boost logo

Boost :

From: Dave Harris (brangdon_at_[hidden])
Date: 2005-10-09 12:45:28


In-Reply-To: <4343103A.6010007_at_[hidden]>
darren_at_[hidden] (Darren Cook) wrote (abridged):
> I think it is fair to assume people don't have assert(false) in code
> that is ready for release - it is just used temporarily during
> debugging.

No, it isn't fair to assume that. I have:

    if (e) {
        assert(false);
        throw "can't happen";
    }

or similar in release code.

> But just to be sure OKAY_TO_USE_ASSUME should be off by default.

A single monolithic switch isn't practical. There is no way to switch
OKAY_TO_USE_ASSUME on without first checking whether every piece of code
in the program is OK with it.

> > If that is the behavior of __assume(false), or at least given
> > that it is a reasonable interpretation of what it could do, then
> > including __assume() in BOOST_ASSERT() seems a little dangerous.
>
> Which brings up back to the start of this thread :-).

Quite so. I find I am repeating myself.

-- Dave Harris, Nottingham, UK.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk