25 lines
675 B
Mathematica
25 lines
675 B
Mathematica
|
// RUN: %clang_cc1 -Wconversion -fsyntax-only %s -verify
|
||
|
|
||
|
typedef signed char BOOL;
|
||
|
__attribute__((objc_root_class)) @interface RDar14415662
|
||
|
@property (readonly) BOOL stuff;
|
||
|
@property (readwrite) BOOL otherStuff;
|
||
|
@end
|
||
|
|
||
|
void radar14415662(RDar14415662 *f, char x, int y) {
|
||
|
f.otherStuff = !f.stuff; // no-warning
|
||
|
BOOL b = !f.stuff; // no-warning
|
||
|
|
||
|
// True positive to sanity check warning is working.
|
||
|
x = y; // expected-warning {{implicit conversion loses integer precision: 'int' to 'char'}}
|
||
|
}
|
||
|
|
||
|
__attribute__((objc_root_class)) @interface DoubleProp
|
||
|
@property double d;
|
||
|
@end
|
||
|
|
||
|
void use_double_prop(DoubleProp *dp) {
|
||
|
double local = 42;
|
||
|
dp.d += local; // no warning
|
||
|
}
|