1  #include <limits.h>
       2  
       3  int main (void)
       4  {
       5    void *x = ((void *)((unsigned int)INT_MAX + 2));
       6    void *y = ((void *)((unsigned long)LONG_MAX + 2));
       7    if (x >= ((void *)((unsigned int)INT_MAX + 1))
       8        && x <= ((void *)((unsigned int)INT_MAX + 6))
       9        && y >= ((void *)((unsigned long)LONG_MAX + 1))
      10        && y <= ((void *)((unsigned long)LONG_MAX + 6)))
      11      exit (0);
      12    else
      13      abort ();
      14  }