This requires newer metaconfig units that also rely on C89 <limits.h>.
i_inttypes=''
i_langinfo=''
i_libutil=''
-i_limits=''
i_locale=''
i_machcthr=''
i_malloc=''
set cuserid d_cuserid
eval $inlibc
-: see if this is a limits.h system
-set limits.h i_limits
-eval $inhdr
-
: See if number of significant digits in a double precision number is known
echo " "
$cat >dbl_dig.c <<EOM
-#$i_limits I_LIMITS
#$i_float I_FLOAT
-#ifdef I_LIMITS
#include <limits.h>
-#endif
#ifdef I_FLOAT
#include <float.h>
#endif
: See if number of significant digits in a double precision number is known
echo " "
$cat >ldbl_dig.c <<EOM
-#$i_limits I_LIMITS
#$i_float I_FLOAT
-#ifdef I_LIMITS
#include <limits.h>
-#endif
#ifdef I_FLOAT
#include <float.h>
#endif
i_inttypes='$i_inttypes'
i_langinfo='$i_langinfo'
i_libutil='$i_libutil'
-i_limits='$i_limits'
i_locale='$i_locale'
i_machcthr='$i_machcthr'
i_malloc='$i_malloc'
i_inttypes='define'
i_langinfo='define'
i_libutil='undef'
-i_limits='define'
i_locale='define'
i_machcthr='undef'
i_malloc='define'
i_inttypes='define'
i_langinfo='define'
i_libutil='undef'
-i_limits='define'
i_locale='define'
i_machcthr='undef'
i_malloc='define'
i_inttypes='undef'
i_langinfo='undef'
i_libutil='undef'
-i_limits='define'
i_locale='define'
i_machcthr='undef'
i_malloc='define'
*/
#define I_FLOAT /**/
-/* I_LIMITS:
- * This symbol, if defined, indicates to the C program that it should
- * include <limits.h> to get definition of symbols like WORD_BIT or
- * LONG_MAX, i.e. machine dependant limitations.
- */
-#define I_LIMITS /**/
-
/* I_LOCALE:
* This symbol, if defined, indicates to the C program that it should
* include <locale.h>.
This variable conditionally defines the I_LIBUTIL symbol, and indicates
whether a C program should include <libutil.h>.
-i_limits (i_limits.U):
- This variable conditionally defines the I_LIMITS symbol, and indicates
- whether a C program may include <limits.h> to get symbols like WORD_BIT
- and friends.
-
i_locale (i_locale.U):
This variable conditionally defines the I_LOCALE symbol,
and indicates whether a C program should include <locale.h>.
i_inttypes='define'
i_langinfo='define'
i_libutil='undef'
-i_limits='define'
i_locale='define'
i_machcthr='undef'
i_malloc='undef'
*/
#define I_GDBM /**/
-/* I_LIMITS:
- * This symbol, if defined, indicates to the C program that it should
- * include <limits.h> to get definition of symbols like WORD_BIT or
- * LONG_MAX, i.e. machine dependant limitations.
- */
-#define I_LIMITS /**/
-
/* I_LOCALE:
* This symbol, if defined, indicates to the C program that it should
* include <locale.h>.
#include <stdlib.h>
#include <stddef.h>
#include <stdarg.h>
-#ifdef I_LIMITS
#include <limits.h>
-#endif
#ifdef I_DIRENT
#include <dirent.h>
#endif
*/
#$d_cuserid HAS_CUSERID /**/
-/* HAS_DBL_DIG:
- * This symbol, if defined, indicates that this system's <float.h>
- * or <limits.h> defines the symbol DBL_DIG, which is the number
- * of significant digits in a double precision number. If this
- * symbol is not defined, a guess of 15 is usually pretty good.
- */
-#$d_dbl_dig HAS_DBL_DIG /**/
-
/* HAS_DIFFTIME:
* This symbol, if defined, indicates that the difftime routine is
* available.
*/
#$i_gdbm I_GDBM /**/
-/* I_LIMITS:
- * This symbol, if defined, indicates to the C program that it should
- * include <limits.h> to get definition of symbols like WORD_BIT or
- * LONG_MAX, i.e. machine dependant limitations.
- */
-#$i_limits I_LIMITS /**/
-
/* I_LOCALE:
* This symbol, if defined, indicates to the C program that it should
* include <locale.h>.
#define CSH "$full_csh" /**/
#endif
+/* HAS_DBL_DIG:
+ * This symbol, if defined, indicates that this system's <float.h>
+ * or <limits.h> defines the symbol DBL_DIG, which is the number
+ * of significant digits in a double precision number. If this
+ * symbol is not defined, a guess of 15 is usually pretty good.
+ */
+#$d_dbl_dig HAS_DBL_DIG /**/
+
/* HAS_DLADDR:
* This symbol, if defined, indicates that the dladdr() routine is
* available to query dynamic linker information for an address.
$ WC "i_inttypes='" + i_inttypes + "'"
$ WC "i_langinfo='" + i_langinfo + "'"
$ WC "i_libutil='" + i_libutil + "'"
-$ WC "i_limits='define'"
$ WC "i_locale='" + i_locale + "'"
$ WC "i_machcthr='undef'"
$ WC "i_machcthreads='undef'"
# endif
#endif
-#ifdef I_LIMITS
#include <limits.h>
-#endif
#ifndef ARG_MAX
# ifdef _SC_ARG_MAX
#include <fenv.h>
#endif
#endif
-#ifdef I_LIMITS
#include <limits.h>
-#endif
#include <locale.h>
#include <math.h>
#ifdef I_PWD
a given precision of printing can be done with a double instead of
a long double - Allen).
*/
-#ifdef I_LIMITS
#include <limits.h>
-#endif
#ifdef I_FLOAT
#include <float.h>
#endif
default value for printing floating point numbers in Gconvert.
(see config.h)
*/
-# ifdef I_LIMITS
-# include <limits.h>
-# endif
+# include <limits.h>
# ifdef I_FLOAT
# include <float.h>
# endif
* necessary to do so. - Allen <allens@cpan.org>
*/
-#ifdef I_LIMITS
-# include <limits.h>
-#endif
+#include <limits.h>
#ifdef I_VALUES
-# if !(defined(DBL_MIN) && defined(DBL_MAX) && defined(I_LIMITS))
+# if !defined(DBL_MIN) || !defined(DBL_MAX)
# include <values.h>
# if defined(MAXDOUBLE) && !defined(DBL_MAX)
# define DBL_MAX MAXDOUBLE
* define PERL ULONG_MAX 4294967295L
*/
-#ifdef I_LIMITS /* Needed for cast_xxx() functions below. */
-# include <limits.h>
-#endif
+#include <limits.h> /* Needed for cast_xxx() functions below. */
/* Included values.h above if necessary; still including limits.h down here,
* despite doing above, because math.h might have overridden... XXX - Allen */
*/
#define I_FLOAT /**/
-/* I_LIMITS:
- * This symbol, if defined, indicates to the C program that it should
- * include <limits.h> to get definition of symbols like WORD_BIT or
- * LONG_MAX, i.e. machine dependant limitations.
- */
-#define I_LIMITS /**/
-
/* I_LOCALE:
* This symbol, if defined, indicates to the C program that it should
* include <locale.h>.
*/
#define I_FLOAT /**/
-/* I_LIMITS:
- * This symbol, if defined, indicates to the C program that it should
- * include <limits.h> to get definition of symbols like WORD_BIT or
- * LONG_MAX, i.e. machine dependant limitations.
- */
-#define I_LIMITS /**/
-
/* I_LOCALE:
* This symbol, if defined, indicates to the C program that it should
* include <locale.h>.
i_inttypes='define'
i_langinfo='undef'
i_libutil='undef'
-i_limits='define'
i_locale='define'
i_machcthr='undef'
i_malloc='undef'
i_inttypes='undef'
i_langinfo='undef'
i_libutil='undef'
-i_limits='define'
i_locale='define'
i_machcthr='undef'
i_malloc='undef'
*/
/*#define HAS_CUSERID / **/
-/* HAS_DBL_DIG:
- * This symbol, if defined, indicates that this system's <float.h>
- * or <limits.h> defines the symbol DBL_DIG, which is the number
- * of significant digits in a double precision number. If this
- * symbol is not defined, a guess of 15 is usually pretty good.
- */
-/*#define HAS_DBL_DIG / **/
-
/* HAS_DIFFTIME:
* This symbol, if defined, indicates that the difftime routine is
* available.
*/
/*#define I_GDBM / **/
-/* I_LIMITS:
- * This symbol, if defined, indicates to the C program that it should
- * include <limits.h> to get definition of symbols like WORD_BIT or
- * LONG_MAX, i.e. machine dependant limitations.
- */
-/*#define I_LIMITS / **/
-
/* I_LOCALE:
* This symbol, if defined, indicates to the C program that it should
* include <locale.h>.
#define CSH "" /**/
#endif
+/* HAS_DBL_DIG:
+ * This symbol, if defined, indicates that this system's <float.h>
+ * or <limits.h> defines the symbol DBL_DIG, which is the number
+ * of significant digits in a double precision number. If this
+ * symbol is not defined, a guess of 15 is usually pretty good.
+ */
+/*#define HAS_DBL_DIG / **/
+
/* HAS_DLADDR:
* This symbol, if defined, indicates that the dladdr() routine is
* available to query dynamic linker information for an address.
#endif
/* Generated from:
- * ef59adc025306aceebb47a7515e514357b77e44a359af4bc0bf5d52082e41a26 config_h.SH
- * d40282b246b20f1f20a5febcae42b3ac44234c5a1c1a2df89e5ac77a54830cca uconfig.sh
+ * 82aa50fd961b36e3bc3ab644715698645fed961055bc70f4ad44ad88f51c25b0 config_h.SH
+ * 37da610aa9e38f4374ef9ce47cd7cd08240a33511faa8ee028f9e33ee76587ca uconfig.sh
* ex: set ro: */
i_inttypes='undef'
i_langinfo='undef'
i_libutil='undef'
-i_limits='undef'
i_locale='undef'
i_machcthr='undef'
i_malloc='undef'
i_inttypes='undef'
i_langinfo='undef'
i_libutil='undef'
-i_limits='undef'
i_locale='undef'
i_machcthr='undef'
i_malloc='undef'
i_inttypes='undef'
i_langinfo='undef'
i_libutil='undef'
-i_limits='define'
i_locale='define'
i_machcthr='undef'
i_malloc='define'
i_inttypes='undef'
i_langinfo='undef'
i_libutil='undef'
-i_limits='define'
i_locale='define'
i_machcthr='undef'
i_malloc='define'
i_inttypes='undef'
i_langinfo='undef'
i_libutil='undef'
-i_limits='define'
i_locale='define'
i_machcthr='undef'
i_malloc='define'
*/
#define I_FLOAT /**/
-/* I_LIMITS:
- * This symbol, if defined, indicates to the C program that it should
- * include <limits.h> to get definition of symbols like WORD_BIT or
- * LONG_MAX, i.e. machine dependant limitations.
- */
-#define I_LIMITS /**/
-
/* I_LOCALE:
* This symbol, if defined, indicates to the C program that it should
* include <locale.h>.
*/
/*#define I_GDBM / **/
-/* I_LIMITS:
- * This symbol, if defined, indicates to the C program that it should
- * include <limits.h> to get definition of symbols like WORD_BIT or
- * LONG_MAX, i.e. machine dependant limitations.
- */
-#define I_LIMITS /**/
-
/* I_LOCALE:
* This symbol, if defined, indicates to the C program that it should
* include <locale.h>.
*/
/*#define I_GDBM / **/
-/* I_LIMITS:
- * This symbol, if defined, indicates to the C program that it should
- * include <limits.h> to get definition of symbols like WORD_BIT or
- * LONG_MAX, i.e. machine dependant limitations.
- */
-#define I_LIMITS /**/
-
/* I_LOCALE:
* This symbol, if defined, indicates to the C program that it should
* include <locale.h>.