Compile error when using program_options and lambda expression

Hi, I ran into a problem when I was replacing boost::bind expressions with lambda expressions. I could boil down the problem to the following code: #include <boost/program_options.hpp> template<typename T> void f(T t) {} void g() { using namespace boost::program_options; // each of the following lines produces the error: // Error 1 error C2871: 'validators' : a namespace with this name does not exist // Error 2 error C2871: 'program_options' : a namespace with this name does not exist f([]() {} ); auto x = []() {}; } When I try to compile this on my Microsoft Visual Studio 2010 using our Boost 1.45 library, I get a compiler errors: Error 1 error C2871: 'validators' : a namespace with this name does not exist Error 2 error C2871: 'program_options' : a namespace with this name does not exist To me, it looks like a compiler problem but I want to make sure that I am not running into a known issue in the boost libraries. I have search the bug database, but I have not found any issues like this one. It would be nice if someone could double-check this on another platform and boost version. If it is a compiler bug, I would then file a bug report to MS. Best regards, Jens
participants (1)
-
Jens Auer