id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 5816,any_range requires copyable elements,bromeon@…,Neil Groves," boost::any_range attempts to copy container elements even if the ''Reference'' template parameter is a reference. This behavior prevents the use of noncopyable element types and is inconsistent with boost::sub_range and boost::iterator_range. Short code example that doesn't compile (unless ''private:'' is commented out): {{{ #include // because any_range.hpp doesn't compile alone #include #include // X is movable, but non-copyable class X { public: X() {} X(X&&) {} void operator= (X&&) {} private: X(const X&); void operator= (const X&); }; int main() { std::vector v; boost::any_range range2 = v; } }}} The problem might be in line 429 of any_iterator_wrapper.hpp, where ''reference_as_value_type'' is used for the ''Reference'' template parameter of the underlying ''any_random_access_iterator_wrapper''.",Bugs,closed,To Be Determined,range,Boost 1.47.0,Problem,fixed,,