9 Oct
2025
9 Oct
'25
3:37 p.m.
czw., 9 paź 2025 o 13:28 Matt Borland via Boost <boost@lists.boost.org> napisał(a): > > > > > > On Thursday, October 9th, 2025 at 12:58 PM, Michel Morin via Boost < > boost@lists.boost.org> wrote: > > > > > > > > > Michel Morin wrote: > > > > > > As a baseline, I'd suggest running the dectest (for decimal32, 64, > 128) at https://speleotrove.com/decimal/ > > > > > > > > decTest also indicates which status flags are expected to be raised, > > (though not all of them > > correspond to the IEEE 754 exception flags). I might just be missing > something, > > but it seems that Boost.Decimal doesn't support FP exceptions. There > > may not be enough > > use cases for FP exceptions, but their support is mandatory for IEEE 754. > > > > > Are there any plans regarding FP exceptions? > > > The reason there is no support for them at this time is it's a tradeoff > with the C++14 standard; I can't support std::feraiseexcept and constexpr > at the same time. The latter is significantly more useful than the former. > I believe they only times I worry about FP exceptions is when binding > Boost.Math into python because Pybind11 will turn FP exceptions into hard > errors. This also requires that the compilers and platforms support #pragma > STDC FENV_ACCESS ON. > Boost.Decimal has the following statement in the front matter of its documentation. Boost.Decimal is an implementation of IEEE 754 and ISO/IEC DTR 24733 Decimal Floating Point numbers. It looks like conscious decisions were made to depart from both IEEE 754 and ISO/IEC DTR 24733 where the full conformance is deemed impractical. This decision seems the right thing to do, but it *HAS TO* be reflected in the docs. Either list all the aspects where you depart from the two standards, or say up front that the library is just "inspired" by those standards. Regards, &rzej;