extern int gfun(int); static int sfun(int a) { return a; } void usei(int *); void usef(int (*)(int)); void usev(void *); void foo(int *p, int a[5], int (*pfun)(int)); void foo(int *p, int a[5], int (*pfun)(int)) { extern int valg[5], valh[5], vali[5]; static int vals[5], valt[5], valr[5]; int vala[5], valb[5], valc[5]; usei(p); usei(valg); usei(&valh[0]); usei(&vali[1]); usei(vals); usei(&valt[0]); usei(&valr[1]); usei(vala); usei(&valb[0]); usei(&valc[1]); usef(pfun); usef(gfun); usef(&gfun); usef(sfun); usef(&sfun); usev(pfun); usev(gfun); usev(&gfun); usev(sfun); usev(&sfun); } /* * check-name: pointer-param * check-command: sparsec -c $file -o tmp.o */