> On 25 May 2020, at 22:57, Riccardo Mottola <riccardo.mott...@libero.it> wrote:
> Looking up on the internet, I found the explanation is that the literal is
> only the number part without signed, regarless if it is a signed or unsigned
> decimal. Then the - operator is performed. For this reason it is usually
> written as (-2147483647 -1) in the limits header files.
> With that explanation, it is promoted to the "unsinged" type and then the "-"
> operation fails and underflows.
>
> For that reason I propose to change the lower bounds check to an equivalent
> easy to read
> if (big > 2147483647 || big + 2147483648 < 0
Great ... I copied that t NSPortCoder.m