1 // RUN: %clang_cc1 -Wchar-subscripts -fsyntax-only -verify %s
2 
3 template<typename T>
t1()4 void t1() {
5   int array[1] = { 0 };
6   T subscript = 0;
7   int val = array[subscript]; // expected-warning{{array subscript is of type 'char'}}
8 }
9 
10 template<typename T>
t2()11 void t2() {
12   int array[1] = { 0 };
13   T subscript = 0;
14   int val = subscript[array]; // expected-warning{{array subscript is of type 'char'}}
15 }
16 
test()17 void test() {
18   t1<char>(); // expected-note {{in instantiation of function template specialization 't1<char>' requested here}}
19   t2<char>(); // expected-note {{in instantiation of function template specialization 't2<char>' requested here}}
20 }
21 
22