[Date Prev][Date Next][Thread Prev][][Date Index][Thread Index]

Re: Emacs CVS Head でダメ



>>>>> In [emacs-w3m : No.07175] 土屋さん wrote:

山> defsetf とか、かなあ。

> 現物を見ずに,上の changelog エントリだけからのあてずっぽうですが,
> defsetf() よりも,lexical-let() が問題になるだろうと思います,多分.

なるほど。Emacs 21.3 と先端の 21.3.50 では以下の違いがあります。

(macroexpand '(lexical-let ((foo "foo")) foo))

;; 21.3
 => (let ((--foo--97801 "foo")) (symbol-value (quote --foo--97801)))

;; 21.3.50
 => (let ((--cl-foo-- "foo")) (symbol-value (quote --cl-foo--)))

つまり 21.3 ではユニークなシンボル名がその都度生成されるのに対し
て、21.3.50 では毎回同じ。

うーむ、明らかに問題が起きる例を書けると良いのだけれど...