Basic constructor macro for decl-spec-function structures.
(make-decl-spec-function [:spec <spec>])
This is the usual way to construct decl-spec-function structures. It simply conses together a structure with the specified fields.
This macro generates a new decl-spec-function structure from scratch. See also change-decl-spec-function, which can "change" an existing structure, instead.
This is an ordinary
Macro:
(defmacro make-decl-spec-function (&rest args) (std::make-aggregate 'decl-spec-function args '((:spec)) 'make-decl-spec-function nil))
Function:
(defun decl-spec-function (spec) (declare (xargs :guard (fun-specp spec))) (declare (xargs :guard t)) (b* ((spec (mbe :logic (fun-spec-fix spec) :exec spec))) (cons :function spec)))