1  /* The bit-field below would have a problem if __INT_MAX__ is too
       2     small.  */
       3  #if __INT_MAX__ < 2147483647
       4  int
       5  main (void)
       6  {
       7    exit (0);
       8  }
       9  #else
      10  struct foo
      11  {
      12    unsigned b31 : 1;
      13    unsigned b30 : 1;
      14    unsigned b29 : 1;
      15    unsigned b28 : 1;
      16    unsigned rest : 28;
      17  };
      18  foo(a)
      19       struct foo a;
      20  {
      21    return a.b30;
      22  }
      23  #endif