xref: /minix3/external/bsd/llvm/dist/clang/test/SemaCXX/warn-char-subscripts.cpp (revision f4a2713ac843a11c696ec80c0a5e3e5d80b4d338)
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