From 7231fb2a5b0b0ebf2be047a23a11ca43e786861b Mon Sep 17 00:00:00 2001 From: Ruediger Meier Date: Tue, 9 Feb 2016 18:08:56 +0100 Subject: [PATCH] misc: fix some printf format strings Fix the warnings below for OSX clang and add a few more casts for timeval: lib/at.c:131:27: warning: format specifies type 'intmax_t' (aka 'long') but the argument has type 'off_t' (aka 'long long') [-Wformat] printf("%16jd bytes ", st.st_size); ~~~~~ ^~~~~~~~~~ lib/strutils.c:522:52: warning: format specifies type 'intmax_t' (aka 'long') but the argument has type 'uint64_t' (aka 'unsigned long long') [-Wformat] snprintf(buf, sizeof(buf), "%d%s%jd%s", dec, dp, frac, suffix); ~~~ ^~~~ lib/sysfs.c:468:42: warning: format specifies type 'uintmax_t' (aka 'unsigned long') but the argument has type 'uint64_t' (aka 'unsigned long long') [-Wformat] len = snprintf(buf, sizeof(buf), "%ju", num); ~~~ ^~~ libuuid/src/gen_uuid.c:316:34: warning: format specifies type 'unsigned long' but the argument has type '__darwin_suseconds_t' (aka 'int') [-Wformat] clock_seq, last.tv_sec, last.tv_usec, adjustment); ^~~~~~~~~~~~ Signed-off-by: Ruediger Meier --- disk-utils/fsck.c | 24 ++++++++++++------------ lib/at.c | 2 +- lib/strutils.c | 2 +- lib/sysfs.c | 2 +- libuuid/src/gen_uuid.c | 4 ++-- libuuid/src/uuid_time.c | 2 +- term-utils/script.c | 3 ++- 7 files changed, 20 insertions(+), 19 deletions(-) diff --git a/disk-utils/fsck.c b/disk-utils/fsck.c index 5be2b44d7..b4630c541 100644 --- a/disk-utils/fsck.c +++ b/disk-utils/fsck.c @@ -591,26 +591,26 @@ static void print_stats(struct fsck_instance *inst) if (report_stats_file) fprintf(report_stats_file, "%s %d %ld " - "%ld.%06ld %d.%06d %d.%06d\n", + "%ld.%06ld %ld.%06ld %ld.%06ld\n", fs_get_device(inst->fs), inst->exit_status, inst->rusage.ru_maxrss, - delta.tv_sec, delta.tv_usec, - (int)inst->rusage.ru_utime.tv_sec, - (int)inst->rusage.ru_utime.tv_usec, - (int)inst->rusage.ru_stime.tv_sec, - (int)inst->rusage.ru_stime.tv_usec); + (long)delta.tv_sec, (long)delta.tv_usec, + (long)inst->rusage.ru_utime.tv_sec, + (long)inst->rusage.ru_utime.tv_usec, + (long)inst->rusage.ru_stime.tv_sec, + (long)inst->rusage.ru_stime.tv_usec); else fprintf(stdout, "%s: status %d, rss %ld, " - "real %ld.%06ld, user %d.%06d, sys %d.%06d\n", + "real %ld.%06ld, user %ld.%06ld, sys %ld.%06ld\n", fs_get_device(inst->fs), inst->exit_status, inst->rusage.ru_maxrss, - delta.tv_sec, delta.tv_usec, - (int)inst->rusage.ru_utime.tv_sec, - (int)inst->rusage.ru_utime.tv_usec, - (int)inst->rusage.ru_stime.tv_sec, - (int)inst->rusage.ru_stime.tv_usec); + (long)delta.tv_sec, (long)delta.tv_usec, + (long)inst->rusage.ru_utime.tv_sec, + (long)inst->rusage.ru_utime.tv_usec, + (long)inst->rusage.ru_stime.tv_sec, + (long)inst->rusage.ru_stime.tv_usec); } /* diff --git a/lib/at.c b/lib/at.c index f8bfe1399..26f5ab95f 100644 --- a/lib/at.c +++ b/lib/at.c @@ -128,7 +128,7 @@ int main(int argc, char *argv[]) printf("%32s ", d->d_name); if (fstat_at(dirfd(dir), dirname, d->d_name, &st, 0) == 0) - printf("%16jd bytes ", st.st_size); + printf("%16zd bytes ", st.st_size); else printf("%16s bytes ", "???"); diff --git a/lib/strutils.c b/lib/strutils.c index 30dc090b4..ac59de8ee 100644 --- a/lib/strutils.c +++ b/lib/strutils.c @@ -519,7 +519,7 @@ char *size_to_human_string(int options, uint64_t bytes) if (!dp || !*dp) dp = "."; - snprintf(buf, sizeof(buf), "%d%s%jd%s", dec, dp, frac, suffix); + snprintf(buf, sizeof(buf), "%d%s%" PRIu64 "%s", dec, dp, frac, suffix); } else snprintf(buf, sizeof(buf), "%d%s", dec, suffix); diff --git a/lib/sysfs.c b/lib/sysfs.c index ade219eb9..53aba3af9 100644 --- a/lib/sysfs.c +++ b/lib/sysfs.c @@ -462,7 +462,7 @@ int sysfs_write_u64(struct sysfs_cxt *cxt, const char *attr, uint64_t num) if (fd < 0) return -errno; - len = snprintf(buf, sizeof(buf), "%ju", num); + len = snprintf(buf, sizeof(buf), "%" PRIu64, num); if (len < 0 || (size_t) len + 1 > sizeof(buf)) rc = -errno; else diff --git a/libuuid/src/gen_uuid.c b/libuuid/src/gen_uuid.c index 4d6099720..f9a937cf5 100644 --- a/libuuid/src/gen_uuid.c +++ b/libuuid/src/gen_uuid.c @@ -312,8 +312,8 @@ try_again: if (state_fd >= 0) { rewind(state_f); len = fprintf(state_f, - "clock: %04x tv: %016lu %08lu adj: %08d\n", - clock_seq, last.tv_sec, last.tv_usec, adjustment); + "clock: %04x tv: %016ld %08ld adj: %08d\n", + clock_seq, (long)last.tv_sec, (long)last.tv_usec, adjustment); fflush(state_f); if (ftruncate(state_fd, len) < 0) { fprintf(state_f, " \n"); diff --git a/libuuid/src/uuid_time.c b/libuuid/src/uuid_time.c index f25f5c90f..6991ecd53 100644 --- a/libuuid/src/uuid_time.c +++ b/libuuid/src/uuid_time.c @@ -163,7 +163,7 @@ main(int argc, char **argv) printf("Warning: not a time-based UUID, so UUID time " "decoding will likely not work!\n"); } - printf("UUID time is: (%ld, %ld): %s\n", tv.tv_sec, tv.tv_usec, + printf("UUID time is: (%ld, %ld): %s\n", (long)tv.tv_sec, (long)tv.tv_usec, ctime(&time_reg)); return 0; diff --git a/term-utils/script.c b/term-utils/script.c index fcb583584..23ca89cdc 100644 --- a/term-utils/script.c +++ b/term-utils/script.c @@ -249,7 +249,8 @@ static void write_output(struct script_control *ctl, char *obuf, gettime_monotonic(&now); timersub(&now, &ctl->oldtime, &delta); - fprintf(ctl->timingfp, "%ld.%06ld %zd\n", delta.tv_sec, delta.tv_usec, bytes); + fprintf(ctl->timingfp, "%ld.%06ld %zd\n", + (long)delta.tv_sec, (long)delta.tv_usec, bytes); if (ctl->flush) fflush(ctl->timingfp); ctl->oldtime = now;