diff --git a/changelog b/changelog
index 3f17380..81d5422 100644
--- a/changelog
+++ b/changelog
@@ -1,3 +1,5 @@
+20090922 tpd src/axiom-website/patches.html 20090922.06.tpd.patch
+20090922 tpd src/interp/compiler.lisp cleanup
 20090922 tpd src/axiom-website/patches.html 20090922.05.tpd.patch
 20090922 tpd src/interp/category.lisp cleanup
 20090922 tpd src/axiom-website/patches.html 20090922.04.tpd.patch
diff --git a/src/axiom-website/patches.html b/src/axiom-website/patches.html
index b871ce2..d9d48c5 100644
--- a/src/axiom-website/patches.html
+++ b/src/axiom-website/patches.html
@@ -2020,5 +2020,7 @@ src/interp/apply.lisp cleanup<br/>
 src/interp/profile.lisp cleanup<br/>
 <a href="patches/20090922.05.tpd.patch">20090922.05.tpd.patch</a>
 src/interp/category.lisp cleanup<br/>
+<a href="patches/20090922.06.tpd.patch">20090922.06.tpd.patch</a>
+src/interp/compiler.lisp cleanup<br/>
  </body>
 </html>
diff --git a/src/interp/compiler.lisp.pamphlet b/src/interp/compiler.lisp.pamphlet
index d36d90d..a9263be 100644
--- a/src/interp/compiler.lisp.pamphlet
+++ b/src/interp/compiler.lisp.pamphlet
@@ -40,7 +40,7 @@
             |val| |mode|)
     (DECLARE (SPECIAL |$NRTderivedTargetIfTrue| |$killOptimizeIfTrue|
                       |$forceAdd| |$compTimeSum| |$resolveTimeSum|
-                      |$packagesUsed| |$envHashTable|))
+                      |$packagesUsed| |$envHashTable| |$newCompAtTopLevel|))
     (RETURN
       (SEQ (PROGN
              (SPADLET |$NRTderivedTargetIfTrue| NIL)
@@ -241,6 +241,7 @@ from the compiler stack {\tt \$compStack} and
        (|x| |m| |e| |$compStack| |$compErrorMessageStack| |compFn|)
   (DECLARE (SPECIAL |$compStack| |$compErrorMessageStack|))
   (PROG (T$ |errorMessage|)
+  (DECLARE (SPECIAL |$level| |$s| |$scanIfTrue| |$exitModeStack|))
     (RETURN
       (SEQ (IF (SPADLET T$
                         (CATCH '|compOrCroak|
@@ -280,6 +281,7 @@ from the compiler stack {\tt \$compStack} and
 ;  comp($x,$m,$f)
 
 (DEFUN |tc| ()
+  (declare (special |$tripleCache| |$x| |$m| |$f|))
   (PROGN (SPADLET |$tripleCache| NIL) (|comp| |$x| |$m| |$f|)))
 
 @
@@ -292,6 +294,7 @@ from the compiler stack {\tt \$compStack} and
 
 (DEFUN |comp| (|x| |m| |e|)
   (PROG (T$)
+  (declare (special |$compStack| |$exitModeStack|))
     (RETURN
       (COND
         ((SPADLET T$ (|compNoStacking| |x| |m| |e|))
@@ -318,6 +321,7 @@ from the compiler stack {\tt \$compStack} and
 
 (DEFUN |compNoStacking| (|x| |m| |e|)
   (PROG (T$)
+  (declare (special |$compStack| |$Representation| |$EmptyMode|))
     (RETURN
       (COND
         ((SPADLET T$ (|comp2| |x| |m| |e|))
@@ -367,6 +371,7 @@ from the compiler stack {\tt \$compStack} and
 
 (DEFUN |comp2| (|x| |m| |e|)
   (PROG (|LETTMP#1| |y| |m'|)
+  (declare (special |$bootStrapMode| |$packagesUsed| $LISPLIB))
     (RETURN
       (PROGN
         (SPADLET |LETTMP#1| (OR (|comp3| |x| |m| |e|) (RETURN NIL)))
@@ -414,6 +419,7 @@ from the compiler stack {\tt \$compStack} and
   (DECLARE (SPECIAL |$e|))
   (PROG (|e| |a| |op| |ml| |u| |sig| |varlist| |ISTMP#3| |body| |t|
              |x'| |ISTMP#1| |m'| |ISTMP#2| |e'|)
+  (declare (special |$insideCompTypeOf|))
     (RETURN
       (PROGN
         (SPADLET |$e| (|addDomain| |m| |$e|))
@@ -502,7 +508,7 @@ from the compiler stack {\tt \$compStack} and
 
 (DEFUN |compTypeOf| (|x| |m| |e|)
   (PROG (|$insideCompTypeOf| |op| |argl| |newModemap|)
-    (DECLARE (SPECIAL |$insideCompTypeOf|))
+    (DECLARE (SPECIAL |$insideCompTypeOf| |$FormalMapVariableList|))
     (RETURN
       (PROGN
         (SPADLET |op| (CAR |x|))
@@ -524,6 +530,7 @@ from the compiler stack {\tt \$compStack} and
 ;     hasone? x == MEMQ(x,$formalMapVariables)
 
 (DEFUN |hasFormalMapVariable,hasone?| (|x|)
+  (declare (special |$formalMapVariables|))
   (MEMQ |x| |$formalMapVariables|))
 
 (DEFUN |hasFormalMapVariable| (|x| |vl|)
@@ -671,6 +678,7 @@ from the compiler stack {\tt \$compStack} and
 ;  compWithMappingMode1(x,m,oldE,$formalArgList)
 
 (DEFUN |compWithMappingMode| (|x| |m| |oldE|)
+  (declare (special |$formalArgList|))
   (|compWithMappingMode1| |x| |m| |oldE| |$formalArgList|))
 
 @
@@ -881,7 +889,9 @@ from the compiler stack {\tt \$compStack} and
             |ISTMP#2| |nx| |oldstyle| |ress| |vl1| |vl| |e| |t|
             |LETTMP#1| |u| |frees| |i| |scode| |locals| |ISTMP#1|
             |body| |vec| |expandedFunction| |fname| |uu|)
-    (DECLARE (SPECIAL |$killOptimizeIfTrue| $FUNNAME $FUNNAME_TAIL))
+    (DECLARE (SPECIAL |$killOptimizeIfTrue| $FUNNAME $FUNNAME_TAIL
+                      |$QuickCode| |$EmptyMode| |$FormalMapVariableList|
+                      |$CategoryFrame|))
     (RETURN
       (SEQ (PROGN
              (COND ((EQ (CAR |m|) '|Mapping|) (CAR |m|)))
@@ -1245,6 +1255,7 @@ from the compiler stack {\tt \$compStack} and
 
 (DEFUN |compAtom| (|x| |m| |e|)
   (PROG (|ISTMP#1| |ISTMP#2| R T$ |t|)
+  (declare (special |$Expression|))
     (RETURN
       (COND
         ((SPADLET T$
@@ -1311,6 +1322,8 @@ from the compiler stack {\tt \$compStack} and
 ;  nil
 
 (DEFUN |primitiveType| (|x|)
+  (declare (special |$DoubleFloat| |$NegativeInteger| |$PositiveInteger|
+                     |$NonNegativeInteger| |$String| |$EmptyMode|))
   (COND
     ((NULL |x|) |$EmptyMode|)
     ((STRINGP |x|) |$String|)
@@ -1347,6 +1360,9 @@ from the compiler stack {\tt \$compStack} and
 
 (DEFUN |compSymbol| (|s| |m| |e|)
   (PROG (|v| |m'|)
+  (declare (special |$Symbol| |$Expression| |$FormalMapVariableList|
+                    |$compForModeIfTrue| |$formalArgList| |$NoValueMode|
+                    |$functorLocalParameters| |$Boolean| |$NoValue|))
     (RETURN
       (COND
         ((BOOT-EQUAL |s| '|$NoValue|)
@@ -1428,6 +1444,7 @@ from the compiler stack {\tt \$compStack} and
 
 (DEFUN |mkUnion| (|a| |b|)
   (PROG (|l'| |l|)
+  (declare (special |$Rep|))
     (RETURN
       (COND
         ((AND (BOOT-EQUAL |b| '$) (PAIRP |$Rep|)
@@ -1535,6 +1552,7 @@ from the compiler stack {\tt \$compStack} and
 
 (DEFUN |compArgumentsAndTryAgain| (|form| |m| |e|)
   (PROG (|argl| |ISTMP#1| |a| |ISTMP#2| |LETTMP#1| |u|)
+  (declare (special |$EmptyMode|))
     (RETURN
       (SEQ (PROGN
              (SPADLET |argl| (CDR |form|))
@@ -1587,6 +1605,7 @@ from the compiler stack {\tt \$compStack} and
 
 (DEFUN |outputComp| (|x| |e|)
   (PROG (|u| |argl| |LETTMP#1| |v| |ISTMP#1| |l|)
+  (declare (special |$Expression|))
     (RETURN
       (SEQ (COND
              ((SPADLET |u|
@@ -1663,7 +1682,7 @@ from the compiler stack {\tt \$compStack} and
 (DEFUN |compForm1| (|form| |m| |e|)
   (PROG (|$NumberOfArgsIfInteger| |op| |argl| |domain| |ISTMP#2| |op'|
             |LETTMP#1| |ISTMP#1| |ans| |mmList| T$)
-    (DECLARE (SPECIAL |$NumberOfArgsIfInteger|))
+    (DECLARE (SPECIAL |$NumberOfArgsIfInteger| |$Expression| |$EmptyMode|))
     (RETURN
       (SEQ (PROGN
              (SPADLET |op| (CAR |form|))
@@ -1839,6 +1858,7 @@ from the compiler stack {\tt \$compStack} and
 
 (DEFUN |compExpressionList| (|argl| |m| |e|)
   (PROG (|LETTMP#1| |Tl|)
+  (declare (special |$Expression|))
     (RETURN
       (SEQ (PROGN
              (SPADLET |Tl|
@@ -1919,9 +1939,9 @@ from the compiler stack {\tt \$compStack} and
 
 (DEFUN |compForm2| (|form| |m| |e| |modemapList|)
   (PROG (|op| |argl| |sargl| |aList| |dc| |ISTMP#3| |cond| |ISTMP#4|
-              |ISTMP#5| |ISTMP#6| |ISTMP#7| |nsig| |v| |ISTMP#1|
-              |ISTMP#2| |ncond| |deleteList| |newList| T$ |Tl|
-              |partialModeList|)
+              |ISTMP#5| |ISTMP#6| |ISTMP#7| |nsig| |v| |ISTMP#1| |ISTMP#2|
+              |ncond| |deleteList| |newList| T$ |Tl| |partialModeList|)
+  (declare (special |$EmptyMode| |$TriangleVariableList|))
     (RETURN
       (SEQ (PROGN
              (SPADLET |op| (CAR |form|))
@@ -2192,6 +2212,7 @@ from the compiler stack {\tt \$compStack} and
 
 (DEFUN |compForm3| (|form| |m| |e| |modemapList|)
   (PROG (|op| |argl| |mml| T$)
+  (declare (special |$compUniquelyIfTrue|))
     (RETURN
       (SEQ (PROGN
              (SPADLET |op| (CAR |form|))
@@ -2254,6 +2275,7 @@ from the compiler stack {\tt \$compStack} and
 (DEFUN |getFormModemaps| (|form| |e|)
   (PROG (|op| |argl| |domain| |ISTMP#2| |op1| |ISTMP#1| |dom|
               |modemapList| |nargs| |sig| |finalModemapList|)
+  (declare (special |$insideCategoryPackageIfTrue|))
     (RETURN
       (SEQ (PROGN
              (SPADLET |op| (CAR |form|))
@@ -2703,6 +2725,7 @@ from the compiler stack {\tt \$compStack} and
 ;compConstructorCategory(x,m,e) == [x,resolve($Category,m),e]
 
 (DEFUN |compConstructorCategory| (|x| |m| |e|)
+  (declare (special |$Category|))
   (CONS |x| (CONS (|resolve| |$Category| |m|) (CONS |e| NIL))))
 
 @
@@ -2711,6 +2734,7 @@ from the compiler stack {\tt \$compStack} and
 ;compString(x,m,e) == [x,resolve($StringCategory,m),e]
 
 (DEFUN |compString| (|x| |m| |e|)
+  (declare (special |$StringCategory|))
   (CONS |x| (CONS (|resolve| |$StringCategory| |m|) (CONS |e| NIL))))
 
 @
@@ -2731,6 +2755,7 @@ Compile SubsetCategory
 
 (DEFUN |compSubsetCategory| (G168021 |m| |e|)
   (PROG (|cat| R)
+  (declare (special |$lhsOfColon|))
     (RETURN
       (PROGN
         (COND
@@ -2798,8 +2823,8 @@ Compile cons
 ;  convert(T,m)
 
 (DEFUN |compCons1| (G168075 |m| |e|)
-  (PROG (|mx| |y| |my| |yt| |m'| |mr| |yt'| |LETTMP#1| |x| |ISTMP#1|
-              T$)
+  (PROG (|mx| |y| |my| |yt| |m'| |mr| |yt'| |LETTMP#1| |x| |ISTMP#1| T$)
+  (declare (special |$EmptyMode|))
     (RETURN
       (PROGN
         (COND ((EQ (CAR G168075) 'CONS) (CAR G168075)))
@@ -2902,6 +2927,7 @@ Compile setq
 
 (DEFUN |compSetq1| (|form| |val| |m| E)
   (PROG (|ISTMP#1| |x| |ISTMP#2| |y| |LETTMP#1| |E'| |op| |l|)
+  (declare (special |$EmptyMode|))
     (RETURN
       (COND
         ((IDENTP |form|) (|setqSingle| |form| |val| |m| E))
@@ -3009,9 +3035,9 @@ Compile setelt
 
 (DEFUN |setqSingle| (|id| |val| |m| E)
   (PROG (|$insideSetqSingleIfTrue| |currentProplist| |m''| |maxm''| T$
-            |LETTMP#1| |x| |m'| |T'| |key| |newProplist| |e'| |k|
-            |form|)
-    (DECLARE (SPECIAL |$insideSetqSingleIfTrue|))
+            |LETTMP#1| |x| |m'| |T'| |key| |newProplist| |e'| |k| |form|)
+    (DECLARE (SPECIAL |$insideSetqSingleIfTrue| |$QuickLet| |$form|
+                      |$profileCompiler| |$EmptyMode| |$NoValueMode|))
     (RETURN
       (PROGN
         (SPADLET |$insideSetqSingleIfTrue| 'T)
@@ -3170,7 +3196,9 @@ Compile setelt
 ;  else [MKPROGN [x,:assignList,g],m',e]
 
 (DEFUN |setqMultiple,decompose| (|t| |length| |e|)
+  (declare (ignore |length|))
   (PROG (|ISTMP#1| |ISTMP#2| |ISTMP#3| |l| |ISTMP#4| |name| |mode|)
+  (declare (special |$EmptyMode|))
     (RETURN
       (SEQ (IF (AND (PAIRP |t|) (EQ (QCAR |t|) '|Record|)
                     (PROGN (SPADLET |l| (QCDR |t|)) 'T))
@@ -3240,6 +3268,7 @@ Compile setelt
 (DEFUN |setqMultiple| (|nameList| |val| |m| |e|)
   (PROG (|l| |g| |m1| T$ |x| |m'| |ISTMP#1| D |selectorModePairs| |y|
              |z| |LETTMP#1| |assignList|)
+  (declare (special |$noEnv| |$EmptyMode| |$NoValueMode|))
     (RETURN
       (SEQ (COND
              ((AND (PAIRP |val|) (EQ (QCAR |val|) 'CONS)
@@ -3378,7 +3407,9 @@ Compile setelt
 ;    $NoValueMode, (LAST reAssignList).env]
 
 (DEFUN |setqMultipleExplicit| (|nameList| |valList| |m| |e|)
+  (declare (special |m|))
   (PROG (|gensymList| |assignList| |LETTMP#1| |reAssignList|)
+  (declare (special |$NoValueMode| |$EmptyMode|))
     (RETURN
       (SEQ (COND
              ((NEQUAL (|#| |nameList|) (|#| |valList|))
@@ -3534,7 +3565,8 @@ Compile where
   (PROG (|$insideExpressionIfTrue| |$insideWhereIfTrue| |form|
             |exprList| |e| |u| |eBefore| |LETTMP#1| |x| |eAfter| |del|
             |eFinal|)
-    (DECLARE (SPECIAL |$insideExpressionIfTrue| |$insideWhereIfTrue|))
+    (DECLARE (SPECIAL |$insideExpressionIfTrue| |$insideWhereIfTrue|
+                      |$EmptyMode|))
     (RETURN
       (SEQ (PROGN
              (SPADLET |form| (CADR G168571))
@@ -3741,6 +3773,7 @@ Compile vector
 
 (DEFUN |compVector| (|l| |m| |e|)
   (PROG (|LETTMP#1| |mUnder| |Tl|)
+  (declare (special |$EmptyVector|))
     (RETURN
       (SEQ (PROGN
              (COND ((EQ (CAR |m|) '|Vector|) (CAR |m|)))
@@ -3845,7 +3878,7 @@ the left hand side of the macro.
 
 (DEFUN |compMacro| (|form| |m| |e|)
   (PROG (|$macroIfTrue| |lhs| |signature| |specialCases| |rhs| |prhs|)
-    (DECLARE (SPECIAL |$macroIfTrue|))
+    (DECLARE (SPECIAL |$macroIfTrue| |$NoValueMode| |$EmptyMode|))
     (RETURN
       (PROGN
         (SPADLET |$macroIfTrue| 'T)
@@ -3892,6 +3925,7 @@ Compile seq
 
 (DEFUN |compSeq| (G168818 |m| |e|)
   (PROG (|l|)
+  (declare (special |$exitModeStack|))
     (RETURN
       (PROGN
         (COND ((EQ (CAR G168818) 'SEQ) (CAR G168818)))
@@ -3919,7 +3953,7 @@ Compile seq
   (DECLARE (SPECIAL |$exitModeStack|))
   (PROG (|$insideExpressionIfTrue| |$finalEnv| |LETTMP#1| |c|
             |catchTag| |form|)
-    (DECLARE (SPECIAL |$insideExpressionIfTrue| |$finalEnv|))
+    (DECLARE (SPECIAL |$insideExpressionIfTrue| |$finalEnv| |$NoValueMode|))
     (RETURN
       (SEQ (PROGN
              (SPADLET |$insideExpressionIfTrue| NIL)
@@ -3996,6 +4030,7 @@ Compile seq
 
 (DEFUN |replaceExitEtc,fn| (|x| |tag| |opFlag| |opMode|)
   (PROG (|key| |ISTMP#1| |n| |ISTMP#2| |t|)
+  (declare (special |$finalEnv|))
     (RETURN
       (SEQ (IF (ATOM |x|) (EXIT NIL))
            (IF (AND (PAIRP |x|) (EQ (QCAR |x|) 'QUOTE)) (EXIT NIL))
@@ -4069,6 +4104,7 @@ Compile suchthat
 
 (DEFUN |compSuchthat| (G168962 |m| |e|)
   (PROG (|x| |p| |x'| |m'| |LETTMP#1| |p'|)
+  (declare (special |$Boolean|))
     (RETURN
       (PROGN
         (SPADLET |x| (CADR G168962))
@@ -4101,6 +4137,7 @@ Compile exit
 
 (DEFUN |compExit| (G169003 |m| |e|)
   (PROG (|level| |x| |index| |m1| |u| |x'| |m'| |e'|)
+  (declare (special |$exitModeStack|))
     (RETURN
       (PROGN
         (COND ((EQ (CAR G169003) '|exit|) (CAR G169003)))
@@ -4132,6 +4169,7 @@ Compile exit
 ;  $exitModeStack.index:= resolve(m,$exitModeStack.index)
 
 (DEFUN |modifyModeStack| (|m| |index|)
+  (declare (special |$exitModeStack| |$reportExitModeStack|))
   (COND
     (|$reportExitModeStack|
         (SAY (MAKESTRING "exitModeStack: ") (COPY |$exitModeStack|)
@@ -4156,6 +4194,7 @@ Compile leave
 
 (DEFUN |compLeave| (G169045 |m| |e|)
   (PROG (|level| |x| |index| |u| |x'| |m'| |e'|)
+  (declare (special |$exitModeStack| |$leaveLevelStack|))
     (RETURN
       (PROGN
         (COND ((EQ (CAR G169045) '|leave|) (CAR G169045)))
@@ -4195,6 +4234,7 @@ Compile return
 
 (DEFUN |compReturn| (G169083 |m| |e|)
   (PROG (|level| |x| |index| |u| |x'| |m'| |e'|)
+  (declare (special |$returnMode| |$exitModeStack|))
     (RETURN
       (PROGN
         (COND ((EQ (CAR G169083) '|return|) (CAR G169083)))
@@ -4264,6 +4304,7 @@ Compile Elt
 (DEFUN |compElt| (|form| |m| E)
   (PROG (|ISTMP#1| |aDomain| |ISTMP#2| |anOp| |mmList| |n| |modemap|
             |sig| |pred| |val|)
+  (declare (special |$One| |$Zero|))
     (RETURN
       (COND
         ((NULL (AND (PAIRP |form|) (EQ (QCAR |form|) '|elt|)
@@ -4375,6 +4416,8 @@ Compile has
 (DEFUN |compHasFormat| (|pred|)
   (PROG (|olda| |b| |argl| |formals| |LETTMP#1| |a| |c| |ISTMP#1| |op|
                 |ISTMP#2| |sig|)
+  (declare (special |$EmptyEnvironment| |$e| |$EmptyMode|
+                    |$FormalMapVariableList| |$form|))
     (RETURN
       (SEQ (PROGN
              (COND ((EQ (CAR |pred|) '|has|) (CAR |pred|)))
@@ -4472,6 +4515,7 @@ Compile if
 (DEFUN |compIf| (G169289 |m| E)
   (PROG (|a| |b| |c| |LETTMP#1| |xa| |ma| |Ea| |Einv| |Tb| |xb| |mb|
              |Eb| |Tc| |xc| |mc| |Ec| |xb'| |x| |returnEnv|)
+  (declare (special |$Boolean|))
     (RETURN
       (PROGN
         (COND ((EQ (CAR G169289) 'IF) (CAR G169289)))
@@ -4807,8 +4851,8 @@ Compile if
 ;  e
 
 (DEFUN |getSuccessEnvironment| (|a| |e|)
-  (PROG (|id| |currentProplist| T$ |newProplist| |ISTMP#1| |x|
-              |ISTMP#2| |m|)
+  (PROG (|id| |currentProplist| T$ |newProplist| |ISTMP#1| |x| |ISTMP#2| |m|)
+  (declare (special |$EmptyMode| |$EmptyEnvironment|))
     (RETURN
       (COND
         ((AND (PAIRP |a|) (EQ (QCAR |a|) '|has|)
@@ -4886,8 +4930,8 @@ Compile if
 ;  E
 
 (DEFUN |getInverseEnvironment| (|a| E)
-  (PROG (|op| |argl| |x| |m| |ISTMP#2| |oldpred| |l| |ISTMP#1| |l'|
-              |newpred|)
+  (PROG (|op| |argl| |x| |m| |ISTMP#2| |oldpred| |l| |ISTMP#1| |l'| |newpred|)
+  (declare (special |$EmptyEnvironment|))
     (RETURN
       (SEQ (COND
              ((ATOM |a|) E)
@@ -5060,7 +5104,9 @@ Compile if
 ;  ["/throwAway",$NoValueMode,e]
 
 (DEFUN |compImport| (G169794 |m| |e|)
+  (declare (ignore |m|))
   (PROG (|doms|)
+  (declare (special |$NoValueMode|))
     (RETURN
       (SEQ (PROGN
              (COND ((EQ (CAR G169794) '|import|) (CAR G169794)))
@@ -5116,6 +5162,7 @@ An angry JHD - August 15th., 1984
 (DEFUN |compCase1| (|x| |m| |e|)
   (PROG (|LETTMP#1| |x'| |m'| |e'| |map| |cexpr| |ISTMP#1| |ISTMP#2|
             |s| |ISTMP#3| |t| |u| |cond| |selfn| |fn|)
+  (declare (special |$Boolean| |$EmptyMode|))
     (RETURN
       (SEQ (PROGN
              (SPADLET |LETTMP#1|
@@ -5236,9 +5283,10 @@ An angry JHD - August 15th., 1984
 
 (DEFUN |compColon| (G170007 |m| |e|)
   (PROG (|$lhsOfColon| |f| |t'| |m'| |r| |t| |l| |LETTMP#1| T$ |op|
-            |argl| |newTarget| |a| |signature| |ISTMP#1| |catform|
-            |ISTMP#2|)
-    (DECLARE (SPECIAL |$lhsOfColon|))
+            |argl| |newTarget| |a| |signature| |ISTMP#1| |catform| |ISTMP#2|)
+  (DECLARE (SPECIAL |$lhsOfColon| |$noEnv| |$insideFunctorIfTrue|
+                    |$bootStrapMode| |$FormalMapVariableList|
+                    |$insideCategoryIfTrue| |$insideExpressionIfTrue|))
     (RETURN
       (SEQ (PROGN
              (COND ((EQ (CAR G170007) '|:|) (CAR G170007)))
@@ -5490,6 +5538,7 @@ An angry JHD - August 15th., 1984
 
 (DEFUN |compPretend| (G170169 |m| |e|)
   (PROG (|x| |t| |warningMessage| T$ |T'|)
+  (declare (special |$newCompilerUnionFlag| |$EmptyMode|))
     (RETURN
       (PROGN
         (COND ((EQ (CAR G170169) '|pretend|) (CAR G170169)))
@@ -5547,6 +5596,7 @@ An angry JHD - August 15th., 1984
 
 (DEFUN |compColonInside| (|x| |m| |e| |m'|)
   (PROG (|m''| |warningMessage| T$ |T'|)
+  (declare (special |$newCompilerUnionFlag| |$EmptyMode|))
     (RETURN
       (PROGN
         (SPADLET |e| (|addDomain| |m'| |e|))
@@ -5593,6 +5643,7 @@ An angry JHD - August 15th., 1984
 
 (DEFUN |compIs| (G170221 |m| |e|)
   (PROG (|a| |b| |aval| |am| |LETTMP#1| |bval| |bm| T$)
+  (declare (special |$Boolean| |$EmptyMode|))
     (RETURN
       (PROGN
         (COND ((EQ (CAR G170221) '|is|) (CAR G170221)))
@@ -5657,6 +5708,7 @@ of basic objects may not be the same.
 
 (DEFUN |coerce| (T$ |m|)
   (PROG (|T'|)
+  (declare (special |$fromCoerceable$| |$Rep| |$InteractiveMode|))
     (RETURN
       (COND
         (|$InteractiveMode|
@@ -5690,6 +5742,7 @@ of basic objects may not be the same.
 ;    [T.expr,m,T.env]
 
 (DEFUN |coerceEasy| (T$ |m|)
+  (declare (special |$EmptyMode| |$Exit| |$NoValueMode| |$Void|))
   (COND
     ((BOOT-EQUAL |m| |$EmptyMode|) T$)
     ((OR (BOOT-EQUAL |m| |$NoValueMode|) (BOOT-EQUAL |m| |$Void|))
@@ -5771,7 +5824,7 @@ of basic objects may not be the same.
 
 (DEFUN |coerceHard| (T$ |m|)
   (PROG (|$e| |m'| |ISTMP#1| |ISTMP#2| |m''|)
-    (DECLARE (SPECIAL |$e|))
+    (DECLARE (SPECIAL |$e| |$String| |$bootStrapMode|))
     (RETURN
       (PROGN
         (SPADLET |$e| (CADDR T$))
@@ -5845,6 +5898,7 @@ of basic objects may not be the same.
 
 (DEFUN |coerceExtraHard| (T$ |m|)
   (PROG (|x| |m'| |e| |ISTMP#1| |l| |t| |T'| |T''|)
+  (declare (special |$Expression|))
     (RETURN
       (PROGN
         (SPADLET |x| (CAR T$))
@@ -5882,6 +5936,7 @@ of basic objects may not be the same.
 
 (DEFUN |coerceable| (|m| |m'| |e|)
   (PROG (|sl|)
+  (declare (special |$fromCoerceable$|))
     (RETURN
       (COND
         ((BOOT-EQUAL |m| |m'|) |m|)
@@ -5901,6 +5956,7 @@ of basic objects may not be the same.
 
 (DEFUN |coerceExit| (G170380 |m'|)
   (PROG (|x| |m| |e| |catchTag| |x'|)
+  (declare (special |$exitMode|))
     (RETURN
       (PROGN
         (SPADLET |x| (CAR G170380))
@@ -6014,6 +6070,7 @@ of basic objects may not be the same.
 
 (DEFUN |compCoerce1| (|x| |m'| |e|)
   (PROG (|m1| T$ |T'| |gg| |pred| |code|)
+  (declare (special |$String| |$EmptyMode|))
     (RETURN
       (PROGN
         (SPADLET T$
@@ -6136,6 +6193,7 @@ of basic objects may not be the same.
 (DEFUN |autoCoerceByModemap| (G170609 |target|)
   (PROG (|x| |source| |e| |map| |cexpr| |t| |s| |u| |cond| |selfn| |fn|
              |l| |y| |ISTMP#1| |ISTMP#2|)
+  (declare (special |$fromCoerceable$|))
     (RETURN
       (SEQ (PROGN
              (SPADLET |x| (CAR G170609))
@@ -6279,6 +6337,7 @@ should only be used in the old (preWATT) compiler
 ;  dout
 
 (DEFUN |resolve| (|din| |dout|)
+  (declare (special |$String| |$EmptyMode| |$NoValueMode|))
   (COND
     ((OR (BOOT-EQUAL |din| |$NoValueMode|)
          (BOOT-EQUAL |dout| |$NoValueMode|))
@@ -6446,7 +6505,7 @@ should only be used in the old (preWATT) compiler
             |$options| |$outStream| |newName| |canDoIt|)
     (DECLARE (SPECIAL |$globalMacroStack| |$abbreviationStack|
                       |$macrosAlreadyPrinted| |$newPaths|
-                      |$abbreviationsAlreadyPrinted|
+                      |$abbreviationsAlreadyPrinted| |$badStack|
                       |$convertingSpadFile| |$options| |$outStream|))
     (RETURN
       (PROGN
@@ -6575,6 +6634,7 @@ should only be used in the old (preWATT) compiler
 ;                   SEQ(UNEMBED 'RWRITE))
 
 (DEFUN |compilerDoitWithScreenedLisplib| (|constructor| |fun|)
+  (declare (special |$saveableItems| |$libFile|))
   (PROGN
     (EMBED 'RWRITE
            '(LAMBDA (KEY VALUE STREAM)
