diff --git a/src/pike_memory.c b/src/pike_memory.c
index 1154a91a2584a55b85b3419f78960f29ea02f604..357b6bd86929798d654d0fed20bf1d42035d3b4c 100644
--- a/src/pike_memory.c
+++ b/src/pike_memory.c
@@ -10,7 +10,7 @@
 #include "pike_macros.h"
 #include "gc.h"
 
-RCSID("$Id: pike_memory.c,v 1.74 2000/08/10 14:41:20 grubba Exp $");
+RCSID("$Id: pike_memory.c,v 1.75 2000/08/10 18:02:55 grubba Exp $");
 
 /* strdup() is used by several modules, so let's provide it */
 #ifndef HAVE_STRDUP
@@ -289,8 +289,8 @@ size_t simple_hashmem(const unsigned char *str, ptrdiff_t len, ptrdiff_t maxn)
  */
 void init_memsearch(struct mem_searcher *s,
 		    char *needle,
-		    SIZE_T needlelen,
-		    SIZE_T max_haystacklen)
+		    size_t needlelen,
+		    size_t max_haystacklen)
 {
   s->needle=needle;
   s->needlelen=needlelen;
@@ -373,7 +373,7 @@ void init_memsearch(struct mem_searcher *s,
 
 char *memory_search(struct mem_searcher *s,
 		    char *haystack,
-		    SIZE_T haystacklen)
+		    size_t haystacklen)
 {
   if(s->needlelen > haystacklen) return 0;
 
@@ -390,7 +390,7 @@ char *memory_search(struct mem_searcher *s,
   case memchr_and_memcmp:
     {
       char *end,c,*needle;
-      SIZE_T needlelen;
+      size_t needlelen;
       
       needle=s->needle;
       needlelen=s->needlelen;
@@ -445,9 +445,9 @@ char *memory_search(struct mem_searcher *s,
 
 void init_generic_memsearcher(struct generic_mem_searcher *s,
 			      void *needle,
-			      SIZE_T needlelen,
+			      size_t needlelen,
 			      char needle_shift,
-			      SIZE_T estimated_haystack,
+			      size_t estimated_haystack,
 			      char haystack_shift)
 {
   s->needle_shift=needle_shift;
@@ -489,7 +489,7 @@ void init_generic_memsearcher(struct generic_mem_searcher *s,
 
 void *generic_memory_search(struct generic_mem_searcher *s,
 			    void *haystack,
-			    SIZE_T haystacklen,
+			    size_t haystacklen,
 			    char haystack_shift)
 {
   if(s->needle_shift==0 && s->haystack_shift==0)
@@ -531,7 +531,7 @@ void *generic_memory_search(struct generic_mem_searcher *s,
 	{								  \
 	  PIKE_CONCAT(p_wchar,X) *end,*hay;				  \
 	  PIKE_CONCAT(p_wchar,Y) *needle;				  \
-	  SIZE_T needlelen;						  \
+	  size_t needlelen;						  \
 	  								  \
 	  needle=(PIKE_CONCAT(p_wchar,Y) *)s->data.other.needle;	  \
 	  hay=(PIKE_CONCAT(p_wchar,X) *)haystack;			  \
@@ -574,9 +574,9 @@ void *generic_memory_search(struct generic_mem_searcher *s,
 		    
 
 PMOD_EXPORT char *my_memmem(char *needle,
-		SIZE_T needlelen,
+		size_t needlelen,
 		char *haystack,
-		SIZE_T haystacklen)
+		size_t haystacklen)
 {
   struct mem_searcher tmp;
   init_memsearch(&tmp, needle, needlelen, haystacklen);
diff --git a/src/pike_memory.h b/src/pike_memory.h
index 0a2f9191a883114b5df3f20daf3e6a2f61fb4d44..35873bc8fbbe0b92d2fa6f874e370804157d4c36 100644
--- a/src/pike_memory.h
+++ b/src/pike_memory.h
@@ -5,7 +5,7 @@
 \*/
 
 /*
- * $Id: pike_memory.h,v 1.16 2000/08/10 14:42:18 grubba Exp $
+ * $Id: pike_memory.h,v 1.17 2000/08/10 18:02:21 grubba Exp $
  */
 #ifndef MEMORY_H
 #define MEMORY_H
@@ -72,25 +72,25 @@ PMOD_EXPORT size_t hashstr(const unsigned char *str, ptrdiff_t maxn);
 PMOD_EXPORT size_t simple_hashmem(const unsigned char *str, ptrdiff_t len, ptrdiff_t maxn);
 PMOD_EXPORT void init_memsearch(struct mem_searcher *s,
 		    char *needle,
-		    SIZE_T needlelen,
-		    SIZE_T max_haystacklen);
+		    size_t needlelen,
+		    size_t max_haystacklen);
 PMOD_EXPORT char *memory_search(struct mem_searcher *s,
 		    char *haystack,
-		    SIZE_T haystacklen);
+		    size_t haystacklen);
 PMOD_EXPORT void init_generic_memsearcher(struct generic_mem_searcher *s,
 			      void *needle,
-			      SIZE_T needlelen,
+			      size_t needlelen,
 			      char needle_shift,
-			      SIZE_T estimated_haystack,
+			      size_t estimated_haystack,
 			      char haystack_shift);
 PMOD_EXPORT void *generic_memory_search(struct generic_mem_searcher *s,
 			    void *haystack,
-			    SIZE_T haystacklen,
+			    size_t haystacklen,
 			    char haystack_shift);
 PMOD_EXPORT char *my_memmem(char *needle,
-		SIZE_T needlelen,
+		size_t needlelen,
 		char *haystack,
-		SIZE_T haystacklen);
+		size_t haystacklen);
 PMOD_EXPORT void memfill(char *to,
 	     INT32 tolen,
 	     char *from,
diff --git a/src/stralloc.c b/src/stralloc.c
index 4d42086afacb81c181d068b093a2538ff060dcd9..ec4bc4abeec0584ec6bc1186db770e5b1083037a 100644
--- a/src/stralloc.c
+++ b/src/stralloc.c
@@ -25,7 +25,7 @@
 #define HUGE HUGE_VAL
 #endif /*!HUGE*/
 
-RCSID("$Id: stralloc.c,v 1.93 2000/08/10 17:57:04 grubba Exp $");
+RCSID("$Id: stralloc.c,v 1.94 2000/08/10 18:00:09 grubba Exp $");
 
 #define BEGIN_HASH_SIZE 997
 #define MAX_AVG_LINK_LENGTH 3
@@ -1594,12 +1594,13 @@ PMOD_EXPORT void init_string_builder(struct string_builder *s, int mag)
   s->known_shift=0;
 }
 
-static void string_build_mkspace(struct string_builder *s, int chars, int mag)
+static void string_build_mkspace(struct string_builder *s,
+				 ptrdiff_t chars, int mag)
 {
   if(mag > s->s->size_shift)
   {
     struct pike_string *n;
-    int l=s->s->len+chars+s->malloced;
+    ptrdiff_t l = s->s->len + chars + s->malloced;
     n=begin_wide_shared_string(l,mag);
     pike_string_cpy(MKPCHARP_STR(n),s->s);
     n->len=s->s->len;
@@ -1609,7 +1610,7 @@ static void string_build_mkspace(struct string_builder *s, int chars, int mag)
   }
   else if(s->s->len+chars > s->malloced)
   {
-    int newlen=MAXIMUM(s->malloced*2,s->s->len+chars);
+    ptrdiff_t newlen = MAXIMUM(s->malloced*2, s->s->len + chars);
 
     s->s=(struct pike_string *)realloc((char *)s->s,
 				       sizeof(struct pike_string)+
@@ -1620,13 +1621,13 @@ static void string_build_mkspace(struct string_builder *s, int chars, int mag)
   }
 }
 
-PMOD_EXPORT void *string_builder_allocate(struct string_builder *s, int chars, int mag)
+PMOD_EXPORT void *string_builder_allocate(struct string_builder *s, ptrdiff_t chars, int mag)
 {
   void *ret;
-  string_build_mkspace(s,chars,mag);
+  string_build_mkspace(s, chars, mag);
   if(chars<0) s->known_shift=0;
-  ret=s->s->str + (s->s->len<<s->s->size_shift);
-  s->s->len+=chars;
+  ret = s->s->str + (s->s->len<<s->s->size_shift);
+  s->s->len += chars;
   return ret;
 }
 
diff --git a/src/stralloc.h b/src/stralloc.h
index 87c1a9b2326f96f64078bd55ccbbf2e561537386..b720db0a9e4ca2a5a3b958399c2a813bdc15d94d 100644
--- a/src/stralloc.h
+++ b/src/stralloc.h
@@ -5,7 +5,7 @@
 \*/
 
 /*
- * $Id: stralloc.h,v 1.52 2000/08/10 17:57:17 grubba Exp $
+ * $Id: stralloc.h,v 1.53 2000/08/10 18:00:42 grubba Exp $
  */
 #ifndef STRALLOC_H
 #define STRALLOC_H
@@ -227,7 +227,8 @@ void cleanup_shared_string_table(void);
 void count_memory_in_strings(INT32 *num, INT32 *size);
 void gc_mark_all_strings(void);
 PMOD_EXPORT void init_string_builder(struct string_builder *s, int mag);
-PMOD_EXPORT void *string_builder_allocate(struct string_builder *s, int chars, int mag);
+PMOD_EXPORT void *string_builder_allocate(struct string_builder *s,
+					  ptrdiff_t chars, int mag);
 PMOD_EXPORT void string_builder_putchar(struct string_builder *s, int ch);
 PMOD_EXPORT void string_builder_binary_strcat(struct string_builder *s, char *str, ptrdiff_t len);
 PMOD_EXPORT void string_builder_append(struct string_builder *s,