diff --git a/pcl/bench.lisp b/pcl/bench.lisp
index f47165857fb27ad7471ccbdf986320dfccf4b0a5..bc92fc57b50ccd519b1afec0f60b93a1ddd121a4 100644
--- a/pcl/bench.lisp
+++ b/pcl/bench.lisp
@@ -24,12 +24,7 @@
 ;;; jeff morrill
 ;;; jmorrill@bbn.com
 
-#+Genera
-(eval-when (compile load eval)
-  (import '(clos-internals::allocate-instance)))
-
-#+cmu
-(eval-when (compile load eval)
+(eval-when (:compile-toplevel :load-toplevel :execute)
   (import '(pcl:allocate-instance)))
 
 (declaim (optimize (speed 3) (safety 3 #+nil 1) (space 0)
@@ -119,7 +114,7 @@
 (declaim (single-float *speed-of-empty-loop*))
 (defvar *speed-of-empty-loop*)
 
-(eval-when (load eval)
+(eval-when (:load-toplevel :execute)
   (setq *empty-iterations* (compute-empty-iterations))
   (setq *speed-of-empty-loop* (/ (empty-speed *empty-iterations*)
 				 (float *empty-iterations*))))
diff --git a/pcl/boot.lisp b/pcl/boot.lisp
index 0ecdeec3935fd9dd3ef3487e351ec968c67e45b7..b6e43b52a110667b365b5e89b5fcf1f0a6f9a70d 100644
--- a/pcl/boot.lisp
+++ b/pcl/boot.lisp
@@ -26,7 +26,7 @@
 ;;;
 
 (ext:file-comment
- "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/boot.lisp,v 1.30 2002/08/27 18:46:48 pmai Exp $")
+ "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/boot.lisp,v 1.31 2002/08/27 19:01:37 pmai Exp $")
 
 (in-package :pcl)
 
@@ -98,7 +98,7 @@ work during bootstrapping.
 ;;; a separate piece of code because of a bug in ExCL which causes this not
 ;;; to work if it is inlined.
 ;;;
-(eval-when (load eval)
+(eval-when (:load-toplevel :execute)
 
 (defun redirect-early-function-internal (real early)
   (setf (gdefinition real)
@@ -636,7 +636,7 @@ work during bootstrapping.
 
 (declaim (ext:freeze-type fast-instance-boundp))
 
-(eval-when (compile load eval)
+(eval-when (:compile-toplevel :load-toplevel :execute)
 (defvar *allow-emf-call-tracing-p* nil)
 (defvar *enable-emf-call-tracing-p* #-testing nil #+testing t)
 )
@@ -2062,7 +2062,7 @@ work during bootstrapping.
 		     (cons (if (listp arg) (car arg) arg) required)))))))
 
 
-(eval-when (load eval)
+(eval-when (:load-toplevel :execute)
   (setq *boot-state* 'early))
 
 (defmacro with-slots (slots instance &body body)
diff --git a/pcl/braid.lisp b/pcl/braid.lisp
index 45fb7b2d9b1ef322480be8152c7f1cb534d285f2..c94352e109a158e6a81ca3e11e54b3ae20367a47 100644
--- a/pcl/braid.lisp
+++ b/pcl/braid.lisp
@@ -26,7 +26,7 @@
 ;;;
 
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/braid.lisp,v 1.22 2002/08/26 02:23:11 pmai Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/braid.lisp,v 1.23 2002/08/27 19:01:37 pmai Exp $")
 ;;;
 ;;; Bootstrapping the meta-braid.
 ;;;
@@ -580,7 +580,7 @@
 	(setf (lisp:find-class name) lclass
 	      (lisp:class-name lclass) name)))))
 
-(eval-when (load eval)
+(eval-when (:load-toplevel :execute)
   (clrhash *find-class*)
   (bootstrap-meta-braid)
   (bootstrap-accessor-definitions t)
diff --git a/pcl/cache.lisp b/pcl/cache.lisp
index aa52ab938d33ab994a51618cf583a0c559956ffa..a788ea7eae2e526913ee1b2df51e6f7210f579df 100644
--- a/pcl/cache.lisp
+++ b/pcl/cache.lisp
@@ -26,7 +26,7 @@
 ;;;
 
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/cache.lisp,v 1.15 2002/08/26 02:23:11 pmai Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/cache.lisp,v 1.16 2002/08/27 19:01:37 pmai Exp $")
 ;;;
 ;;; The basics of the PCL wrapper cache mechanism.
 ;;;
@@ -125,7 +125,7 @@
   '(integer 0    ;#.(position 'number wrapper-layout)
             7))  ;#.(position 'number wrapper-layout :from-end t)
 
-(eval-when (compile load eval)
+(eval-when (:compile-toplevel :load-toplevel :execute)
 (defun power-of-two-ceiling (x)
   (declare (fixnum x))
   ;;(expt 2 (ceiling (log x 2)))
@@ -280,7 +280,7 @@
 
 ; In CMUCL we want to do type checking as early as possible; structures help this.
 
-(eval-when (compile load eval)
+(eval-when (:compile-toplevel :load-toplevel :execute)
 
 (defconstant wrapper-cache-number-vector-length
   kernel:layout-hash-length)
@@ -868,7 +868,7 @@
 ;;; to practically write my own compiler in order to get just this simple
 ;;; thing is something of a drag.
 ;;;
-(eval-when (compile load eval)
+(eval-when (:compile-toplevel :load-toplevel :execute)
 
 (defvar *cache* nil)
 
@@ -1388,7 +1388,7 @@
 ;;; This preallocation only creates about 25% more caches than PCL itself
 ;;; uses.  Some ports may want to preallocate some more of these.
 ;;; 
-(eval-when (load)
+(eval-when (:load-toplevel)
   (dolist (n-size '((1 513)(3 257)(3 129)(14 128)(6 65)(2 64)(7 33)(16 32)
 		    (16 17)(32 16)(64 9)(64 8)(6 5)(128 4)(35 2)))
     (let ((n (car n-size))
diff --git a/pcl/cmucl-documentation.lisp b/pcl/cmucl-documentation.lisp
index dbfef71f52b935cd1040066d960253317afdaa5b..2fc9c2d156c72146c2928143478c57f4e3a85291 100644
--- a/pcl/cmucl-documentation.lisp
+++ b/pcl/cmucl-documentation.lisp
@@ -4,7 +4,7 @@
 ;;; the public domain, and is provided 'as is'.
 ;;;
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/cmucl-documentation.lisp,v 1.7 1998/06/21 10:02:07 dtc Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/cmucl-documentation.lisp,v 1.8 2002/08/27 19:01:37 pmai Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -134,7 +134,7 @@
 
 ;;; Replace the minimal documentation function with the PCL version
 ;;; when loaded.
-(eval-when (load)
+(eval-when (:load-toplevel)
   (setf (symbol-function 'lisp:documentation) #'documentation)
   (setf (documentation 'documentation 'function)
     "Returns the documentation string of Doc-Type for X, or NIL if
diff --git a/pcl/defs.lisp b/pcl/defs.lisp
index afe91ee26760c69c796904e696de9c275cca9640..9f81139a0c180c920edce7cdfe702c20a121ea3a 100644
--- a/pcl/defs.lisp
+++ b/pcl/defs.lisp
@@ -27,7 +27,7 @@
 
 (in-package :pcl)
 
-(eval-when (compile load eval)
+(eval-when (:compile-toplevel :load-toplevel :execute)
   
 (defvar *defclass-times*   '(load eval))	;Probably have to change this
 						;if you use defconstructor.
@@ -44,7 +44,7 @@
 
 )
 
-(eval-when (load eval)
+(eval-when (:load-toplevel :execute)
   (when (eq *boot-state* 'complete)
     (error "Trying to load (or compile) PCL in an environment in which it~%~
             has already been loaded.  This doesn't work, you will have to~%~
diff --git a/pcl/defsys.lisp b/pcl/defsys.lisp
index cb5db3e00ce07016902d9abce2efde88069341ee..c4f268c53877587d1bf0d837620d8ff2c78aa7d6 100644
--- a/pcl/defsys.lisp
+++ b/pcl/defsys.lisp
@@ -26,7 +26,7 @@
 ;;;
 
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/defsys.lisp,v 1.26 2002/08/26 02:40:55 pmai Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/defsys.lisp,v 1.27 2002/08/27 19:01:38 pmai Exp $")
 ;;;
 ;;; Some support stuff for compiling and loading PCL.  It would be nice if
 ;;; there was some portable make-system we could all agree to share for a
@@ -167,7 +167,7 @@ and load your system with:
     (cond ((null proper-extensions) '("l" . "lbin"))
           (t proper-extensions))))
 
-(eval-when (compile load eval)
+(eval-when (:compile-toplevel :load-toplevel :execute)
 
 (defun get-system (name)
   (get name 'system-definition))
diff --git a/pcl/dlisp3.lisp b/pcl/dlisp3.lisp
index 93e4e4cac159c522cfc76fafc603f46a303a4528..5e7fd45bb1e80192483f255647387962b6bea050 100644
--- a/pcl/dlisp3.lisp
+++ b/pcl/dlisp3.lisp
@@ -26,12 +26,12 @@
 ;;;
 
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/dlisp3.lisp,v 1.4 1999/05/30 23:13:58 pw Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/dlisp3.lisp,v 1.5 2002/08/27 19:01:38 pmai Exp $")
 ;;;
 
 (in-package :pcl)
 
-(eval-when (compile load eval)
+(eval-when (:compile-toplevel :load-toplevel :execute)
 (defparameter checking-or-caching-list
   '((T NIL (CLASS) NIL)
     (T NIL (CLASS CLASS) NIL)
diff --git a/pcl/extensions.lisp b/pcl/extensions.lisp
index 463bf74bc9a91c5fc07e84a13abff8e22dfa1b37..d3ce3c9c22d5fee5021f15ff64cd09969d81387a 100644
--- a/pcl/extensions.lisp
+++ b/pcl/extensions.lisp
@@ -18,12 +18,12 @@
 ;;;
 
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/Attic/extensions.lisp,v 1.5 2002/08/26 02:23:13 pmai Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/Attic/extensions.lisp,v 1.6 2002/08/27 19:01:38 pmai Exp $")
 ;;;
 
 (in-package 'pcl)
 
-(eval-when (compile load eval)
+(eval-when (:compile-toplevel :load-toplevel :execute)
 
 (defvar *extensions-exports*
         '(set-standard-instance-access
diff --git a/pcl/fast-init.lisp b/pcl/fast-init.lisp
index 931722f5bb09b92d0fc540619f51cc1f143e0a8f..7fc4983c20e5ebc82cee7a1b123b5b6199d8a19e 100644
--- a/pcl/fast-init.lisp
+++ b/pcl/fast-init.lisp
@@ -26,7 +26,7 @@
 ;;;
 
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/Attic/fast-init.lisp,v 1.8 2002/08/26 02:23:13 pmai Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/Attic/fast-init.lisp,v 1.9 2002/08/27 19:01:38 pmai Exp $")
 ;;;
 ;;; This file defines the optimized make-instance functions.
 ;;; 
@@ -152,7 +152,7 @@
 		(,',cached-name ,info))
 	      value)))))
 
-(eval-when (compile load eval)
+(eval-when (:compile-toplevel :load-toplevel :execute)
 (defparameter initialize-info-cached-slots
   '(valid-p				; t or (:invalid key)
     ri-valid-p
diff --git a/pcl/fin.lisp b/pcl/fin.lisp
index 26a2761906b77fd622dad7923b86053360de75b1..aeedd9eb1a8b6c58f2c47c6e1970b7e55235ae93 100644
--- a/pcl/fin.lisp
+++ b/pcl/fin.lisp
@@ -26,7 +26,7 @@
 ;;;
 
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/fin.lisp,v 1.14 2001/03/13 15:49:47 pw Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/fin.lisp,v 1.15 2002/08/27 19:01:39 pmai Exp $")
 ;;;
 
   ;;   
@@ -110,7 +110,7 @@ explicitly marked saying who wrote it.
 ;;;       This must be SETF'able.
 ;;;       
 
-(eval-when (compile load eval)
+(eval-when (:compile-toplevel :load-toplevel :execute)
 (defconstant funcallable-instance-data
              '(wrapper slots)
   "These are the 'data-slots' which funcallable instances have so that
diff --git a/pcl/fsc.lisp b/pcl/fsc.lisp
index fdf45d27e78c836689d4c0569624c9c586ca2528..24671eb11695e3de4798650580896e27f670de0e 100644
--- a/pcl/fsc.lisp
+++ b/pcl/fsc.lisp
@@ -26,7 +26,7 @@
 ;;;
 
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/fsc.lisp,v 1.9 1999/05/30 23:14:00 pw Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/fsc.lisp,v 1.10 2002/08/27 19:01:39 pmai Exp $")
 ;;;
 ;;; This file contains the definition of the FUNCALLABLE-STANDARD-CLASS
 ;;; metaclass.  Much of the implementation of this metaclass is actually
@@ -96,7 +96,7 @@
 ;				 slot-name)
 ;	 nv))))
 ;
-;(eval-when (load)
+;(eval-when (:load-toplevel)
 ;  (pre-make-templated-function-constructor reader-function--fsc)
 ;  (pre-make-templated-function-constructor writer-function--fsc))
 
diff --git a/pcl/gray-streams.lisp b/pcl/gray-streams.lisp
index 8da7ae27933cd84214655bc4a598a5e902ebf79d..d82596b6f376837c2f0bf1fc71c6bfb6e8892f61 100644
--- a/pcl/gray-streams.lisp
+++ b/pcl/gray-streams.lisp
@@ -4,7 +4,7 @@
 ;;; the Public domain, and is provided 'as is'.
 ;;;
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/gray-streams.lisp,v 1.6 2001/11/20 15:10:04 pw Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/gray-streams.lisp,v 1.7 2002/08/27 19:01:39 pmai Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -95,7 +95,7 @@
   t)
 
 
-(eval-when (compile)
+(eval-when (:compile-toplevel)
   (pushnew 'compile pcl::*defgeneric-times*))
 
 ;;; Character input streams.
diff --git a/pcl/macros.lisp b/pcl/macros.lisp
index 493ee6fc5cc5cc4e152877237a32ec82975f1966..24e86e70f3b046a16470e7a135a46b6a0863f44e 100644
--- a/pcl/macros.lisp
+++ b/pcl/macros.lisp
@@ -26,7 +26,7 @@
 ;;;
 
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/macros.lisp,v 1.20 2002/08/26 16:58:06 pmai Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/macros.lisp,v 1.21 2002/08/27 19:01:39 pmai Exp $")
 ;;;
 ;;; Macros global variable definitions, and other random support stuff used
 ;;; by the rest of the system.
@@ -63,7 +63,7 @@
 ;;;    all sorts of lossage.  Common Lisp should explictly specify which
 ;;;    symbols appear in the Lisp package.
 ;;;
-(eval-when (compile load eval)
+(eval-when (:compile-toplevel :load-toplevel :execute)
 
 (defmacro memq (item list) `(member ,item ,list :test #'eq))
 (defmacro assq (item list) `(assoc ,item ,list :test #'eq))
diff --git a/pcl/precom1.lisp b/pcl/precom1.lisp
index 0c550d95d6a308b367e7a9f384bbedc668c63332..645178e1ae2d30fc653a804ac74a0bf7ace89b17 100644
--- a/pcl/precom1.lisp
+++ b/pcl/precom1.lisp
@@ -36,7 +36,7 @@
 ;;; This preallocation only creates about 25% more caches than PCL itself
 ;;; uses need.  Some ports may want to preallocate some more of these.
 ;;; 
-(eval-when (load)
+(eval-when (:load-toplevel)
   (flet ((allocate (n size)
 	   (mapcar #'free-cache-vector
 		   (mapcar #'get-cache-vector
diff --git a/pcl/user-instances.lisp b/pcl/user-instances.lisp
index ef254dc2b81b83e5f71c8d55d15a27dfd151be2d..f8943d80d224fcfcb9c67d98007da9106b9eaea2 100644
--- a/pcl/user-instances.lisp
+++ b/pcl/user-instances.lisp
@@ -20,7 +20,7 @@
 ;;;
 
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/Attic/user-instances.lisp,v 1.4 2002/08/26 02:23:16 pmai Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/Attic/user-instances.lisp,v 1.5 2002/08/27 19:01:40 pmai Exp $")
 ;;;
 
 (in-package 'pcl)
@@ -48,12 +48,12 @@
 ;;;
 
 #-pcl-user-instances
-(eval-when (compile load eval)
+(eval-when (:compile-toplevel :load-toplevel :execute)
 (error "Cannot use user-instances, since PCL was compiled without
         PCL-USER-INSTANCES on the *features* list (see pcl file low.lisp.)")
 )
 
-(eval-when (compile load eval)
+(eval-when (:compile-toplevel :load-toplevel :execute)
 (defclass user-vector-class-mixin () ()
   (:documentation
     "Use this mixin for metaclasses whose instances are USER-INSTANCES
@@ -129,7 +129,7 @@
 (defmacro get-user-instance-slots (x)
   `(user-vector-instance-slots ,x))
 
-(eval-when (eval load)
+(eval-when (:execute :load-toplevel)
   (force-compile 'user-instance-p)
   (force-compile 'user-instance-slots)
   (force-compile 'user-instance-wrapper)
diff --git a/pcl/walk.lisp b/pcl/walk.lisp
index b358342e040cc4a4f0d67698be530b5f2e584e82..31ffcb19c32bf77f5b25f14f8f1a946c095ba7bb 100644
--- a/pcl/walk.lisp
+++ b/pcl/walk.lisp
@@ -26,7 +26,7 @@
 ;;;
 
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/walk.lisp,v 1.22 2002/08/26 02:23:16 pmai Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/walk.lisp,v 1.23 2002/08/27 19:01:40 pmai Exp $")
 ;;;
 ;;; A simple code walker, based IN PART on: (roll the credits)
 ;;;   Larry Masinter's Masterscope
@@ -384,7 +384,7 @@
 ;;;       walker.
 ;;;
 
-(eval-when (compile load eval)
+(eval-when (:compile-toplevel :load-toplevel :execute)
 
 (defmacro get-walker-template-internal (x) ;Has to be inside eval-when because
   `(get ,x 'walker-template))		   ;Golden Common Lisp doesn't hack
@@ -393,7 +393,7 @@
 
 (defmacro define-walker-template
 	  (name &optional (template '(nil repeat (eval))))
-  `(eval-when (load eval)
+  `(eval-when (:load-toplevel :execute)
      (setf (get-walker-template-internal ',name) ',template)))
 )