id summary reporter owner description type status milestone component version severity resolution keywords cc 11692 boost::insert doesn't return a value on the 2 argument overload causing undefined behaviour Harry George Neil Groves "In boost/range/algorithm_ext/insert.hpp the second overload for insert doesn't return anything. This was causing our build on clang 3.6 to crash. A simple reproducer is {{{ #include #include #include #include int main() { std::vector vec({0,1,2,3}); std::set out; boost::insert(out, vec); for (auto val : out) { std::cout << val << std::endl; } return 0; } }}} To fix it, simply adding {{{ return on; }}} at the end of the function so that it matches the overload above it fixed the issue. Having looked at the tests https://github.com/boostorg/range/blob/master/test/algorithm_ext_test/insert.cpp The test only appear to be testing the overload that takes 3 arguments which works fine. I tested on 1.56, I had a quick look at the code for 1.59 and it appears to have the same issue but have not been able to test it. " Bugs new To Be Determined range Boost 1.63.0 Problem boost::insert insert