id summary reporter owner description type status milestone component version severity resolution keywords cc 11234 boost::asymmetric_coroutine doesn't compile when used with boost::range::algorithms kozlov.taras@… olli "I've tried to use generators produced by boost::asymmetric_coroutines together with boost::range::algorithms (for example find_if) and it fails to compile. Following code raise compilation error {{{ #include #include using namespace boost::range; using namespace boost::coroutines; asymmetric_coroutine::pull_type make_dummy_range() { return asymmetric_coroutine::pull_type([](asymmetric_coroutine::push_type& yield) { yield(1); }); } template void const_func(const Range& r) { auto b = boost::begin(r); } int _tmain(int argc, _TCHAR* argv[]) { const_func(make_dummy_range()); return 0; } }}} {{{ c:\users\taras\documents\visual studio 2012\projects\coroutine_bug\coroutine_bug\coroutine_bug.cpp(23): error C2027: use of undefined type 'boost::coroutines::pull_coroutine::const_iterator' 1> with 1> [ 1> R=int 1> ] 1> d:\work\3rdparty\boost_1_58_0\boost\coroutine\asymmetric_coroutine.hpp(812) : see declaration of 'boost::coroutines::pull_coroutine::const_iterator' 1> with 1> [ 1> R=int 1> ] 1> c:\users\taras\documents\visual studio 2012\projects\coroutine_bug\coroutine_bug\coroutine_bug.cpp(28) : see reference to function template instantiation 'void const_func>(const Range &)' being compiled 1> with 1> [ 1> R=int, 1> Range=boost::coroutines::pull_coroutine 1> ] 1>c:\users\taras\documents\visual studio 2012\projects\coroutine_bug\coroutine_bug\coroutine_bug.cpp(23): error C2514: 'boost::coroutines::pull_coroutine::const_iterator' : class has no constructors 1> with 1> [ 1> R=int 1> ] 1> d:\work\3rdparty\boost_1_58_0\boost\coroutine\asymmetric_coroutine.hpp(812) : see declaration of 'boost::coroutines::pull_coroutine::const_iterator' 1> with 1> [ 1> R=int 1> ] 1> 1>Build FAILED. }}} The problem is that boost::asymmetric_coroutine::const_iterator is declared but never defined, see boost/coroutine/asymmetric_coroutine.hpp:180 I detected this problem while was trying to migrate from Boost 1.55. With Boost 1.55 this code compiles and everything is fine. " Bugs closed To Be Determined coroutine Boost 1.58.0 Problem wontfix