https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122772

--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> ---
The C frontend also rejects this:

t.c: In function ‘main’:
t.c:3:12: error: lvalue required as left operand of assignment
    3 |     (x.x=0)+=0;
      |            ^~

I think this is correct, an assignment produces an rvalue, not an lvalue.

int main(){
    int a, b;
    (a = b) = 0;
}

is invalid.

Reply via email to