cbpporter Messages: 1401 Registered: September 2007
Ultimate Contributor
I'm working on a library that tries to do a lot for things, including float work.
I real Maths work, where you do more than 1.0 + 2.0, you often encounter large numbers.
I noticed that U++ can't handle the extremes at all, both by debugging the float values and by using CParser extensively. I looked over CParser code extensively and have not yet found the problem. Most if not all the float to string bits form Core have this problem.
Even something as simple as:
double d = 1.79769e+302;
printf("%e\n", d); // good
Cout() << d << "\n"; // wrong
Is is wrong at it gets worse as worse as you go up to e303 and up to e308.
I am currently investigating this, since U++ problems with "atof" are also my libraries problems by inheritance.
PS: My official release day was planned for Wednesday, but it will probably be moved back to Friday.
Why do such weird problems only happen before release day?