This is quite likely and the most logical conclusion in my experience. I remember way back when, while still programming on main frames, that some compilers would allow both positive and negative zeros. At least until they were later modified in future releases to having only one possible signed value for a zero.
The positive and negative zeros are generated by the floating point hardware. They are required to be there to be compatible with the current standard for floating point. I always thought it was just an artifact that made designing the floating point hardware simpler. Apparently, they are useful in rounding and limits. There is a very good Wikipedia page on this at: http://en.wikipedia.org/wiki/Negative_zero This almost never matters because both flavors of zero give the same answer. The one case that does matter is comparing a floating point number to zero. Some compilers add extra code you can't see to make sure both zeros compare and some don't. This is yet one more challenge in trying to emulate the original DOS FractInt. -- Mike Frazier www.fracton.org