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  */