These macros check for particular C types in sys/types.h, stdlib.h, stdint.h, inttypes.h and others, if they exist.
The Gnulib stdint module is an alternate way to define many of
these symbols; it is useful if you prefer your code to assume a
C99-or-better environment. See Gnulib.
Define
GETGROUPS_Tto be whichever ofgid_torintis the base type of the array argument togetgroups.This macro caches the base type in the
ac_cv_type_getgroupsvariable.
If stdint.h or inttypes.h does not define the type
int8_t, defineint8_tto a signed integer type that is exactly 8 bits wide and that uses two's complement representation, if such a type exists. If you are worried about porting to hosts that lack such a type, you can use the results of this macro in C89-or-later code as follows:#if HAVE_STDINT_H # include <stdint.h> #endif #if defined INT8_MAX || defined int8_t code using int8_t #else complicated alternative using >8-bit 'signed char' #endifThis macro caches the type in the
ac_cv_c_int8_tvariable.
If stdint.h or inttypes.h defines the type
intmax_t, defineHAVE_INTMAX_T. Otherwise, defineintmax_tto the widest signed integer type.
If stdint.h or inttypes.h defines the type
intptr_t, defineHAVE_INTPTR_T. Otherwise, defineintptr_tto a signed integer type wide enough to hold a pointer, if such a type exists.
If the C compiler supports a working
long doubletype, defineHAVE_LONG_DOUBLE. Thelong doubletype might have the same range and precision asdouble.This macro caches its result in the
ac_cv_type_long_doublevariable.This macro is obsolescent, as current C compilers support
long double. New programs need not use this macro.
If the C compiler supports a working
long doubletype with more range or precision than thedoubletype, defineHAVE_LONG_DOUBLE_WIDER.This macro caches its result in the
ac_cv_type_long_double_widervariable.
If the C compiler supports a working
long long inttype, defineHAVE_LONG_LONG_INT. However, this test does not testlong long intvalues in preprocessor#ifexpressions, because too many compilers mishandle such expressions. See Preprocessor Arithmetic.This macro caches its result in the
ac_cv_type_long_long_intvariable.
Define
HAVE_MBSTATE_Tif<wchar.h>declares thembstate_ttype. Also, definembstate_tto be a type if<wchar.h>does not declare it.This macro caches its result in the
ac_cv_type_mbstate_tvariable.
Define
mode_tto a suitable type, if standard headers do not define it.This macro caches its result in the
ac_cv_type_mode_tvariable.
Define
off_tto a suitable type, if standard headers do not define it.This macro caches its result in the
ac_cv_type_off_tvariable.
Define
pid_tto a suitable type, if standard headers do not define it.This macro caches its result in the
ac_cv_type_pid_tvariable.
Define
size_tto a suitable type, if standard headers do not define it.This macro caches its result in the
ac_cv_type_size_tvariable.
Define
ssize_tto a suitable type, if standard headers do not define it.This macro caches its result in the
ac_cv_type_ssize_tvariable.
Define
uid_tandgid_tto suitable types, if standard headers do not define them.This macro caches its result in the
ac_cv_type_uid_tvariable.
If stdint.h or inttypes.h does not define the type
uint8_t, defineuint8_tto an unsigned integer type that is exactly 8 bits wide, if such a type exists. This is likeAC_TYPE_INT8_T, except for unsigned integers.
If stdint.h or inttypes.h defines the type
uintmax_t, defineHAVE_UINTMAX_T. Otherwise, defineuintmax_tto the widest unsigned integer type.
If stdint.h or inttypes.h defines the type
uintptr_t, defineHAVE_UINTPTR_T. Otherwise, defineuintptr_tto an unsigned integer type wide enough to hold a pointer, if such a type exists.
If the C compiler supports a working
unsigned long long inttype, defineHAVE_UNSIGNED_LONG_LONG_INT. However, this test does not testunsigned long long intvalues in preprocessor#ifexpressions, because too many compilers mishandle such expressions. See Preprocessor Arithmetic.This macro caches its result in the
ac_cv_type_unsigned_long_long_intvariable.