1*deebf6efSDouglas Gregor // RUN: clang-cc -fsyntax-only -pedantic -verify %s 2ad2956c2SDouglas Gregor 3ad2956c2SDouglas Gregor template<int N> 4ad2956c2SDouglas Gregor void f() { 5ad2956c2SDouglas Gregor int a[] = { 1, 2, 3, N }; 6ad2956c2SDouglas Gregor unsigned numAs = sizeof(a) / sizeof(int); 7ad2956c2SDouglas Gregor } 8ad2956c2SDouglas Gregor 9ad2956c2SDouglas Gregor template void f<17>(); 10ad2956c2SDouglas Gregor 11*deebf6efSDouglas Gregor 12*deebf6efSDouglas Gregor template<int N> 13*deebf6efSDouglas Gregor void f1() { 14*deebf6efSDouglas Gregor int a0[] = {}; // expected-warning{{zero}} 15*deebf6efSDouglas Gregor int a1[] = { 1, 2, 3, N }; 16*deebf6efSDouglas Gregor int a3[sizeof(a1)/sizeof(int) != 4? 1 : -1]; // expected-error{{negative}} 17*deebf6efSDouglas Gregor } 18