diff --git a/STL_Extension/include/CGAL/iterator.h b/STL_Extension/include/CGAL/iterator.h index 44238dd2111..8d40cec8c38 100644 --- a/STL_Extension/include/CGAL/iterator.h +++ b/STL_Extension/include/CGAL/iterator.h @@ -43,6 +43,7 @@ #include #include +#include namespace CGAL { @@ -1324,6 +1325,14 @@ struct Derivator, std::tuple > } // internal +namespace tuple_internal { +template +auto to_tuple(std::tuple &t, std::index_sequence) +{ + return std::tuple(std::get(t)...); +} + +}//end namespace tuple_internal // OutputIterator which accepts several types in *o++= and dispatches, // wraps several other output iterators, and dispatches accordingly. @@ -1408,6 +1417,16 @@ public: tuple_dispatch(t); return *this; } + + operator std::tuple() + { + return tuple_internal::to_tuple(*this, std::index_sequence_for{}); + } + + operator std::tuple()const + { + return tuple_internal::to_tuple(*this, std::index_sequence_for{}); + } }; template < typename... V, typename... O> @@ -1449,6 +1468,7 @@ public: template Self& operator=(const T&) { return *this; } + }; diff --git a/Scripts/developer_scripts/cgal_check_dependencies.sh b/Scripts/developer_scripts/cgal_check_dependencies.sh index 65b989a8ca2..0a8d7b34e14 100644 --- a/Scripts/developer_scripts/cgal_check_dependencies.sh +++ b/Scripts/developer_scripts/cgal_check_dependencies.sh @@ -30,7 +30,7 @@ do fi done -cmake -DCGAL_HEADER_ONLY=FALSE -DCGAL_ENABLE_CHECK_HEADERS=TRUE -DDOXYGEN_EXECUTABLE="$DOX_PATH" -DCGAL_COPY_DEPENDENCIES=TRUE -DCMAKE_CXX_FLAGS="-std=c++11" .. +cmake -DCGAL_HEADER_ONLY=FALSE -DCGAL_ENABLE_CHECK_HEADERS=TRUE -DDOXYGEN_EXECUTABLE="$DOX_PATH" -DCGAL_COPY_DEPENDENCIES=TRUE -DCMAKE_CXX_FLAGS="-std=c++14" .. if [ -n "$DO_CHECK_HEADERS" ]; then make -j$(nproc --all) -k check_headers fi