2008-05-06 Martin Baulig <martin@ximian.com>
[mono.git] / mcs / mcs / ChangeLog
index bb2c688a516ae04ba75f0f4e9efc8c95f127fd9e..2a0b651a53fc92aa00e06e875dff40cf0ced4d6a 100644 (file)
@@ -1,3 +1,160 @@
+2008-05-06  Martin Baulig  <martin@ximian.com>
+
+       * class.cs (Constructor.Emit): Fix the logic whether to emit
+       symbol information.
+
+2008-05-06  Raja R Harinath  <harinath@hurrynot.org>
+
+       Fix #385503
+       * iterators.cs (Iterator.CurrentBlock.DoEmit): Don't emit
+       InvalidOperationException when the iterator is before the start or
+       after the end.
+
+2008-05-06  Marek Safar  <marek.safar@gmail.com>
+
+       * nullable.cs (NullCoalescingOperator): Result is underlying type of left,
+       when left is nullable type.
+
+2008-05-06  Marek Safar  <marek.safar@gmail.com>
+
+       A fix for bug #386628
+       * expression.cs (LocalVariableReference): Continue in resolving when
+       variable is not assigned.
+
+2008-05-05  Marek Safar  <marek.safar@gmail.com>
+
+       * nullable.cs, statement.cs (Unwrap): Store non-variable expression in all
+       nullable operations.
+
+2008-05-04  Marek Safar  <marek.safar@gmail.com>
+
+       * nullable.cs, statement.cs (Unwrap): Don't duplicate variable expressions,
+       it saves many redundant temporary variables for nullable operations.
+
+2008-05-03  Marek Safar  <marek.safar@gmail.com>
+
+       * assign.cs: EventAddOrRemove is a statement and cannot have a type.
+       
+       * cfold.cs, constant.cs, expression.cs: Share Error_OperatorCannotBeApplied
+       method.
+       
+       * nullable.cs: Constant coalescing operator optimizations.
+
+2008-05-03  Marek Safar  <marek.safar@gmail.com>
+
+       * constant.cs: Use unsigned conversion for values which are unsigned only.
+
+2008-05-03  Marek Safar  <marek.safar@gmail.com>
+
+       * convert.cs, literal.cs, nullabel.cs, typemanager.cs: Implemeted null 
+       coalescing operator as it should be.
+
+2008-05-02  Marek Safar  <marek.safar@gmail.com>
+
+       A fix for bug #371016
+       * expression.cs: All predefined delegate operators require implicit method
+       group conversion.
+       
+2008-05-02  Marek Safar  <marek.safar@gmail.com>
+
+       * constant.cs: Emit long constant as uint when fits the range.
+       
+       * convert.cs, expression.cs: Fixed few unsafe conversions.
+
+2008-05-02  Marek Safar  <marek.safar@gmail.com>
+
+       * convert.cs, literal.cs: Don't wrap implicit reference conversion to object
+
+2008-05-02  Raja R Harinath  <harinath@hurrynot.org>
+
+       Fix #385758
+       * convert.cs (ImplicitNumericConversion): Don't modify the type of
+       'expr'.
+       * ecore.cs (EmptyCast.Create): Flatten nested EmptyCasts.
+
+2008-05-01  Marek Safar  <marek.safar@gmail.com>
+
+       * constant.cs, literal.cs: IsLiteral property for error reporting.
+       
+       * ecore.cs, expression.cs: Implemented Property expression.
+
+2008-05-01  Marek Safar  <marek.safar@gmail.com>
+
+       * class.cs, modifiers.cs, flowanalysis.cs: New BACKING_FIELD flag.
+       
+       * nullable.cs: Implemented nullable coalescing null operator.
+
+       * ecore.cs, expression.cs: Expression trees work.
+
+2008-05-01  Marek Safar  <marek.safar@gmail.com>
+
+       * ecore.cs: CreateExpressionTree is finally abstract.
+
+       * expression.cs, linq.cs: Updated.
+
+2008-05-01  Marek Safar  <marek.safar@gmail.com>
+
+       * expression.cs, ecore.cs: Block base access expression inside expression
+       tree.
+
+2008-05-01  Marek Safar  <marek.safar@gmail.com>
+
+       A fix for bug #385058
+       * expression.cs: User-defined operator implementations always take
+       precedence over predefined operator implementations.
+
+2008-04-30  Marek Safar  <marek.safar@gmail.com>
+
+       * assign.cs, anonymous.cs, lambda.cs, nullable.cs, ecore.cs, linq.cs,
+       class.cs, iterators.cs, expression.cs, attribute.cs: Filled a few more
+       expression tree conversions.
+       
+2008-04-30  Marek Safar  <marek.safar@gmail.com>
+
+       * typemanager.cs, ecore.cs, class.cs, expression.cs, doc.cs: Merged all
+       operators method details to Operator class.
+
+2008-04-30  Marek Safar  <marek.safar@gmail.com>
+
+       * anonymous.cs: Pass unsafe flags to anonymous container.
+       
+       * ecore.cs, expression.cs, statement.cs: Block unsafe pointer operations
+       inside expression tree.
+
+2008-04-29  Martin Baulig  <martin@ximian.com>
+
+       * cs-tokenizer.cs (Tokenizer.Position): Added `line'.
+       (Tokenizer.PopPosition): Also restore the `line'.
+
+2008-04-29  Marek Safar  <marek.safar@gmail.com>
+
+       * delegate.cs: Implemented Invoke expression.
+
+2008-04-29  Marek Safar  <marek.safar@gmail.com>
+
+       * expression.cs: Fixed equality reference comparison regression.
+
+2008-04-29  Marek Safar  <marek.safar@gmail.com>
+
+       * ecore.cs: Clean up EmptyCast hack.
+       
+       * expression.cs, nullable.cs: Implemented enum binary and unary operations
+       using correct conversion rules. Also fixes #383993.
+
+2008-04-28  Martin Baulig  <martin@ximian.com>
+
+       * class.cs (Constructor.Emit): Don't emit debugging information
+       for generated default .ctor's.
+
+2008-04-28  Marek Safar  <marek.safar@gmail.com>
+
+       * convert.cs: Empty-cast ushort to int conversion.
+
+2008-04-28  Marek Safar  <marek.safar@gmail.com>
+
+       A fix for bug #384191
+       * ecore.cs, expression.cs: Fixed expression cloning.
+
 2008-04-28  Marek Safar  <marek.safar@gmail.com>
 
        * ecore.cs, delegate.cs, assign.cs: Few tweaks for recent changes.