diff --git a/Event/EventContainers/EventContainers/IdentifiableContainerMT.h b/Event/EventContainers/EventContainers/IdentifiableContainerMT.h
index 9457b295e7cc8202eb2c1010f01bac399fcaed19..4417de46067ef14f0268a0656107bbe9fa45b935 100644
--- a/Event/EventContainers/EventContainers/IdentifiableContainerMT.h
+++ b/Event/EventContainers/EventContainers/IdentifiableContainerMT.h
@@ -106,6 +106,17 @@ public:
         /// iterator constructor
         const_iterator() : m_sptr(), m_current(nullptr), m_idContainer(nullptr), m_end(false) { }
 
+        /// assignment operator
+        const_iterator& operator = ( const const_iterator & it ) {
+            if(this == &it) return *this;//Safeguard against self assignment
+            m_hashItr     = it.m_hashItr;
+            m_sptr        = it.m_sptr;
+            m_current     = it.m_current;
+            m_idContainer = it.m_idContainer;
+            m_end         = it.m_end;
+            return *this;
+        }
+
         /// increment operator
         const_iterator& operator ++ () {
             if(m_end) return *this;
diff --git a/Event/EventContainers/test/IDC_Realistic_Test.cxx b/Event/EventContainers/test/IDC_Realistic_Test.cxx
index a8da38a99473818b77dd52218c1db49f66148989..ec0bbe33967a51dfde97c5d4451a18a88a6c369a 100644
--- a/Event/EventContainers/test/IDC_Realistic_Test.cxx
+++ b/Event/EventContainers/test/IDC_Realistic_Test.cxx
@@ -208,8 +208,6 @@ public:
     PseudoView(int s, int r, EventContainers::IdentifiableCache<MyCollection>* inIDC, int i) : IDC(inIDC), RoIStart(s), RoIEnd(r),
         threads(i), c()   {}
 
-  PseudoView (const PseudoView&) = default;
-  PseudoView& operator= (const PseudoView&) = default;
   virtual ~PseudoView() {}
 };