2005-01-21 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
[mono.git] / mcs / class / corlib / System.Reflection.Emit / ChangeLog
index 3afa20f8f87d3baf4625d87ec00a2e830d37dec3..6b5dc8622c8859b5f9eb9b415116e73f7272efba 100644 (file)
@@ -1,3 +1,337 @@
+2005-01-21 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
+       * MethodBuilder.cs, TypeBuilder: missing 'params' in some method signature
+       patch by Kamil Skalski <nazgul@nemerle.org>
+
+2005-01-18  Geoff Norton  <gnorton@customerdna.com>
+
+       * ModuleBuilder.cs: Interfaces should have null BaseType.
+       Fixes #71301.
+
+2005-01-18  Miguel de Icaza  <miguel@ximian.com>
+
+       * TypeBuilder.cs: Add check for creation.  Fix from Geoff.
+
+2004-12-16  Zoltan Varga  <vargaz@freemail.hu>
+
+       * CustomAttributeBuilder.cs: Fix a warning.
+
+Wed Dec 15 11:34:13 CET 2004 Paolo Molaro <lupus@ximian.com>
+
+       * ModuleBuilder.cs, EnumBuilder.cs: actually add the enumbuilder
+       to the type list of the module (bug#70488).
+
+2004-12-09  Martin Baulig  <martin@ximian.com>
+
+       * GenericTypeParameterBuilder.cs
+       (GenericTypeParameterBuilder.IsValueType): Fixed the FIXME.
+
+2004-12-08  Zoltan Varga  <vargaz@freemail.hu>
+
+       * AssemblyBuilder.cs: Move corlib_internal field here from Assembly.
+       
+       * AssemblyBuilder.cs: Add corlib_internal to the ctor parameters.
+
+2004-12-06  Ben Maurer  <bmaurer@ximian.com>
+
+       * TypeBuilder.cs (CreateType): Creating a type twice does not
+       throw in msft.
+
+2004-11-22  Zoltan Varga  <vargaz@freemail.hu>
+
+       * ModuleBuilder.cs: Check that all types inside the module are created.
+       Fixes #69780.
+
+2004-11-13  Ben Maurer  <bmaurer@ximian.com>
+
+       * ModuleBuilder.cs (Save): Use new WriteToFile icall.
+
+2004-11-04  Zoltan Varga  <vargaz@freemail.hu>
+
+       * TypeBuilder.cs: Make some members work if the type is created since
+       MS does this.
+
+2004-10-30  Zoltan Varga  <vargaz@freemail.hu>
+
+       * CustomAttributeBuilder.cs: Check that arguments are not 
+       multi-dimensional arrays.
+
+2004-10-12  Martin Baulig  <martin@ximian.com>
+
+       * TypeBuilder.cs (TypeBuilder.setup_generic_class): Renamed to
+       create_generic_class() and added a new setup_generic_class().
+       (TypeBuilder.DefineGenericParameters): Call setup_generic_class()
+       before creating the type parameters.
+
+2004-10-11  Martin Baulig  <martin@ximian.com>
+
+       * TypeBuilder.cs (TypeBuilder.generic_container): New private field.
+
+       * MethodBuilder.cs (MethodBuilder.generic_container): New private field.
+
+       * GenericTypeParameterBuilder.cs
+       (GenericTypeParameterBuilder.GetGenericTypeParameterConstraints):
+       Return `Type.EmptyTypes' instead of an array of `typeof (object)'.      
+
+2004-10-08  Zoltan Varga  <vargaz@freemail.hu>
+
+       * ModuleBuilder.cs: Create global type after creation.
+
+2004-10-06  Zoltan Varga  <vargaz@freemail.hu>
+
+       * ModuleBuilder.cs (GetTypes): Fix length of returned array. Fixes
+       #65931.
+
+2004-10-04  Zoltan Varga  <vargaz@freemail.hu>
+
+       * ModuleBuilder.cs (DefineType): Check for duplicate type names. Fixes
+       #65988.
+
+2004-10-03  Zoltan Varga  <vargaz@freemail.hu>
+
+       * AssemblyBuilderAccess.cs: Remove [Flags].
+
+       * PackingSize.cs: Add new 2.0 members. Remove [Flags].
+
+       * AssemblyBuilder.cs: Add net 2.0 Save method.
+
+       * LocalBuilder.cs: Make this inherit from LocalVariableInfo under
+       net 2.0. Reorganize fields so the layout visible to the runtime is the
+       same under 1.0 and 2.0. Add 2.0 properties.
+
+2004-10-02  Gert Driesen  <drieseng@users.sourceforge.net>
+
+       * TypeBuilder.cs: throw NotSupportedException when defining default
+       ctor if parent type does not have default ctor
+
+2004-09-30  Zoltan Varga  <vargaz@freemail.hu>
+
+       * TypeBuilder.cs: Make 'created' field visible to the runtime.
+
+2004-09-28  Martin Baulig  <martin@ximian.com>
+
+       * GenericTypeParameterBuilder.cs
+       (GenericTypeParameterBuilder.ContainsGenericParameters): Return
+       true here; System.Type.ContainsGenericParameters returns true when
+       called on a type parameter, so let's do the same here.
+
+2004-09-27  Zoltan Varga  <vargaz@freemail.hu>
+
+       * ConstructorBuilder.cs: Add 2.0 GetILGenerator(size) method.
+
+2004-09-26  Zoltan Varga  <vargaz@freemail.hu>
+
+       * UnmanagedMarshal.cs: Add ToMarshalAsAttribute method.
+
+2004-09-25  Zoltan Varga  <vargaz@freemail.hu>
+
+       * TypeBuilder.cs: Add IsCreated method.
+
+2004-09-24  Zoltan Varga  <vargaz@freemail.hu>
+
+       * FieldBuilder.cs: Add dummy GetFieldOffset method.
+
+2004-09-24  Martin Baulig  <martin@ximian.com>
+
+       * GenericTypeParameterBuilder.cs
+       (GenericTypeParameterBuilder.GetGenericParameterConstraints): Override.
+
+2004-09-23  Zoltan Varga  <vargaz@freemail.hu>
+
+       * DynamicMethod.cs: Add MetadataToken property and tweak Module property.
+
+2004-09-23  Martin Baulig  <martin@ximian.com>
+
+       * GenericTypeParameterBuilder.cs
+       (GenericTypeParameterBuilder.SetGenericParameterAttributes): New
+       public method, replaces the old Mono_* hacks.
+
+2004-09-20  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * AssemblyBuilder.cs: Fixed assembly-level permissions. I don't know 
+       why I splitted them all into individual entries when only a single set
+       is accepted for each security action :(.
+
+2004-09-17  Zoltan Varga  <vargaz@freemail.hu>
+
+       * CustomAttributeBuilder.cs: Applied patch from Marcus Urban
+       (mathpup@mylinuxisp.com). Add support for defining custom
+       marshallers by calling SetCustomAttribute.      
+
+2004-09-16  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * AssemblyBuilder.cs: Keep a copy of the 3 permission set as an array
+       of RefEmitPermissionSet. This will allow to reuse existing 
+       functionalities already present in the runtime.
+
+2004-09-12  Marek Safar  <marek.safar@seznam.cz>
+
+       * TypeBuilder.cs: Do not create default constructor for
+       static classes.
+
+2004-09-09  Zoltan Varga  <vargaz@freemail.hu>
+
+       * TypeBuilder.cs: Set the table_idx of the global type to 1.
+
+       * ModuleBuilder.cs: Save the main module of the assembly even if it is 
+       transient.
+
+2004-09-02 Ben Maurer  <bmaurer@users.sourceforge.net>
+
+       * LocalBuilder.cs: another s.ioe
+
+2004-09-02 Ben Maurer  <bmaurer@users.sourceforge.net>
+
+       * ModuleBuilder.cs: dont throw an S.IOE for debugging stuff.
+       makes sre apps work
+
+2004-09-02  Martin Baulig  <martin@ximian.com>
+
+       * MethodBuilder.cs (MethodBuilder.GetParameters): Throw a
+       NotSupportedException() until the type has been fully created.
+
+2004-09-01  Martin Baulig  <martin@ximian.com>
+
+       * IMonoSymbolWriter.cs: Removed.
+
+       * ModuleBuilder.cs, LocalBuilder.cs, ILGenerator.cs: Removed the
+       old debugging code.
+
+2004-08-13  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * AssemblyBuilder.cs: (Partly) Fix delay-signing issue (#56621) when 
+       MCS is used on the MS runtime (other part of the fix is for MCS).
+
+2004-08-11  Marek Safar  <marek.safar@seznam.cz>
+
+       * AssemblyBuilder.cs: Added AddPermissionRequests method
+       used be mcs for SecurityPermissionAttribute handling.
+
+2004-08-08  Zoltan Varga  <vargaz@freemail.hu>
+
+       * EnumBuilder.cs: Call setup_enum_type () in the constructor. Fixes
+       #62237.
+
+2004-08-07  Jackson Harper  <jackson@ximian.com>
+
+       * AssemblyBuilder.cs: "neutral" culture is invariant culture
+       (String.Empty).
+
+2004-08-07  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * OpCodes.cs : csc complains CS1034 Line cannot exceed 2046 characters.
+
+2004-08-05  Duncan Mak  <duncan@ximian.com>
+
+       * OpCodes.cs (TakesSingleByteArgument): Add this back.
+
+2004-08-05  Duncan Mak  <duncan@ximian.com>    
+
+       This patch is based on an idea of Ben's to reduce the code size
+       in MCS. 
+
+       * OpCodes.cs: Instead pushing the data onto the stack when each
+       OpCode is initialized, pack the data into 2 ints and store only
+       that.  Furthermore, the names of each OpCode are stored in a
+       separate string array in the new OpCodeNames class.
+
+       * OpCodeNames.cs: The names of each OpCode are moved here to delay
+       the initialization of the strings, as they are not used frequently.
+
+       * OpCode.cs: Rewrote this to take in everything as 2 ints.
+
+2004-07-29  Martin Baulig  <martin@ximian.com>
+
+       * ILGenerator.cs (ILGenerator.Mono_GetCurrentOffset): New static
+       internal method.
+
+       * ModuleBuilder.cs (ModuleBuilder.Mono_GetGuid): New static
+       internal method.
+
+2004-07-24  Martin Baulig  <martin@ximian.com>
+
+       * TypeBuilder.cs (TypeBuilder.UnspecifiedTypeSize): Set this to 0
+       and initialize it to 0 everywhere.
+
+2004-07-22  Martin Baulig  <martin@ximian.com>
+
+       * ILGenerator.cs (ILGenerator.BeginFaultBlock): Implemented.
+
+2004-07-07  Miguel de Icaza  <miguel@ximian.com>
+
+       * LocalBuilder.cs: Remove MakePinned, we are now going to use
+       ILGenerator.DeclaraLocal that takes the `bool pinned' argument. 
+
+       * ILGenerator.cs (DeclareLocal): Add `pinned' version of the
+       method on the 2.0 profile.
+
+2004-07-02  Zoltan Varga  <vargaz@freemail.hu>
+
+       * EnumBuilder.cs (CreateType): Call a new icall to set the internal
+       type field. Fixes #59833.
+
+Thu Jun 24 15:33:04 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+       * ParameterBuilder.cs: implement SetConstant ().
+
+Wed Jun 23 15:40:48 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+       * TypeBuilder.cs: handle properly the case when SetParent() 
+       is called (requires an updated runtime, too bug#60474).
+
+Wed Jun 23 14:20:47 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+       * EnumBuilder.cs, TypeBuilder.cs: patch from Gert Driesen
+       to implement EnumBuilder (slightly tweaked).
+
+2004-06-15  Gert Driesen <drieseng@users.sourceforge.net>
+
+       * MethodRental.cs: fixed value of JitOnDemand
+
+2004-06-09  Gert Driesen <drieseng@users.sourceforge.net>
+
+       * FieldBuilder.cs: fixed implementation to match MS.NET,
+       meaning throw InvalidOperationException for methods that
+       should not be allowed to execute when type has been
+       created, and throw NotSupportedException for methods and
+       properties that should not be called on FieldBuilder
+
+2004-06-09  Gert Driesen <drieseng@users.sourceforge.net>
+
+        * MethodBuilder.cs: move check to see if type has already 
+       been created up, to match MS.NET behaviour. Fix GetHashCode 
+       (removed TODO)
+
+2004-06-09  Gert Driesen <drieseng@users.sourceforge.net>
+
+        * MethodRental.cs: Added check for method size
+
+2004-06-08  Martin Baulig  <martin@ximian.com>
+
+       * ILGenerator.cs (TokenGenerator.GetToken): Added overloaded
+       version which takes a MethodInfo and a Type[].
+       (IlGenerator.EmitCall): When emitting a call to a varargs method,
+       use the new GetToken() to pass the optional argument types to the
+       runtime.
+
+       * ModuleBuilder.cs (ModuleBuilder.getMethodToken): New interncall.
+
+2004-05-29  Gert Driesen (drieseng@users.sourceforge.net)
+
+       * AssemblyBuilder.cs: removed extra method, fixes public API
+       compatibility with MS.NET
+       * TypeBuilder.cs: removed extra method, fixes public API
+       compatibility with MS.NET
+
+2004-05-28  Jackson Harper  <jackson@ximian.com>
+
+       * CustomAttributeBuilder.cs: GetBlob now takes a ref to the
+       assembly so it can encode type names properly.
+       
+2004-05-25  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * MethodBuilder.cs: Now use FastNewGuidArray to create new random 
+       Guids without using CryptoConfig. Speed up for MCS.
+
 2004-05-14  Zoltan Varga  <vargaz@freemail.hu>
 
        * MethodBuilder.cs: Add Equals and GetHashCode.