// RUN: %clang_cc1 -analyze -analyzer-checker=core,experimental.core -analyzer-store=region -verify %s void fill_r (int * const &x); char testPointer () { int x[8]; int *xp = x; fill_r(xp); return x[0]; // no-warning } char testArray () { int x[8]; fill_r(x); return x[0]; // no-warning } char testReferenceCast () { int x[8]; int *xp = x; fill_r(reinterpret_cast(xp)); return x[0]; // no-warning } void fill (int *x); char testReferenceCastRValue () { int x[8]; int *xp = x; fill(reinterpret_cast(xp)); return x[0]; // no-warning }