...
or a logical (unsigned) shift.
Even though this This noncompliant code example explicitly declares the operands to a right shift as unsigned (see INT13-C. Use bitwise operators only on unsigned operands), it fails to test whether the right operand is greater than or equal to the width of the promoted left operand, allowing undefined behavior.
...