Blob Blame History Raw
#include <grp.h>
#define T(t) (t*)0;
#define F(t,n) {t *y = &x.n;}
static void f()
{
T(gid_t)
T(size_t)
{
struct group x;
F(char*, gr_name)
F(gid_t, gr_gid)
F(char**, gr_mem)
}
{void(*p)(void) = endgrent;}
{struct group*(*p)(void) = getgrent;}
{struct group*(*p)(gid_t) = getgrgid;}
{int(*p)(gid_t,struct group*,char*,size_t,struct group**) = getgrgid_r;}
{struct group*(*p)(const char*) = getgrnam;}
{int(*p)(const char*,struct group*,char*,size_t,struct group**) = getgrnam_r;}
#ifdef _XOPEN_SOURCE
{void(*p)(void) = setgrent;}
#endif
}