So we know that the standard doesn’t force pointer sizes to be equal. (here and here) (and not talking about function pointers)
I was wondering how in reality that can be an issue. We know that void * can hold anything, so if the pointer sizes are different, that would be the biggest size. Given that, assigning a void ** to a char ** means trouble.
My question is how dangerous would it be to assume void * and char * have the same size? Is there actually an architecture where this is not true?
Also, 16-bit dos is not what I want to hear! 😉
void *andchar *are guaranteed to have the same size.void **is not guaranteed to have the same size aschar **(but very likey on your implementation they will).