Author: marek Date: 2008-02-20 13:05:44 -0500 (Wed, 20 Feb 2008) New Revision: 96280
Modified: trunk/mcs/mcs/ChangeLog trunk/mcs/mcs/expression.cs Log: 2008-02-20 Marek Safar <[EMAIL PROTECTED]> A fix for bug #363218 * expression.cs (ArrayCreation.Clone): Deal with multi-dimensional initializers. Modified: trunk/mcs/mcs/ChangeLog =================================================================== --- trunk/mcs/mcs/ChangeLog 2008-02-20 17:55:59 UTC (rev 96279) +++ trunk/mcs/mcs/ChangeLog 2008-02-20 18:05:44 UTC (rev 96280) @@ -1,5 +1,11 @@ 2008-02-20 Marek Safar <[EMAIL PROTECTED]> + A fix for bug #363218 + * expression.cs (ArrayCreation.Clone): Deal with multi-dimensional + initializers. + +2008-02-20 Marek Safar <[EMAIL PROTECTED]> + * expression.cs, constant.cs, cfold.cs: Yet another side-effect constant update. This time to deal correctly with SideEffectConstant expression used as an argument for another constant folding. Modified: trunk/mcs/mcs/expression.cs =================================================================== --- trunk/mcs/mcs/expression.cs 2008-02-20 17:55:59 UTC (rev 96279) +++ trunk/mcs/mcs/expression.cs 2008-02-20 18:05:44 UTC (rev 96280) @@ -5939,8 +5939,16 @@ if (initializers != null){ target.initializers = new ArrayList (initializers.Count); - foreach (Expression initializer in initializers) - target.initializers.Add (initializer.Clone (clonectx)); + foreach (object initializer in initializers) + if (initializer is ArrayList) { + ArrayList this_al = (ArrayList)initializer; + ArrayList al = new ArrayList (this_al.Count); + target.initializers.Add (al); + foreach (Expression e in this_al) + al.Add (e.Clone (clonectx)); + } else { + target.initializers.Add (((Expression)initializer).Clone (clonectx)); + } } } } _______________________________________________ Mono-patches maillist - Mono-patches@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-patches