Problems with macros and Emacs 29 (DELETED)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
VM |
Invalid
|
Undecided
|
Unassigned |
Bug Description
In Emacs 29 vm macros in wm-macro.el are not recognized as macros anymore, i.e.
(defmacro vm-save-restriction (&rest forms)
(let ((vm-sr-clip (make-symbol "vm-sr-clip"))
(vm-sr-min (make-symbol "vm-sr-min"))
(vm-sr-max (make-symbol "vm-sr-max")))
`(let ((,vm-sr-clip (> (buffer-size) (- (point-max) (point-min))))
;; this shouldn't be necessary but the
;; byte-compiler turns these into interned symbols
;; which utterly defeats the purpose of the
;; make-symbol calls above. Soooo, until the compiler
;; is fixed, these must be made into (let ...)
;; temporaries so that nested calls to this macros
;; won't misbehave.
,vm-sr-min ,vm-sr-max)
(and ,vm-sr-clip
(setq ,vm-sr-min (set-marker (make-marker) (point-min)))
(setq ,vm-sr-max (set-marker (make-marker) (point-max))))
(unwind-protect
(progn ,@forms)
(widen)
(and ,vm-sr-clip
(progn
(narrow-
(set-marker ,vm-sr-min nil)
(set-marker ,vm-sr-max nil)))))))
causes this error:
vm-run-
summary: |
- Problems with macros and Emacs 29 + Problems with macros and Emacs 29 (BLOCKING) |
Changed in vm: | |
status: | New → Invalid |
summary: |
- Problems with macros and Emacs 29 (BLOCKING) + Problems with macros and Emacs 29 (DELETED) |
Turning the macro in a function seems a viable workaround for this function, but may cause problem with other macros.