Index: iterator.hpp =================================================================== --- iterator.hpp (revision 76373) +++ iterator.hpp (working copy) @@ -44,6 +44,15 @@ mutable T value_; }; +struct random_access_traversal_input_output_iterator_tag + : boost::random_access_traversal_tag, std::input_iterator_tag +{ + operator std::output_iterator_tag() const + { + return std::output_iterator_tag(); + } +}; + template class array_iterator; @@ -53,7 +62,7 @@ iterator_facade< array_iterator , typename associated_types::value_type - , boost::random_access_traversal_tag + , random_access_traversal_input_output_iterator_tag , Reference > , private @@ -71,7 +80,7 @@ typedef iterator_facade< array_iterator , typename detail::multi_array::associated_types::value_type - , boost::random_access_traversal_tag + , random_access_traversal_input_output_iterator_tag , Reference > facade_type;