Subject: Re: bug#46573: 28.0.50; Error when edebugging setting unbound place

From: Lars Ingebrigtsen <[email-masked]>
Date: Tue, 16 Feb 2021 23:51:28 +0100

Michael Heerdegen <[email-masked]> writes:

> when edebugging something like
>
>   (setf PLACE VALUE)
>
> Edebug stops after PLACE and displays its "binding". 

This is due to this definition:

;; Autoload this `put' since a user might use C-u C-M-x on an expression
;; containing a non-trivial `push' even before gv.el was loaded.
;;;###autoload
(put 'gv-place 'edebug-form-spec '(form)) ;So-called "indirect spec".

That's certainly not correct for the simplest forms like

(setf foo 'bar)

And it's not really correct for things like

(setf (gethash 1 table) 'bar)

either, is it?  (Although it is amusing to see the results of
(gethash 1 table), it's not really helpful.)

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no