emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master 5b23c9942a: Byte compiler: correct output warning message positio


From: Alan Mackenzie
Subject: master 5b23c9942a: Byte compiler: correct output warning message positions (part 2)
Date: Fri, 22 Apr 2022 13:17:44 -0400 (EDT)

branch: master
commit 5b23c9942ae057c886e68edb8c4bf09bf7e8eda9
Author: Alan Mackenzie <acm@muc.de>
Commit: Alan Mackenzie <acm@muc.de>

    Byte compiler: correct output warning message positions (part 2)
    
    A supplementary commit to that on 2022-04-18:
    
    * lisp/emacs-lisp/bytecomp.el (byte-compile--first-symbol-with-pos): Handle
    vectors and records correctly.
    
    * lisp/emacs-lisp/byte-run.el (byte-run--ssp-seen): Correct the doc string.
---
 lisp/emacs-lisp/byte-run.el | 3 +--
 lisp/emacs-lisp/bytecomp.el | 4 ++--
 2 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/lisp/emacs-lisp/byte-run.el b/lisp/emacs-lisp/byte-run.el
index 384e8cba88..0113051c8e 100644
--- a/lisp/emacs-lisp/byte-run.el
+++ b/lisp/emacs-lisp/byte-run.el
@@ -32,8 +32,7 @@
 
 (defvar byte-run--ssp-seen nil
   "Which conses/vectors/records have been processed in strip-symbol-positions?
-The value is a hash table, the key being the old element and the value being
-the corresponding new element of the same type.
+The value is a hash table, the keys being the elements and the values being t.
 
 The purpose of this is to detect circular structures.")
 
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el
index 8128410916..f97324f3a8 100644
--- a/lisp/emacs-lisp/bytecomp.el
+++ b/lisp/emacs-lisp/bytecomp.el
@@ -1185,14 +1185,14 @@ Here, \"first\" is by a depth first search."
           (and (symbolp (setq sym (byte-compile--first-symbol-with-pos (cdr 
form))))
                sym)
           0))
-     ((and (vectorp form)
+     ((and (or (vectorp form) (recordp form))
            (> (length form) 0))
       (let ((i 0)
             (len (length form))
             elt)
         (catch 'sym
           (while (< i len)
-            (when (symbolp
+            (when (symbol-with-pos-p
                    (setq elt (byte-compile--first-symbol-with-pos (aref form 
i))))
               (throw 'sym elt))
             (setq i (1+ i)))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]