0.7.1.32:
[sbcl.git] / src / code / parse-defmacro.lisp
index ca00f44..378d0ec 100644 (file)
                *arg-tests*)))
       (values env-arg-used minimum explicit-maximum))))
 
+;;; We save space in macro definitions by calling this function.
+(defun arg-count-error (error-kind name args lambda-list minimum maximum)
+  (let (#-sb-xc-host
+       (sb!debug:*stack-top-hint* (nth-value 1 (find-caller-name-and-frame))))
+    (error 'arg-count-error
+          :kind error-kind
+          :name name
+          :args args
+          :lambda-list lambda-list
+          :minimum minimum
+          :maximum maximum)))
+
 (defun push-sub-list-binding (variable path object name error-kind error-fun)
   (let ((var (gensym "TEMP-")))
     (push `(,variable