6755006.C   [plain text]


// APPLE LOCAL file 6755006
//#include <cassert>
/* { dg-do run } */
/* { dg-options { -m32 -Os } { target powerpc*-*-darwin* i?86-*-darwin* } } */
/* { dg-options { -Os } { target arm*-*-darwin* } } */
#include <stdio.h>
#include <stdlib.h>
enum foo {
  some_keyword0,
  NUM_OBJC_KEYWORDS = 23
};
struct IdentifierInfo {
  unsigned ObjCOrBuiltinID : 13;
};
unsigned X = 429;
int main() {
  IdentifierInfo IDs;
  for (unsigned i = 0, e = X; i != e; ++i) {
    IDs.ObjCOrBuiltinID = i+6583 + 23;
    //    assert(IDs.ObjCOrBuiltinID - 23 == i+6583 && "ID too large for field!");
    if (IDs.ObjCOrBuiltinID - 23 != i+6583) {
      abort();
      // printf("ID too large for field!  i == %d\n", i);
      // return -1;
    }
  }
  return 0;
}