diff --git a/include/yaml-cpp/node/detail/node_iterator.h b/include/yaml-cpp/node/detail/node_iterator.h index 43273c1..49dcf95 100644 --- a/include/yaml-cpp/node/detail/node_iterator.h +++ b/include/yaml-cpp/node/detail/node_iterator.h @@ -52,10 +52,7 @@ struct node_iterator_type { }; template -class node_iterator_base - : public std::iterator, - std::ptrdiff_t, node_iterator_value*, - node_iterator_value> { +class node_iterator_base { private: struct enabler {}; @@ -68,9 +65,13 @@ class node_iterator_base }; public: + using iterator_category = std::forward_iterator_tag; + using value_type = node_iterator_value; + using difference_type = std::ptrdiff_t; + using pointer = node_iterator_value*; + using reference = node_iterator_value; using SeqIter = typename node_iterator_type::seq; using MapIter = typename node_iterator_type::map; - using value_type = node_iterator_value; node_iterator_base() : m_type(iterator_type::NoneType), m_seqIt(), m_mapIt(), m_mapEnd() {}