I was studying the C grammar: http://www.quut.com/c/ANSI-C-grammar-y-1999.html#unary-expression
There's this rule
assignment_expression
: conditional_expression
| unary_expression assignment_operator assignment_expression
;
And
unary_expression
: postfix_expression
| INC_OP unary_expression
| DEC_OP unary_expression
| unary_operator cast_expression
| SIZEOF unary_expression
| SIZEOF '(' type_name ')'
;
So why can't we do something like:
++v = 3<4 ? 10 : 2;
since ++v is an unary_expression?