_THREAD_PRIVATE
struct group *p_gr = (struct group*)_THREAD_PRIVATE(gr,_gr_group,NULL);
struct group_storage *gs = (struct group_storage *)_THREAD_PRIVATE(gr_storage,
struct group *p_gr = (struct group*)_THREAD_PRIVATE(gr, _gr_group, NULL);
struct group_storage *gs = (struct group_storage *)_THREAD_PRIVATE(gr_storage,
struct group *p_gr = (struct group*)_THREAD_PRIVATE(gr, _gr_group, NULL);
struct group_storage *gs = (struct group_storage *)_THREAD_PRIVATE(gr_storage,
char *bufp = (char *) _THREAD_PRIVATE(ttyname, buf, NULL);
char *p = _THREAD_PRIVATE(strerror_l, sel_buf, NULL);
char *resultp = (char *)_THREAD_PRIVATE(asctime, result, NULL);
struct tm * p_tm = (struct tm*)_THREAD_PRIVATE(localtime, tm, NULL);
struct tm * p_tm = (struct tm*) _THREAD_PRIVATE(gmtime, tm, NULL);