I had the following code line which compiles just fine under g++ and Visual Studio prior to 2010.
std::vector device_list;
boost::function<
There are issues with binding in MSVC10. This isn't the first post I've seen reporting problems with it. Secondly, it's completely and totally redundant with the introduction of lambdas, and boost::function has been superseded by std::function.
std::vector devices;
std::function callback = [&](Device& dev, boost::posix_time::time_duration& time) {
devices.push_back(dev);
};
There is no need to use binding in MSVC10.