silence pointer/int conversion warnings using uintptr_t, since we are using stdio file offsets are longs