[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: About `setf' with macro call
From: |
Stefan Monnier |
Subject: |
Re: About `setf' with macro call |
Date: |
Wed, 17 Apr 2013 11:03:17 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) |
ELISP> (macroexpand '(setf (wrong-order A B) 17))
> (let*
> ((v B)
> (v A))
> (aset v v 17))
> --8<---------------cut here---------------end--------------->8---
> Now that explains the let* in the backtrace, but the setf-expansion
> looks totally wrong! v is set to B (the index) and then overridden by A
> (the array).
Actually, no: try (setq print-gensym t) to see the full story.
Stefan