// RUN: %clang_cc1 -triple i386-apple-darwin9 -analyze -analyzer-checker=core,experimental.core -analyzer-store=region -verify -fblocks %s

// Here is a case where a pointer is treated as integer, invalidated as an
// integer, and then used again as a pointer.   This test just makes sure
// we don't crash.
typedef unsigned uintptr_t;
void test_pointer_invalidated_as_int_aux(uintptr_t* ptr);
void test_pointer_invalidated_as_int() {
  void *x;
  test_pointer_invalidated_as_int_aux((uintptr_t*) &x);
  // Here we have a pointer to integer cast.
  uintptr_t y = (uintptr_t) x;
}

