Skip to content

Commit 1379d3b

Browse files
committed
Fix CI compilation failures across Emacs versions
- Replace cl-loop `being the intervals` with an explicit loop using `next-single-property-change` to avoid free variable warnings that `cl-loop` generates on Emacs 28/29. - Replace `when-let` with `when-let*` (obsolete as of Emacs 31). - Set `fail-fast: false` in CI matrix so all versions run independently.
1 parent 7c9081f commit 1379d3b

1 file changed

Lines changed: 9 additions & 9 deletions

File tree

adoc-mode.el

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2050,15 +2050,15 @@ START-SRC and END-SRC delimit the actual source code."
20502050
(insert string))
20512051
(unless (eq major-mode lang-mode) (funcall lang-mode))
20522052
(font-lock-ensure)
2053-
(with-suppressed-warnings ((lexical interval))
2054-
(cl-loop for interval being the intervals property 'face
2055-
for pos = (car interval)
2056-
for next = (cdr interval)
2057-
for val = (get-text-property pos 'face)
2058-
when val do
2059-
(put-text-property
2060-
(+ start-src (1- pos)) (1- (+ start-src next)) 'face
2061-
val adoc-buffer))))
2053+
(let ((pos (point-min)))
2054+
(while (< pos (point-max))
2055+
(let ((next (next-single-property-change pos 'face nil (point-max)))
2056+
(val (get-text-property pos 'face)))
2057+
(when val
2058+
(put-text-property
2059+
(+ start-src (1- pos)) (1- (+ start-src next)) 'face
2060+
val adoc-buffer))
2061+
(setq pos next)))))
20622062
(set-buffer-modified-p modified)))))
20632063

20642064
(defconst adoc-code-block-begin-regexp

0 commit comments

Comments
 (0)