I started writing this as a SO question, but I think it's better suited here. While I'm happy for a simple answer I'm also fond of the "Teach a Man to Fish" philosophy so I'm happy for people to point me to documentation.
Is floating-point arithmetic fully locked down by the standard?
In other words, suppose I have a fully compliant c++ program compiled with a fully compliant compiler that performs every possible combination of floating point operation. Will such a program perform identically on any machine with the same data model, regardless of which compliant compiler I use?
Where can I learn more about floating point arithmetic as defined by the C++ standard (I don't have a copy)?
NAN) is conformant to the letter (but not the spirit) of the C++11 standard.