id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 11267,Nested boost::fusion::make_list fails to compile under boost 1.58.0,Andrew King ,Joel de Guzman,"The following code compiles just fine under boost 1.56.0 (std=c++11), but fails to compile under boost-1.58.0 with either clang++-3.6 or g++-4.9.2 {{{ #include #include #include template void Handle(const T& t); template void Handle(const boost::fusion::list& x); struct CallFunctor { template void operator()(const T& t) const { Handle(t); } }; template void Handle(const T& t) { std::cout << t << std::endl; } template void Handle(const boost::fusion::list& x) { boost::fusion::for_each(x, CallFunctor{}); } template void PrintList(const List& list) { boost::fusion::for_each(list, CallFunctor{}); } int main() { PrintList( boost::fusion::make_list( std::string(""x""), 4, 6, boost::fusion::make_list(23.0, std::string(""rar"")))); return 0; } }}} There appears to be a compile error with the use of boost::is_convertible inside boost::enable_if in boost/fusion/container/list/cons.hpp:79",Bugs,closed,Boost 1.59.0,fusion,Boost 1.58.0,Regression,fixed,,