On Sun, Jan 1, 2012 at 7:34 PM, Gabriel Dos Reis <gdr@cs.tamu.edu> wrote:
A fresh update of my local copy of ECL CVS version shows a regression
involving macro expansion, GETHASH, SETF and HASH-SET.  In short, after
expansion, the arguments to HASH-SET seems to be switched.

Thanks for reporting. The problem is not actually related to the hash functions. ECL now includes a tiny SETF form optimizer that simplifies some expressions, trying to reduce the number of LET bindings that are generated. Your macro reordered the list of arguments w.r.t the list produced by the get-setf-expansion and this confused the optimizer. I will upload a patch tonight.


Instituto de Física Fundamental, CSIC
c/ Serrano, 113b, Madrid 28006 (Spain)