Am 03.02.2014 12:04, schrieb Michael Van Canneyt:


On Mon, 3 Feb 2014, Sven Barth wrote:

Am 03.02.2014 08:58, schrieb Michael Van Canneyt:
As for unary minus: this is the same as a binary minus in arithmatic expressions.

Not quite. Take this example:
=== output end ===

So unary minus (and also unary plus which is a valid operator as well!) binds stronger than multiplication.

Then that is an anomaly introduced by operator overloading.

In math, -2^2 = -4
Yes and the same is true in FPC with operator overloading. If you add a ** operator overload (which uses Trunc(Power(aLeft.i, aRight.i)) ) and have this expression: -t1 ** t2 with t1.i = 2 and t2.i = 2 the result will be -4 as well.

Please keep in mind that -2^2 is (-2) * (-2).

Regards,
Sven
_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel

Reply via email to