// RUN: %clang_cc1 -fsyntax-only -verify %s
template<int i> struct x {
  static const int j = i;
  x<j>* y;
};

template<int i>
const int x<i>::j;

int array0[x<2>::j];

template<typename T>
struct X0 {
  static const unsigned value = sizeof(T);
};

template<typename T>
const unsigned X0<T>::value;

int array1[X0<int>::value == sizeof(int)? 1 : -1];

const unsigned& testX0() { return X0<int>::value; }

int array2[X0<int>::value == sizeof(int)? 1 : -1];

template<typename T>
struct X1 {
  static const unsigned value;
};

template<typename T>
const unsigned X1<T>::value = sizeof(T);

int array3[X1<int>::value == sizeof(int)? 1 : -1]; // expected-error{{variable length arrays are not permitted in C++}} \
// expected-error{{variable length array declaration not allowed at file scope}}
