* assign.cs (CompoundAssign.Helper): New wrapper.
(CompoundAssign.DoResolve): Use it to wrap the nested 'target' access.
* ecore.cs (MethodGroupExpr.VerifyArgumentsCompat) <params arguments>:
Pass unconverted expressions to the params array creation expression.
(FieldExpr.EmitAssign): Don't special-case StringConcat.
(PropertyExpr.EmitAssign): Likewise.
* expression.cs (ArrayCreation.ResolveArrayElement): Keep track of the
element if it is of kind CompoundAssign.Helper.
(ArrayCreation.Emit): If we saw a CompoundAssign.Helper, emit it
first before anything else.
(ArrayAccess.EmitAssign): Don't special-case StringConcat.
(ArrayAccess.LoadArrayAndArguments): Simplify.
svn path=/trunk/mcs/; revision=102001