diff --git a/ansi-tests/make-pathname.lsp b/ansi-tests/make-pathname.lsp
index 003939bfc983ead431d131711222080d5217a600..63ea503b6366fe5386509df352dbcd19bd3c1ea9 100644
--- a/ansi-tests/make-pathname.lsp
+++ b/ansi-tests/make-pathname.lsp
@@ -67,3 +67,54 @@
 (deftest make-pathname.8
   (make-pathname-test :version :wild)
   t)
+
+(deftest make-pathname.9
+  (make-pathname-test :defaults *default-pathname-defaults*)
+  t)
+
+(deftest make-pathname.10
+  (make-pathname-test :defaults (make-pathname :name "foo" :type "bar"))
+  t)
+
+(deftest make-pathname.11
+  (make-pathname-test :version :newest)
+  t)
+
+(deftest make-pathname.12
+  (make-pathname-test :case :local)
+  t)
+
+(deftest make-pathname.13
+  (make-pathname-test :case :common)
+  t)
+
+;;; Various constraints on :directory
+
+(deftest make-pathname-error-absolute-up
+  (classify-error (directory (make-pathname :directory '(:absolute :up))))
+  file-error)
+
+(deftest make-pathname-error-absolute-back
+  (classify-error (directory (make-pathname :directory '(:absolute :back))))
+  file-error)
+
+;; The next test is correct, but was causing very large amounts of time to be spent
+;; in buggy implementations
+#|
+(deftest make-pathname-error-absolute-wild-inferiors-up
+  (classify-error (directory (make-pathname :directory '(:absolute :wild-inferiors :up))))
+  file-error)
+|#
+
+(deftest make-pathname-error-relative-wild-inferiors-up
+  (classify-error (length (directory (make-pathname :directory '(:relative :wild-inferiors :up)))))
+  file-error)
+
+(deftest make-pathname-error-absolute-wild-inferiors-back
+  (classify-error (directory (make-pathname :directory '(:absolute :wild-inferiors :back))))
+  file-error)
+
+(deftest make-pathname-error-relative-wild-inferiors-back
+  (classify-error (directory (make-pathname :directory '(:relative :wild-inferiors :back))))
+  file-error)
+