Boost logo

Boost :

From: David Abrahams (dave_at_[hidden])
Date: 2003-12-05 17:23:58

"Edward Diener" <eddielee_at_[hidden]> writes:

> AlisdairM wrote:
>> "Edward Diener" <eddielee_at_[hidden]> wrote in
>> news:bqq6qt$iqg$1_at_[hidden]:
>>> Looking at the regression results at
>>> I noticed that
>>> Fail is inserted as the result for some tests when only a warning is
>>> displayed. As an example the class_concept_fail_expected test for
>>> Borland shows just a warning when I click on the Fail link. Does
>>> anyone know why the result is incorrect, or is a particular test
>>> deemed a Fail if any warning occurs also.
>> That result always gives me a double-take too <g>
>> The test is a 'compile-fail', so the test fails only if the compiler
>> actually passes the code!
> Is that what a 'compile-fail' test really means ? I don't think that can be
> right.

It is right, in fact.

> I would always assume that Fail means something is wrong, either an
> error at compile time or a crash or incorrect result at run-time.

Something is wrong when a static assertion that's supposed to fire
doesn't do so. Something is wrong if I can compile

    boost::shared_ptr<int>(new char('a'));

There are lots of reasons to write a compile-fail test.

Dave Abrahams
Boost Consulting

Boost list run by bdawes at, gregod at, cpdaniel at, john at