On Wed, Jan 31, 2018 at 07:31:56PM +0100, zeljko via Lazarus wrote: > > Using binary floats, there are just too many values that can't be > > represented 100%, regardless of the length of the mantissa. > > https://en.wikipedia.org/wiki/Floating-point_arithmetic#Accuracy_problems > > Thanks Ralf, I know what is floating point arithmetic, but something is > changed between 3.0.2 and 3.0.4 and I want to know what it is.
It could be as simple as slightly different codegeneration that eliminates a temporary variable or adds it. The x87 CPU calculates with 80-bits, but storing it into a double variable (e.g. a local variable on the stack) will round it to 64-bit double. This can cause small precision fluctuations, and, as with all regular float comparison issues, it is something of all times and all compilers. -- _______________________________________________ Lazarus mailing list Lazarus@lists.lazarus-ide.org https://lists.lazarus-ide.org/listinfo/lazarus