Support msvc compiler