J'ai eu un bug dans l'une de mes extensions qui s'est finalement avéré être causé par le fait de set
ne pas fonctionner comme prévu:
;; -*- lexical-binding: t -*-
(let ((a nil))
(setq a t)
(print a))
(let ((a nil))
(set 'a t)
(print a))
lorsqu'il est exécuté avec des emacs -Q --batch -l temp.el
impressions:
t
nil
Cela me semble très étrange. J'avais l'impression que c'était un (setq a b)
raccourci (set 'a b)
. Que se passe-t-il?
la source