--- Begin Message ---
Subject: |
Regression bug in auto-coding-alist |
Date: |
Mon, 03 May 2010 03:34:00 +0300 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (x86_64-pc-linux-gnu) |
I just discovered a regression bug wrt 23.1.
Loading arc-mode fails.
Arc-mode is a mode for the programming language Arc,
not for file archives.
It contains the following code to remove `no-conversion' associated with
the .arc extension from `auto-coding-alist' because there is a file
extension clash between Arc the programming language and file archives:
;; By default, Emacs thinks .arc is an archive extension.
;; This makes it normal.
(dolist (coding auto-coding-alist)
(when (and (string-match "[Aa][Rr][Cc]\\\\|" (car coding))
(or (eq (cdr coding) 'no-conversion)
(eq (cdr coding) 'no-conversion-multibyte)))
(setcar coding (replace-match "" nil nil (car coding)))))
This code fails with
(error "Attempt to modify read-only object")
A similar bug#4917 http://debbugs.gnu.org/4917
for `auto-coding-regexp-alist' was fixed 2009-11-13
by using purecopy only for car or each item,
not the whole list.
To make the code above to not fail, purecopy should be removed
from `auto-coding-alist'.
--
Juri Linkov
http://www.jurta.org/emacs/
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#6083: Regression bug in auto-coding-alist |
Date: |
Sun, 02 May 2010 22:02:59 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.1.96 (gnu/linux) |
Juri Linkov <address@hidden> writes:
> ;; By default, Emacs thinks .arc is an archive extension.
> ;; This makes it normal.
> (dolist (coding auto-coding-alist)
> (when (and (string-match "[Aa][Rr][Cc]\\\\|" (car coding))
> (or (eq (cdr coding) 'no-conversion)
> (eq (cdr coding) 'no-conversion-multibyte)))
> (setcar coding (replace-match "" nil nil (car coding)))))
>
> This code fails with
>
> (error "Attempt to modify read-only object")
>
> A similar bug#4917 http://debbugs.gnu.org/4917
> for `auto-coding-regexp-alist' was fixed 2009-11-13
> by using purecopy only for car or each item,
> not the whole list.
>
> To make the code above to not fail, purecopy should be removed
> from `auto-coding-alist'.
Thanks, I've fixed it in the branch.
--- End Message ---