[Ecls-list] Latest changes

Juan Jose Garcia Ripoll jlr at mpq.mpg.de
Tue Apr 18 12:39:01 UTC 2006


I will be mostly offline during the following days, but I have been
working on holidays and wanted to give you an update of the most
important fixes.

* More efficient implementation of DEFMETHOD. NIL is no longer a valid
specializer in DEFMETHOD forms, though it is kept internally for
representing non-specialized arguments (this should change for MOP
conformance)

* All class slot definitions are now converted from list form to
standard-effective-slot-definition or standard-direct-slot-definition
classes.

* Fixes in the way the compiler handles &aux variables. Now they are
converted to a LET* form and only the free declarations and the bound
declarations for the &aux variables are propagated. This also solves a
problem with the scope of special declarations
	(defun foo (y)
	  (flet ((faa (&key (x y))
		   (declare (special y))
		   x))
	    (let ((y 4))
	      (declare (special y))
	      (faa))))
where (FOO 3) produced 4 before the bug was fixed.

* Added several regression tests (about 11) for the most recently
reported bugs. Some of these tests actually motivated the fixes
afterwards. It will now be a general policy of ECL to add one regression
test for each reported bug, except for bugs like failure to build,
SIGSEGV, etc, which are not reproducible.






More information about the ecl-devel mailing list