Pointer comparators and difference match the C standard.

Fixed two issues with pointer operations.
C11 6.5.6.9: Ptr subtraction have type ptrdiff_t.
C11 6.5.8.6, 6.5.9.3: Ptr comparisons have type int.
ptrdiff_t is actually long (not long long) in x86-64, no?