;;; arg specifiers are just passed through untouched. If something is
;;; wrong, we use COMPILER-ERROR, aborting compilation to the last
;;; recovery point.
;;; arg specifiers are just passed through untouched. If something is
;;; wrong, we use COMPILER-ERROR, aborting compilation to the last
;;; recovery point.
(unless (member state '(:required :optional))
(compiler-error "misplaced &REST in lambda list: ~S" list))
(setq state :rest))
(unless (member state '(:required :optional))
(compiler-error "misplaced &REST in lambda list: ~S" list))
(setq state :rest))
(unless (member state '(:required :optional))
(compiler-error "misplaced &MORE in lambda list: ~S" list))
(setq morep t
(unless (member state '(:required :optional))
(compiler-error "misplaced &MORE in lambda list: ~S" list))
(setq morep t