再現性はつかめてないんだけど、*.plなファイルを開いたときにたまにエラーが起こる。発生すると、以降は毎回*.plなファイルを開いたときに同じエラーが起こる。
- emacs-version = "22.0.50.1"
- cperl-version = "5.22" (http://math.berkeley.edu/~ilya/software/emacs/)
cperl-mode.elを新しいのにしてから不調のような気がする。
とりあえずバックトレースをコピペ。
Debugger entered--Lisp error: (void-function compilation-build-compilation-error-regexp-alist)
compilation-build-compilation-error-regexp-alist()
funcall(compilation-build-compilation-error-regexp-alist)
(let ((f ...)) (funcall f))
(cond ((boundp ...) (make-local-variable ...) (set ... ...) (let ... ...)) ((boundp ...) (make-local-variable ...) (set ... ...)))
cperl-mode()
set-auto-mode-0(cperl-mode nil)
set-auto-mode()
normal-mode(t)
after-find-file(nil t)
find-file-noselect-1(#<buffer oops.pl> "~/oops.pl" nil nil "~/oops.pl" (95939 772))
find-file-noselect("/home/hirose31/oops.pl" nil nil nil)
find-file("/home/hirose31/oops.pl")
find-file-at-point()
call-interactively(find-file-at-point)追記
cperl-mode.el.5.22だと、
(cond ((boundp 'compilation-error-regexp-alist-alist);; xemacs 20.x
なふうにcompilation-error-regexp-alist-alistのあり/なしでXEmacsかどうかの判別をしてるんだけど、最近のEmacsは
でcompilation-error-regexp-alist-alistが導入されたので、EmacsなのにXEmacs用のコードに入っちゃうのが原因っぽい。
サンクス!>katokenさん
さらに追記
Emacsのレポジトリ
に、cperl-mode.el-5.22がマージされてるみたいなので、コレ使ってみよ。