diff --git a/include/aidge/operator/LSQ.hpp b/include/aidge/operator/LSQ.hpp index 970c476cb7be18b8d001edb27d60079de85b9349..b6abf90371a3053fa7971b9242a5309362ea478e 100644 --- a/include/aidge/operator/LSQ.hpp +++ b/include/aidge/operator/LSQ.hpp @@ -55,7 +55,7 @@ public: */ LSQ_Op(const LSQ_Op& op) : OperatorTensor(op), - mAttributes(op.mAttributes) + mAttributes(std::make_shared<Attributes_>(*op.mAttributes)) { if (op.mImpl){ SET_IMPL_MACRO(LSQ_Op, *this, op.backend()); diff --git a/src/operator/FixedQ.cpp b/src/operator/FixedQ.cpp index 9828ce98f4918b3d2336c57fe018c9129804cf01..ce9a65defc71909a61e03b1d603b6037a777697a 100644 --- a/src/operator/FixedQ.cpp +++ b/src/operator/FixedQ.cpp @@ -22,7 +22,7 @@ const std::string Aidge::FixedQ_Op::Type = "FixedQ"; Aidge::FixedQ_Op::FixedQ_Op(const Aidge::FixedQ_Op& op) : OperatorTensor(op), - mAttributes(op.mAttributes) + mAttributes(std::make_shared<Attributes_>(*op.mAttributes)) { if (op.mImpl){ SET_IMPL_MACRO(FixedQ_Op, *this, op.backend()); diff --git a/src/operator/SAT/DoReFa.cpp b/src/operator/SAT/DoReFa.cpp index 426e330e7f8426d256ca76a843548a91a62b036a..f722631e543c46b1307a372a8d2cb35e65215b2f 100644 --- a/src/operator/SAT/DoReFa.cpp +++ b/src/operator/SAT/DoReFa.cpp @@ -23,7 +23,7 @@ const std::string DoReFa_Op::Type = "DoReFa"; DoReFa_Op::DoReFa_Op(const DoReFa_Op& op) : OperatorTensor(op), - mAttributes(op.mAttributes) + mAttributes(std::make_shared<Attributes_>(*op.mAttributes)) { if (op.mImpl) { SET_IMPL_MACRO(DoReFa_Op, *this, op.backend());