2010-03-02 Marek Safar <marek.safar@gmail.com>
[mono.git] / mcs / mcs / ChangeLog
index f08b54640ab44201a5017070bb71e73f256a0355..a99baba1732be47496163dbe96a9821fe3b89aae 100644 (file)
@@ -1,6 +1,350 @@
+2010-03-02  Marek Safar  <marek.safar@gmail.com>
+
+       * cs-tokenizer.cs, argument.cs, dynamic.cs, assign.cs, anonymous.cs,
+       nullable.cs, expression.cs, statement.cs, cs-parser.jay, cfold.cs:
+       Report correct location for operator errors.
+
+2010-03-02  Marek Safar  <marek.safar@gmail.com>
+
+       * typemanager.cs (IsDynamicType): Don't check external types when
+       the attribute is not external.
+
+2010-02-24  Marek Safar  <marek.safar@gmail.com>
+
+       A fix for bug #582579
+       * decl.cs (IsExposedFromAssembly): Use PartialContainer for parent
+       modifiers.
+
+2010-02-24  Marek Safar  <marek.safar@gmail.com>
+
+       A fix for bug #581804
+       * ecore.cs: Fixed type comparison.
+
+2010-02-08  Miguel de Icaza  <miguel@novell.com>
+
+       * namespace.cs (CompletionGetTypesStartingWith): Do not include
+       private types in the completion results.
+
+       * cs-parser.jay: Bubble completions after "from x in ?" and "from x
+       ... let ?"
+
+2010-02-17  Marek Safar  <marek.safar@gmail.com>
+
+       * generic.cs, field.cs, decl.cs, cs-parser.jay: Simplify special
+       constraint parsing.
+
+2010-02-14  Miguel de Icaza  <miguel@novell.com>
+
+       * eval.cs: Do not do the report printer dance unless the user has
+       set the DescribeTypes feature.
+
+2010-02-10  Marek Safar  <marek.safar@gmail.com>
+
+       * argument.cs, dynamic.cs, expression.cs: Track RC API changes.
+
+2010-02-08  Marek Safar  <marek.safar@gmail.com>
+
+       A fix for bug #577029
+       * anonymous.cs: Fixed TypeBuilder* check.
+
+2010-02-06  Miguel de Icaza  <miguel@novell.com>
+
+       * eval.cs (CompileBlock): Also undo if there are problems during
+       semantic analysis, fixes various cases where invalid C# code would
+       be reported, but the internal changes would not be undone.
+
+2010-02-03  Miguel de Icaza  <miguel@novell.com>
+
+       * driver.cs: Change the --fatal flag to allow a number to be
+       passed, this ignores the first N fatal errors.   Useful to debug
+       errors that do not happen on the first hit.
+
+       * cs-parser.jay (invocation_expression): accept both the
+       CLOSE_PARENS and COMPLETE_COMPLETION, this allows completions
+       inside an invocation.
+
+       * driver.cs: Expose FatalErrors.
+
+       * eval.cs: Initialize the printer's Fatal property from the
+       Driver's FatalError flag, this allows csharp --fatal to work
+       again. 
+
+       Add support for calling Describe (typeof (TYPE)) if the expression
+       entered is a TYPE.
+       
+2010-02-02  Marek Safar  <marek.safar@gmail.com>
+
+       A fix for bug #574991
+       * rootcontext.cs, class.cs, driver.cs: Hide enhanced warnings behind
+       --lint.
+
+2010-02-02  Marek Safar  <marek.safar@gmail.com>
+
+       A fix for bug #575986
+       * expression.cs: Don't mutate typeof type definitions.
+
+2010-01-28  Marek Safar  <marek.safar@gmail.com>
+
+       * decl.cs: Use only one set of modifiers.
+
+2010-01-26  Marek Safar  <marek.safar@gmail.com>
+
+       A fix for bug #573329
+       * eval.cs: Don't disable error reporting completely on silent mode.
+       
+2010-01-25  Marek Safar  <marek.safar@gmail.com>
+
+       A fix for bug #573312
+       * constant.cs, expression.cs, ecore.cs: Emit correct offset for
+       pointer index of unknown size types greater than 2.
+
+2010-01-15  Marek Safar  <marek.safar@gmail.com>
+
+       * *.cs: Use only 1 member kind enum.
+
+2010-01-15  Marek Safar  <marek.safar@gmail.com>
+
+       * *.cs: Add event specification.
+
+2010-01-14  Marek Safar  <marek.safar@gmail.com>
+
+       * membercache.cs: Extracted from decl.cs.
+       
+       * *.cs: Put more infrastructure in place.
+
+2010-01-13  Marek Safar  <marek.safar@gmail.com>
+
+       * *.cs: Add property specification, unused yet.
+
+2010-01-13  Marek Safar  <marek.safar@gmail.com>
+
+       * property.cs: Move all property based declarations into a new file.
+
+2010-01-13  Marek Safar  <marek.safar at gmail.com>
+
+       * expression.cs (Conditional): Resolve reduced expression.
+
+2010-01-13  Marek Safar  <marek.safar at gmail.com>
+
+       * *.cs: Introduced non-generic method specification.
+
+2010-01-07  Marek Safar  <marek.safar@gmail.com>
+
+       * method.cs: Move all method based declarations into a new file.
+
+2010-01-07  Marek Safar  <marek.safar@gmail.com>
+
+       * *.cs: Extract field specification.
+
+2009-12-17  Marek Safar  <marek.safar@gmail.com>
+
+       * field.cs: Extracted from class.cs
+
+2009-12-15  Marek Safar  <marek.safar@gmail.com>
+
+       * attribute.cs (GetFixedBuffer): Work on field definition only.
+
+2009-12-15  Marek Safar  <marek.safar@gmail.com>
+
+       * *.cs: Clean up NET_4_0 conditional where possible.
+
+2009-12-14 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       support.cs (DynamicType): Assembly property returns the assembly builder.
+       This is required due to how compiler context works in corlib.
+
+2009-12-14  Marek Safar  <marek.safar@gmail.com>
+
+       A fix for bug #564376
+       * assign.cs (LocalTemporary): Removed no longer needed special
+       by-ref handling.
+
+2009-12-11  Marek Safar  <marek.safar@gmail.com>
+
+       * modifiers.cs, decl.cs, iterators.cs, const.cs, anonymous.cs,
+       class.cs, delegate.cs, cs-parser.jay, enum.cs: Turn modifiers into
+       enum for easier debugging.
+
+2009-12-10  Marek Safar  <marek.safar@gmail.com>
+
+       * decl.cs, anonymous.cs, class.cs: Sealed Define it's now main entry
+       point.
+       
+       * parameter.cs, delegate.cs, dynamic.cs: Don't use builder methods
+       directly.
+
+2009-12-10  Marek Safar  <marek.safar@gmail.com>
+
+       * cs-parser.jay, statement.cs: Handle parser error in code
+       completition.
+
+2009-12-10  Marek Safar  <marek.safar@gmail.com>
+
+       * ecore.cs: Ignore base imported methods when they are already
+       in method bag.
+       
+       * eval.cs: Handle non-existent keys.
+       
+       * report.cs, driver.cs: Make fatal work with console printer only.
+
+2009-12-08 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * typemanager.cs (MakeGenericMethod): Fix stupid mistake.
+
+2009-12-08 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * typemanager.cs: Add MakeGenericMethod that checks if the method
+       is really the generic method definition.
+
+       ecore.cs (MethodGroupExpr:IsApplicable): Use new TypeManager function
+       to inflate generic methods.
+
+2009-12-08  Marek Safar  <marek.safar@gmail.com>
+
+       A fix for bug #561149
+       * anonymous.cs: Use actual type parameters when checking for generic
+       method host.
+
+2009-12-08  Marek Safar  <marek.safar@gmail.com>
+
+       A fix for bug #561369
+       * expression.cs (DoNumericPromotion): Fixed typo.
+
+2009-12-08  Marek Safar  <marek.safar@gmail.com>
+
+       *.cs: Moving to generics world.
+
+       cs-parser.jay: Removed current_array_type.
+
+2009-12-07  Marek Safar  <marek.safar@gmail.com>
+
+       *.cs: Moving to generics world.
+
+2009-12-04  Marek Safar  <marek.safar@gmail.com>
+
+       *.cs: Moving to generics world (day 2).
+
+2009-12-03  Marek Safar  <marek.safar@gmail.com>
+
+       *.cs: Moving to generics world.
+
+2009-12-02  Marek Safar  <marek.safar@gmail.com>
+
+       * typemanager.cs, parameter.cs, class.cs, delegate.cs, attribute.cs:
+       Encode dynamic type attribute for elements where attributes cannot
+       be used.
+
+2009-12-01  Marek Safar  <marek.safar@gmail.com>
+
+        argument.cs, assign.cs, expression.cs, cs-parser.jay: Named
+        arguments by ref.
+
+2009-12-01  Marek Safar  <marek.safar@gmail.com>
+
+       A fix for bug #360455
+       * class.cs: Never report a unused warning for generic events to
+       workaround wrong expression type.
+
+2009-11-30  Marek Safar  <marek.safar@gmail.com>
+
+       A fix for bug #558305
+       * decl.cs, class.cs: Check partial method definitions using correct
+       flag.
+
+2009-11-30  Marek Safar  <marek.safar@gmail.com>
+
+       * argument.cs: Don't cache rarely used dynamic flag.
+
+2009-11-27  Marek Safar  <marek.safar@gmail.com>
+
+       * cs-parser.jay: Use jay global stacks (saves over 3MB for corlib).
+
+2009-11-27  Marek Safar  <marek.safar@gmail.com>
+
+       * ecore.cs (SimpleName): Removed no longer needed in_transit as
+       Resolve is now non-reentrant (saves ~0.6MB for corlib).
+
+2009-11-26  Marek Safar  <marek.safar@gmail.com>
+
+       A fix for bug #545081
+       * decl.cs: Check private nested types of nested types recursively.
+
+2009-11-26  Marek Safar  <marek.safar@gmail.com>
+
+       A fix for bug #558305
+       * location.cs: Ignore self referencing #line directive
+
+2009-11-26  Marek Safar  <marek.safar@gmail.com>
+
+       A fix for bug #558292
+       * class.cs: Allow single unsafe fixed buffer fields.
+
+2009-11-26  Marek Safar  <marek.safar@gmail.com>
+
+       * expression: Optimize few more zero-based operations.
+
+2009-11-26  Marek Safar  <marek.safar@gmail.com>
+
+       * cs-tokenizer.cs, cs-parser.jay: Simplify literal parsing, also
+       avoids boxing of literal values.
+
+2009-11-26  Marek Safar  <marek.safar@gmail.com>
+
+       * cs-tokenizer.cs, argument.cs, eval.cs, linq.cs, decl.cs,
+       expression.cs, ecore.cs, location.cs, cs-parser.jay, attribute.cs,
+       codegen.cs: LocatedToken redesing to avoid excessive allocation and
+       boxing (saves ~7MB for corlib). Also fixes presise token location.
+
+2009-11-25  Marek Safar  <marek.safar@gmail.com>
+
+       * ecore.cs, cs-parser.jay: Keep parser structures local. Share
+       common data buckers.
+
+2009-11-24  Marek Safar  <marek.safar@gmail.com>
+
+       * expression.cs: Lower static array initializer barrier.
+       
+       * support.cs, driver.cs: Share reader buffer.
+
+2009-11-23  Marek Safar  <marek.safar@gmail.com>
+
+       * cs-tokenizer.cs, support.cs: Some tokenizer optimizations.
+
+2009-11-23  Marek Safar  <marek.safar@gmail.com>
+
+       * cs-tokenizer.cs, support.cs: Use Dictionary instead of Hashtable,
+       cleanup some obsolete code.
+
+2009-11-20  Marek Safar  <marek.safar@gmail.com>
+
+       * context.cs, expression.cs, ecore.cs, complete.cs: Cleaned up
+       Expression.Resolve.
+
+2009-11-20  Marek Safar  <marek.safar@gmail.com>
+
+       * *.cs: Resolved expressions are never resolved again, this helps to
+       uncover some not easy to find bugs and improve the performance.
+
+2009-11-19  Marek Safar  <marek.safar@gmail.com>
+
+       * *.cs: Made constant expressions fully compatible with any other
+       expression.
+
+2009-11-19  Marek Safar  <marek.safar@gmail.com>
+
+       * *.cs: DoResolve is a worker method and has to be protected.
+
+2009-11-18  Marek Safar  <marek.safar@gmail.com>
+
+       * *.cs: More context specific handling.
+
+2009-11-17  Marek Safar  <marek.safar@gmail.com>
+
+       * *.cs: More context specific handling.
+
 2009-11-16  Marek Safar  <marek.safar@gmail.com>
 
-       * dynamic.cs, class: Removed few fixed user types conversions.
+       * dynamic.cs, class.cs: Removed few fixed user types conversions.
        
        * symbolwriter.cs: Uses public ILOffset.