diff --git a/src/plugins/eva/api/general_requests.ml b/src/plugins/eva/api/general_requests.ml
index f1abb0ecb34c9b2c6a33f50b8f1001374af56fbc..e5e522cdd535b6c06febe29b902ffa85661deffc 100644
--- a/src/plugins/eva/api/general_requests.ml
+++ b/src/plugins/eva/api/general_requests.ml
@@ -73,12 +73,6 @@ let () = Request.register ~package
 
 module Functions =
 struct
-  let iter f =
-    Globals.Functions.iter
-      (fun kf ->
-         let name = Kernel_function.get_name kf in
-         if not (Ast_info.is_frama_c_builtin name) then f kf)
-
   let _array : kernel_function States.array =
     let model = States.model () in
 
@@ -94,7 +88,7 @@ struct
       ~key:Server.Kernel_ast.Functions.key
       ~name:"functions"
       ~descr:(Markdown.plain "AST Functions")
-      ~iter
+      ~iter:Server.Kernel_ast.Functions.iter
       ~add_reload_hook:(fun f ->
           Analysis.register_computation_hook (fun _ -> f () ))
 end
diff --git a/src/plugins/server/kernel_ast.mli b/src/plugins/server/kernel_ast.mli
index e882f07dd210e4bee0c99f8f3be6d13483a52d47..bda08edd105c008e283deb57aa911bd7ab69d398 100644
--- a/src/plugins/server/kernel_ast.mli
+++ b/src/plugins/server/kernel_ast.mli
@@ -95,6 +95,7 @@ end
 
 module Functions :
 sig
+  val iter : (kernel_function -> unit) -> unit
   val key : kernel_function -> string
   val array : kernel_function States.array
 end