Safe Float (boost::safe_numerics<float>)
by Damian Vicino for Boost C++ Libraries
Arithmetic operations in C++ are NOT guaranteed to yield a correct mathematical result. For instance, the overflow an addition operation may produce an infinite value. This project proposes implementing a drop-in replacement for float and double which guarantee that, when used in expressions in a C++ program, no incorrect arithmetic results will be produced without the developer awareness. The project intents to detect some issues at compile time, but some require to be detected at runtime.