MAKE: ask gnulikes to warn and be pedantic

It seems clang 3.4 thinks the codebase is in fantastic shape and gcc 4.9.0
has only minor niggles, which I will fix in a follow-up commit
fix uninitialized member warning

In DEBUG mode the expr member doesn't get properly initialized to NULL.
fix warnings about directive inside of macro's

On some platforms/compilers, sprintf is a macro. Putting macro directives
inside of a macro is unportable and gcc 4.9 warns about that.
fix signed vs. unsigned comparison warning

The in-memory table will luckily not even come close to the limits imposed
by ssize_t. If it ever reaches that, we've got bigger problems.