MFC r356723-r356725, r357649, r357652: diff(1) catch-up
r356723:
mkstemp returns -1
r356724:
asprintf returns -1, not an arbitrary value < 0. Also upon error the
(very sloppy specification) leaves an undefined value in *ret, so it is
wrong to inspect it, the error condition is enough.
r356725:
When system calls indicate an error they return -1, not some arbitrary
value < 0. errno is only updated in this case.
r357649:
Update diff(1) TODO removing what has been implemented
r357652:
Fix most of the style warnings