And is there a "autoconf-lint" to check for using broken names, like
"ac_cv_sizeof_long_long_unsigned_int" instead of whatever is preferred?

I prefer ac_cv_sizeof_long_long_unsigned_int because it is my nature
to be pedantic and it sounds bigger. Is that bad?

Well, it kind of begs the question: if ac_sizeof_long_long_int !=
ac_sizeof_long_long_unsigned_int, then what happens when you assign a
LONGLONG_MAX to a signed long long, and then copy that into an unsigned
long long, or vice versa...

These same tests can test for any type from a header file. It is
pretty difficult to "optimize" them.

Well, I think there is a pretty common core set that takes care of 99%
of all cross compilation:

char
short
int
long
long long
double
char/void pointer
size_t
offset_t
ptrdiff_t
time_t

If <stdint.h> and <inttypes.h> were available everywhere then much of
this gobbly gook could go away. Maybe in another 10 years or so that
will be the case.

Not as long as some ANSI or ISO group is in charge of it. IEEE almost
got it right, but not quite. Then again, not everyone is POSIX, either.