emacs-elpa-diffs
[Top][All Lists]
Advanced

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

[elpa] externals/compat 08c77ed 33/99: Declare variable for gensym


From: ELPA Syncer
Subject: [elpa] externals/compat 08c77ed 33/99: Declare variable for gensym
Date: Sun, 17 Oct 2021 05:57:52 -0400 (EDT)

branch: externals/compat
commit 08c77ed267c8f0ded5c214d0b3ff76c6d1729987
Author: Philip Kaludercic <philipk@posteo.net>
Commit: Philip Kaludercic <philipk@posteo.net>

    Declare variable for gensym
    
    Older versions of Emacs do not handle the let-over-lambda as should be
    expected, so an explicit variable has to be declared.
---
 compat-26.1.el | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/compat-26.1.el b/compat-26.1.el
index 90e07bf..b85d6ac 100644
--- a/compat-26.1.el
+++ b/compat-26.1.el
@@ -250,13 +250,16 @@ TRIM-LEFT and TRIM-RIGHT default to \"[ \\t\\n\\r]+\"."
   (declare (pure t))
   (cdr (cdr (cdr (cdr x)))))
 
-(let ((counter 0))
-  (compat-defun gensym (&optional prefix)
-    "Return a new uninterned symbol.
+(defvar compat--gensym-counter 0)
+
+(compat-defun gensym (&optional prefix)
+  "Return a new uninterned symbol.
 The name is made by appending `gensym-counter' to PREFIX.
 PREFIX is a string, and defaults to \"g\"."
-    (let ((num (prog1 counter (setq counter (1+ counter)))))
-      (make-symbol (format "%s%d" (or prefix "g") num)))))
+  (let ((num (prog1 compat--gensym-counter
+               (setq compat--gensym-counter
+                     (1+ compat--gensym-counter)))))
+    (make-symbol (format "%s%d" (or prefix "g") num))))
 
 ;;;; Defined in files.el
 



reply via email to

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