For context, the reason why you often see explicit casts from void* to other pointer types is that C++ forbids implicit casts from void*, which is one of the few compatibility breaks that C++ did with C.
(For better or for worse, people often compile C-style code with a C++ compiler)