For a sequence of
typedef int64_t I64;
I64 i=5;
printf("%"PRIi64",i);
cppcheck gives the warning below:
warning: %lld in format string (no. 1) requires 'long long' but the argument type is 'signed int'.
The makro PRIi64 is resolved by lld, this is correct, but the 64 bit integer type is not accepted as long long int.
I hope there is a way to resolve this, because we get a lot of such warnings in our project and don't see the real bugs anymore.