From bd33a382ee7730cd708da0743c583dd04e86e85d Mon Sep 17 00:00:00 2001 From: Mark Olesen <Mark.Olesen@esi-group.com> Date: Tue, 29 May 2018 08:56:08 +0200 Subject: [PATCH] COMP: define additional UIndirectList iterator member types (closes #847) - required for std::iterator_traits specialization, which is used by the std::max_element algorithm on Darwin. --- .../containers/Lists/UIndirectList/UIndirectList.H | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/OpenFOAM/containers/Lists/UIndirectList/UIndirectList.H b/src/OpenFOAM/containers/Lists/UIndirectList/UIndirectList.H index a797dfec52a..7c3191f936a 100644 --- a/src/OpenFOAM/containers/Lists/UIndirectList/UIndirectList.H +++ b/src/OpenFOAM/containers/Lists/UIndirectList/UIndirectList.H @@ -190,6 +190,12 @@ public: public: + using difference_type = label; + using value_type = T; + using pointer = T*; + using reference = T&; + using iterator_category = std::forward_iterator_tag; + iterator ( UList<T>& list, @@ -231,6 +237,12 @@ public: public: + using difference_type = label; + using value_type = const T; + using pointer = const T*; + using reference = const T&; + using iterator_category = std::forward_iterator_tag; + const_iterator ( const UList<T>& list, @@ -241,7 +253,7 @@ public: base_(baseIter) {} - const_reference operator*() const + reference operator*() const { return data_[*base_]; } -- GitLab