* LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_BE_BE
* LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_LE_BE
* LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_BE_LE
+ * LONG_DOUBLE_IS_VAX_H_FLOAT
* LONG_DOUBLE_IS_UNKNOWN_FORMAT
* It is only defined if the system supports long doubles.
*/
+/* LONG_DOUBLE_STYLE_IEEE:
+ * This symbol, if defined, indicates that the long double
+ * is any of the IEEE 754 style long doubles:
+ * LONG_DOUBLE_STYLE_IEEE_STD, LONG_DOUBLE_STYLE_IEEE_EXTENDED,
+ * LONG_DOUBLE_STYLE_IEEE_DOUBLEDOUBLE.
+ */
+/* LONG_DOUBLE_STYLE_IEEE_DOUBLEDOUBLE:
+ * This symbol, if defined, indicates that the long double is
+ * the 128-bit double-double.
+ */
+/* LONG_DOUBLE_STYLE_IEEE_EXTENDED:
+ * This symbol, if defined, indicates that the long double is
+ * the 80-bit IEEE 754. Note that despite the 'extended' this
+ * is less than the 'std', since this is an extension of
+ * the double precision.
+ */
+/* LONG_DOUBLE_STYLE_IEEE_STD:
+ * This symbol, if defined, indicates that the long double is
+ * the 128-bit IEEE 754.
+ */
+/* LONG_DOUBLE_STYLE_VAX:
+ * This symbol, if defined, indicates that the long double is
+ * the 128-bit VAX format H.
+ */
#$d_ldexpl HAS_LDEXPL /**/
#$d_longdbl HAS_LONG_DOUBLE /**/
#ifdef HAS_LONG_DOUBLE
#define LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_BE_BE 6
#define LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_LE_BE 7
#define LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_BE_LE 8
+#define LONG_DOUBLE_IS_VAX_H_FLOAT 9
#define LONG_DOUBLE_IS_UNKNOWN_FORMAT -1
#define LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_LITTLE_ENDIAN LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_LE_LE /* back-compat */
#define LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_BIG_ENDIAN LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_BE_BE /* back-compat */
+#$d_long_double_style_ieee LONG_DOUBLE_STYLE_IEEE
+#$d_long_double_style_ieee_doubledouble LONG_DOUBLE_STYLE_IEEE_DOUBLEDOUBLE
+#$d_long_double_style_ieee_extended LONG_DOUBLE_STYLE_IEEE_EXTENDED
+#$d_long_double_style_ieee_std LONG_DOUBLE_STYLE_IEEE_STD
+#$d_long_double_style_vax LONG_DOUBLE_STYLE_VAX
#endif
/* HAS_LONG_LONG:
*/
#$d_futimes HAS_FUTIMES /**/
+/* HAS_GAI_STRERROR:
+ * This symbol, if defined, indicates that the gai_strerror routine
+ * is available to translate error codes returned by getaddrinfo()
+ * into human readable strings.
+ */
+#$d_gai_strerror HAS_GAI_STRERROR /**/
+
/* HAS_GETADDRINFO:
* This symbol, if defined, indicates that the getaddrinfo() function
* is available for use.
* This symbol, if defined, indicates that the querylocale routine is
* available to return the name of the locale for a category mask.
*/
+/* I_XLOCALE:
+ * This symbol, if defined, indicates to the C program that it should
+ * include <xlocale.h> to get uselocale() and its friends.
+ */
#$d_newlocale HAS_NEWLOCALE /**/
#$d_freelocale HAS_FREELOCALE /**/
#$d_uselocale HAS_USELOCALE /**/
#$d_querylocale HAS_QUERYLOCALE /**/
+#$i_xlocale I_XLOCALE /**/
/* HAS_NEXTAFTER:
* This symbol, if defined, indicates that the nextafter routine is
*/
#$d_writev HAS_WRITEV /**/
+/* DEFAULT_INC_EXCLUDES_DOT:
+ * This symbol, if defined, removes the legacy default behavior of
+ * including '.' at the end of @INC.
+ */
+#$default_inc_excludes_dot DEFAULT_INC_EXCLUDES_DOT /**/
+
/* USE_DYNAMIC_LOADING:
* This symbol, if defined, indicates that dynamic loading of
* some sort is available.
* DOUBLE_IS_IEEE_754_128_BIT_BIG_ENDIAN
* DOUBLE_IS_IEEE_754_64_BIT_MIXED_ENDIAN_LE_BE
* DOUBLE_IS_IEEE_754_64_BIT_MIXED_ENDIAN_BE_LE
+ * DOUBLE_IS_VAX_F_FLOAT
+ * DOUBLE_IS_VAX_D_FLOAT
+ * DOUBLE_IS_VAX_G_FLOAT
+ * DOUBLE_IS_IBM_SINGLE_32_BIT
+ * DOUBLE_IS_IBM_DOUBLE_64_BIT
+ * DOUBLE_IS_CRAY_SINGLE_64_BIT
* DOUBLE_IS_UNKNOWN_FORMAT
*/
+/* DOUBLE_HAS_INF:
+ * This symbol, if defined, indicates that the double has
+ * the infinity.
+ */
+/* DOUBLE_HAS_NAN:
+ * This symbol, if defined, indicates that the double has
+ * the not-a-number.
+ */
+/* DOUBLE_HAS_NEGATIVE_ZERO:
+ * This symbol, if defined, indicates that the double has
+ * the negative_zero.
+ */
+/* DOUBLE_HAS_SUBNORMALS:
+ * This symbol, if defined, indicates that the double has
+ * the subnormals (denormals).
+ */
+/* DOUBLE_STYLE_CRAY:
+ * This symbol, if defined, indicates that the double is
+ * the 64-bit CRAY mainframe format.
+ */
+/* DOUBLE_STYLE_IBM:
+ * This symbol, if defined, indicates that the double is
+ * the 64-bit IBM mainframe format.
+ */
+/* DOUBLE_STYLE_IEEE:
+ * This symbol, if defined, indicates that the double is
+ * the 64-bit IEEE 754.
+ */
+/* DOUBLE_STYLE_VAX:
+ * This symbol, if defined, indicates that the double is
+ * the 64-bit VAX format D or G.
+ */
#define DOUBLEKIND $doublekind /**/
#define DOUBLE_IS_IEEE_754_32_BIT_LITTLE_ENDIAN 1
#define DOUBLE_IS_IEEE_754_32_BIT_BIG_ENDIAN 2
#define DOUBLE_IS_IEEE_754_128_BIT_BIG_ENDIAN 6
#define DOUBLE_IS_IEEE_754_64_BIT_MIXED_ENDIAN_LE_BE 7
#define DOUBLE_IS_IEEE_754_64_BIT_MIXED_ENDIAN_BE_LE 8
+#define DOUBLE_IS_VAX_F_FLOAT 9
+#define DOUBLE_IS_VAX_D_FLOAT 10
+#define DOUBLE_IS_VAX_G_FLOAT 11
+#define DOUBLE_IS_IBM_SINGLE_32_BIT 12
+#define DOUBLE_IS_IBM_DOUBLE_64_BIT 13
+#define DOUBLE_IS_CRAY_SINGLE_64_BIT 14
#define DOUBLE_IS_UNKNOWN_FORMAT -1
#$d_PRIfldbl PERL_PRIfldbl $sPRIfldbl /**/
#$d_PRIgldbl PERL_PRIgldbl $sPRIgldbl /**/
#$d_PRIeldbl PERL_PRIeldbl $sPRIeldbl /**/
#$d_SCNfldbl PERL_SCNfldbl $sSCNfldbl /**/
+#$d_double_has_inf DOUBLE_HAS_INF
+#$d_double_has_nan DOUBLE_HAS_NAN
+#$d_double_has_negative_zero DOUBLE_HAS_NEGATIVE_ZERO
+#$d_double_has_subnormals DOUBLE_HAS_SUBNORMALS
+#$d_double_style_cray DOUBLE_STYLE_CRAY
+#$d_double_style_ibm DOUBLE_STYLE_IBM
+#$d_double_style_ieee DOUBLE_STYLE_IEEE
+#$d_double_style_vax DOUBLE_STYLE_VAX
/* DOUBLEMANTBITS:
* This symbol, if defined, tells how many mantissa bits