So, what, you’d advocate declaring all function parameters and returns as void* to maximize flexibility with respect to future changes in requirements?
No of course not. Just that we shouldn't forget that "specs" can change and typically do. Keep an open mind.. Never say "never". Illegal states can become legal.