/[gcl]/gcl/lsp/gcl_evalmacros.lsp
ViewVC logotype

Diff of /gcl/lsp/gcl_evalmacros.lsp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.8 by camm, Wed Sep 7 02:46:45 2005 UTC revision 1.9 by camm, Sun Sep 18 02:09:19 2005 UTC
# Line 28  Line 28 
28  (in-package "SYSTEM")  (in-package "SYSTEM")
29    
30    
31  (eval-when (compile) (proclaim '(optimize (safety 2) (space 3))))  (eval-when (compile) (proclaim '(optimize (safety 1) (space 3))))
32  (eval-when (eval compile) (defun si:clear-compiler-properties (symbol)))  (eval-when (eval compile) (defun si:clear-compiler-properties (symbol)))
33  (eval-when (eval compile) (setq si:*inhibit-macro-special* nil))  (eval-when (eval compile) (setq si:*inhibit-macro-special* nil))
34    
# Line 274  Line 274 
274    
275  (defmacro dolist ((var form &optional (val nil)) &rest body  (defmacro dolist ((var form &optional (val nil)) &rest body
276                                                   &aux (temp (gensym)))                                                   &aux (temp (gensym)))
277    `(do* ((,temp ,form (cdr ,temp)) (,var (car ,temp) (car ,temp)))    `(do* ((,temp ,form (cdr ,temp)))
278          ((endp ,temp) ,val)          ((not (consp ,temp)) (check-type ,temp null) ,val)
279          ,@body))          (let ((,var (car ,temp)))
280              ,@body)))
281    
282  ;; In principle, a more complete job could be done here by trying to  ;; In principle, a more complete job could be done here by trying to
283  ;; capture fixnum type declarations from the surrounding context or  ;; capture fixnum type declarations from the surrounding context or
# Line 343  Line 344 
344               ,@(mapcar #'(lambda (x) `(proclaim ',x)) l)))               ,@(mapcar #'(lambda (x) `(proclaim ',x)) l)))
345    
346  (defmacro lambda ( &rest l) `(function (lambda ,@l)))  (defmacro lambda ( &rest l) `(function (lambda ,@l)))
347    
348  (defmacro memq (a b) `(member ,a ,b :test 'eq))  (defmacro memq (a b) `(member ,a ,b :test 'eq))

Legend:
Removed from v.1.8  
changed lines
  Added in v.1.9

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26