On Tue, Oct 22, 2019 at 09:50:54AM -0700, Nathan Chancellor wrote: > r375326 in Clang exposes an issue with operator precedence in > sunxi_div_clk_setup: > > drivers/clk/sunxi/clk-sunxi.c:1083:30: warning: operator '?:' has lower > precedence than '|'; '|' will be evaluated first > [-Wbitwise-conditional-parentheses] > data->div[i].critical ? > ~~~~~~~~~~~~~~~~~~~~~ ^ > drivers/clk/sunxi/clk-sunxi.c:1083:30: note: place parentheses around > the '|' expression to silence this warning > data->div[i].critical ? > ^ > ) > drivers/clk/sunxi/clk-sunxi.c:1083:30: note: place parentheses around > the '?:' expression to evaluate it first > data->div[i].critical ? > ^ > ( > 1 warning generated. > > It appears that the intention was for ?: to be evaluated first so that > CLK_IS_CRITICAL could be added to clkflags if the critical boolean was > set; right now, | is being evaluated first. Add parentheses around the > ?: block to have it be evaluated first. > > Fixes: 9919d44ff297 ("clk: sunxi: Use CLK_IS_CRITICAL flag for critical clks") > Link: https://github.com/ClangBuiltLinux/linux/issues/745 > Signed-off-by: Nathan Chancellor Applied, thanks! Maxime