chang c-style cast to static_cast

The previous (void*)(ADDR) would allow non-pointer types to be converted
when they shouldn't be.  replacing with static_cast<void *>(ADDR) to
fail at compile time if a user tries to synchronize on something like
an int.