Originally Posted by
c.user
standard says: cast to pointer to void and back doesn't change it and when function has a prototype the call will cast types of its arguments to types of prototype parameters
and there is an example in K&R where he does a qsort and uses char * in numcmp (with qsort( , , , int (*)(void *, void *)); prototype and definition)
are you think it depends from level of pointer ?
what problem with level if casting to void * doesn't change any quality of a data ?
about const there are obvious rules too