All the people who pointed out that (void *) == (char *) are quite right. I guess I blew my saving roll there...