If an indeterminate value of
  unsigned ordinary character type or 
std::byte type
  is produced by the evaluation of
  the right operand of a simple assignment operator (
[expr.ass])
  whose first operand is an lvalue of
  unsigned ordinary character type or 
std::byte type,
  an indeterminate value replaces
  the value of the object referred to by the left operand
.