>>19
No, you're brain-washed by C++ idiots. Casts from void * are fucking useless.
I maintain a fairly large program, and it probably contains less than 100 casts. Most of those are to work around stupidities with other code that isn't written properly.
Every time I have removed a cast from the code, I have discovered that it was hiding a glaring bug, like casting away a const, passing the resulting pointer to another function where it was saved for later manipulation, which would occasionally crash because it was trying to write to unwritable memory locations. Bullshit like that would never happen if people avoided useless casts of the sort you're recommending.
By the way, my program builds clean with
every single GCC warning enabled, save the ridiculously pedantic diagnostics that are prone to giving loads of false positives (such as -Wstrict-overflow).