diff --git a/cartesian_product.hh b/cartesian_product.hh index a2c13a81fb..530fc6226e 100644 --- a/cartesian_product.hh +++ b/cartesian_product.hh @@ -33,9 +33,13 @@ template struct cartesian_product { const std::vector>& _vec_of_vecs; public: - class iterator : public std::iterator> { + class iterator { public: + using iterator_category = std::forward_iterator_tag; using value_type = std::vector; + using difference_type = std::ptrdiff_t; + using pointer = std::vector*; + using reference = std::vector&; private: size_t _pos; const std::vector>* _vec_of_vecs;