On Sun, Jan 27, 2019 at 9:06 AM Florian La Roche <[email protected]> wrote: > > > - m = 1UL << (__fls(x) & ~1UL); > + m = 1UL << ((int)__fls(x) & ~1);
No need to add the cast. It doesn't do anything and just makes the code uglier.
The type of a shift operator is the type of the left side of the shift
(with the usual int-promotion).
The type of the right side simply doesn't matter (the *value* does, of
course, but because the value range is limited, the cast is just
noise).
Linus

