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