1 // RUN: %clang_cc1 -fsyntax-only -verify -Wsign-conversion %s
4 typedef unsigned int NSUInteger;
11 @interface X : NSObject
12 @property NSUInteger uint;
15 @interface NSArray : NSObject
18 - (id)objectAtIndex:(NSUInteger)index;
19 - (id)objectAtIndexedSubscript:(NSUInteger)index;
26 [x setUint:sint]; // expected-warning {{implicit conversion changes signedness: 'int' to 'NSUInteger'}}
27 x.uint = sint; // expected-warning {{implicit conversion changes signedness: 'int' to 'NSUInteger'}}
35 (void)((NSObject*)array[si]).hash; // expected-warning {{implicit conversion changes signedness: 'int' to 'NSUInteger'}}
37 (void)[((NSObject*)array[si]) hash]; // expected-warning {{implicit conversion changes signedness: 'int' to 'NSUInteger'}}
38 (void)array[si]; // expected-warning {{implicit conversion changes signedness: 'int' to 'NSUInteger'}}