Fix warning.
[mono.git] / mcs / gmcs / ChangeLog
index 6860177a83749041d165de3da280e8d5b7c756e1..6861abc931b4db6f391547e3bc0c3b5678ada882 100644 (file)
@@ -1,3 +1,123 @@
+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
+       (GenericConstraints.TypeParameter): New public property.
+       (TypeParameter.ctor): Also take a `DeclSpace' argument.
+       (TypeParameter.DeclSpace): New public property.
+       (TypeParameter.DefineType): Inflate the constraints if our
+       `DeclSpace' is an `Iterator'.   
+
+2005-10-19  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * class.cs, decl.cs : (MemberCache.FindMemberToOverride) added 
+         GenericMethod argument to compare methods' generic type arguments.
+         Fixed bug #76382.
+
+2005-10-19  Martin Baulig  <martin@ximian.com>
+
+       * class.cs (TypeContainer.DefineType): Only use ResolveAsTypeStep(),
+       not ResolveType() when resolving the base type, so we're not
+       checking the constraints here.
+       (TypeContainer.ResolveType): Call ResolveType() on our base_type
+       if we have any.
+
+2005-10-19  Martin Baulig  <martin@ximian.com>
+
+       * generic.cs (ConstructedType.CheckConstraints): Committing
+       untested fix for #76441.
+
+2005-10-18  Raja R Harinath  <rharinath@novell.com>
+
+       Fix #76371.
+       * class.cs (TypeContainer.DefineType): Move updating of
+       topological sort earlier in the code.
+       * decl.cs (DeclSpace.ResolveBaseTypeExpr): Don't use TypeBuilder.
+
+2005-10-18  Marek Safar  <marek.safar@seznam.cz>
+
+       Fix #76273.
+       * cfold.cs (BinaryFold): Reduce constant in enum conversion.
+       
+       * constant.cs (Constant.TryReduce): Moved from Cast class.
+       (Reduce): Made little bit more OO and fixed missing conversions.
+       
+       * ecore.cs (Reduce): Implemented.
+       (Binary.EnumLiftUp): New method to upgrade values to enum values.
+       
+       * literal.cs (Reduce): Implemented.
+       
+       * class.cs: Reverted Miguel's wrong commit.
+
 2005-10-14  Miguel de Icaza  <miguel@novell.com>
 
        * ecore.cs (GetMemberType): Report the correct mapping for the MemberCore