if (is_type_valid(type_left) && is_type_valid(type_right)) {
position_t const *const pos = &expression->base.pos;
errorf(pos, "operands of binary expression must have integer types, but are '%T' and '%T'", orig_type_left, orig_type_right);
if (is_type_valid(type_left) && is_type_valid(type_right)) {
position_t const *const pos = &expression->base.pos;
errorf(pos, "operands of binary expression must have integer types, but are '%T' and '%T'", orig_type_left, orig_type_right);