addr is already a pointer