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