"#ifndef QUOTEARG_H_". Include <stddef.h>, for size_t,
so that we can be included first.
(PARAMS): Remove; we now assume C89 or later. All uses removed.
No need to include stddef.h or sys/types.h any more.
Surround local include files with "", not "<>".
Assume HAVE_LIMITS_H unconditionally, as we assume C89.
Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
(HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
(mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
(ISPRINT): Remove; no longer needed now that we assume C89.
(clone_quoting_options, quotearg_buffer, quotearg_n_options):
Preserve errno.
(quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
quotearg_char): Use SIZE_MAX rather than
(size_t) -1 when we are talking about "infinity".
(quotearg_buffer_restyled): Fix bug when quoting trigraphs.
Do not include <config.h> or <sys/types.h>.
Include <stddef.h> instead, since it's all we need for size_t.
(PARAMS): Remove. All uses removed.
(ARRAY_CARDINALITY): Do not bother to #undef.
(ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
Remove unnecessary parentheses.
(ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
Insert necessary parentheses.
(ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
(ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
Include config.h here, not in argmatch.h.
Include stdlib.h, for EXIT_FAILURE.
Always include <string.h>, since we assume C89.
(EXIT_FAILURE): Remove pre-C89 bug workaround.
(STATIC): Define to be empty (_LIBC) or `static' (otherwise).
(__mon_yday): Declare with the STATIC attribute.
(__mktime_internal): Likewise.
Based on a report from Greg Schafer.