From af58445a4befdad5b9f5181031622c6866e4cc2f Mon Sep 17 00:00:00 2001 From: Christian Henning Date: Tue, 8 Jun 2010 05:22:50 +0000 Subject: [PATCH] Fixing potential compilation errors with newer and more standard conformant compilers when using gil and STL. Basically gil's iterators and interator adaptors are now explicit what iterator category they are belonging to, e.g. random access iterator. [SVN r62551] --- include/boost/gil/bit_aligned_pixel_iterator.hpp | 4 ++-- include/boost/gil/iterator_from_2d.hpp | 4 ++-- include/boost/gil/pixel_iterator_adaptor.hpp | 4 ++-- include/boost/gil/planar_pixel_iterator.hpp | 6 +++--- include/boost/gil/position_iterator.hpp | 4 ++-- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/include/boost/gil/bit_aligned_pixel_iterator.hpp b/include/boost/gil/bit_aligned_pixel_iterator.hpp index 868d3d324..fd2df7e44 100644 --- a/include/boost/gil/bit_aligned_pixel_iterator.hpp +++ b/include/boost/gil/bit_aligned_pixel_iterator.hpp @@ -44,13 +44,13 @@ namespace boost { namespace gil { template struct bit_aligned_pixel_iterator : public iterator_facade, typename NonAlignedPixelReference::value_type, - random_access_traversal_tag, + std::random_access_iterator_tag, const NonAlignedPixelReference, typename NonAlignedPixelReference::bit_range_t::difference_type> { private: typedef iterator_facade, typename NonAlignedPixelReference::value_type, - random_access_traversal_tag, + std::random_access_iterator_tag, const NonAlignedPixelReference, typename NonAlignedPixelReference::bit_range_t::difference_type> parent_t; template friend struct bit_aligned_pixel_iterator; diff --git a/include/boost/gil/iterator_from_2d.hpp b/include/boost/gil/iterator_from_2d.hpp index 3c232b749..a4b234b86 100644 --- a/include/boost/gil/iterator_from_2d.hpp +++ b/include/boost/gil/iterator_from_2d.hpp @@ -51,14 +51,14 @@ namespace boost { namespace gil { template // Models PixelLocatorConcept class iterator_from_2d : public iterator_facade, typename Loc2::value_type, - random_access_traversal_tag, + std::random_access_iterator_tag, typename Loc2::reference, typename Loc2::coord_t> { GIL_CLASS_REQUIRE(Loc2, boost::gil, PixelLocatorConcept) public: typedef iterator_facade, typename Loc2::value_type, - random_access_traversal_tag, + std::random_access_iterator_tag, typename Loc2::reference, typename Loc2::coord_t> parent_t; typedef typename parent_t::reference reference; diff --git a/include/boost/gil/pixel_iterator_adaptor.hpp b/include/boost/gil/pixel_iterator_adaptor.hpp index 9c01fc962..f488f5693 100644 --- a/include/boost/gil/pixel_iterator_adaptor.hpp +++ b/include/boost/gil/pixel_iterator_adaptor.hpp @@ -44,7 +44,7 @@ template , Iterator, typename DFn::value_type, - use_default, + typename std::iterator_traits::iterator_category, typename DFn::reference, use_default> { DFn _deref_fn; @@ -52,7 +52,7 @@ public: typedef iterator_adaptor, Iterator, typename DFn::value_type, - use_default, + typename std::iterator_traits::iterator_category, typename DFn::reference, use_default> parent_t; typedef typename DFn::result_type reference; diff --git a/include/boost/gil/planar_pixel_iterator.hpp b/include/boost/gil/planar_pixel_iterator.hpp index 713d32f2c..71dbef53a 100644 --- a/include/boost/gil/planar_pixel_iterator.hpp +++ b/include/boost/gil/planar_pixel_iterator.hpp @@ -54,13 +54,13 @@ struct planar_pixel_reference; template struct planar_pixel_iterator : public iterator_facade, pixel::value_type,layout >, - random_access_traversal_tag, + std::random_access_iterator_tag, const planar_pixel_reference::reference,ColorSpace> >, public detail::homogeneous_color_base,mpl::size::value > { private: typedef iterator_facade, pixel::value_type,layout >, - random_access_traversal_tag, + std::random_access_iterator_tag, const planar_pixel_reference::reference,ColorSpace> > parent_t; typedef detail::homogeneous_color_base,mpl::size::value> color_base_parent_t; typedef typename std::iterator_traits::value_type channel_t; @@ -184,7 +184,7 @@ inline std::ptrdiff_t memunit_step(const planar_pixel_iterator&) { return template inline std::ptrdiff_t memunit_distance(const planar_pixel_iterator& p1, const planar_pixel_iterator& p2) { - return memunit_distance(at_c<0>(p1),at_c<0>(p2)); + return memunit_distance(gil::at_c<0>(p1),gil::at_c<0>(p2)); } template diff --git a/include/boost/gil/position_iterator.hpp b/include/boost/gil/position_iterator.hpp index 542f7df0b..df97611c1 100644 --- a/include/boost/gil/position_iterator.hpp +++ b/include/boost/gil/position_iterator.hpp @@ -39,12 +39,12 @@ template // the dimension to advance along struct position_iterator : public iterator_facade, typename Deref::value_type, - random_access_traversal_tag, + std::random_access_iterator_tag, typename Deref::reference, typename Deref::argument_type::template axis::coord_t> { typedef iterator_facade, typename Deref::value_type, - random_access_traversal_tag, + std::random_access_iterator_tag, typename Deref::reference, typename Deref::argument_type::template axis::coord_t> parent_t; typedef typename parent_t::difference_type difference_type;