*new* min_t() casting that truncates the values
[smatch.git] / validation / sm_implied9.c
blobb60a08e8ea21843bc199aa226eb5c98144ef29af
1 #include "check_debug.h"
3 void frob(void){}
5 void func(int y)
7 int test2;
9 if (({int test2 = !!(y < 0 || y >= 10); frob(); frob(); frob(); test2;}))
10 __smatch_value("y");
11 else
12 __smatch_value("y");
14 test2 = (y < 3 || y >= 5);
15 if (test2)
16 __smatch_value("y");
17 else
18 __smatch_value("y");
20 if (({int test3 = y < -98; frob(); frob(); frob(); test3;}))
21 __smatch_value("y");
24 * check-name: smatch implied #9
25 * check-command: smatch -I.. sm_implied9.c
27 * check-output-start
28 sm_implied9.c +10 func(5) y = min-(-1),10-max
29 sm_implied9.c +12 func(7) y = 0-9
30 sm_implied9.c +16 func(11) y = min-2,5-max
31 sm_implied9.c +18 func(13) y = 3-4
32 sm_implied9.c +21 func(16) y = min-(-99)
33 * check-output-end