diff --git a/ansi-tests/load-system-construction.lsp b/ansi-tests/load-system-construction.lsp
index 625512166ac3c4a3cb130a4597de405ff6b2e4fa..d3395f231f849ead0174b81cb77d51d5aff3af9b 100644
--- a/ansi-tests/load-system-construction.lsp
+++ b/ansi-tests/load-system-construction.lsp
@@ -7,5 +7,6 @@
 
 (load "compile-file.lsp")
 (load "load.lsp")
+(load "with-compilation-unit.lsp")
 
 
diff --git a/ansi-tests/with-compilation-unit.lsp b/ansi-tests/with-compilation-unit.lsp
new file mode 100644
index 0000000000000000000000000000000000000000..7f4661ba8514684daec3d4fb516cdbf20e495d92
--- /dev/null
+++ b/ansi-tests/with-compilation-unit.lsp
@@ -0,0 +1,48 @@
+;-*- Mode:     Lisp -*-
+;;;; Author:   Paul Dietz
+;;;; Created:  Sat Apr 30 07:36:26 2005
+;;;; Contains: Tests of WITH-COMPILATION-UNIT
+
+;;; WITH-COMPILATION-UNIT doesn't have much in the way of standardized
+;;; semantics, so there's not much to test.
+
+(in-package :cl-test)
+
+(deftest with-compilation-unit.1
+  (with-compilation-unit ())
+  nil)
+
+(deftest with-compilation-unit.2
+  (with-compilation-unit () t)
+  t)
+
+(deftest with-compilation-unit.3
+  (with-compilation-unit () (values)))
+
+(deftest with-compilation-unit.4
+  (with-compilation-unit () (values 1 2 3 4 5))
+  1 2 3 4 5)
+
+(deftest with-compilation-unit.5
+  (with-compilation-unit (:override nil) :foo)
+  :foo)
+ 
+(deftest with-compilation-unit.6
+  (with-compilation-unit (:override t) (values 10 17))
+  10 17)
+
+(deftest with-compilation-unit.7
+  (let ((x nil))
+    (values
+     (block done
+       (with-compilation-unit
+	(:override nil)
+	(setq x 1)
+	(return-from done 2)
+	(setq x 2)))
+     x))
+  2 1)
+
+
+
+