| // RUN: %clang_cc1 -Wchar-subscripts -fsyntax-only -verify %s |
| int val = array[subscript]; // expected-warning{{array subscript is of type 'char'}} |
| int val = subscript[array]; // expected-warning{{array subscript is of type 'char'}} |
| int val = array[subscript]; // expected-warning{{array subscript is of type 'char'}} |
| int val = subscript[array]; // expected-warning{{array subscript is of type 'char'}} |
| int val = array[returnsChar()]; // expected-warning{{array subscript is of type 'char'}} |
| signed char subscript = 0; |
| int val = array[subscript]; // no warning for explicit signed char |
| unsigned char subscript = 0; |
| int val = array[subscript]; // no warning for unsigned char |
| int val = array[subscript]; // expected-warning{{array subscript is of type 'char'}} |
| typedef signed char SignedCharTy; |
| SignedCharTy subscript = 0; |
| int val = array[subscript]; // no warning for explicit signed char |
| typedef unsigned char UnsignedCharTy; |
| UnsignedCharTy subscript = 0; |
| int val = array[subscript]; // no warning for unsigned char |