[Ecls-list] [PATCH,BUG] Some fixes for ECL & a bug

Alexander Gavrilov angavrilov at gmail.com
Mon Jul 12 15:45:10 UTC 2010


On Sun, Jul 11, 2010 at 5:48 PM, Juan Jose Garcia-Ripoll
<juanjose.garciaripoll at googlemail.com> wrote:
>> (defmacro xxxxx (v) t)
>> (defmethod foo (arg) (xxxxx (((arg)))))
>
> This should be compiling just fine now.

I've noticed some new bugs:

CL-USER[1]> (defmethod foo ((bar t)) (declaim (optimize (speed 1))))

Break
Available restarts:

1. (CONTINUE) Return from BREAK.
2. (RESTART-TOPLEVEL) Go back to Top-Level REPL.

Broken at SI:BYTECODES. [Evaluation of: (PROGN (PROCLAIM '((OPTIMIZE
(SPEED 1)))))] In: #<process SI:TOP-LEVEL 0000000001ef2f60>.
** BREAK [LEVEL 2]> :continue
Debugger received error: Detected access to an invalid or protected
memory address.
Error flushed.
** BREAK [LEVEL 2]> :continue

gdb:

Program received signal SIGSEGV, Segmentation fault.
0x00007fe2f248cf06 in guess_environment (env=0x7fe2f28c6000,
interpreter_env=0x4707f41) at
/home/.../SysAdm/ProgramAdm/ecl/src/c/compiler.d:521
521                             cl_object record0 = ECL_CONS_CAR(record);
(gdb) p record
$1 = (cl_object) 0x1

Issues seen here:

1. declaim generates a broken proclaim call for the bytecode compiler
2. the bytecode compiler evaluates the eval-when even though it is not
a top-level form
3. the debugger crashes (even :exit doesn't work)




More information about the ecl-devel mailing list