Fix/prohibit pointer arithmetic on incomplete types

This doesn't compile now:
struct s *p; // struct s hasn't been declared before
p + 1;
p - 1;
p++;
p--;
++p;
--p;
p += 1;
p -= 1;
p - p;

Also update the binaries.

Note: it gets harder to add more code into the 64K code segment of the
16-bit version...