#define _GNU_SOURCE
#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>

int vasprintf(char** s, const char* fmt, va_list ap) {
  va_list ap2;
  va_copy(ap2, ap);
  int l = vsnprintf(0, 0, fmt, ap2);
  va_end(ap2);

  if (l < 0 || !(*s = malloc(l + 1U)))
    return -1;
  return vsnprintf(*s, l + 1U, fmt, ap);
}
