Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRaja R Harinath <harinath@hurrynot.org>2008-04-27 23:53:58 +0400
committerRaja R Harinath <harinath@hurrynot.org>2008-04-27 23:53:58 +0400
commita85571d64c3fd3de1e92e4683e82dc34b6882e20 (patch)
tree63c93175083fee552f629f951ea88f030087ff17 /mcs/tests/test-639.cs
parent3f60ffb8900a83a69f77ce988f740093e182b6e0 (diff)
Fix #381559, test-638.cs, test-639.cs
* 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
Diffstat (limited to 'mcs/tests/test-639.cs')
-rw-r--r--mcs/tests/test-639.cs12
1 files changed, 12 insertions, 0 deletions
diff --git a/mcs/tests/test-639.cs b/mcs/tests/test-639.cs
new file mode 100644
index 00000000000..4d4587dc36f
--- /dev/null
+++ b/mcs/tests/test-639.cs
@@ -0,0 +1,12 @@
+class Foo {
+ bool got;
+ string s {
+ get { got = true; return ""; }
+ set { if (!got || value != "A1B2") throw new System.Exception (); }
+ }
+
+ static void Main ()
+ {
+ (new Foo ()).s += "A" + 1 + "B" + 2;
+ }
+}