is this valid
void *p = &X; /* some thing */ p += 12;
and if so what does p now point to? I have (third party) code that does this (an
You may want to have a look at the top voted answer for this question
Pointer arithmetic for void pointer in C