Behavior.st
branchjv
changeset 18377 384622fa1a79
parent 18374 122c2dc2d0a5
child 18403 9a3fc7cc7127
--- a/Behavior.st	Tue May 19 06:55:39 2015 +0200
+++ b/Behavior.st	Wed May 20 09:21:19 2015 +0100
@@ -2543,7 +2543,11 @@
 # if ! defined(FAST_ARRAY_MEMSET)
     REGISTER char *cp;
     short *sp;
-    long *lp;
+#  if defined(__i386__) || defined(__x86__) || defined(__x86_64__) || defined(__sparc__)
+    int *lp;
+#  else
+#   error "please (conditionally) declare lp as pointer to 4byte integer type"
+#  endif
 # endif
     REGISTER OBJ *op;
     float *fp;
@@ -2687,8 +2691,12 @@
 #  else
 		    op = __InstPtr(newobj)->i_instvars;
 		    while (nInstVars--)
-			*op++ = nil;
-		    lp = (long *)op;
+		    *op++ = nil;
+#   if defined(__i386__) || defined(__x86__) || defined(__x86_64__) || defined(__sparc__)
+    		    lp = (int *)op;
+#   else
+#    error "please (conditionally) cast op to pointer to 4byte integer type"
+#   endif		    		    
 		    while (nindexedinstvars--)
 			*lp++ = 0;
 #  endif