If two pointers are compared using <, >, <=, or >=, the result is unspecified in the following cases:
The pointers point into different arrays. (A non-array object is considered an array of size 1.)
int x;
int y;
const bool b1 = &x < &y; // unspecified
int ...