
Hi, I use boost.Multindex in my code, to simulate std::map. The code works fine on VC++ 2003 and Intel Compiler 10, but after upgrading to ICL 11 (latest), I can't use BOOST_FOREACH macros like so: BOOST_FOREACH (const parameters_map::value_type &pv, params) { } The compiler throws up the following error: .\interaction_request_handler.cpp(192): error: operand types are incompatible ("boost::foreach_detail_::rvalue_probe<const parameters_map>" and "const parameters_map") BOOST_FOREACH (const parameters_map::value_type &pv, params) { everything else compiles fine. I am guessing that some automatic conversion is not being triggered in this compiler. Any hints as to what I can try tweaking to get this to compile? Else I will just have to expand all FOREACH macros manually... I am using Boost 1.35, and would rather not be forced to upgrade just yet (since I also use built components, and I remember it was quite time-consuming, building the required components with Intel manually since bjam support for it is spotty). Thanks