macros that index into arrays. This allows the compiler to
catch use of char, instead of unsigned char, arguments to
those functions. gcc uses -Wchar-subscripts, which is enabled
with the -Wall that we use by default. Thanks to Tom Lane for
suggesting this approach.
This feature can be enabled by undef'ing NDEBUG in config.h.
configure --enable-debug does that. We can now use the same
mechanism to enable and disable assert(3), too.