id summary reporter owner description type status milestone component version severity resolution keywords cc 8101 coroutine's iterator doesn't have postfix ++ operator Nathan Ridge olli "The following code fails to compile: {{{ #include #include #include #include typedef boost::coroutines::coroutine coro_t; void foo(coro_t::caller_type& caller) { caller(0); caller(1); caller(2); } coro_t f() { return coro_t(&foo); } int main() { boost::copy(f(), std::ostream_iterator(std::cout, ""\n"")); } }}} The reason is that std::copy (which is called by boost::copy) uses the postfix version of the iterator's increment operator, but the coroutine's iterator only provides the prefix version. One way to write an iterator class that satisfies all the iterator interface requirements with minimal work is to use iterator_facade (http://www.boost.org/doc/libs/1_53_0/libs/iterator/doc/iterator_facade.html)." Bugs closed To Be Determined coroutine Boost Development Trunk Problem fixed