From c4999d7d91c93c9b00b8527185b45251e086c4d4 Mon Sep 17 00:00:00 2001
From: cmoineau <cyril.moineau@cea.fr>
Date: Wed, 6 Mar 2024 14:44:45 +0000
Subject: [PATCH] Fix Producer clone implementation check.

---
 include/aidge/operator/Producer.hpp | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/include/aidge/operator/Producer.hpp b/include/aidge/operator/Producer.hpp
index f085474a8..c9b1f6e4a 100644
--- a/include/aidge/operator/Producer.hpp
+++ b/include/aidge/operator/Producer.hpp
@@ -67,10 +67,10 @@ public:
         for (std::size_t i = 0; i < static_cast<std::size_t>(nbOutputs()); ++i) {
             mOutputs[i] = std::make_shared<Tensor>(*(op.getOutput(i)));
         }
-        if (op.mImpl){
-            SET_IMPL_MACRO(Producer_Op, *this, op.mOutputs[0]->getImpl()->backend());
+        if (mOutputs[0]->getImpl() && Registrar<Producer_Op>::exists({mOutputs[0]->getImpl()->backend()})){
+            SET_IMPL_MACRO(Producer_Op, *this, mOutputs[0]->getImpl()->backend());
         }else{
-            mImpl = nullptr;
+            mImpl = std::make_shared<OperatorImpl>(*this);
         }
     }
 
-- 
GitLab