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.


With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.