emacs-devel
[Top][All Lists]
Advanced

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

Re: master af4791b5706: Fix apparently wrong `delete` and `delq` value d


From: Eli Zaretskii
Subject: Re: master af4791b5706: Fix apparently wrong `delete` and `delq` value discards (bug#61730)
Date: Thu, 25 May 2023 10:09:28 +0300

This part of the changeset looks strange to me:

  diff --git a/lisp/allout.el b/lisp/allout.el
  index be2fd632c69..d3203800168 100644
  --- a/lisp/allout.el
  +++ b/lisp/allout.el
  @@ -6307,7 +6307,7 @@ not its value."
             (if (yes-or-no-p (format-message
                              "%s entry `%s' is unbound -- remove it? "
                              configvar-name sym))
  -              (delq sym (symbol-value configvar-name)))
  +              (set configvar-name (delq sym (symbol-value configvar-name))))
           (push (symbol-value sym) got)))

configvar-name is evidently a string, whereas the value returned by
delq is not a string at all.  Do you understand why this code even
calls delq?  If it wants to change the value of configvar-name, it
should assign to (symbol-value configvar-name), no?  And if all it
wants is to skip 'sym' and not add it to 'got', then there's no need
to call delq, right?



reply via email to

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