(deftrans-defn-declspec names bodies extra-args extra-args-names) → *
Function:
(defun deftrans-defn-declspec (names bodies extra-args extra-args-names) (declare (xargs :guard (and (alistp names) (alistp bodies) (true-listp extra-args) (true-listp extra-args-names)))) (let ((__function__ 'deftrans-defn-declspec)) (declare (ignorable __function__)) (deftrans-defn 'declspec names bodies '((declspec declspecp)) extra-args (cons 'declspec-case (cons 'declspec (cons ':stocla (cons '(declspec-fix declspec) (cons ':tyspec (cons (cons 'declspec-tyspec (cons (cons (cdr (assoc-eq 'type-spec names)) (cons 'declspec.unwrap extra-args-names)) 'nil)) (cons ':tyqual (cons '(declspec-fix declspec) (cons ':funspec (cons '(declspec-fix declspec) (cons ':align (cons (cons 'declspec-align (cons (cons (cdr (assoc-eq 'align-spec names)) (cons 'declspec.unwrap extra-args-names)) 'nil)) '(:attrib (declspec-fix declspec)))))))))))))) '(:returns (new-declspec declspecp) :measure (declspec-count declspec)))))