#include <stdio.h>
#include <stdlib.h>
#include <string.h>
+#include <stdarg.h>
#include <errno.h>
#include <getopt.h>
#include "help.h"
#include "test.h"
+#include "getline.h"
#include "intconv.h"
void print_error(const char *fmt, ...)
return INTCONV_DECIMAL;
}
-bool test_strtoumax(uintmax_t *out, const char *s, uintmax_t limit)
+bool test_strtoumax(cdecl_uintmax *out, const char *s, cdecl_uintmax limit)
{
static const char idx[] = "0123456789abcdef0123456789ABCDEF";
unsigned base = intconv_base(&s);
- uintmax_t v;
+ cdecl_uintmax v;
char *c, d;
for (v = 0; (d = *s++);) {
putchar('\n');
}
}
+
+int test_getline(char **linebuf, size_t *n)
+{
+ int rc;
+
+ if ((rc = dx_getline(linebuf, n, stdin)) < 0) {
+ if (rc == DX_GETLINE_ENOMEM)
+ print_error("%s", _("failed to allocate memory"));
+ else
+ print_error("%s", strerror(errno));
+ abort();
+ }
+
+ return rc;
+}