1 extern void useip(int *); 2 extern void useia(int (*)[3]); 3 extern void usevp(void *); 4 static int sfun(void) { return 0; } 5 static int spun(void) { return 0; } 6 7 void lfoo(int *p, int a) 8 { 9 int larra[3], larrb[3], larrc[3], larrd[3], larre[3], larrf[3]; 10 useip(p); 11 useip(larra); 12 useip(larrb + 1); 13 useip(larrc + a); 14 useip(&larrd[1]); 15 useip(&larre[a]); 16 useia(&larrf); 17 } 18 19 static int sarra[3], sarrb[3], sarrc[3], sarrd[3], sarre[3], sarrf[3]; 20 static int s, sfun(void), spun(void); 21 void sfoo(int *p, int a) 22 { 23 useip(p); 24 useip(&s); 25 useip(sarra); 26 useip(sarrb + 1); 27 useip(sarrc + a); 28 useip(&sarrd[1]); 29 useip(&sarre[a]); 30 useia(&sarrf); 31 usevp(sfun); 32 usevp(&spun); 33 } 34 35 extern int xarra[3], xarrb[3], xarrc[3], xarrd[3], xarre[3], xarrf[3]; 36 extern int x, xfun(void), xpun(void); 37 void xfoo(int *p, int a) 38 { 39 useip(p); 40 useip(&x); 41 useip(xarra); 42 useip(xarrb + 1); 43 useip(xarrc + a); 44 useip(&xarrd[1]); 45 useip(&xarre[a]); 46 useia(&xarrf); 47 usevp(xfun); 48 usevp(&xpun); 49 } 50 51 int garra[3], garrb[3], garrc[3], garrd[3], garre[3], garrf[3]; 52 int g, gfun(void), gpun(void); 53 void gfoo(int *p, int a) 54 { 55 useip(p); 56 useip(&g); 57 useip(garra); 58 useip(garrb + 1); 59 useip(garrc + a); 60 useip(&garrd[1]); 61 useip(&garre[a]); 62 useia(&garrf); 63 usevp(gfun); 64 usevp(&gpun); 65 } 66 67 /* 68 * check-name: symbol address 69 * check-command: sparsec -Wno-decl -c $file -o tmp.o 70 */