if (vasprintf (&buf, fmt, ap) < 0)
if (_IO_vasprintf (&buf, fmt, ap) < 0)
__argp_failure (const struct argp_state *state, int status, int errnum,		const char *fmt, ...){  if (!state || !(state->flags & ARGP_NO_ERRS))    {      FILE *stream = state ? state->err_stream : stderr;      if (stream)	{#if _LIBC || (HAVE_FLOCKFILE && HAVE_FUNLOCKFILE)	  __flockfile (stream);#endif#ifdef _LIBC	  __fxprintf (stream, "%s",		      state ? state->name : __argp_short_program_name ());#else	  fputs_unlocked (state ? state->name : __argp_short_program_name (),			  stream);#endif	  if (fmt)	    {	      va_list ap;	      va_start (ap, fmt);#ifdef _LIBC	      char *buf;	      if (vasprintf (&buf, fmt, ap) < 0)		buf = NULL;	      __fxprintf (stream, ": %s", buf);	      free (buf);#else	      putc_unlocked (':', stream);	      putc_unlocked (' ', stream);	      vfprintf (stream, fmt, ap);#endif	      va_end (ap);	    }	  if (errnum)	    {	      char buf[200];#ifdef _LIBC	      __fxprintf (stream, ": %s",			  __strerror_r (errnum, buf, sizeof (buf)));#else	      putc_unlocked (':', stream);	      putc_unlocked (' ', stream);# ifdef HAVE_STRERROR_R	      fputs (__strerror_r (errnum, buf, sizeof (buf)), stream);# else	      fputs (strerror (errnum), stream);# endif#endif	    }#ifdef USE_IN_LIBIO	  if (_IO_fwide (stream, 0) > 0)	    putwc_unlocked (L'\n', stream);	  else#endif	    putc_unlocked ('\n', stream);#if _LIBC || (HAVE_FLOCKFILE && HAVE_FUNLOCKFILE)	  __funlockfile (stream);#endif	  if (status && (!state || !(state->flags & ARGP_NO_EXIT)))	    exit (status);	}    }}