In perl.git, the branch blead has been updated

<http://perl5.git.perl.org/perl.git/commitdiff/925798f29c677c612a63a08a92ebb5f169e27b02?hp=43c6b706eae7899eff9414f3bbb9e5ef095a07fd>

- Log -----------------------------------------------------------------
commit 925798f29c677c612a63a08a92ebb5f169e27b02
Author: Steve Hay <steve.m....@googlemail.com>
Date:   Wed Aug 31 18:48:37 2011 +0100

    Preliminary cleanup of win32/config*.* prior to updating them fully
    
    - Set lseeksize/lseektype to 4/long in new gc64* files (see f7e8b52a89)
    - Add missing NULL parameter in new gc64* files (see e6a0bbf8b4)
    - Change new gc64* files to a minimal setup (see d64224560b and 17bdc11416)
    - Make the order of the __GNUC__ / _MSC_VER logic consistent
    - Add __GNUC__ magic to vc64 (since new gc64* files have _MSC_VER magic)
-----------------------------------------------------------------------

Summary of changes:
 win32/config.gc64      |    4 +-
 win32/config.gc64nox   |    4 +-
 win32/config_H.bc      |    4 +-
 win32/config_H.gc      |    9 ++--
 win32/config_H.gc64    |  103 +++++++++++++++++++++++-------------------------
 win32/config_H.gc64nox |  103 +++++++++++++++++++++++-------------------------
 win32/config_H.vc      |    9 ++--
 win32/config_H.vc64    |   71 ++++++++++++++++++++++++---------
 8 files changed, 164 insertions(+), 143 deletions(-)

diff --git a/win32/config.gc64 b/win32/config.gc64
index c883708..52185f0 100644
--- a/win32/config.gc64
+++ b/win32/config.gc64
@@ -783,8 +783,8 @@ longsize='4'
 lp=''
 lpr=''
 ls='dir'
-lseeksize='8'
-lseektype='long long'
+lseeksize='4'
+lseektype='long'
 mad='undef'
 madlyh=''
 madlyobj=''
diff --git a/win32/config.gc64nox b/win32/config.gc64nox
index 0fe7904..9a797a1 100644
--- a/win32/config.gc64nox
+++ b/win32/config.gc64nox
@@ -783,8 +783,8 @@ longsize='4'
 lp=''
 lpr=''
 ls='dir'
-lseeksize='8'
-lseektype='long long'
+lseeksize='4'
+lseektype='long'
 mad='undef'
 madlyh=''
 madlyobj=''
diff --git a/win32/config_H.bc b/win32/config_H.bc
index 75213d7..cbb8ae4 100644
--- a/win32/config_H.bc
+++ b/win32/config_H.bc
@@ -4573,8 +4573,8 @@
  *     This symbol contains the minimum value for the time_t offset that
  *     the system function localtime () accepts, and defaults to 0
  */
-#define GMTIME_MAX             2147483647      /**/
-#define GMTIME_MIN             0       /**/
+#define GMTIME_MAX     2147483647      /**/
+#define GMTIME_MIN     0       /**/
 #define LOCALTIME_MAX  2147483647      /**/
 #define LOCALTIME_MIN  0       /**/
 
diff --git a/win32/config_H.gc b/win32/config_H.gc
index fbf5808..bd18ffe 100644
--- a/win32/config_H.gc
+++ b/win32/config_H.gc
@@ -3128,12 +3128,11 @@
  *             static _inline      (older MSVC)
  *             static              (c89 compilers)
  */
-#ifdef _MSC_VER
-#  define HAS_STATIC_INLINE                            /**/
-#  define PERL_STATIC_INLINE static __inline   /**/
-#else /* gcc presumably */
-#  define HAS_STATIC_INLINE                            /**/
+#define HAS_STATIC_INLINE                              /**/
+#ifndef _MSC_VER
 #  define PERL_STATIC_INLINE static __inline__ /**/
+#else
+#  define PERL_STATIC_INLINE static __inline   /**/
 #endif
 
 /* USE_STDIO_PTR:
diff --git a/win32/config_H.gc64 b/win32/config_H.gc64
index 9cce9fb..e1ff5bc 100644
--- a/win32/config_H.gc64
+++ b/win32/config_H.gc64
@@ -916,14 +916,14 @@
  */
 #define HAS_QUAD       /**/
 #ifdef HAS_QUAD
-#   ifdef _MSC_VER
-#      define Quad_t __int64   /**/
-#      define Uquad_t unsigned __int64 /**/
-#      define QUADKIND 5       /**/
-#   else /* gcc presumably */
-#      define Quad_t long long /**/
-#      define Uquad_t unsigned long long       /**/
-#      define QUADKIND 3       /**/
+#   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 QUAD_IS_INT 1
 #   define QUAD_IS_LONG        2
@@ -967,7 +967,7 @@
  *     where library files may be held under a private library, for
  *     instance.
  */
-#define ARCHNAME "MSWin32-x64"         /**/
+#define ARCHNAME "MSWin32-x86"         /**/
 
 /* BIN:
  *     This symbol holds the path of the bin directory where the package will
@@ -1033,14 +1033,14 @@
  *     This symbol is intended to be used along with CPPRUN in the same manner
  *     symbol CPPMINUS is used with CPPSTDIN. It contains either "-" or "".
  */
-#ifdef _MSC_VER
-#  define CPPSTDIN "cppstdin"
-#  define CPPMINUS ""
-#  define CPPRUN "cl -nologo -E"
+#ifndef _MSC_VER
+#   define CPPSTDIN "x86_64-w64-mingw32-gcc -E"
+#   define CPPMINUS "-"
+#   define CPPRUN "x86_64-w64-mingw32-gcc -E"
 #else
-#  define CPPSTDIN "x86_64-w64-mingw32-gcc -E"
-#  define CPPMINUS "-"
-#  define CPPRUN "x86_64-w64-mingw32-gcc -E"
+#   define CPPSTDIN "cppstdin"
+#   define CPPMINUS ""
+#   define CPPRUN "cl -nologo -E"
 #endif
 #define CPPLAST ""
 
@@ -1809,11 +1809,11 @@
  */
 #define HAS_LONG_DOUBLE                /**/
 #ifdef HAS_LONG_DOUBLE
-#  ifdef _MSC_VER
-#    define LONG_DOUBLESIZE 8          /**/
-#  else
-#    define LONG_DOUBLESIZE 12         /**/
-#  endif
+#   ifndef _MSC_VER
+#      define LONG_DOUBLESIZE 12               /**/
+#   else
+#      define LONG_DOUBLESIZE 8                /**/
+#   endif
 #endif
 
 /* HAS_LONG_LONG:
@@ -1824,7 +1824,7 @@
  *     C preprocessor can make decisions based on it.  It is only
  *     defined if the system supports long long.
  */
-#ifdef __GNUC__
+#ifndef _MSC_VER
 #  define HAS_LONG_LONG                /**/
 #endif
 #ifdef HAS_LONG_LONG
@@ -2563,13 +2563,9 @@
 /* Off_t_size:
  *     This symbol holds the number of bytes used by the Off_t.
  */
-#ifdef _MSC_VER
-#  define Off_t __int64                /* <offset> type */
-#else
-#  define Off_t long long              /* <offset> type */
-#endif
-#define LSEEKSIZE 8            /* <offset> size */
-#define Off_t_size 8   /* <offset> size */
+#define Off_t long             /* <offset> type */
+#define LSEEKSIZE 4            /* <offset> size */
+#define Off_t_size 4   /* <offset> size */
 
 /* Free_t:
  *     This variable contains the return type of free().  It is usually
@@ -2648,7 +2644,7 @@
  *     in programs that are not prepared to deal with ~ expansion at run-time.
  */
 #define PRIVLIB "c:\\perl\\lib"                /**/
-#define PRIVLIB_EXP (win32_get_privlib(PERL_VERSION_STRING))   /**/
+#define PRIVLIB_EXP (win32_get_privlib(PERL_VERSION_STRING, NULL))     /**/
 
 /* CAN_PROTOTYPE:
  *     If defined, this macro indicates that the C compiler can handle
@@ -2764,7 +2760,7 @@
  *     be tacked onto this variable to generate a list of directories to 
search.
  */
 #define SITELIB "c:\\perl\\site\\lib"          /**/
-#define SITELIB_EXP (win32_get_sitelib(PERL_VERSION_STRING))   /**/
+#define SITELIB_EXP (win32_get_sitelib(PERL_VERSION_STRING, NULL))     /**/
 #define SITELIB_STEM ""                /**/
 
 /* Size_t_size:
@@ -3134,12 +3130,11 @@
  *             static _inline      (older MSVC)
  *             static              (c89 compilers)
  */
-#ifdef _MSC_VER
-#  define HAS_STATIC_INLINE                            /**/
-#  define PERL_STATIC_INLINE static __inline   /**/
-#else /* gcc presumably */
-#  define HAS_STATIC_INLINE                            /**/
+#define HAS_STATIC_INLINE                              /**/
+#ifndef _MSC_VER
 #  define PERL_STATIC_INLINE static __inline__ /**/
+#else
+#  define PERL_STATIC_INLINE static __inline   /**/
 #endif
 
 /* USE_STDIO_PTR:
@@ -3326,10 +3321,10 @@
  *     to get any typedef'ed information.
  *     We will pick a type such that sizeof(SSize_t) == sizeof(Size_t).
  */
-#ifdef _MSC_VER
-#  define SSize_t __int64       /* signed count of bytes */
+#ifndef _MSC_VER
+#      define SSize_t long long         /* signed count of bytes */
 #else
-#  define SSize_t long long     /* signed count of bytes */
+#      define SSize_t __int64   /* signed count of bytes */
 #endif
 
 /* EBCDIC:
@@ -4482,12 +4477,12 @@
  *     This symbol, if defined, indicates that a variable of type NVTYPE
  *     stores 0.0 in memory as all bits zero.
  */
-#ifdef _MSC_VER
-#  define      IVTYPE          __int64         /**/
-#  define      UVTYPE          unsigned __int64                /**/
+#ifndef _MSC_VER
+#      define  IVTYPE          long long               /**/
+#      define  UVTYPE          unsigned long long              /**/
 #else
-#  define      IVTYPE          long long               /**/
-#  define      UVTYPE          unsigned long long              /**/
+#      define  IVTYPE          __int64         /**/
+#      define  UVTYPE          unsigned __int64                /**/
 #endif
 #define        I8TYPE          char            /**/
 #define        U8TYPE          unsigned char           /**/
@@ -4496,13 +4491,13 @@
 #define        I32TYPE         long    /**/
 #define        U32TYPE         unsigned long   /**/
 #ifdef HAS_QUAD
-#  ifdef _MSC_VER
-#    define    I64TYPE         __int64 /**/
-#    define    U64TYPE         unsigned __int64        /**/
-#  else
-#    define    I64TYPE         long long       /**/
-#    define    U64TYPE         unsigned long long      /**/
-#  endif
+#   ifndef _MSC_VER
+#      define  I64TYPE         long long       /**/
+#      define  U64TYPE         unsigned long long      /**/
+#   else
+#      define  I64TYPE         __int64 /**/
+#      define  U64TYPE         unsigned __int64        /**/
+#   endif
 #endif
 #define        NVTYPE          double          /**/
 #define        IVSIZE          8               /**/
@@ -4672,7 +4667,7 @@
  *     should be used when available.
  */
 #ifndef USE_LARGE_FILES
-#define        USE_LARGE_FILES         /**/
+/*#define      USE_LARGE_FILES         / **/
 #endif
 
 /* USE_LONG_DOUBLE:
@@ -4696,7 +4691,7 @@
  *     be built to use multiplicity.
  */
 #ifndef MULTIPLICITY
-#define        MULTIPLICITY            /**/
+/*#define      MULTIPLICITY            / **/
 #endif
 
 /* USE_PERLIO:
@@ -4705,7 +4700,7 @@
  *     used in a fully backward compatible manner.
  */
 #ifndef USE_PERLIO
-#define        USE_PERLIO              /**/
+/*#define      USE_PERLIO              / **/
 #endif
 
 /* USE_SOCKS:
diff --git a/win32/config_H.gc64nox b/win32/config_H.gc64nox
index 89962a5..fc0a434 100644
--- a/win32/config_H.gc64nox
+++ b/win32/config_H.gc64nox
@@ -916,14 +916,14 @@
  */
 #define HAS_QUAD       /**/
 #ifdef HAS_QUAD
-#   ifdef _MSC_VER
-#      define Quad_t __int64   /**/
-#      define Uquad_t unsigned __int64 /**/
-#      define QUADKIND 5       /**/
-#   else /* gcc presumably */
-#      define Quad_t long long /**/
-#      define Uquad_t unsigned long long       /**/
-#      define QUADKIND 3       /**/
+#   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 QUAD_IS_INT 1
 #   define QUAD_IS_LONG        2
@@ -967,7 +967,7 @@
  *     where library files may be held under a private library, for
  *     instance.
  */
-#define ARCHNAME "MSWin32-x64"         /**/
+#define ARCHNAME "MSWin32-x86"         /**/
 
 /* BIN:
  *     This symbol holds the path of the bin directory where the package will
@@ -1033,14 +1033,14 @@
  *     This symbol is intended to be used along with CPPRUN in the same manner
  *     symbol CPPMINUS is used with CPPSTDIN. It contains either "-" or "".
  */
-#ifdef _MSC_VER
-#  define CPPSTDIN "cppstdin"
-#  define CPPMINUS ""
-#  define CPPRUN "cl -nologo -E"
+#ifndef _MSC_VER
+#   define CPPSTDIN "gcc -E"
+#   define CPPMINUS "-"
+#   define CPPRUN "gcc -E"
 #else
-#  define CPPSTDIN "gcc -E"
-#  define CPPMINUS "-"
-#  define CPPRUN "gcc -E"
+#   define CPPSTDIN "cppstdin"
+#   define CPPMINUS ""
+#   define CPPRUN "cl -nologo -E"
 #endif
 #define CPPLAST ""
 
@@ -1809,11 +1809,11 @@
  */
 #define HAS_LONG_DOUBLE                /**/
 #ifdef HAS_LONG_DOUBLE
-#  ifdef _MSC_VER
-#    define LONG_DOUBLESIZE 8          /**/
-#  else
-#    define LONG_DOUBLESIZE 12         /**/
-#  endif
+#   ifndef _MSC_VER
+#      define LONG_DOUBLESIZE 12               /**/
+#   else
+#      define LONG_DOUBLESIZE 8                /**/
+#   endif
 #endif
 
 /* HAS_LONG_LONG:
@@ -1824,7 +1824,7 @@
  *     C preprocessor can make decisions based on it.  It is only
  *     defined if the system supports long long.
  */
-#ifdef __GNUC__
+#ifndef _MSC_VER
 #  define HAS_LONG_LONG                /**/
 #endif
 #ifdef HAS_LONG_LONG
@@ -2563,13 +2563,9 @@
 /* Off_t_size:
  *     This symbol holds the number of bytes used by the Off_t.
  */
-#ifdef _MSC_VER
-#  define Off_t __int64                /* <offset> type */
-#else
-#  define Off_t long long              /* <offset> type */
-#endif
-#define LSEEKSIZE 8            /* <offset> size */
-#define Off_t_size 8   /* <offset> size */
+#define Off_t long             /* <offset> type */
+#define LSEEKSIZE 4            /* <offset> size */
+#define Off_t_size 4   /* <offset> size */
 
 /* Free_t:
  *     This variable contains the return type of free().  It is usually
@@ -2648,7 +2644,7 @@
  *     in programs that are not prepared to deal with ~ expansion at run-time.
  */
 #define PRIVLIB "c:\\perl\\lib"                /**/
-#define PRIVLIB_EXP (win32_get_privlib(PERL_VERSION_STRING))   /**/
+#define PRIVLIB_EXP (win32_get_privlib(PERL_VERSION_STRING, NULL))     /**/
 
 /* CAN_PROTOTYPE:
  *     If defined, this macro indicates that the C compiler can handle
@@ -2764,7 +2760,7 @@
  *     be tacked onto this variable to generate a list of directories to 
search.
  */
 #define SITELIB "c:\\perl\\site\\lib"          /**/
-#define SITELIB_EXP (win32_get_sitelib(PERL_VERSION_STRING))   /**/
+#define SITELIB_EXP (win32_get_sitelib(PERL_VERSION_STRING, NULL))     /**/
 #define SITELIB_STEM ""                /**/
 
 /* Size_t_size:
@@ -3134,12 +3130,11 @@
  *             static _inline      (older MSVC)
  *             static              (c89 compilers)
  */
-#ifdef _MSC_VER
-#  define HAS_STATIC_INLINE                            /**/
-#  define PERL_STATIC_INLINE static __inline   /**/
-#else /* gcc presumably */
-#  define HAS_STATIC_INLINE                            /**/
+#define HAS_STATIC_INLINE                              /**/
+#ifndef _MSC_VER
 #  define PERL_STATIC_INLINE static __inline__ /**/
