News for hackers. Stuff that matters.
Re:Essential C (2003) [pdf] by moonchild on Thursday September 03, 2020 @01:27AM (#24361014)
ssize_t should never be used.

It's not guaranteed to have a full negative range, only to be able to represent -1.

Use ptrdiff_t as a signed size type.

Re:Essential C (2003) [pdf] by AbacusAvenger on Thursday September 03, 2020 @04:02AM (#24361798)
Out of curiosity, do you know of any implementations where ssize_t has that kind of range limitation?
Re:Essential C (2003) [pdf] by moonchild on Thursday September 03, 2020 @04:13AM (#24361848)
Nope. But I do know of at least one implementation where it's not present at all—msvcrt. ssize_t isn't specified in the c standard, it's part of posix. ptrdiff_t is standard.