1570af302Sopenharmony_ci#include <grp.h> 2570af302Sopenharmony_ci#define T(t) (t*)0; 3570af302Sopenharmony_ci#define F(t,n) {t *y = &x.n;} 4570af302Sopenharmony_cistatic void f() 5570af302Sopenharmony_ci{ 6570af302Sopenharmony_ciT(gid_t) 7570af302Sopenharmony_ciT(size_t) 8570af302Sopenharmony_ci{ 9570af302Sopenharmony_cistruct group x; 10570af302Sopenharmony_ciF(char*, gr_name) 11570af302Sopenharmony_ciF(gid_t, gr_gid) 12570af302Sopenharmony_ciF(char**, gr_mem) 13570af302Sopenharmony_ci} 14570af302Sopenharmony_ci{void(*p)(void) = endgrent;} 15570af302Sopenharmony_ci{struct group*(*p)(void) = getgrent;} 16570af302Sopenharmony_ci{struct group*(*p)(gid_t) = getgrgid;} 17570af302Sopenharmony_ci{int(*p)(gid_t,struct group*,char*,size_t,struct group**) = getgrgid_r;} 18570af302Sopenharmony_ci{struct group*(*p)(const char*) = getgrnam;} 19570af302Sopenharmony_ci{int(*p)(const char*,struct group*,char*,size_t,struct group**) = getgrnam_r;} 20570af302Sopenharmony_ci#ifdef _XOPEN_SOURCE 21570af302Sopenharmony_ci{void(*p)(void) = setgrent;} 22570af302Sopenharmony_ci#endif 23570af302Sopenharmony_ci} 24