diff --git a/Modules/Core/ObjectList/include/otbObjectList.h b/Modules/Core/ObjectList/include/otbObjectList.h index 2f14d8011713623c9a70f2f2c4435ed79ba8ba70..7c3737c88d89d1c365e293de7fecb42163e93b53 100644 --- a/Modules/Core/ObjectList/include/otbObjectList.h +++ b/Modules/Core/ObjectList/include/otbObjectList.h @@ -468,7 +468,7 @@ public: friend class ConstIterator; friend class ReverseIterator; /** typedef of the internal iterator */ - typedef typename InternalContainerType::reverse_iterator InternalReverseConstIteratorType; + typedef typename InternalContainerType::const_reverse_iterator InternalReverseConstIteratorType; /** Constructor */ ReverseConstIterator() {}; /** Constructor with iternal iterator parameter */ diff --git a/Modules/Core/ObjectList/include/otbObjectList.txx b/Modules/Core/ObjectList/include/otbObjectList.txx index 9fcbc82a8a69b4f781b18013b2db129dfa8479bc..84f600c6fd2480db7c8dfedca12e923fa602f7da 100644 --- a/Modules/Core/ObjectList/include/otbObjectList.txx +++ b/Modules/Core/ObjectList/include/otbObjectList.txx @@ -246,7 +246,11 @@ typename ObjectList<TObject>::ReverseIterator ObjectList<TObject> ::Insert(ReverseIterator position, ObjectPointerType element) { - ReverseIterator iter(m_InternalContainer.insert(position.GetIter(), element)); + ReverseIterator iter( + InternalContainerType::reverse_iterator( + m_InternalContainer.insert(position.GetIter().base(), element) + ) + ); this->Modified(); return iter; }