Update of /project/movitz/cvsroot/movitz/losp/muerte In directory common-lisp.net:/tmp/cvs-serv14934
Modified Files: symbols.lisp Log Message: Fixed a really braindead bug in copy-symbol. The tag offset of a symbol is 7, not 6, and this caused unaligned accesses and potentially faulty copying.
Date: Wed Jul 7 16:22:17 2004 Author: ffjeld
Index: movitz/losp/muerte/symbols.lisp diff -u movitz/losp/muerte/symbols.lisp:1.14 movitz/losp/muerte/symbols.lisp:1.15 --- movitz/losp/muerte/symbols.lisp:1.14 Mon Jun 14 12:40:42 2004 +++ movitz/losp/muerte/symbols.lisp Wed Jul 7 16:22:16 2004 @@ -10,7 +10,7 @@ ;;;; Author: Frode Vatvedt Fjeld frodef@acm.org ;;;; Created at: Tue Sep 4 23:55:41 2001 ;;;; -;;;; $Id: symbols.lisp,v 1.14 2004/06/14 19:40:42 ffjeld Exp $ +;;;; $Id: symbols.lisp,v 1.15 2004/07/07 23:22:16 ffjeld Exp $ ;;;; ;;;;------------------------------------------------------------------
@@ -172,8 +172,8 @@ (%create-symbol (symbol-name symbol)) (let ((x (%word-offset (malloc-clumps 3) 1))) (dotimes (i 6) - (setf (memref x #.movitz:+other-type-offset+ i :lisp) - (memref symbol #.movitz:+other-type-offset+ i :lisp))) + (setf (memref x #.(cl:- (movitz:tag :symbol)) i :lisp) + (memref symbol #.(cl:- (movitz:tag :symbol)) i :lisp))) x)))
(defun symbol-flags (symbol)