X-Git-Url: https://git.draconx.ca/gitweb/cdecl99.git/blobdiff_plain/8c4c37ecd2f04402c23b18c2e0a25f7bcc5bdce3..9abf0eb2e74d0fb3a4f652499571cb35697d3036:/src/explain.c?ds=sidebyside
diff --git a/src/explain.c b/src/explain.c
index 41d4f7b..0d9c957 100644
--- a/src/explain.c
+++ b/src/explain.c
@@ -1,6 +1,6 @@
/*
* Render C declarations as English.
- * Copyright © 2011 Nick Bowler
+ * Copyright © 2011, 2021 Nick Bowler
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -15,14 +15,17 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see .
*/
+
+#include
#include
#include
#include
+#include
#include
#include
#include "cdecl.h"
-#include "output.h"
+#include "cdecl-internal.h"
/*
* Renders the start of the thing being declared. If top is true, print
@@ -48,6 +51,8 @@ explain_prologue(char *buf, size_t n, struct cdecl_declarator *d, bool top)
d = d->child;
}
+
+ assert(0);
}
static size_t
@@ -55,7 +60,7 @@ explain_pointer(char *buf, size_t n, struct cdecl_pointer *p)
{
size_t ret = 0, rc;
- rc = cdecl__explain_qualifiers(buf, n, p->qualifiers);
+ rc = cdecl__explain_specs(buf, n, p->qualifiers, CDECL_SPEC_QUAL);
ret += cdecl__advance(&buf, &n, rc);
return ret + snprintf(buf, n, "pointer to");
@@ -76,7 +81,7 @@ explain_array(char *buf, size_t n, struct cdecl_array *a)
rc = snprintf(buf, n, "%s", a->vla);
ret += cdecl__advance(&buf, &n, rc);
} else if (a->length) {
- rc = snprintf(buf, n, "%ju", a->length);
+ rc = snprintf(buf, n, "%" PRIuMAX, a->length);
ret += cdecl__advance(&buf, &n, rc);
}