[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#4917: Error: Attempt to modify read-only object
From: |
Dan Nicolaescu |
Subject: |
bug#4917: Error: Attempt to modify read-only object |
Date: |
Thu, 12 Nov 2009 16:35:06 -0800 (PST) |
Juri Linkov <juri@jurta.org> writes:
> Starting Emacs fails with the error:
>
> Warning (initialization): An error occurred while loading
`/home/juri/.emacs':
>
> error: Attempt to modify read-only object
>
> To ensure normal operation, you should investigate and remove the
> cause of the error in your initialization file. Start Emacs with
> the `--debug-init' option to view a complete error backtrace.
>
> Starting Emacs with the `--debug-init' option displays:
>
> Debugger entered--Lisp error: (error "Attempt to modify read-only object")
> delete(("\\`\357\273\277" . utf-8-with-signature) (("\\`BABYL OPTIONS:[
]*-\\*-[ ]*rmail[ ]*-\\*-" . no-conversion)
("\\`\376\377" . utf-16be-with-signature) ("\\`\377\376" .
utf-16le-with-signature) ("\\`\357\273\277" . utf-8-with-signature) ("\\`;ELC"
. emacs-mule)))
> (setq auto-coding-regexp-alist (delete (rassoc ...
auto-coding-regexp-alist) auto-coding-regexp-alist))
>
> The reason of this error in .emacs is the lines that remove a match
> for `utf-8-with-signature' from `auto-coding-regexp-alist' that allows
> to always display the BOM (Byte-order mark signature) to be able
> to remove it without the need to visit files literally:
>
> (setq auto-coding-regexp-alist
> (delete (rassoc 'utf-8-with-signature auto-coding-regexp-alist)
> auto-coding-regexp-alist))
>
> Before yesterday there were no problems with this.
This is mine, too aggressive use of purecopy.
auto-coding-regexp-alist needs to be changed like this:
(defcustom auto-coding-regexp-alist
(mapcar (lambda (arg) (cons (purecopy (car arg)) (cdr arg)))
'(("\\`BABYL OPTIONS:[ \t]*-\\*-[ \t]*rmail[ \t]*-\\*-" . no-conversion)
[....]
I'll check it in when I get a chance. If it's in your way, please feel
free to do it earlier.