Guillaume Munch wrote: > The former. If we are supposed to include support/docstream.h to use > odocstringstream, shouldn't the latter be defined in docstream.h instead > of strfwd.h? (or the fix be moved to strfwd.h which is already included > by docstream.h via docstring.h?)
That was the missing bit, now I understand it. I believe that strfwd.h is newer than the MSVC fix. > I am tempted to do the proper fix, but since I do not own MSVC, people > would have to bear with me if this breaks compilation temporarily. Please do it. I am 99% sure that moving these lines #if defined(_MSC_VER) && (_MSC_VER >= 1600) // Ugly workaround for MSVC10 STL bug: // std::numpunct has a hardcoded dllimport in definition, but we wanna it with 32 bit // so we can't import it and must define it but then the compiler complains. #include "support/numpunct_lyx_char_type.h" #endif to strfwd.h will work. One could also restrict the MSVC version check to == 1600 (since the bug is supposed to be fixed in later versions), but I would not do this part without test. Georg