remove several warnings on msvc