X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~mdw/git/sod/blobdiff_plain/66836e149e29c12c8bf4884ff91de7d9a9c879cb..93348ae9e276dec213b5d543338b1e2c53a7b687:/src/codegen-impl.lisp diff --git a/src/codegen-impl.lisp b/src/codegen-impl.lisp index e99a0c2..3104bcb 100644 --- a/src/codegen-impl.lisp +++ b/src/codegen-impl.lisp @@ -40,7 +40,6 @@ (defclass temporary-variable (temporary-name) (defmethod commentify-argument-name ((name temporary-name)) nil) -(export 'temporary-function) (defun temporary-function () "Return a temporary function name." (make-instance 'temporary-function @@ -125,6 +124,12 @@ (defmethod emit-inst ((codegen basic-codegen) inst) (defmethod emit-insts ((codegen basic-codegen) insts) (asetf (codegen-insts codegen) (revappend insts it))) +(defmethod emit-decl ((codegen basic-codegen) inst) + (push inst (codegen-vars codegen))) + +(defmethod emit-decls ((codegen basic-codegen) insts) + (asetf (codegen-vars codegen) (revappend insts it))) + (defmethod ensure-var ((codegen basic-codegen) name type &optional init) (let* ((vars (codegen-vars codegen)) (var (find name