diff --git a/ansi-tests/loop1.lsp b/ansi-tests/loop1.lsp
index f68c7ec00a0fed5caefafa4fc44f8d55f53df9a1..8b40115b8b1653d2dfb8e52e0b5bd43acd5ad76d 100644
--- a/ansi-tests/loop1.lsp
+++ b/ansi-tests/loop1.lsp
@@ -254,3 +254,43 @@
 (deftest loop.1.49
   (loop for i from 1 to 5 for c upfrom #c(0 1) by 2 collect c)
   (#c(0 1) #c(2 1) #c(4 1) #c(6 1) #c(8 1)))
+
+;;; The variable in the loop for-as-arithmetic clause
+;;; can be a d-var-spec, so 'NIL' should mean don't bind anything
+
+(deftest loop.1.50
+  (let ((i 0))
+    (loop for nil from 10 to 15 collect (incf i)))
+  (1 2 3 4 5 6))
+
+(deftest loop.1.51
+  (let ((i 0))
+    (loop for nil from 10 below 15 collect (incf i)))
+  (1 2 3 4 5))
+
+(deftest loop.1.52
+  (loop for nil from 10 to 0 collect 'a)
+  nil)
+
+(deftest loop.1.53
+  (let ((i 0))
+    (loop for nil from 0 to 10 by 2 collect (incf i)))
+  (1 2 3 4 5 6))
+
+(deftest loop.1.54
+  (let ((i 0))
+    (loop for nil from 1 to 4
+	  for nil from 1 to 10 collect (incf i)))
+  (1 2 3 4))
+
+(deftest loop.1.55
+  (let ((i 0))
+    (loop for nil from 5 downto 0 collect (incf i)))
+  (1 2 3 4 5 6))
+
+(deftest loop.1.56
+  (let ((i 0))
+    (loop for nil from 5 above 0 collect (incf i)))
+  (1 2 3 4 5))
+
+