diff options
Diffstat (limited to 'stdlib')
-rw-r--r-- | stdlib/doc-syms.tl | 1 | ||||
-rw-r--r-- | stdlib/pmac.tl | 7 |
2 files changed, 8 insertions, 0 deletions
diff --git a/stdlib/doc-syms.tl b/stdlib/doc-syms.tl index 5cc46e6b..d6c001c1 100644 --- a/stdlib/doc-syms.tl +++ b/stdlib/doc-syms.tl @@ -1186,6 +1186,7 @@ ("macroexpand-1" "N-02ED5471") ("macroexpand-1-lisp1" "N-01E62179") ("macroexpand-lisp1" "N-01E62179") + ("macroexpand-params" "N-037EB49A") ("macrolet" "N-00AC12C0") ("madv-dontneed" "N-027D1E84") ("madv-normal" "N-027D1E84") diff --git a/stdlib/pmac.tl b/stdlib/pmac.tl index e530fddc..b78426ba 100644 --- a/stdlib/pmac.tl +++ b/stdlib/pmac.tl @@ -33,3 +33,10 @@ (lambda (,parms ,body ,env ,form) ,*forms)) ,keyword)) + +(defun macroexpand-params (prototype-form : env) + (tree-case prototype-form + ((name params . body) + (cons name (sys:expand-param-macro params body env prototype-form))) + (else (error "~s: invalid prototype-form argument ~s" + %fun% prototype-form)))) |