* cord/cordprnt.c (CORD_vsprintf): Invoke va_end (before return) for
vsprintf_args initialized by [__]va_copy (only if __va_copy defined
or GCC but not DJGPP).
(void) va_arg(args, double);
break;
default:
+# if defined(__va_copy) \
+ || (defined(__GNUC__) && !defined(__DJGPP__))
+ va_end(vsprintf_args);
+# endif
return(-1);
}
res = vsprintf(buf, conv_spec, vsprintf_args);
+# if defined(__va_copy) \
+ || (defined(__GNUC__) && !defined(__DJGPP__))
+ va_end(vsprintf_args);
+# endif
len = (size_t)res;
if ((char *)(GC_word)res == buf) {
/* old style vsprintf */