Hello Steve, > Il giorno 25 lug 2021, alle ore 19:05, Steve Dickson <steved@xxxxxxxxxx> ha scritto: > > Hello, > >> On 7/22/21 11:24 AM, Giulio Benetti wrote: >> When passing time_t type to "%ld" on 64-bits platforms where time_t is a >> 'long long' we encouter this build failure: >> error: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘time_t’ {aka ‘long long int’} [-Werror=format=] >> So let's change "%ld" markers to "%lld" assuming it to be a 64-bits and >> cast variables to '(long long)' if the type is a time_t. > Just an FYI... I will be using Petr's patches [1] and [2] > since they used the inittypes defines which seem a > bit more portable and they do the same thing. Sure, I’ve missed those patches, thank you for pointing so I can use them in Buildroot instead of this one. Best regards Giulio Benetti > > steved. > > [1] https://marc.info/?l=linux-nfs&m=162697054816925&w=2 > [2] https://marc.info/?l=linux-nfs&m=162697054816926&w=2 >> Signed-off-by: Giulio Benetti <giulio.benetti@xxxxxxxxxxxxxxxxxxxxxx> >> --- >> utils/nfsdcltrack/nfsdcltrack.c | 2 +- >> utils/nfsdcltrack/sqlite.c | 4 ++-- >> 2 files changed, 3 insertions(+), 3 deletions(-) >> diff --git a/utils/nfsdcltrack/nfsdcltrack.c b/utils/nfsdcltrack/nfsdcltrack.c >> index e926f1c0..437477bb 100644 >> --- a/utils/nfsdcltrack/nfsdcltrack.c >> +++ b/utils/nfsdcltrack/nfsdcltrack.c >> @@ -525,7 +525,7 @@ cltrack_gracedone(const char *timestr) >> if (*tail) >> return -EINVAL; >> - xlog(D_GENERAL, "%s: grace done. gracetime=%ld", __func__, gracetime); >> + xlog(D_GENERAL, "%s: grace done. gracetime=%lld", __func__, (long long)gracetime); >> ret = sqlite_remove_unreclaimed(gracetime); >> diff --git a/utils/nfsdcltrack/sqlite.c b/utils/nfsdcltrack/sqlite.c >> index f79aebb3..6e603087 100644 >> --- a/utils/nfsdcltrack/sqlite.c >> +++ b/utils/nfsdcltrack/sqlite.c >> @@ -544,8 +544,8 @@ sqlite_remove_unreclaimed(time_t grace_start) >> int ret; >> char *err = NULL; >> - ret = snprintf(buf, sizeof(buf), "DELETE FROM clients WHERE time < %ld", >> - grace_start); >> + ret = snprintf(buf, sizeof(buf), "DELETE FROM clients WHERE time < %lld", >> + (long long)grace_start); >> if (ret < 0) { >> return ret; >> } else if ((size_t)ret >= sizeof(buf)) { >