*** Merged revisions from mcs: 52077, 52086, 52089
[mono.git] / mcs / gmcs / ChangeLog
index 4c6f2416905475a986354750047ef9a6e806c01d..c67aac0e69332f8fd71431a2d699ed9e03fe9e08 100644 (file)
@@ -1,3 +1,114 @@
+2005-10-23  Marek Safar  <marek.safar@seznam.cz>
+
+       * anonymous.cs (AnonymousContainer): Don't crash when container
+       doesn't exist.
+
+2005-10-23  Marek Safar  <marek.safar@seznam.cz>
+
+       * expression.cs (Binary.DoResolve): Warn when comparing same
+       values.
+
+2005-10-23  Marek Safar  <marek.safar@seznam.cz>
+
+       Fix #76486.
+       * expression.cs (Binary.DoResolve): It looks like there are no
+       convetsion rules in enum context.
+
+2005-10-19  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       Add support for extern alias qualifiers.
+       * typemanager.cs: Move some LookupTypeReflection code
+       to namespace.cs, to have cleaner code. Added some methods
+       to help us keep track of the extern aliased references.
+       * driver.cs: Add suport for extern alias assemblies on command
+       line and check for their warnings/errors. Also keep track of the
+       extern aliased assemblies.
+       * namespace.cs: Move the global functionality of Namespace
+       to GlobalRootNamespace/RootNamespace. Now the global namespace
+       is GlobalRootNamespace.Globa. Also the code moved from 
+       typemanager.cs lives in GlobalRootNames.cs/RootNamespace.cs. 
+       Finally added LocalAliasEntry (AliasEntry before) and
+       ExternAliasEntry, to handle alias statements.
+       * cs-parser.jay: Add support in the grammar for extern alias
+       statement.
+       * doc.cs, delegate.cs, expression.cs ecore.cs, symbolwriter.cs: 
+       Update callings to Namespace (now in GlobalRootNamespace).
+
+2005-10-25  Martin Baulig  <martin@ximian.com>
+
+       * convert.cs (ImplicitTypeParameterConversion): Make base
+       interfaces actually work; fixes #76557.
+
+2005-10-25  Martin Baulig  <martin@ximian.com>
+
+       * generic.cs
+       (GenericMethod.Define): Call TypeParameter.DefineConstraints() on
+       all the type parameters; fixes #76551.
+
+2005-10-25  Martin Baulig  <martin@ximian.com>
+
+       Fix #76472.
+
+       * generic.cs
+       (GenericMethod.ctor): Added `Expression return_type' and
+       `Parameters parameters' arguments.
+       (GenericMethod.DefineType): Call ResolveAsTypeTerminal() on the
+       parameter and return types to check their constraints if they're
+       generic types.
+
+       * codegen.cs (EmitContext.ResolvingGenericMethod): New public
+       boolean field.
+
+       * ecore.cs (Expression.ResolveAsTypeTerminal): Don't check the
+       constraints of a generic type if `ec.ResolvingGenericMethod'.
+
+       * class.cs (MethodCore.DoDefineParameters): Set
+       `ec.ResolvingGenericMethod' if we're a generic method.
+       (MemberBase.MemberType): Likewise.
+
+2005-10-25  Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+       * typemanager.cs (TypeManager): Added 
+       TypeManager.internals_visible_attr_type to cache
+       S.R.CompilerServices.InternalsVisibleToAttribute.
+
+       * codegen.cs (AssemblyClass): Added checks for 
+       InternalsVisibleToAttribute in new method 
+       CheckInternalsVisibleAttribute () and also cache the
+       AssemblyName in AssemblyClass.Name.
+       
+2005-10-24  Martin Baulig  <martin@ximian.com>
+
+       * typemanager.cs
+       (TypeManager.ExpandInterfaces): Added overloaded version which
+       just takes a `Type[]' array.
+
+       * generic.cs
+       (Constraints.Resolve): Don't expand the interfaces here; ie. we
+       just use the interfaces which were explicitly specified and not
+       the interfaces they inherit.  Fixes #76482.
+       (TypeParameter.FindMembers): Expand the interfaces here.
+
+2005-10-21  Martin Baulig  <martin@ximian.com>
+
+       * generic.cs
+       (Constraints.Resolve): Also resolve the actual types here.
+       (Constraints.ResolveTypes): Just check the constraints here.
+       Fixes #76363; see gtest-218.cs.
+
+2005-10-21  Martin Baulig  <martin@ximian.com>
+
+       * convert.cs
+       (Convert.ImplicitTypeParameterConversion): Use a `ClassCast'
+       instead of a `BoxedCast'; fixes gtest-217.cs.
+
+2005-10-20  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * generic.cs : (ConstructedType.CheckConstraints) warn CS0310 when
+         1) "new()" is specified as generic parameter constraint and 2) the
+         type is TypeBuilder and 3) the type is abstract even if it has a
+         default .ctor(). Now errors/gcs0310-3.cs is correctly rejected.
+
 2005-10-20  Martin Baulig  <martin@ximian.com>
 
        * generic.cs
@@ -7,7 +118,7 @@
        (TypeParameter.DefineType): Inflate the constraints if our
        `DeclSpace' is an `Iterator'.   
 
-2005-10-19  Atsushi Enomotot  <atsushi@ximian.com>
+2005-10-19  Atsushi Enomoto  <atsushi@ximian.com>
 
        * class.cs, decl.cs : (MemberCache.FindMemberToOverride) added 
          GenericMethod argument to compare methods' generic type arguments.