use intptr_t for atomically addressable word-size