From 3a31fca5dba41e9905b1293fc73dd1d44abc3138 Mon Sep 17 00:00:00 2001 From: Andrea Corallo Date: Thu, 25 Feb 2021 20:46:27 +0100 Subject: [PATCH] * Fix some comp-vec logic * lisp/emacs-lisp/comp.el (comp-vec-length, comp-vec-append) (comp-vec-prepend): Fix logic. (comp-vec-aref): Fix indentation. --- lisp/emacs-lisp/comp.el | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lisp/emacs-lisp/comp.el b/lisp/emacs-lisp/comp.el index 40c1dfd831b..ddf3f049e8c 100644 --- a/lisp/emacs-lisp/comp.el +++ b/lisp/emacs-lisp/comp.el @@ -617,7 +617,7 @@ Useful to hook into pass checkers.") (defsubst comp-vec-length (vec) "Return the number of elements of VEC." - (+ (comp-vec-beg vec) (comp-vec-end vec))) + (- (comp-vec-end vec) (comp-vec-beg vec))) (defsubst comp-vec--verify-idx (vec idx) "Check idx is in bounds for VEC." @@ -628,21 +628,21 @@ Useful to hook into pass checkers.") "Return the element of VEC at index IDX." (declare (gv-setter (lambda (val) `(comp-vec--verify-idx ,vec ,idx) - `(puthash ,idx ,val (comp-vec-data ,vec))))) + `(puthash ,idx ,val (comp-vec-data ,vec))))) (comp-vec--verify-idx vec idx) (gethash idx (comp-vec-data vec))) (defsubst comp-vec-append (vec elt) "Append ELT into VEC. ELT is returned." - (puthash (comp-vec-end vec) elt (comp-vec-aref vec)) + (puthash (comp-vec-end vec) elt (comp-vec-data vec)) (cl-incf (comp-vec-end vec)) elt) (defsubst comp-vec-prepend (vec elt) "Prepend ELT into VEC. ELT is returned." - (puthash (comp-vec-beg vec) elt (comp-vec-aref vec)) + (puthash (1- (comp-vec-beg vec)) elt (comp-vec-data vec)) (cl-decf (comp-vec-beg vec)) elt) -- 2.39.2