msvc compilation fix