Define HAS_QUAD on Win32 and introduce new value for QUADKIND
Steve Hay [Tue, 7 Oct 2008 12:18:11 +0000 (12:18 +0000)]
where appropriate.

This doesn't make much difference on Win32 because IVSIZE is still 4,
but access to the appropriate "quad" type is still useful, e.g. for
Y2038 support.

p4raw-id: //depot/perl@34470

win32/config.bc
win32/config.gc
win32/config.vc
win32/config.vc64
win32/config_H.bc
win32/config_H.gc
win32/config_H.vc
win32/config_H.vc64

index 4e7cd11..5d6dcd8 100644 (file)
@@ -351,7 +351,7 @@ d_pwgecos='undef'
 d_pwpasswd='undef'
 d_pwquota='undef'
 d_qgcvt='undef'
-d_quad='undef'
+d_quad='define'
 d_random_r='undef'
 d_readdir64_r='undef'
 d_readdir='define'
index 79f4d8e..f14d0b5 100644 (file)
@@ -351,7 +351,7 @@ d_pwgecos='undef'
 d_pwpasswd='undef'
 d_pwquota='undef'
 d_qgcvt='undef'
-d_quad='undef'
+d_quad='define'
 d_random_r='undef'
 d_readdir64_r='undef'
 d_readdir='define'
@@ -851,7 +851,7 @@ privlibexp='~INST_TOP~~INST_VER~\lib'
 procselfexe=''
 prototype='define'
 ptrsize='4'
-quadkind='5'
+quadkind='3'
 quadtype='long long'
 randbits='15'
 randfunc='rand'
index 6613b45..b273c5a 100644 (file)
@@ -351,7 +351,7 @@ d_pwgecos='undef'
 d_pwpasswd='undef'
 d_pwquota='undef'
 d_qgcvt='undef'
-d_quad='undef'
+d_quad='define'
 d_random_r='undef'
 d_readdir64_r='undef'
 d_readdir='define'
index 02b5ac9..e8c3f11 100644 (file)
@@ -851,7 +851,7 @@ privlibexp='~INST_TOP~~INST_VER~\lib'
 procselfexe=''
 prototype='define'
 ptrsize='8'
-quadkind='4'
+quadkind='5'
 quadtype='__int64'
 randbits='15'
 randfunc='rand'
index 9e15ff3..c47f414 100644 (file)
 /* HAS_QUAD:
  *     This symbol, if defined, tells that there's a 64-bit integer type,
  *     Quad_t, and its unsigned counterpar, Uquad_t. QUADKIND will be one
- *     of QUAD_IS_INT, QUAD_IS_LONG, QUAD_IS_LONG_LONG, or QUAD_IS_INT64_T.
+ *     of QUAD_IS_INT, QUAD_IS_LONG, QUAD_IS_LONG_LONG, QUAD_IS_INT64_T,
+ *     or QUAD_IS___INT64.
  */
-/*#define HAS_QUAD     /**/
+#define HAS_QUAD       /**/
 #ifdef HAS_QUAD
 #   define Quad_t __int64      /**/
 #   define Uquad_t unsigned __int64    /**/
 #   define QUAD_IS_LONG        2
 #   define QUAD_IS_LONG_LONG   3
 #   define QUAD_IS_INT64_T     4
+#   define QUAD_IS___INT64     5
 #endif
 
 /* OSNAME:
index df197cb..6cd5538 100644 (file)
 /* HAS_QUAD:
  *     This symbol, if defined, tells that there's a 64-bit integer type,
  *     Quad_t, and its unsigned counterpar, Uquad_t. QUADKIND will be one
- *     of QUAD_IS_INT, QUAD_IS_LONG, QUAD_IS_LONG_LONG, or QUAD_IS_INT64_T.
+ *     of QUAD_IS_INT, QUAD_IS_LONG, QUAD_IS_LONG_LONG, QUAD_IS_INT64_T,
+ *     or QUAD_IS___INT64.
  */
-/*#define HAS_QUAD     /**/
+#define HAS_QUAD       /**/
 #ifdef HAS_QUAD
 #   ifndef _MSC_VER
 #      define Quad_t long long /**/
 #      define Uquad_t unsigned long long       /**/
+#      define QUADKIND 3       /**/
 #   else
 #      define Quad_t __int64   /**/
 #      define Uquad_t unsigned __int64 /**/
+#      define QUADKIND 5       /**/
 #   endif
-#   define QUADKIND 5  /**/
 #   define QUAD_IS_INT 1
 #   define QUAD_IS_LONG        2
 #   define QUAD_IS_LONG_LONG   3
 #   define QUAD_IS_INT64_T     4
+#   define QUAD_IS___INT64     5
 #endif
 
 /* OSNAME:
index 53ef9e6..e43dcaf 100644 (file)
 /* HAS_QUAD:
  *     This symbol, if defined, tells that there's a 64-bit integer type,
  *     Quad_t, and its unsigned counterpar, Uquad_t. QUADKIND will be one
- *     of QUAD_IS_INT, QUAD_IS_LONG, QUAD_IS_LONG_LONG, or QUAD_IS_INT64_T.
+ *     of QUAD_IS_INT, QUAD_IS_LONG, QUAD_IS_LONG_LONG, QUAD_IS_INT64_T.
+ *     or QUAD_IS___INT64.
  */
-/*#define HAS_QUAD     /**/
+#define HAS_QUAD       /**/
 #ifdef HAS_QUAD
 #   ifndef __GNUC__
 #      define Quad_t __int64   /**/
 #      define Uquad_t unsigned __int64 /**/
+#      define QUADKIND 5       /**/
 #   else
 #      define Quad_t long long /**/
 #      define Uquad_t unsigned long long       /**/
+#      define QUADKIND 3       /**/
 #   endif
-#   define QUADKIND 5  /**/
 #   define QUAD_IS_INT 1
 #   define QUAD_IS_LONG        2
 #   define QUAD_IS_LONG_LONG   3
 #   define QUAD_IS_INT64_T     4
+#   define QUAD_IS___INT64     5
 #endif
 
 /* OSNAME:
index 699efc2..ac0f79e 100644 (file)
 /* HAS_QUAD:
  *     This symbol, if defined, tells that there's a 64-bit integer type,
  *     Quad_t, and its unsigned counterpar, Uquad_t. QUADKIND will be one
- *     of QUAD_IS_INT, QUAD_IS_LONG, QUAD_IS_LONG_LONG, or QUAD_IS_INT64_T.
+ *     of QUAD_IS_INT, QUAD_IS_LONG, QUAD_IS_LONG_LONG, QUAD_IS_INT64_T
+ *     or QUAD_IS___INT64.
  */
 #define HAS_QUAD       /**/
 #ifdef HAS_QUAD
 #   define Quad_t __int64      /**/
 #   define Uquad_t unsigned __int64    /**/
-#   define QUADKIND 4  /**/
+#   define QUADKIND 5  /**/
 #   define QUAD_IS_INT 1
 #   define QUAD_IS_LONG        2
 #   define QUAD_IS_LONG_LONG   3
 #   define QUAD_IS_INT64_T     4
+#   define QUAD_IS___INT64     5
 #endif
 
 /* OSNAME: