size_t/ssize_t - change to [unsigned] long
authorMatthew Dillon <dillon@apollo.backplane.com>
Wed, 19 Aug 2009 02:56:17 +0000 (19:56 -0700)
committerMatthew Dillon <dillon@apollo.backplane.com>
Wed, 19 Aug 2009 02:56:17 +0000 (19:56 -0700)
* change size_t from unsigned int to unsigned long, and change ssize_t
  from int to long for both 32 and 64 bit builds.

  NOTE: This may not last for 32 bit builds, depending on what it breaks
  in pkgsrc land, but the change makes it easier to detect 32/64 bit
  issues with size_t, sizeof, and pointer arithmatic on 32 bit machines.

gnu/lib/gcc41/libstdc++/config.h
gnu/lib/gcc44/libstdc++/config.h
gnu/usr.bin/cc34/cc_prep/config/i386/dragonfly.h
gnu/usr.bin/cc41/cc_prep/config/i386/dragonfly.h
gnu/usr.bin/cc44/cc_prep/config/i386/dragonfly.h
sys/cpu/amd64/include/stdint.h
sys/cpu/i386/include/stdint.h

index a8fce3a..32288ab 100644 (file)
 #define _GLIBCXX_RES_LIMITS 1
 
 /* Define if size_t is unsigned int. */
-#define _GLIBCXX_SIZE_T_IS_UINT 1
+/* #define _GLIBCXX_SIZE_T_IS_UINT 1 */
 
 /* Define if the compiler is configured for setjmp/longjmp exceptions. */
 /* #undef _GLIBCXX_SJLJ_EXCEPTIONS */
index d43bdca..22aa4ee 100644 (file)
 #define _GLIBCXX_RES_LIMITS 1
 
 /* Define if size_t is unsigned int. */
-#define _GLIBCXX_SIZE_T_IS_UINT 1
+/* #define _GLIBCXX_SIZE_T_IS_UINT 1 */
 
 /* Define if the compiler is configured for setjmp/longjmp exceptions. */
 /* #undef _GLIBCXX_SJLJ_EXCEPTIONS */
index f318dff..0be2246 100644 (file)
@@ -57,10 +57,10 @@ Boston, MA 02111-1307, USA.  */
 /* Make gcc agree with <machine/ansi.h>.  */
 
 #undef  SIZE_TYPE
-#define SIZE_TYPE      (TARGET_64BIT ? "long unsigned int" : "unsigned int")
+#define SIZE_TYPE      "long unsigned int"
  
 #undef  PTRDIFF_TYPE
-#define PTRDIFF_TYPE   (TARGET_64BIT ? "long int" : "int")
+#define PTRDIFF_TYPE   "long int"
   
 #undef  WCHAR_TYPE_SIZE
 #define WCHAR_TYPE_SIZE        (TARGET_64BIT ? 32 : BITS_PER_WORD)
index b802456..4ba6ec0 100644 (file)
@@ -57,10 +57,10 @@ Boston, MA 02111-1307, USA.  */
 /* Make gcc agree with <machine/ansi.h>.  */
 
 #undef  SIZE_TYPE
-#define SIZE_TYPE      (TARGET_64BIT ? "long unsigned int" : "unsigned int")
+#define SIZE_TYPE      "long unsigned int"
  
 #undef  PTRDIFF_TYPE
-#define PTRDIFF_TYPE   (TARGET_64BIT ? "long int" : "int")
+#define PTRDIFF_TYPE   "long int"
   
 #undef  WCHAR_TYPE_SIZE
 #define WCHAR_TYPE_SIZE        (TARGET_64BIT ? 32 : BITS_PER_WORD)
index 6586b67..d6d46d7 100644 (file)
@@ -51,10 +51,10 @@ along with GCC; see the file COPYING3.  If not see
 /* Make gcc agree with <machine/ansi.h>.  */
 
 #undef  SIZE_TYPE
-#define SIZE_TYPE      (TARGET_64BIT ? "long unsigned int" : "unsigned int")
+#define SIZE_TYPE      "long unsigned int"
  
 #undef  PTRDIFF_TYPE
-#define PTRDIFF_TYPE   (TARGET_64BIT ? "long int" : "int")
+#define PTRDIFF_TYPE   "long int"
   
 #undef  WCHAR_TYPE_SIZE
 #define WCHAR_TYPE_SIZE        (TARGET_64BIT ? 32 : BITS_PER_WORD)
index af408cd..615d7d9 100644 (file)
@@ -111,14 +111,13 @@ typedef   __uint64_t      __uint_least64_t;
  * do not wish to overly pollute their namespaces.
  */
 
+typedef unsigned long  __size_t;
+typedef long           __ssize_t;
+
 #if defined(__amd64__)
-typedef __uint64_t     __size_t;
-typedef __int64_t      __ssize_t;
 typedef __int64_t      __register_t;
 typedef __uint64_t     __u_register_t;
 #elif defined(__i386__)
-typedef __uint32_t     __size_t;
-typedef __int32_t      __ssize_t;
 typedef __int32_t      __register_t;
 typedef __uint32_t     __u_register_t;
 #endif
index cd5d03c..e87682b 100644 (file)
@@ -103,8 +103,9 @@ typedef     __uint64_t      __uint_least64_t;
  * do not wish to overly pollute their namespaces.
  */
 
-typedef __uint32_t     __size_t;
-typedef __int32_t      __ssize_t;
+typedef unsigned long  __size_t;
+typedef long           __ssize_t;
+
 typedef long           __time_t;
 typedef int            __timer_t;
 typedef __int32_t      __register_t;