mingw lacks %lld and %zu support in printf(); we were getting it
from gnulib. But since commit acf522e8 stopped linking examples
against gnulib, we are getting a build failure due to -Wformat
flagging these strings. Keep the examples standalone, and work
around mingw by using manual casts to types we can portably print.
Signed-off-by: Eric Blake <eblake(a)redhat.com>
---
examples/domtop/domtop.c | 3 ++-
examples/object-events/event-test.c | 5 +++--
2 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/examples/domtop/domtop.c b/examples/domtop/domtop.c
index 4224e4c9ec..ada5a064fb 100644
--- a/examples/domtop/domtop.c
+++ b/examples/domtop/domtop.c
@@ -241,7 +241,8 @@ print_cpu_usage(const char *dom_name,
if (delim)
printf("\t");
- printf("CPU%zu: %.2lf", cpu + i, usage);
+ /* mingw lacks %zu */
+ printf("CPU%u: %.2lf", (unsigned)(cpu + i), usage);
delim = true;
}
diff --git a/examples/object-events/event-test.c b/examples/object-events/event-test.c
index 53d95b10d0..0c99fb33e3 100644
--- a/examples/object-events/event-test.c
+++ b/examples/object-events/event-test.c
@@ -948,10 +948,11 @@ myDomainEventBlockThresholdCallback(virConnectPtr conn
ATTRIBUTE_UNUSED,
unsigned long long excess,
void *opaque ATTRIBUTE_UNUSED)
{
+ /* Casts to uint64_t to work around mingw not knowing %lld */
printf("%s EVENT: Domain %s(%d) block threshold callback dev '%s'(%s),
"
- "threshold: '%llu', excess: '%llu'",
+ "threshold: '%" PRIu64 "', excess: '%" PRIu64
"'",
__func__, virDomainGetName(dom), virDomainGetID(dom),
- dev, NULLSTR(path), threshold, excess);
+ dev, NULLSTR(path), (uint64_t)threshold, (uint64_t)excess);
return 0;
}
--
2.20.1