[Ecls-list] ecl cvs HEAD broken
Geo Carncross
geocar at gmail.com
Fri May 2 12:36:30 UTC 2008
This is affecting me as well. It looks like the change in 30apr08 in
src/h/eval.h to
1.6 (jgarcia 30-Apr-08): #define CAR(x) (Null(x)? (x) :
ECL_CONS_CAR(x))
from:
1.1 (jjgarcia 26-Jun-01): #define CAR(x) (x)->cons.car
is what did it. The compiler is apparently generating CAR(x) = foo
where it needs to be creating ECL_RPLACA(x,foo) statements.
Applying the attached patch should fix it- since the offending code is
always part of a closure, changing:
(defun wt-env (clv) (wt "CAR(CLV" clv ")"))
in src/cmp/cmpvar.lsp to:
(defun wt-env (clv) (wt "ECL_CONS_CAR(CLV" clv ")"))
should do it. The patch is also available at:
http://geocar.googlepages.com/ecl-cmp-fix-car.patch
if you can't receive attachments (for whatever reason)
On Thu, May 1, 2008 at 11:23 PM, Gabriel Dos Reis <gdr at cs.tamu.edu> wrote:
>
> Hi,
>
> An attempt at building a freshly updated ECL CVS HEAD failed with
>
>
> /home/gdr/src/ecl.cvs/build/lsp/helpfile.c: In function 'L4dump_help_file':
> /home/gdr/src/ecl.cvs/build/lsp/helpfile.c:96: error: invalid lvalue in assignment
> /home/gdr/src/ecl.cvs/build/lsp/helpfile.c: In function 'LC3__g11934':
> /home/gdr/src/ecl.cvs/build/lsp/helpfile.c:170: error: invalid lvalue in assignment
> LAMBDA: Too many arguments to function CONTINUE.
> Broken at TOP-LEVEL. File: #P"/home/gdr/src/ecl.cvs/src/lsp/top.lsp" (Form #26)No restarts available.
> Top level.
> SI>
>
>
> This is on openSUSE-10.2/x86_64 with system installed GCC-4.1.2.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ecl-cmp-fix-car.patch
Type: application/octet-stream
Size: 638 bytes
Desc: not available
URL: <https://mailman.common-lisp.net/pipermail/ecl-devel/attachments/20080502/4ade900b/attachment.obj>
More information about the ecl-devel
mailing list