in reply to When 1e-298L != 1e-298L
unpack "b64", pack "D", 1e-298;
I suspect - but cannot verify as MSC maps long double to double -- that (a part of) the problem is the way you are inspecting the values.
On intel, gcc maps long double to an 80-bit floating point number -- though it may store it in either 12- or 16-bytes for alignment -- and you are only inspecting 64-bits of that 80-bit value.
|
|---|