On 14/01/2013 14:10, Jonas Maebe wrote:
That said, the compiler contains an optimization pass that tries to remove 64 bit widenings on 32 bit platforms in case it turns out they were not necessary. It will also catch the above example and the generated code will only contain a 32 bit operations. Semantically, the result of that expression remains 64 bit though.

So I am right about the 64 bits not needed.
And the hint is simply because the compiler (for keeping it simple) will first extend *all* mixed signed/unsigned to 64 bit (even if not needed in the end).
_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply via email to