On Fri, Sep 06, 2024 at 11:03:48AM -0700, Nathan Chancellor wrote:
I am seeing several warnings/errors from both GCC and Clang with ARCH=arm64 allmodconfig after this series appeared in next-20240906. As far as I can tell, they appear to agree. I wondered how this was not caught during the series development but perhaps it was written against a development tree that did not have Arnd's extrawarn series from 6.10 in it yet? I was going to work on a series but I was not sure about the best way to address the overflow errors, hence just the report.
Are these just warnings introduced by recent versions of the toolchains? These commits passed an x86 allmodconfig with GCC 12 at each step (I did catch one warning there with another patch in the series that didn't get applied) and 0day didn't say anything at any point.
Clang 19:
That's relatively modern, though some of the warnings don't look particularly new and exciting.
sound/soc/mediatek/mt8365/mt8365-dai-adda.c:93:8: error: implicit conversion from 'unsigned long' to 'unsigned int' changes value from 18446744073709551614 to 4294967294 [-Werror,-Wconstant-conversion] 91 | regmap_update_bits(afe->regmap, AFE_ADDA_UL_DL_CON0, | ~~~~~~~~~~~~~~~~~~ 92 | AFE_ADDA_UL_DL_ADDA_AFE_ON, 93 | ~AFE_ADDA_UL_DL_ADDA_AFE_ON); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ 1 error generated.
That's a bit surprising, regmap_update_bits() takes an unsigned long? I suspect the constants need to be defined as unsigned.