4 ms·
It is a gcc issue, in that this code is written using a non-standard gcc-specific dialect of C. In standard C, -- operates on what in C terms is known as a mod
by tom_ 5y ago
It is a gcc issue, in that this code is written using a non-standard gcc-specific dialect of C.
In standard C, -- operates on what in C terms is known as a modifiable lvalue, a value that may be used on the left hand side of an assignment expression (https://en.cppreference.com/w/c/language/value_category https://en.cppreference.com/w/c/language/value_category). And a cast returns a value that is specifically not an lvalue of any kind (https://en.cppreference.com/w/c/language/cast https://en.cppreference.com/w/c/language/cast), meaning a cast expression is not a valid operand for the -- operator.