diff --git a/bundle.lisp b/bundle.lisp
index b5a7cb4cbcb870609a228df74f67bd9286ae869f..8aa29392c0587f519655cfbbdeac6df93b124643 100644
--- a/bundle.lisp
+++ b/bundle.lisp
@@ -38,11 +38,11 @@
   (defclass basic-fasl-op (bundle-compile-op)
     ((bundle-type :initform :fasl)))
   (defclass prepare-fasl-op (sideway-operation)
-    ((sideway-operation :initform 'load-fasl-op)))
+    ((sideway-operation :initform 'load-fasl-op :allocation :class)))
   (defclass fasl-op (basic-fasl-op selfward-operation)
-    ((selfward-operation :initform '(prepare-fasl-op #+ecl lib-op))))
+    ((selfward-operation :initform '(prepare-fasl-op #+ecl lib-op) :allocation :class)))
   (defclass load-fasl-op (basic-load-op selfward-operation)
-    ((selfward-operation :initform '(prepare-op fasl-op))))
+    ((selfward-operation :initform '(prepare-op fasl-op) :allocation :class)))
 
   ;; NB: since the monolithic-op's can't be sideway-operation's,
   ;; if we wanted lib-op, dll-op, binary-op to be sideway-operation's,
@@ -61,7 +61,7 @@
     (:documentation "compile the system and produce dynamic (.so/.dll) library for it."))
 
   (defclass binary-op (basic-compile-op selfward-operation)
-    ((selfward-operation :initform '(fasl-op lib-op)))
+    ((selfward-operation :initform '(fasl-op lib-op) :allocation :class))
     (:documentation "produce fasl and asd files for the system"))
 
   (defclass monolithic-op (operation) ()) ;; operation on a system and its dependencies
@@ -75,7 +75,7 @@
     (:documentation "Abstract operation for ways to bundle the outputs of compiling *Lisp* files over all systems"))
 
   (defclass monolithic-binary-op (monolithic-op binary-op)
-    ((selfward-operation :initform '(monolithic-fasl-op monolithic-lib-op)))
+    ((selfward-operation :initform '(monolithic-fasl-op monolithic-lib-op) :allocation :class))
     (:documentation "produce fasl and asd files for combined system and dependencies."))
 
   (defclass monolithic-fasl-op (monolithic-bundle-compile-op basic-fasl-op) ()
diff --git a/concatenate-source.lisp b/concatenate-source.lisp
index d21cc45ed8cbcca3411055691ba892468e546a1e..7be26fa7fe1304c02d3b3866dae498a681cca75e 100644
--- a/concatenate-source.lisp
+++ b/concatenate-source.lisp
@@ -30,19 +30,19 @@
 
   (defclass concatenate-source-op (basic-concatenate-source-op) ())
   (defclass load-concatenated-source-op (basic-load-concatenated-source-op)
-    ((selfward-operation :initform '(prepare-op concatenate-source-op))))
+    ((selfward-operation :initform '(prepare-op concatenate-source-op) :allocation :class)))
   (defclass compile-concatenated-source-op (basic-compile-concatenated-source-op)
-    ((selfward-operation :initform '(prepare-op concatenate-source-op))))
+    ((selfward-operation :initform '(prepare-op concatenate-source-op) :allocation :class)))
   (defclass load-compiled-concatenated-source-op (basic-load-compiled-concatenated-source-op)
-    ((selfward-operation :initform '(prepare-op compile-concatenated-source-op))))
+    ((selfward-operation :initform '(prepare-op compile-concatenated-source-op) :allocation :class)))
 
   (defclass monolithic-concatenate-source-op (basic-concatenate-source-op monolithic-bundle-op) ())
   (defclass monolithic-load-concatenated-source-op (basic-load-concatenated-source-op)
-    ((selfward-operation :initform 'monolithic-concatenate-source-op)))
+    ((selfward-operation :initform 'monolithic-concatenate-source-op :allocation :class)))
   (defclass monolithic-compile-concatenated-source-op (basic-compile-concatenated-source-op)
-    ((selfward-operation :initform 'monolithic-concatenate-source-op)))
+    ((selfward-operation :initform 'monolithic-concatenate-source-op :allocation :class)))
   (defclass monolithic-load-compiled-concatenated-source-op (basic-load-compiled-concatenated-source-op)
-    ((selfward-operation :initform 'monolithic-compile-concatenated-source-op)))
+    ((selfward-operation :initform 'monolithic-compile-concatenated-source-op :allocation :class)))
 
   (defmethod input-files ((operation basic-concatenate-source-op) (s system))
     (loop :with encoding = (or (component-encoding s) *default-encoding*)
diff --git a/lisp-action.lisp b/lisp-action.lisp
index 7e49826a05a46afe155d7a8c18465ef0d2b067a6..6adc154f4e2a24b2e3822021fbb0971f3ae91518 100644
--- a/lisp-action.lisp
+++ b/lisp-action.lisp
@@ -38,22 +38,22 @@
 ;;; Our default operations: loading into the current lisp image
 (with-upgradability ()
   (defclass prepare-op (upward-operation sideway-operation)
-    ((sideway-operation :initform 'load-op)))
+    ((sideway-operation :initform 'load-op :allocation :class)))
   (defclass load-op (basic-load-op downward-operation sideway-operation selfward-operation)
     ;; NB: even though compile-op depends on prepare-op it is not needed-in-image-p,
     ;; so we need to directly depend on prepare-op for its side-effects in the current image.
-    ((selfward-operation :initform '(prepare-op compile-op))))
+    ((selfward-operation :initform '(prepare-op compile-op) :allocation :class)))
   (defclass compile-op (basic-compile-op downward-operation selfward-operation)
-    ((selfward-operation :initform 'prepare-op)
-     (downward-operation :initform 'load-op)))
+    ((selfward-operation :initform 'prepare-op :allocation :class)
+     (downward-operation :initform 'load-op :allocation :class)))
 
   (defclass prepare-source-op (upward-operation sideway-operation)
-    ((sideway-operation :initform 'load-source-op)))
+    ((sideway-operation :initform 'load-source-op :allocation :class)))
   (defclass load-source-op (basic-load-op downward-operation selfward-operation)
-    ((selfward-operation :initform 'prepare-source-op)))
+    ((selfward-operation :initform 'prepare-source-op :allocation :class)))
 
   (defclass test-op (selfward-operation)
-    ((selfward-operation :initform 'load-op))))
+    ((selfward-operation :initform 'load-op :allocation :class))))
 
 
 ;;;; prepare-op, compile-op and load-op