fix compilation with MSVC