0.9.5.44: oops
[sbcl.git] / tests / interface.impure.lisp
index ab31744..22a9ace 100644 (file)
@@ -6,7 +6,7 @@
 ;;;; While most of SBCL is derived from the CMU CL system, the test
 ;;;; files (like this one) were written from scratch after the fork
 ;;;; from CMU CL.
-;;;; 
+;;;;
 ;;;; This software is in the public domain and is provided with
 ;;;; absolutely no warranty. See the COPYING and CREDITS files for
 ;;;; more information.
   x)
 
 (assert (string= (documentation '(setf foo) 'function)
-                "(setf foo) documentation"))
+                 "(setf foo) documentation"))
 (assert (string= (documentation #'(setf foo) 'function)
-                "(setf foo) documentation"))
+                 "(setf foo) documentation"))
 
 (defun (sb-pcl::class-predicate foo) (x)
   "(class-predicate foo) documentation"
   x)
 
 (assert (string= (documentation '(setf foo) 'function)
-                "(setf foo) documentation"))
+                 "(setf foo) documentation"))
 (assert (string= (documentation #'(setf foo) 'function)
-                "(setf foo) documentation"))
+                 "(setf foo) documentation"))
 (assert (string= (documentation '(sb-pcl::class-predicate foo) 'function)
-                "(class-predicate foo) documentation"))
+                 "(class-predicate foo) documentation"))
 (assert (string= (documentation #'(sb-pcl::class-predicate foo) 'function)
-                "(class-predicate foo) documentation"))
+                 "(class-predicate foo) documentation"))
+\f
+;;; DISASSEMBLE shouldn't fail on closures or unpurified functions
+(defun disassemble-fun (x) x)
+(disassemble 'disassemble-fun)
 
+(let ((x 1)) (defun disassemble-closure (y) (if y (setq x y) x)))
+(disassemble 'disassemble-closure)
 \f
 ;;;; success
-(sb-ext:quit :unix-status 104)