• Stefan Monnier's avatar
    * lisp/emacs-lisp/byte-lexbind.el: Delete. · ce5b520a
    Stefan Monnier authored
    * lisp/emacs-lisp/bytecomp.el (byte-compile-current-heap-environment)
    (byte-compile-current-num-closures): Remove vars.
    (byte-vec-ref, byte-vec-set): Remove byte codes.
    (byte-compile-arglist-vars, byte-compile-make-lambda-lexenv): Move from
    byte-lexbind.el.
    (byte-compile-lambda): Never build a closure.
    (byte-compile-closure-code-p, byte-compile-make-closure): Remove.
    (byte-compile-closure): Simplify.
    (byte-compile-top-level): Don't mess with heap environments.
    (byte-compile-dynamic-variable-bind): Always maintain
    byte-compile-bound-variables.
    (byte-compile-variable-ref, byte-compile-variable-set): Always just use
    the stack for lexical vars.
    (byte-compile-push-binding-init): Simplify.
    (byte-compile-not-lexical-var-p): New function, moved from cconv.el.
    (byte-compile-bind, byte-compile-unbind): New functions, moved and
    simplified from byte-lexbind.el.
    (byte-compile-let, byte-compile-let*): Simplify.
    (byte-compile-condition-case): Don't add :fun-body to the bound vars.
    (byte-compile-defmacro): Simplify.
    * lisp/emacs-lisp/byte-opt.el (byte-compile-side-effect-free-ops)
    (byte-optimize-lapcode): Remove byte-vec-ref and byte-vec-set.
    * lisp/emacs-lisp/cconv.el (cconv-not-lexical-var-p): Remove.
    (cconv-freevars, cconv-analyse-function, cconv-analyse-form):
    Use byte-compile-not-lexical-var-p instead.
    * src/bytecode.c (Bvec_ref, Bvec_set): Remove.
    (exec_byte_code): Don't handle them.
    * lisp/help-fns.el (describe-function-1): Fix paren typo.
    ce5b520a
bytecomp.el 184 KB