150
|
1 // RUN: %clang_cc1 -fsyntax-only -pedantic -verify %s
|
|
2
|
|
3 template<int N>
|
|
4 void f() {
|
|
5 int a[] = { 1, 2, 3, N };
|
|
6 unsigned numAs = sizeof(a) / sizeof(int);
|
|
7 }
|
|
8
|
|
9 template void f<17>();
|
|
10
|
|
11
|
|
12 template<int N>
|
|
13 void f1() {
|
|
14 int a0[] = {}; // expected-warning{{zero}}
|
|
15 int a1[] = { 1, 2, 3, N };
|
|
16 int a3[sizeof(a1)/sizeof(int) != 4? 1 : -1]; // expected-error{{negative}}
|
|
17 }
|
|
18
|
|
19 namespace PR13788 {
|
|
20 template <unsigned __N>
|
|
21 struct S {
|
|
22 int V;
|
|
23 };
|
|
24 template <int N>
|
|
25 void foo() {
|
|
26 S<0> arr[N] = {{ 4 }};
|
|
27 }
|
|
28 }
|