Index: tests/algorithms/.expect/range_test.txt
===================================================================
--- tests/algorithms/.expect/range_test.txt	(revision 8e6582413cf8b4afa976cac5c741ea047e2fbe90)
+++ tests/algorithms/.expect/range_test.txt	(revision db87a358ca390d5714056e73154e003b24d44a35)
@@ -1,1 +1,6 @@
 0 1 2 3 4 5 6
+0
+0 1 2 3 4 5 6 22 23 24 25 26 27 28 29 30
+0 2 4 6 8 10
+0 1 2 3 4 5 6 8 9 10 11 12 13 14 16 32
+0 1 2 3 4 6 8 9 10 11 12 14 16 17 18 19 20
Index: tests/algorithms/range_test.cfa
===================================================================
--- tests/algorithms/range_test.cfa	(revision 8e6582413cf8b4afa976cac5c741ea047e2fbe90)
+++ tests/algorithms/range_test.cfa	(revision db87a358ca390d5714056e73154e003b24d44a35)
@@ -17,11 +17,18 @@
 #include <algorithms/range_iterator.hfa>
 
+void print(const char * range){
+	RangeIter r = { range };
+	while(moveNext(r)) {
+		sout | r.com | nonl;
+	}
+	sout | nl;
+}
+
 int main() {
-	{
-		RangeIter r = { "0-6" };
-		while(moveNext(r)) {
-			sout | r.com | nonl;
-		}
-		sout | nl;
-	}
+	print("0-6");
+	print("0");
+	print("0-6,22-30");
+	print("0,2,4,6,8,10");
+	print("0-6,8-14,16,32");
+	print("0-4,6,8-12,14,16-20");
 }