+#else
+#  define PERL_STATIC_INLINE static __inline   /**/
 #endif
 
 /* USE_STDIO_PTR:
@@ -3326,10 +3321,10 @@
  *     to get any typedef'ed information.
  *     We will pick a type such that sizeof(SSize_t) == sizeof(Size_t).
  */
-#ifdef _MSC_VER
-#  define SSize_t __int64       /* signed count of bytes */
+#ifndef _MSC_VER
+#      define SSize_t long long         /* signed count of bytes */
 #else
-#  define SSize_t long long     /* signed count of bytes */
+#      define SSize_t __int64   /* signed count of bytes */
 #endif
 
 /* EBCDIC:
@@ -4482,12 +4477,12 @@
  *     This symbol, if defined, indicates that a variable of type NVTYPE
  *     stores 0.0 in memory as all bits zero.
  */
-#ifdef _MSC_VER
-#  define      IVTYPE          __int64         /**/
-#  define      UVTYPE          unsigned __int64                /**/
+#ifndef _MSC_VER
+#      define  IVTYPE          long long               /**/
+#      define  UVTYPE          unsigned long long              /**/
 #else
-#  define      IVTYPE          long long               /**/
-#  define      UVTYPE          unsigned long long              /**/
+#      define  IVTYPE          __int64         /**/
+#      define  UVTYPE          unsigned __int64                /**/
 #endif
 #define        I8TYPE          char            /**/
 #define        U8TYPE          unsigned char           /**/
@@ -4496,13 +4491,13 @@
 #define        I32TYPE         long    /**/
 #define        U32TYPE         unsigned long   /**/
 #ifdef HAS_QUAD
-#  ifdef _MSC_VER
-#    define    I64TYPE         __int64 /**/
-#    define    U64TYPE         unsigned __int64        /**/
-#  else
-#    define    I64TYPE         long long       /**/
-#    define    U64TYPE         unsigned long long      /**/
-#  endif
+#   ifndef _MSC_VER
+#      define  I64TYPE         long long       /**/
+#      define  U64TYPE         unsigned long long      /**/
+#   else
+#      define  I64TYPE         __int64 /**/
+#      define  U64TYPE         unsigned __int64        /**/
+#   endif
 #endif
 #define        NVTYPE          double          /**/
 #define        IVSIZE          8               /**/
@@ -4672,7 +4667,7 @@
  *     should be used when available.
  */
 #ifndef USE_LARGE_FILES
-#define        USE_LARGE_FILES         /**/
+/*#define      USE_LARGE_FILES         / **/
 #endif
 
 /* USE_LONG_DOUBLE:
@@ -4696,7 +4691,7 @@
  *     be built to use multiplicity.
  */
 #ifndef MULTIPLICITY
-#define        MULTIPLICITY            /**/
+/*#define      MULTIPLICITY            / **/
 #endif
 
 /* USE_PERLIO:
@@ -4705,7 +4700,7 @@
  *     used in a fully backward compatible manner.
  */
 #ifndef USE_PERLIO
-#define        USE_PERLIO              /**/
+/*#define      USE_PERLIO              / **/
 #endif
 
 /* USE_SOCKS:
diff --git a/win32/config_H.vc b/win32/config_H.vc
index c19a201..53889c8 100644
--- a/win32/config_H.vc
+++ b/win32/config_H.vc
@@ -911,7 +911,7 @@
 /* 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, 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       /**/
@@ -3122,11 +3122,10 @@
  *             static _inline      (older MSVC)
  *             static              (c89 compilers)
  */
-#ifdef _MSC_VER
-#  define HAS_STATIC_INLINE                            /**/
+#define HAS_STATIC_INLINE                              /**/
+#ifndef __GNUC__
 #  define PERL_STATIC_INLINE static __inline   /**/
-#else /* gcc presumably */
-#  define HAS_STATIC_INLINE                            /**/
+#else
 #  define PERL_STATIC_INLINE static __inline__ /**/
 #endif
 
diff --git a/win32/config_H.vc64 b/win32/config_H.vc64
index 5ac2c21..cb031c4 100644
--- a/win32/config_H.vc64
+++ b/win32/config_H.vc64
@@ -911,14 +911,20 @@
 /* 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, 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 5  /**/
+#   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 QUAD_IS_INT 1
 #   define QUAD_IS_LONG        2
 #   define QUAD_IS_LONG_LONG   3
