more warnings fixed reported by MSVC