1 #include "check_debug.h" 2 3 void frob(); 4 5 #define min(a, b) ((a) < (b) ? (a) : (b)) 6 7 void func(void) 8 { 9 int i; 10 int val; 11 12 for (i = 0; i < 10; i++) { 13 val = min(5, i); 14 __smatch_value("val"); 15 } 16 17 i++; 18 __smatch_value("i"); 19 val = min(100, i); 20 __smatch_value("val"); 21 22 for (i = 0; i < 10; i++) 23 frob(); 24 25 val = min(100, i); 26 __smatch_value("val"); 27 } 28 /* 29 * check-name: assigning select statements 30 * check-command: smatch -I.. sm_select_assign.c 31 * 32 * check-output-start 33 sm_select_assign.c:14 func() val = 0-5 34 sm_select_assign.c:18 func() i = 11-s32max 35 sm_select_assign.c:20 func() val = 11-100 36 sm_select_assign.c:26 func() val = 10 37 * check-output-end 38 */ 39