1*1f5207b7SJohn Levon #include "check_debug.h" 2*1f5207b7SJohn Levon 3*1f5207b7SJohn Levon char *some_func(void); 4*1f5207b7SJohn Levon 5*1f5207b7SJohn Levon int x,y; 6*1f5207b7SJohn Levon int i; func(void)7*1f5207b7SJohn Levonvoid func(void) 8*1f5207b7SJohn Levon { 9*1f5207b7SJohn Levon char *p; 10*1f5207b7SJohn Levon char *p2; 11*1f5207b7SJohn Levon 12*1f5207b7SJohn Levon if (x > 0) 13*1f5207b7SJohn Levon p = some_func(); 14*1f5207b7SJohn Levon for (i = 0; i < x; i++) 15*1f5207b7SJohn Levon *p = 'x'; 16*1f5207b7SJohn Levon *p = 'x'; 17*1f5207b7SJohn Levon if (y > 0) 18*1f5207b7SJohn Levon p2 = some_func(); 19*1f5207b7SJohn Levon i = 0; 20*1f5207b7SJohn Levon if (i < y) 21*1f5207b7SJohn Levon *p2 = 'x'; 22*1f5207b7SJohn Levon } 23*1f5207b7SJohn Levon /* 24*1f5207b7SJohn Levon * check-name: smatch loops #4 25*1f5207b7SJohn Levon * check-command: smatch -I.. sm_loops4.c 26*1f5207b7SJohn Levon * 27*1f5207b7SJohn Levon * check-output-start 28*1f5207b7SJohn Levon sm_loops4.c:16 func() error: potentially dereferencing uninitialized 'p'. 29*1f5207b7SJohn Levon * check-output-end 30*1f5207b7SJohn Levon */ 31