diff --git a/include/boost/gil/extension/io/detail/scanline_read_iterator.hpp b/include/boost/gil/extension/io/detail/scanline_read_iterator.hpp index c42ad6ff3..7b7b06fc9 100644 --- a/include/boost/gil/extension/io/detail/scanline_read_iterator.hpp +++ b/include/boost/gil/extension/io/detail/scanline_read_iterator.hpp @@ -27,9 +27,9 @@ namespace boost { namespace gil { -#if BOOST_WORKAROUND(BOOST_MSVC, >= 1400) -#pragma warning(push) -#pragma warning(disable:4512) //assignment operator could not be generated +#if BOOST_WORKAROUND(BOOST_MSVC, >= 1400) +#pragma warning(push) +#pragma warning(disable:4512) //assignment operator could not be generated #endif /// Input iterator to read images. @@ -39,6 +39,14 @@ class scanline_read_iterator : public boost::iterator_facade< scanline_read_iter , std::input_iterator_tag > { +private: + + typedef boost::iterator_facade< scanline_read_iterator< Reader > + , byte_t* + , std::input_iterator_tag + > base_t; + + public: scanline_read_iterator( Reader& reader @@ -76,7 +84,7 @@ private: return _pos == rhs._pos; } - reference dereference() const + typename base_t::reference dereference() const { if( _read_scanline == true ) { @@ -106,9 +114,9 @@ private: mutable byte_t* _buffer_start; }; -#if BOOST_WORKAROUND(BOOST_MSVC, >= 1400) -#pragma warning(pop) -#endif +#if BOOST_WORKAROUND(BOOST_MSVC, >= 1400) +#pragma warning(pop) +#endif } // namespace gil } // namespace boost diff --git a/include/boost/gil/extension/io/formats/bmp/scanline_read.hpp b/include/boost/gil/extension/io/formats/bmp/scanline_read.hpp index f9e93959b..b1ad59e60 100644 --- a/include/boost/gil/extension/io/formats/bmp/scanline_read.hpp +++ b/include/boost/gil/extension/io/formats/bmp/scanline_read.hpp @@ -48,12 +48,6 @@ class scanline_reader< Device , bmp_tag > { -private: - - typedef scanline_reader< Device - , bmp_tag - > this_t; - public: typedef bmp_tag tag_t; diff --git a/include/boost/gil/extension/io/formats/targa/scanline_read.hpp b/include/boost/gil/extension/io/formats/targa/scanline_read.hpp index a930c9f34..78426e017 100644 --- a/include/boost/gil/extension/io/formats/targa/scanline_read.hpp +++ b/include/boost/gil/extension/io/formats/targa/scanline_read.hpp @@ -46,12 +46,6 @@ class scanline_reader< Device , targa_tag > { -private: - - typedef scanline_reader< Device - , targa_tag - > this_t; - public: diff --git a/include/boost/gil/extension/io/formats/tiff/scanline_read.hpp b/include/boost/gil/extension/io/formats/tiff/scanline_read.hpp index d030fe3f0..922ccb638 100644 --- a/include/boost/gil/extension/io/formats/tiff/scanline_read.hpp +++ b/include/boost/gil/extension/io/formats/tiff/scanline_read.hpp @@ -64,11 +64,6 @@ class scanline_reader< Device , tiff_tag > { -private: - - typedef scanline_reader< Device - , tiff_tag - > this_t; public: