diff --git a/src/kernel_internals/typing/unfold_loops.ml b/src/kernel_internals/typing/unfold_loops.ml
index 73a2552df722bd16fe3680a250fca7c8b4d65b31..04d0a147953e8e8f48319d0b5b07fdb06b30d8ea 100644
--- a/src/kernel_internals/typing/unfold_loops.ml
+++ b/src/kernel_internals/typing/unfold_loops.ml
@@ -757,5 +757,11 @@ let unroll_typer (ctxt: Logic_typing.typing_context) (_loc:location) args =
     Lenv.empty () |> append_here_label |> append_init_label |> append_pre_label
   in Ext_terms (List.map (ctxt.type_term ctxt env) args)
 
-let () = Acsl_extension.register_code_annot_next_loop
+let register_extensions () =
+  Acsl_extension.register_code_annot_next_loop
     ~plugin:"kernel" "unfold" unroll_typer false
+
+let register_once, _ =
+  State_builder.apply_once "Unfold_loops.register_extensions" [] register_extensions
+
+let () = Cmdline.run_after_early_stage register_once
diff --git a/src/kernel_services/ast_queries/dyncall.ml b/src/kernel_services/ast_queries/dyncall.ml
index 33c4789286e99f7965cf4e45c88685ff623c0410..15a73179dc97212a02d9b0ee72c5d4ff0449ec0b 100644
--- a/src/kernel_services/ast_queries/dyncall.ml
+++ b/src/kernel_services/ast_queries/dyncall.ml
@@ -250,15 +250,13 @@ let get ?bhv stmt =
 (* --- Registry                                                           --- *)
 (* -------------------------------------------------------------------------- *)
 
-let register =
-  let once = ref false in
-  fun () ->
-    if (not !once) then begin
-      once := true;
-      Acsl_extension.register_code_annot_next_stmt ~plugin:"kernel"
-        "calls" typecheck true ;
-      Acsl_extension.register_behavior ~plugin:"kernel"
-        "instanceof" typecheck true ;
-    end
+let register_extensions () =
+  Acsl_extension.register_code_annot_next_stmt ~plugin:"kernel"
+    "calls" typecheck true;
+  Acsl_extension.register_behavior ~plugin:"kernel"
+    "instanceof" typecheck true
+
+let register_once, _ =
+  State_builder.apply_once "Dyncall.register_extensions" [] register_extensions
 
-let () = Cmdline.run_after_configuring_stage register
+let () = Cmdline.run_after_early_stage register_once