diff --git a/include/aidge/operator/Abs.hpp b/include/aidge/operator/Abs.hpp
index 3c2f1bb388cf064be379f476f1d2df4491b57637..a975faa24e9cf1c372c53ff9ca427cfec2642455 100644
--- a/include/aidge/operator/Abs.hpp
+++ b/include/aidge/operator/Abs.hpp
@@ -25,7 +25,7 @@
 namespace Aidge {
 
 class Abs_Op : public OperatorTensor,
-    public Registrable<Abs_Op, std::string, std::shared_ptr<OperatorImpl>(const Abs_Op&)> {
+    public Registrable<Abs_Op, std::string, std::function<std::shared_ptr<OperatorImpl>(const Abs_Op&)>> {
 public:
     static const std::string Type;
 
diff --git a/include/aidge/operator/DepthToSpace.hpp b/include/aidge/operator/DepthToSpace.hpp
index 72ff83834962c1860b135a4187e72199b04361db..0c74d49422bf0bec4810041547bfea694dc8fb77 100644
--- a/include/aidge/operator/DepthToSpace.hpp
+++ b/include/aidge/operator/DepthToSpace.hpp
@@ -35,7 +35,7 @@ enum class DepthToSpaceAttr { BlockSize, Mode };
 class DepthToSpace_Op : public OperatorTensor,
                 public Registrable<DepthToSpace_Op,
                     std::string,
-                    std::shared_ptr<OperatorImpl>(const DepthToSpace_Op &)> {
+                    std::function<std::shared_ptr<OperatorImpl>(const DepthToSpace_Op &)>> {
 public:
     static const std::string Type;
     enum class Mode { DCR, CRD };