1 #include <stdio.h> 2 #include <string.h> 3 #include "check_debug.h" 4 5 long long l; 6 unsigned long long ul; 7 int i; 8 unsigned int ui; 9 signed char c; 10 unsigned char uc; 11 12 int main(void) 13 { 14 int idx; 15 16 if (c < -2) 17 return 1; 18 if (uc < -2) 19 return 1; 20 if (i < -2) 21 return 1; 22 if (ui < -2) 23 return 1; 24 if (l < -2) 25 return 1; 26 if (ul < -2) 27 return 1; 28 29 __smatch_implied(l); 30 __smatch_implied(ul); 31 __smatch_implied(i); 32 __smatch_implied(ui); 33 __smatch_implied(c); 34 __smatch_implied(uc); 35 36 return 0; 37 } 38 39 40 /* 41 * check-name: smatch: casts #4 42 * check-command: smatch -I.. sm_casts4.c 43 * 44 * check-output-start 45 sm_casts4.c:18 main() warn: impossible condition '(uc < -2) => (0-255 < (-2))' 46 sm_casts4.c:29 main() implied: l = '(-2)-s64max' 47 sm_casts4.c:30 main() implied: ul = '18446744073709551614-u64max' 48 sm_casts4.c:31 main() implied: i = '(-2)-s32max' 49 sm_casts4.c:32 main() implied: ui = '4294967294-u32max' 50 sm_casts4.c:33 main() implied: c = '(-2)-127' 51 sm_casts4.c:34 main() implied: uc = '' 52 * check-output-end 53 */