1  struct x {
       2  	int a, b;
       3  } z = { -4028, 4096 };
       4  
       5  int foo(struct x *p, int y)
       6  {
       7    if ((y & 0xff) != y || -p->b >= p->a)
       8      return 1;
       9    return 0;
      10  }
      11  
      12  main()
      13  {
      14    if (foo (&z, 10))
      15      abort ();
      16    exit (0);
      17  }