1.0.28.12: preserve non-toplevelness of macro subforms
[sbcl.git] / tests / compiler.test.sh
index 48aa64e..6a816df 100644 (file)
@@ -348,6 +348,13 @@ EOF
 expect_failed_compile $tmpfilename
 
 cat > $tmpfilename <<EOF
+x
+y
+z
+EOF
+expect_failed_compile $tmpfilename
+
+cat > $tmpfilename <<EOF
 (declaim (optimize (speed 3) (space 0) (safety 0)))
 
 (defun foo (bar)
@@ -379,5 +386,24 @@ cat > $tmpfilename <<EOF
 EOF
 expect_aborted_compile $tmpfilename
 
+cat > $tmpfilename <<EOF
+(if t (locally))
+EOF
+expect_clean_cload $tmpfilename
+
+cat > $tmpfilename <<EOF
+(defconstant cl-package (find-package :cl))
+(defun cl-symbol-p (x)
+  (eq (symbol-package x) cl-package))
+EOF
+expect_clean_cload $tmpfilename
+
+cat > $tmpfilename <<EOF
+(and (eval-when (:compile-toplevel) (error "oops AND")))
+(or (eval-when (:compile-toplevel) (error "oops OR")))
+(cond (t (eval-when (:compile-toplevel) (error "oops COND"))))
+EOF
+expect_clean_cload $tmpfilename
+
 # success
 exit $EXIT_TEST_WIN