MSVC compatibility