Index: tests/concurrency/actors/matrixMultiply.cfa
===================================================================
--- tests/concurrency/actors/matrixMultiply.cfa	(revision 60f69f01297f3a37eeaaa17df2a7cffdeb2444ea)
+++ tests/concurrency/actors/matrixMultiply.cfa	(revision b244fa8ebc69b1d4e0e659be0bd22d81cb1b5c04)
@@ -5,5 +5,5 @@
 #include <stdio.h>
 
-int xr = 500, xc = 500, yc = 500, Processors = 1; // default values, must be signed
+ssize_t xr = 500, xc = 500, yc = 500, Processors = 1; // default values, must be signed
 
 struct derived_actor { inline actor; };
@@ -25,7 +25,7 @@
 
 allocation receive( derived_actor & receiver, derived_msg & msg ) {
-	for ( unsigned int i = 0; i < yc; i += 1 ) { // multiply X_row by Y_col and sum products
+	for ( i; yc ) {										// multiply X_row by Y_col and sum products
 		msg.Z[i] = 0;
-		for ( unsigned int j = 0; j < xc; j += 1 ) {
+		for ( j; xc ) {
 			msg.Z[i] += msg.X[j] * msg.Y[j][i];
 		} // for
@@ -67,20 +67,19 @@
 	} // switch
 
-	unsigned int r, c;
 	int * Z[xr], * X[xr], * Y[xc];
 
-	for ( r = 0; r < xr; r += 1 ) {						// create/initialize X matrix
+	for ( r; xr ) {										// create/initialize X matrix
 		X[r] = aalloc( xc );
-		for ( c = 0; c < xc; c += 1 ) {
+		for ( c; xc ) {
 			X[r][c] = r * c % 37;						// for timing
 		} // for
 	} // for
-	for ( r = 0; r < xc; r += 1 ) {						// create/initialize Y matrix
+	for ( r; xc ) {										// create/initialize Y matrix
 		Y[r] = aalloc( yc );
-		for ( c = 0; c < yc; c += 1 ) {
+		for ( c; yc ) {
 			Y[r][c] = r * c % 37;						// for timing
 		} // for
 	} // for
-	for ( r = 0; r < xr; r += 1 ) {						// create Z matrix
+	for ( r; xr ) {										// create Z matrix
 		Z[r] = aalloc( yc );
 	} // for
@@ -98,9 +97,9 @@
 	derived_actor actors[xr];
 
-	for ( unsigned int r = 0; r < xr; r += 1 ) {
+	for ( r; xr ) {
 		messages[r]{ Z[r], X[r], Y };
 	} // for
 
-	for ( unsigned int r = 0; r < xr; r += 1 ) {
+	for ( r; xr ) {
 		actors[r] | messages[r];
 	} // for
@@ -112,9 +111,9 @@
 	sout | "stopped";
 
-	for ( r = 0; r < xr; r += 1 ) {						// deallocate X and Z matrices
+	for ( r; xr ) {										// deallocate X and Z matrices
 		free( X[r] );
 		free( Z[r] );
 	} // for
-	for ( r = 0; r < xc; r += 1 ) {						// deallocate Y matrix
+	for ( r; xc ) {										// deallocate Y matrix
 		free( Y[r] );
 	} // for
