[Ecls-list] Problem with DEFCLASS

Gabriel Dos Reis gdr at integrable-solutions.net
Mon Nov 9 23:08:39 UTC 2009


I believe there is a bug in the way ECL handles DEFCLASS,
but I have been unable to reduce the problem to a small testcase.

Here is how to reproduce it:

   (1) Download SBCL
            cvs -z9
-d:pserver:anonymous at sbcl.cvs.sourceforge.net:/cvsroot/sbcl co sbcl

   (2) Apply this patch to sbcl/src/cold/shared.lisp

Index: src/cold/shared.lisp
===================================================================
RCS file: /cvsroot/sbcl/sbcl/src/cold/shared.lisp,v
retrieving revision 1.41
diff -p -r1.41 shared.lisp
*** src/cold/shared.lisp        5 May 2009 20:02:12 -0000       1.41
--- src/cold/shared.lisp        9 Nov 2009 23:04:49 -0000
***************
*** 48,53 ****
--- 48,54 ----
     #+lispworks ".ufsl" ; as per Lieven Marchand sbcl-devel 2002-02-01
     #+(and openmcl (not darwin)) ".pfsl"
     #+(and openmcl darwin) ".dfsl"
+    #+ecl ".fas"
     ;; On most xc hosts, any old extension works, so we use an
     ;; arbitrary one.
     ".lisp-obj"))


   (3) issue
           sh ./make.sh ecl

   (4) the build should proceed and at some point fails, with this message


;;; Error: in file /home/gdr/src/sbcl.cvs/src/compiler/node.lisp,
position 54783, and form
;;;   (DEFINE-STRUCTURE 'CSET 'SET- ...)
;;; The form (SI::DEFINE-STRUCTURE 'CSET 'SET- 'NIL 'NIL ...) was not
evaluated successfully.
;;; Error detected:
;;; A definition for the slot LVAR appeared twice in a DEFCLASS form
couldn't compile "src/compiler/node.lisp"


-- Gaby




More information about the ecl-devel mailing list