On Thu, Jul 21, 2022 at 02:12:18PM -0700, Justin Stitt wrote: > When building with Clang we encounter these warnings: > | sound/soc/sof/ipc3-topology.c:2343:4: error: format specifies type > | 'unsigned char' but the argument has type 'int' [-Werror,-Wformat] > | SOF_ABI_MAJOR, SOF_ABI_MINOR, SOF_ABI_PATCH); > | ^~~~~~~~~~~~~~~^~~~~~~~~~~~~~~^~~~~~~~~~~~~ > > Use correct format specifier `%d` since args are of type int. > > Link: https://github.com/ClangBuiltLinux/linux/issues/378 > Reported-by: Nathan Chancellor <nathan@xxxxxxxxxx> > Suggested-by: Nathan Chancellor <nathan@xxxxxxxxxx> > Signed-off-by: Justin Stitt <justinstitt@xxxxxxxxxx> Indeed, decimal integer literals with no suffix are of type 'int' when they can fit in an 'int'. In this case, there shouldn't be a bug since the values of these macros can fit in an 'unsigned char' (so no truncation) but it is still correct to use '%d' instead of '%hhu', which matches the stance of commit cbacb5ab0aa0 ("docs: printk-formats: Stop encouraging use of unnecessary %h[xudi] and %hh[xudi]"). This was introduced by commit 323aa1f093e6 ("ASoC: SOF: Add a new IPC op for parsing topology manifest"), not sure it warrants a fixes tag for the reason I outlined above, but it might be helpful for other reviewers. Reviewed-by: Nathan Chancellor <nathan@xxxxxxxxxx> > --- > Reported by Nathan here: > https://lore.kernel.org/all/YtmrCJjQrSbv8Aj1@dev-arch.thelio-3990X/ > > sound/soc/sof/ipc3-topology.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/sound/soc/sof/ipc3-topology.c b/sound/soc/sof/ipc3-topology.c > index b2cc046b9f60..65923e7a5976 100644 > --- a/sound/soc/sof/ipc3-topology.c > +++ b/sound/soc/sof/ipc3-topology.c > @@ -2338,7 +2338,7 @@ static int sof_ipc3_parse_manifest(struct snd_soc_component *scomp, int index, > } > > dev_info(scomp->dev, > - "Topology: ABI %d:%d:%d Kernel ABI %hhu:%hhu:%hhu\n", > + "Topology: ABI %d:%d:%d Kernel ABI %d:%d:%d\n", > man->priv.data[0], man->priv.data[1], man->priv.data[2], > SOF_ABI_MAJOR, SOF_ABI_MINOR, SOF_ABI_PATCH); > > -- > 2.37.1.359.gd136c6c3e2-goog >