Joaquín M López Munoz
My hunch is that this is indeed just a compiler quirk, specially since you've reported that the problem is not reproducible in GCC. You can try the following:
1. What Boost version are you using?
1.33.1
Line 445 of ordered_index.hpp in Boost 1.33.1 does not even contain a '.' character.
Yes I know ... - wait - BINGO! If someone else states what I already know it always helps. This was the hint I needed. Someone had defined MACRO "upper" and "lower" in a header I included before multiindex stuff (only with VC8, which explains why the error did not crop up with gcc). What a pity. So it is not the compiler to blame this time, though emitting the _preprocessed_ offending line would have helped a lot in this situation. Thanks a lot! Markus