https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114689
--- Comment #6 from David Binderman <dcb314 at hotmail dot com> --- (In reply to Jakub Jelinek from comment #5) > And does > extern void g( int); > > void f( int mant, int sticky) > { > mant = mant >> 1 ; > mant = mant >> 1 | (mant & 1); > mant = mant >> 1 | (mant & 1) | (!!sticky); > mant = !!sticky; > mant = (mant & 1) | (!!sticky); > g( mant); > } > shut up those warnings? Yes.