|In reply to Comment 219 (Gregg):
"Nothing to do with correct C syntax or style; I assure you, when I'm obliged to write C, I only use the former structure until I remember the "+=" operator, and then spend precious stress points agonising about whether I should go back and change all my earlier gaffes"
What we've (Bernie and I) found out is that you're not a very good C programmer because of your poor grasp of the idiom, the hidden rules of language that make it easier for human users to communicate. This isn't intended for the compiler or any part of the toolchain, but for the humans that come after you to maintain the same code.
"I'll also point out that "+=" is a problem because it is a(nother) superfluous operator"
It is by definition superfluous in the sense that the same thing can be achieved by another means. You realise that this also applies to all but one of the loop constructs, to the entire switch() mechanism, the much maligned goto and probably lots of other things I haven't thought of ?
These things are syntactic sugar. They were intentionally designed into this otherwise very small language to make programs more readable, even though they don't extend the range of possible programs. If you refuse to use them you make your programs harder to understand by other people (the machines mostly don't care though you may miss out on useful optimisations).