Boost logo

Boost :

From: Gennadiy Rozental (gennadiy.rozental_at_[hidden])
Date: 2007-05-17 14:09:10

"Paul A Bristow" <pbristow_at_[hidden]> wrote in message
>>> Why do you expect two infinity values to be close with any tolerance?
>>Interesting question: if the too values are the same, then I
>>would have
>>expected BOOST_CHECK_CLOSE to pass. But then we get into
>>discussions about whether two infinities are really the same :-)
> Well we certainly don't want any philosophical discussions :-))
> In BOOST_CHECK we are really comparing two bit patterns - both of which
> are std::numeric_limits<T>::infinity() and will presumably

This is not exactly true in general. BOOST_CHECK uses operator==.
BOOST_CHECK_CLOSE doesn't compare bit patterns either. It uses some advanced
algorithm. So we may decide what is the desirable outcome.

> pass a BOOST_CHECK_EQUAL test, so I also would expect a BOOST_CHECK_CLOSE
> pass, whatever the tolerance.
> But most important is to try to agree and to document our conclusion?

Getting back to our FP we need to decide


0. == 0.

NaN == NaN

Inf == Inf.

My guess is that curent algorithm produces false in all three cases.

My vote would be to keep it this way.

> Paul
> ---
> Paul A Bristow
> Prizet Farmhouse, Kendal, Cumbria UK LA8 8AB
> +44 1539561830 & SMS, Mobile +44 7714 330204 & SMS
> pbristow_at_[hidden]
> _______________________________________________
> Unsubscribe & other changes:

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