2009-06-17 Marek Safar <marek.safar@gmail.com>
authorMarek Safar <marek.safar@gmail.com>
Wed, 17 Jun 2009 14:49:23 +0000 (14:49 -0000)
committerMarek Safar <marek.safar@gmail.com>
Wed, 17 Jun 2009 14:49:23 +0000 (14:49 -0000)
A fix for bug #513400
* nullable.cs (EmitEquality): Operands emit could be simplified for
built-in types when we now emit user operators differently.

svn path=/trunk/mcs/; revision=136314

mcs/mcs/ChangeLog
mcs/mcs/nullable.cs

index ab8833784b557ed81f1b251dd361a6ab314d5350..83c32a7e07e6923d9d1dd492f366019292c3ffba 100644 (file)
@@ -1,3 +1,9 @@
+2009-06-17  Marek Safar  <marek.safar@gmail.com>
+
+       A fix for bug #513400
+       * nullable.cs (EmitEquality): Operands emit could be simplified for
+       built-in types when we now emit user operators differently.
+
 2009-06-16  Marek Safar  <marek.safar@gmail.com>
 
        * ecore.cs: Report inaccessible delegate methods correctly.
index 876ece336f162fa44d1cd1beb6dc5f556da62627..3988b0c62a5a714d3ab4c693c860bb6ee16384da 100644 (file)
@@ -709,15 +709,8 @@ namespace Mono.CSharp.Nullable
                                user_operator.Emit (ec);
                                ig.Emit (Oper == Operator.Equality ? OpCodes.Brfalse_S : OpCodes.Brtrue_S, dissimilar_label);
                        } else {
-                               if (left_unwrap != null && !(left is UserCast))
-                                       left_unwrap.Emit (ec);
-                               else
-                                       left.Emit (ec);
-
-                               if (right_unwrap != null && !(right is UserCast))
-                                       right_unwrap.Emit (ec);
-                               else
-                                       right.Emit (ec);
+                               left.Emit (ec);
+                               right.Emit (ec);
 
                                ig.Emit (OpCodes.Bne_Un_S, dissimilar_label);
                        }