ptrdiff_t does not name a type