Katsumi Yamaoka <yamaoka(a)jpl.org> writes:
I found a strange behavior about buffer-local variables. Could
you evaluate the following form in the *scratch* buffer?
(let ((buffer-1 (generate-new-buffer "*test-1*"))
(buffer-2 (generate-new-buffer "*test-2*")))
(makunbound 'testing-whether-this-variable-is-bound-globally)
(save-excursion
(set-buffer buffer-1)
(make-local-variable 'testing-whether-this-variable-is-bound-globally)
(let (testing-whether-this-variable-is-bound-globally)
(save-excursion
(set-buffer buffer-2)
(setq testing-whether-this-variable-is-bound-globally "Howl!")
)))
(kill-buffer buffer-1)
(kill-buffer buffer-2)
testing-whether-this-variable-is-bound-globally)
You will see it does not signal the void-variable error but
return a string. I am not sure whether it causes a real
problem, though.
I see exactly the same behavior on emacs-21.3.50 (latest CVS) as I do
in XEmacs 21.4 and 21.5. ^X^E evaluates to "Howl!" in each case.
What did you expect to happen?
- Vin