return -1;
return (size_t)(-1);
static size_t convert_string (const char *f, size_t flen,			      const char *from, const char *to,			      char **t, size_t *tlen){  iconv_t cd;  char *buf, *ob, *x;  size_t obl, n;  int e;  cd = iconv_open (to, from);  if (cd == (iconv_t)-1)    return -1;  obl = MB_LEN_MAX * flen;  ob = buf = safe_malloc (obl);  n = iconv (cd, &f, &flen, &ob, &obl);  if (n == -1 || iconv (cd, 0, 0, &ob, &obl) == -1)  {    e = errno;    free (buf);    iconv_close (cd);    errno = e;    return -1;  }  x = realloc (buf, ob - buf);  *t = x ? x : buf;  *tlen = ob - buf;  iconv_close (cd);  return n;}