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

Alexander Gavrilov angavrilov at gmail.com
Tue Jul 13 07:43:34 UTC 2010


> On Mon, Jul 12, 2010 at 5:45 PM, Alexander Gavrilov <angavrilov at gmail.com>wrote:
> 
> > (defmethod foo ((bar t)) (declaim (optimize (speed 1))))
> >
> 
> I did not change anything since yesterday and this works for me.
> 

This requires cmp.fas to be loaded. In my case it happens
automatically because I load ASDF from .eclrc

Here is a session started from scratch:

$ ecl -norc
ECL (Embeddable Common-Lisp) 10.7.1
Copyright (C) 1984 Taiichi Yuasa and Masami Hagiya
Copyright (C) 1993 Giuseppe Attardi
Copyright (C) 2000 Juan J. Garcia-Ripoll
ECL is free software, and you are welcome to redistribute it
under certain conditions; see file 'Copyright' for details.
Type :h for Help.  
Top level in: #<process SI:TOP-LEVEL 00000000007c6f60>.
> (require 'asdf)

;;; Loading #P"/usr/lib64/ecl-10.7.1/asdf.fas"
;;; Loading #P"/usr/lib64/ecl-10.7.1/cmp.fas"
("ASDF" "CMP")
> (macroexpand-1 '(declaim (foo)))

(PROGN
 (SI:WITH-BACKEND :C/C++
  (EVAL-WHEN (:COMPILE-TOPLEVEL) (C::PROCESS-DECLAIM-ARGS '((FOO)))) :BYTECODES
  (EVAL-WHEN (:COMPILE-TOPLEVEL) (PROCLAIM '((FOO)))))
 (EVAL-WHEN (:LOAD-TOPLEVEL :EXECUTE) (MAPC 'PROCLAIM '((FOO)))))
#<compiled-function DECLAIM>
> (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 00000000007c6f60>.
>> :pop

Debugger received error: Detected access to an invalid or protected memory address.
Error flushed.




More information about the ecl-devel mailing list