Hi White,
the bug sits inside your PC, it's the big chip with the heatsink and fan on top
.
But seriously, it's indeed the CPU. Digital processing units and floating point numbers are no good friends.
They lead to headache for developers more than once.
Specifically for LibreCAD, which is based on lots of mathematics, this is a balancing act between precision and tolerance.
I assume, that the digital representation of the endpoint is not exactly (x)0, (y)100 but something like (x)0, (y)99.9999999999999. This leads to an angel of not exactly 90° and at least to what you have observed.
The precision from Current Drawing Preferences are mainly for the coordinate box on the bottom left and maybe for output in the command history window. Obviously not used in the entity property window.
Of course, you are right, that -4.89859e-14 is not 0. But, -0.0000000000000489859 is nearly 0 in relation to line length of 100. And with the precision setting this value wouldn't change either, as this is the calculated value used internally. Only when printed, the value could be rounded to match the precision setting.
So this is a good and well documented observation. I wish all bug reports would have this quality, what is not true for our bug tracker. But I'm afraid, there is nothing we can do with reasonable efforts.
Armin
investing less than half an hour into Search function can save hours or days of waiting for a solution