if (__builtin_expect (i > buflen - 1, 0))
if (__builtin_expect (i >= buflen, 0))
nis_leaf_of_r (const_nis_name name, char *buffer, size_t buflen){  size_t i = 0;  buffer[0] = '\0';  while (name[i] != '.' && name[i] != '\0')    i++;  if (__builtin_expect (i > buflen - 1, 0))    {      __set_errno (ERANGE);      return NULL;    }  *((char *) __mempcpy (buffer, name, i)) = '\0';  return buffer;}