
Hi Joaquin, Sorry for the delayed response. I tried what you said and [ 1. Continuing with your example.cpp file, where you last inserted the boost::detail::allocator::construct bit, please remove all usage of Boost.MultiIndex and its headers, and simply add this #include #include <boost/detail/allocator_utilities.hpp> and keep the boost::detail::allocator::construct portion. Still the same " syntax error : identifier 'p'" error? ] Yes, I still got the error. [ 2. If the answer to the above is affirmative, please start removing headers (and the code that depends on them), *one header at a time*. Continue after you've removed everything (a) or suddenly the error disappears (b). ] The error disappears only when I remove the multi_index declaration. After which the thing is of no use to me. [ 3. If (a), then you have a barebone example.cpp file with little more than the the allocator_utilities.hpp #include and the boost::detail::allocator::construct line. My bet is then the error has to do with the settings of your project. ] I am not sure of that but the precompiled header setting was not the reason. I confirmed this by compiling my stand alone program in both ways of the setting. It compiles fine. [ 4.If (b), examine the last header you removed when the error vanished. Is it introducing any kind of macro, ::new overload, or something suspicious? ] No, I confirmed manually in the code and new is not overloaded. Also one more thing, I found new now is that I am getting similar errors while I try to use boost::unordered_map. I get a "syntax error :'(' in boost\unordered\detail\buckets.hpp(767). I opened a seperate thread for that. Thanks, Ram