__timezone = info->offset;
__timezone = -info->offset;
__tzfile_compute (time_t timer, int use_localtime,		  long int *leap_correct, int *leap_hit){  register size_t i;  if (use_localtime)    {      struct ttinfo *info = find_transition (timer);      __daylight = info->isdst;      __timezone = info->offset;      for (i = 0;	   i < num_types && i < sizeof (__tzname) / sizeof (__tzname[0]);	   ++i)	__tzname[types[i].isdst] = &zone_names[types[i].idx];      if (info->isdst < sizeof (__tzname) / sizeof (__tzname[0]))	__tzname[info->isdst] = &zone_names[info->idx];    }  *leap_correct = 0L;  *leap_hit = 0;  /* Find the last leap second correction transition time before TIMER.  */  i = num_leaps;  do    if (i-- == 0)      return 1;  while (timer < leaps[i].transition);  /* Apply its correction.  */  *leap_correct = leaps[i].change;  if (timer == leaps[i].transition && /* Exactly at the transition time.  */      ((i == 0 && leaps[i].change > 0) ||       leaps[i].change > leaps[i - 1].change))    {      *leap_hit = 1;      while (i > 0 &&	     leaps[i].transition == leaps[i - 1].transition + 1 &&	     leaps[i].change == leaps[i - 1].change + 1)	{	  ++*leap_hit;	  --i;	}    }  return 1;}