Author: martin
Date: 2005-04-18 03:48:35 -0400 (Mon, 18 Apr 2005)
New Revision: 43199

Modified:
   trunk/mcs/gmcs/ChangeLog
   trunk/mcs/gmcs/assign.cs
Log:
**** Merged r42257 from MCS ****


Modified: trunk/mcs/gmcs/ChangeLog
===================================================================
--- trunk/mcs/gmcs/ChangeLog    2005-04-18 07:48:10 UTC (rev 43198)
+++ trunk/mcs/gmcs/ChangeLog    2005-04-18 07:48:35 UTC (rev 43199)
@@ -1,3 +1,10 @@
+2005-03-26  Raja R Harinath  <[EMAIL PROTECTED]>
+
+       Fix #73038.
+       * assign.cs (Assign.DoResolve): When the RHS of an assignment
+       fails to resolve, ensure that the LHS is still resolved as an
+       lvalue.
+
 2005-03-25  Raja R Harinath  <[EMAIL PROTECTED]>
 
        * enum.cs (Enum.DefineType): Set ec.InEnumContext and

Modified: trunk/mcs/gmcs/assign.cs
===================================================================
--- trunk/mcs/gmcs/assign.cs    2005-04-18 07:48:10 UTC (rev 43198)
+++ trunk/mcs/gmcs/assign.cs    2005-04-18 07:48:35 UTC (rev 43199)
@@ -313,8 +313,11 @@
                                source = embedded = ((Assign) 
source).GetEmbeddedAssign (loc);
 
                        real_source = source = source.Resolve (ec);
-                       if (source == null)
+                       if (source == null) {
+                               // Ensure that we don't propagate the error as 
spurious "uninitialized variable" errors.
+                               target = target.ResolveLValue (ec, 
EmptyExpression.Null);
                                return null;
+                       }
 
                        //
                        // This is used in an embedded assignment.

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to