MSVC will not allow a void pointer to be implicitly upcast to a pointer type. It's OK in the other direction.