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:
authorMarek Safar <marek.safar@gmail.com>2010-11-10 12:36:53 +0300
committerMarek Safar <marek.safar@gmail.com>2010-11-10 20:57:07 +0300
commite02fd2fdd6fa5a5d629020c522f08a6b0edfa209 (patch)
treea858e82837ee675e3d3ecdaab28a82fd718e28e8 /mcs/class/Microsoft.CSharp
parentf75c08f2cf3e29185ff933948578a19f3fb88f28 (diff)
False user-operator has priority over logical not user-operator
Diffstat (limited to 'mcs/class/Microsoft.CSharp')
-rw-r--r--mcs/class/Microsoft.CSharp/Microsoft.CSharp.RuntimeBinder/CSharpUnaryOperationBinder.cs3
1 files changed, 2 insertions, 1 deletions
diff --git a/mcs/class/Microsoft.CSharp/Microsoft.CSharp.RuntimeBinder/CSharpUnaryOperationBinder.cs b/mcs/class/Microsoft.CSharp/Microsoft.CSharp.RuntimeBinder/CSharpUnaryOperationBinder.cs
index 3b4a3855960..f625f5f2188 100644
--- a/mcs/class/Microsoft.CSharp/Microsoft.CSharp.RuntimeBinder/CSharpUnaryOperationBinder.cs
+++ b/mcs/class/Microsoft.CSharp/Microsoft.CSharp.RuntimeBinder/CSharpUnaryOperationBinder.cs
@@ -59,7 +59,6 @@ namespace Microsoft.CSharp.RuntimeBinder
case ExpressionType.Negate:
return Compiler.Unary.Operator.UnaryNegation;
case ExpressionType.Not:
- case ExpressionType.IsFalse:
return Compiler.Unary.Operator.LogicalNot;
case ExpressionType.OnesComplement:
return Compiler.Unary.Operator.OnesComplement;
@@ -77,6 +76,8 @@ namespace Microsoft.CSharp.RuntimeBinder
if (Operation == ExpressionType.IsTrue) {
expr = new Compiler.BooleanExpression (expr);
+ } else if (Operation == ExpressionType.IsFalse) {
+ expr = new Compiler.BooleanExpressionFalse (expr);
} else {
if (Operation == ExpressionType.Increment)
expr = new Compiler.UnaryMutator (Compiler.UnaryMutator.Mode.PreIncrement, expr, Compiler.Location.Null);