[Ecls-list] Problem compiling cl-colors
Daniel Herring
dherring at tentpost.com
Sat Sep 19 01:48:00 UTC 2009
On Wed, 16 Sep 2009, Neil Baylis wrote:
> I ran into the following problem when installing cl-colors with ecl.
...
> ;;; Warning: in file /Users/neil/.asdf-install-dir/site/cl-colors/
> colors.lisp, position 1039, and form
> ;;; (INSTALL-METHOD 'ADD-ALPHA 'NIL ...)
> ;;; Too many arguments for generic function MAKE-INSTANCE
These warnings may need to be resolved, but they are not your immediate
problem.
> ;;; Warning: in file /Users/neil/.asdf-install-dir/site/cl-colors/
> colors.lisp, position 2609, and form
> ;;; (FSET 'HSV->RGB #'(LAMBDA-BLOCK HSV->RGB # ...))
> ;;; Unknown type (VALUES &REST T)
Again, not the immediate problem.
> ;;; Error: in file /Users/neil/.asdf-install-dir/site/cl-colors/
> colors.lisp, position 3981, and form
> ;;; (FSET 'CONVEX-COMBINATION #'(LAMBDA-BLOCK CONVEX-COMBINATION #
> ...))
...
> ;;; Syntax error in declaration (DECLARE ((REAL 0 1) ALPHA))
> erred while invoking #<ASDF:COMPILE-OP NIL 11941088> on #<ASDF:CL-
> SOURCE-FILE "colors" "cl-colors" 11941760>
Here's the error that halted compilation. Many lisps (e.g. sbcl) are
accepting of malformed type declarations. ECL is stricter on this point;
according to ANSI, TYPE can be omitted for simple types but not for
compound types. Change the above to (DECLARE (type (REAL 0 1) ALPHA)),
and compilation should succeed.
This is one of the top two issues I see when compiling libraries with ECL
(the other being incorrectly-ordered LOOP statements).
Hope that helps,
Daniel
More information about the ecl-devel
mailing list