puppetlabs/puppet — pull request #2958 by zaphod42 (2014-08-11 22:10:05+00:00)
Title: (PUP-2972) Remove += and -=

Previously the future parser supported += and -=. += was very similar to the
same operator that is in the current parser, but with a few differences to
make it consistent with the rest of the language. The += operator no longer
performed string concatenation and instead acted like $a = $a + $b. The -=
operator was added to complete the set of operators available.

However, many people have been confused by these operators (even as they
exist in the current parser):

* It looks like mutation, but the language does not have mutation
* It looks like += from other languages, but doesn't behave like them
* Shadowing a variable is something that needs to be explicit,
otherwise it becomes confusing.

This removes += and -= from the future parser. They are still parsed, but the
validation step will issue errors if they are encountered.