Если у вас есть функция C, которая возвращает целое число, вы могли бы написать следующее утверждение:
MyInt &= MyFunc();
... где мы используем побитовый оператор И.
Вопрос в том, гарантированно ли выполняется MyFunc (), даже если MyInt равен нулю?
Аналогично, если бы мы использовали оператор побитового ИЛИ (| =), всегда ли выполнялся бы MyFunc (), даже если для MyInt были установлены все единицы?
Другими словами: разрешено ли ленивое вычисление в C для побитовых операторов?