Skip to content
Snippets Groups Projects
Commit 2fd33a55 authored by rtoy's avatar rtoy
Browse files

Fix symbol-macrolet + declare ignore bug found by Pascal Costanza,

cmucl-imp, 2006/05/20.  See Trac ticket #4.
parent 4b5f9c3f
No related branches found
No related tags found
No related merge requests found
......@@ -5,7 +5,7 @@
;;; Carnegie Mellon University, and has been placed in the public domain.
;;;
(ext:file-comment
"$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/ir1tran.lisp,v 1.172 2005/05/06 16:42:38 rtoy Exp $")
"$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/ir1tran.lisp,v 1.173 2006/05/23 20:35:01 rtoy Rel $")
;;;
;;; **********************************************************************
;;;
......@@ -1311,7 +1311,14 @@
(compiler-note "Ignoring free ignore declaration for ~S." name)
(compiler-warning "Ignore declaration for unknown variable ~S."
name)))
((and (consp var) (consp (cdr var)) (eq (car var) 'macro))
((and (consp var)
(eq (car var) 'macro)
;; Var is '(macro foo). Why must foo be a cons? This
;; causes (symbol-macrolet ((a 42)) (declare (ignorable
;; a)) ...) to get a type error from a test below because
;; var is '(macro . 42) in this case.
#+nil
(consp (cdr var)))
;; Just ignore the ignore decl.
)
((functional-p var)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment