Basic constructor macro for ienv structures.
(make-ienv [:char+short+int+long+llong-format <char+short+int+long+llong-format>])
This is the usual way to construct ienv structures. It simply conses together a structure with the specified fields.
This macro generates a new ienv structure from scratch. See also change-ienv, which can "change" an existing structure, instead.
This is an ordinary
Macro:
(defmacro make-ienv (&rest args) (std::make-aggregate 'ienv args '((:char+short+int+long+llong-format)) 'make-ienv nil))
Function:
(defun ienv (char+short+int+long+llong-format) (declare (xargs :guard (char+short+int+long+llong-formatp char+short+int+long+llong-format))) (declare (xargs :guard (char+short+int+long+llong-format-wfp char+short+int+long+llong-format))) (let ((__function__ 'ienv)) (declare (ignorable __function__)) (b* ((char+short+int+long+llong-format (mbe :logic (char+short+int+long+llong-format-fix char+short+int+long+llong-format) :exec char+short+int+long+llong-format))) (let ((char+short+int+long+llong-format (mbe :logic (if (char+short+int+long+llong-format-wfp char+short+int+long+llong-format) char+short+int+long+llong-format (char8+short16+int16+long32+llong64-tcnt)) :exec char+short+int+long+llong-format))) (list (cons 'char+short+int+long+llong-format char+short+int+long+llong-format))))))