summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2020-07-15 20:35:12 +0200
committerDavid Robillard <d@drobilla.net>2020-07-17 15:42:20 +0200
commit444cfd7b8fa1066ae77a92e7466b0320eacab720 (patch)
tree782f4aa483dbe72d5ee7fcbf5347168813b5e074
parent616517f44ceeacb26592e50e2bf914aad2d93b90 (diff)
downloadsord-444cfd7b8fa1066ae77a92e7466b0320eacab720.tar.gz
sord-444cfd7b8fa1066ae77a92e7466b0320eacab720.tar.bz2
sord-444cfd7b8fa1066ae77a92e7466b0320eacab720.zip
Fix incorrect printf format specifiers
-rw-r--r--src/sord.c9
-rw-r--r--src/sord_test.c18
-rw-r--r--src/sord_validate.c9
3 files changed, 29 insertions, 7 deletions
diff --git a/src/sord.c b/src/sord.c
index c23b2c1..a60bf08 100644
--- a/src/sord.c
+++ b/src/sord.c
@@ -30,6 +30,12 @@
#include "sord_config.h"
#include "sord_internal.h"
+#ifdef __GNUC__
+# define SORD_LOG_FUNC(fmt, arg1) __attribute__((format(printf, fmt, arg1)))
+#else
+# define SORD_LOG_FUNC(fmt, arg1)
+#endif
+
#define SORD_LOG(prefix, ...) fprintf(stderr, "[Sord::" prefix "] " __VA_ARGS__)
#ifdef SORD_DEBUG_ITER
@@ -173,6 +179,7 @@ sord_node_hash_equal(const void* a, const void* b)
(serd_node_equals(&a_node->node, &b_node->node)));
}
+SORD_LOG_FUNC(3, 4)
static void
error(SordWorld* world, SerdStatus st, const char* fmt, ...)
{
@@ -803,7 +810,7 @@ sord_find(SordModel* model, const SordQuad pat)
int n_prefix;
const SordOrder index_order = sord_best_index(model, pat, &mode, &n_prefix);
- SORD_FIND_LOG("Find " TUP_FMT " index=%s mode=%d n_prefix=%d\n",
+ SORD_FIND_LOG("Find " TUP_FMT " index=%s mode=%u n_prefix=%d\n",
TUP_FMT_ARGS(pat), order_names[index_order], mode, n_prefix);
if (pat[0] && pat[1] && pat[2] && pat[3]) {
diff --git a/src/sord_test.c b/src/sord_test.c
index 1ab350a..3553d4c 100644
--- a/src/sord_test.c
+++ b/src/sord_test.c
@@ -14,6 +14,7 @@
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
+#include <inttypes.h>
#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>
@@ -21,6 +22,12 @@
#include "sord/sord.h"
+#ifdef __GNUC__
+# define SORD_LOG_FUNC(fmt, arg1) __attribute__((format(printf, fmt, arg1)))
+#else
+# define SORD_LOG_FUNC(fmt, arg1)
+#endif
+
static const int DIGITS = 3;
static const unsigned n_objects_per = 2;
@@ -46,6 +53,7 @@ uri(SordWorld* world, int num)
return sord_new_uri(world, (const uint8_t*)str);
}
+SORD_LOG_FUNC(1, 2)
static int
test_fail(const char* fmt, ...)
{
@@ -280,7 +288,7 @@ test_read(SordWorld* world, SordModel* sord, SordNode* g,
return test_fail("Fail: Expected %d results, got %d\n",
test.expected_num_results, num_results);
}
- fprintf(stderr, "OK (%u matches)\n", test.expected_num_results);
+ fprintf(stderr, "OK (%i matches)\n", test.expected_num_results);
}
// Query blank node subject
@@ -320,7 +328,7 @@ test_read(SordWorld* world, SordModel* sord, SordNode* g,
SordQuad subpat = { id[0], 0, 0 };
SordIter* subiter = sord_find(sord, subpat);
- uint64_t num_sub_results = 0;
+ unsigned num_sub_results = 0;
if (sord_iter_get_node(subiter, SORD_SUBJECT) != id[0]) {
return test_fail("Fail: Incorrect initial submatch\n");
}
@@ -339,14 +347,14 @@ test_read(SordWorld* world, SordModel* sord, SordNode* g,
if (num_sub_results != n_objects_per) {
return test_fail(
"Fail: Nested query " TUP_FMT " failed"
- " (%d results, expected %d)\n",
+ " (%u results, expected %u)\n",
TUP_FMT_ARGS(subpat), num_sub_results, n_objects_per);
}
uint64_t count = sord_count(sord, id[0], 0, 0, 0);
if (count != num_sub_results) {
- return test_fail("Fail: Query " TUP_FMT " sord_count() %d"
- "does not match result count %d\n",
+ return test_fail("Fail: Query " TUP_FMT " sord_count() %" PRIu64
+ "does not match result count %u\n",
TUP_FMT_ARGS(subpat), count, num_sub_results);
}
diff --git a/src/sord_validate.c b/src/sord_validate.c
index a5c8d45..037629c 100644
--- a/src/sord_validate.c
+++ b/src/sord_validate.c
@@ -33,6 +33,12 @@
# include <pcre.h>
#endif
+#ifdef __GNUC__
+# define SORD_LOG_FUNC(fmt, arg1) __attribute__((format(printf, fmt, arg1)))
+#else
+# define SORD_LOG_FUNC(fmt, arg1)
+#endif
+
#define USTR(s) ((const uint8_t*)(s))
#define NS_foaf (const uint8_t*)"http://xmlns.com/foaf/0.1/"
@@ -127,6 +133,7 @@ absolute_path(const uint8_t* path)
#endif
}
+SORD_LOG_FUNC(2, 3)
static int
errorf(const SordQuad quad, const char* fmt, ...)
{
@@ -491,7 +498,7 @@ check_properties(SordModel* model, URIs* uris)
if (is_FunctionalProperty) {
SordIter* o = sord_search(model, subj, pred, NULL, NULL);
- const uint64_t n = count_non_blanks(o, SORD_OBJECT);
+ const unsigned n = count_non_blanks(o, SORD_OBJECT);
if (n > 1) {
st = errorf(quad, "Functional property with %u objects", n);
}