| // RUN: %clang_cc1 -Werror=objc-signed-char-bool %s -fixit-recompile -fixit-to-temporary -E -o - | FileCheck %s |
| |
| typedef signed char BOOL; |
| |
| BOOL b; |
| |
| int main() { |
| BOOL b = 2; |
| // CHECK: BOOL b = 2 ? YES : NO; |
| |
| b = b ? 2 : 1; |
| // CHECK: b = b ? 2 ? YES : NO : 1; |
| |
| b = b ? 1 : 2; |
| // CHECK: b = b ? 1 : 2 ? YES : NO; |
| |
| b = b ? 2 : 2; |
| // CHECK: b = b ? 2 ? YES : NO : 2 ? YES : NO; |
| |
| b = 1 + 1; |
| // CHECK: b = (1 + 1) ? YES : NO; |
| |
| b = 1 | 2; |
| // CHECK: b = (1 | 2) ? YES : NO; |
| |
| b = 1 << 1; |
| // CHECK: b = (1 << 1) ? YES : NO; |
| |
| int i; |
| |
| b = i; |
| // CHECK: b = i ? YES : NO; |
| |
| b = i * 2; |
| // CHECK: b = (i * 2) ? YES : NO; |
| |
| b = 1 ? 2 : 3; |
| // CHECK: b = 1 ? 2 ? YES : NO : 3 ? YES : NO; |
| } |
| |
| @interface BoolProp |
| @property BOOL b; |
| @end |
| |
| void f(BoolProp *bp) { |
| bp.b = 43; |
| // CHECK: bp.b = 43 ? YES : NO; |
| |
| [bp setB:43]; |
| // CHECK: [bp setB:43 ? YES : NO]; |
| |
| int i; |
| |
| bp.b = i; |
| // CHECK: bp.b = i ? YES : NO; |
| |
| bp.b = i + 1; |
| // CHECK: bp.b = (i + 1) ? YES : NO; |
| } |