]> git.eshelyaron.com Git - emacs.git/commitdiff
* etc/NEWS: Note dotimes loop variable scoping change (bug#63586)
authorMattias Engdegård <mattiase@acm.org>
Sat, 20 May 2023 08:50:25 +0000 (10:50 +0200)
committerMattias Engdegård <mattiase@acm.org>
Sat, 20 May 2023 08:52:57 +0000 (10:52 +0200)
etc/NEWS

index fa428d9c7901f3f9f957e0e30670f53889c7a6f3..cdad1796e777b452e629ad3f4d95f89eafc22a4a 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -3871,6 +3871,19 @@ The following generalized variables have been made obsolete:
 'standard-case-table', 'syntax-table', 'visited-file-modtime',
 'window-height', 'window-width', and 'x-get-secondary-selection'.
 
+---
+** The 'dotimes' loop variable can no longer be manipulated in loop body
+Previously, the 'dotimes' loop counter could be modified inside the
+loop body, but only in code using dynamic binding.  Now the behaviour
+is the same as when using lexical binding: changes to the loop
+variable has no effect on subsequent iterations.  That is,
+
+    (dotimes (i 10)
+      (print i)
+      (setq i (+ i 6)))
+
+now always prints the numbers 0 .. 9.
+
 \f
 * Lisp Changes in Emacs 29.1