do not need to cast a (void *)