@@ -1025,9 +1031,15 @@
  *     This symbol is intended to be used along with CPPRUN in the same manner
  *     symbol CPPMINUS is used with CPPSTDIN. It contains either "-" or "".
  */
-#define CPPSTDIN "cppstdin"
-#define CPPMINUS ""
-#define CPPRUN "cl -nologo -E"
+#ifndef __GNUC__
+#   define CPPSTDIN "cppstdin"
+#   define CPPMINUS ""
+#   define CPPRUN "cl -nologo -E"
+#else
+#   define CPPSTDIN "gcc -E"
+#   define CPPMINUS "-"
+#   define CPPRUN "gcc -E"
+#endif
 #define CPPLAST ""
 
 /* HAS_ACCESS:
@@ -1791,7 +1803,11 @@
  */
 #define HAS_LONG_DOUBLE                /**/
 #ifdef HAS_LONG_DOUBLE
-#define LONG_DOUBLESIZE 8              /**/
+#   ifndef __GNUC__
+#      define LONG_DOUBLESIZE 8                /**/
+#   else
+#      define LONG_DOUBLESIZE 12               /**/
+#   endif
 #endif
 
 /* HAS_LONG_LONG:
@@ -1802,7 +1818,9 @@
  *     C preprocessor can make decisions based on it.  It is only
  *     defined if the system supports long long.
  */
-/*#define HAS_LONG_LONG                / **/
+#ifdef __GNUC__
+#  define HAS_LONG_LONG                /**/
+#endif
 #ifdef HAS_LONG_LONG
 #define LONGLONGSIZE 8         /**/
 #endif
@@ -2944,7 +2962,9 @@
  *     This symbol is defined if the C compiler can cast negative
  *     or large floating point numbers to 32-bit ints.
  */
-/*#define      CASTI32         / **/
+#ifdef __GNUC__
+#   define     CASTI32         /**/
+#endif
 
 /* CASTNEGFLOAT:
  *     This symbol is defined if the C compiler can cast negative
@@ -3104,11 +3124,10 @@
  *             static _inline      (older MSVC)
  *             static              (c89 compilers)
  */
-#ifdef _MSC_VER
-#  define HAS_STATIC_INLINE                            /**/
+#define HAS_STATIC_INLINE                              /**/
+#ifndef __GNUC__
 #  define PERL_STATIC_INLINE static __inline   /**/
-#else /* gcc presumably */
-#  define HAS_STATIC_INLINE                            /**/
+#else
 #  define PERL_STATIC_INLINE static __inline__ /**/
 #endif
 
@@ -3296,7 +3315,11 @@
  *     to get any typedef'ed information.
  *     We will pick a type such that sizeof(SSize_t) == sizeof(Size_t).
  */
-#define SSize_t __int64         /* signed count of bytes */
+#ifndef __GNUC__
+#      define SSize_t __int64   /* signed count of bytes */
+#else
+#      define SSize_t long long         /* signed count of bytes */
+#endif
 
 /* EBCDIC:
  *     This symbol, if defined, indicates that this system uses
@@ -4448,8 +4471,13 @@
  *     This symbol, if defined, indicates that a variable of type NVTYPE
  *     stores 0.0 in memory as all bits zero.
  */
-#define        IVTYPE          __int64         /**/
-#define        UVTYPE          unsigned __int64                /**/
+#ifndef __GNUC__
+#      define  IVTYPE          __int64         /**/
+#      define  UVTYPE          unsigned __int64                /**/
+#else
+#      define  IVTYPE          long long               /**/
+#      define  UVTYPE          unsigned long long              /**/
+#endif
 #define        I8TYPE          char            /**/
 #define        U8TYPE          unsigned char           /**/
 #define        I16TYPE         short   /**/
@@ -4457,8 +4485,13 @@
 #define        I32TYPE         long    /**/
 #define        U32TYPE         unsigned long   /**/
 #ifdef HAS_QUAD
-#define        I64TYPE         __int64 /**/
-#define        U64TYPE         unsigned __int64        /**/
+#   ifndef __GNUC__
+#      define  I64TYPE         __int64 /**/
+#      define  U64TYPE         unsigned __int64        /**/
+#   else
+#      define  I64TYPE         long long       /**/
+#      define  U64TYPE         unsigned long long      /**/
+#   endif
 #endif
 #define        NVTYPE          double          /**/
 #define        IVSIZE          8               /**/

--
Perl5 Master Repository

Reply via email to