abs and minimum values
Imperatorn
johan_forsberg_86 at hotmail.com
Sun Oct 31 10:32:50 UTC 2021
On Sunday, 31 October 2021 at 10:12:49 UTC, Siarhei Siamashka
wrote:
> On Sunday, 31 October 2021 at 05:04:33 UTC, Dom DiSc wrote:
>> On Friday, 29 October 2021 at 14:20:09 UTC, Ali Çehreli wrote:
>>> [...]
>>
>> This should be no surprise. You need to know what the
>> resulting type of int + uint should be. And it is ...... uint!
>> which is one of the stupit integer-promotion rules inherited
>> from C.
>
> Then let's change the example to:
>
> int b = -4;
> writeln(-abs(b));
>
> What would one normally expect to be printed here? Should the
> unary minus operator also do some kind of implicit "unsigned ->
> signed" type change magic to accommodate this modified version
> of the abs function and make it behave in a non-surprising way?
What I would like is for it to mirror math.
More information about the Digitalmars-d-learn
mailing list