We are quite used to operators like +=, -=.
Just going through the history of C, I came to know that older versions of C used =+, =- to mean what the operators +=,-= mean these days. And they changed it when they realized that assignment of a -ve number to integer is rather ambiguous e.g.
i =-1 // i is supposed to be -1 but this was resolved as i=i-1;
A way round to this problem might have been something like this
int i = 0;
i =- 1;
Of course it will not work in cases when i contains anyvalue other than zero.