+2008-09-23 Marek Safar <marek.safar@gmail.com>
+
+ * ModuleBuilder.cs: Fixed NRE when default symbol writer cannot be
+ loaded.
+
+2008-09-16 Jb Evain <jbevain@novell.com>
+
+ * AssemblyBuilder.cs (AddTypeForwarder): correctly grow the
+ type_forwarders array, to make that work for more than one
+ type forwarder. Managed part of the fix for #422929.
+
+2008-09-04 Marek Safar <marek.safar@gmail.com>
+
+ * TypeBuilder.cs: Add mcs specific SetCharSet method.
+
+2008-08-12 Zoltan Varga <vargaz@gmail.com>
+
+ * TypeBuilder.cs (CreateType): Avoid creating a default ctor if the
+ type has a constructor defined using DefineMethod. Fixes #416632.
+
+2008-07-25 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * TypeBuilder.cs (GetMethod): Allow created TypeBuilders
+ to be used.
+
+2008-07-23 Marek Safar <marek.safar@gmail.com>
+ Rodrigo Kumpera <rkumpera@novell.com>
+
+ * TypeBuilder.cs (GetMethod): A fix for #408933
+
+2008-07-22 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * MethodOnTypeBuilderInst.cs: Change visibility of the parent
+ MethodBuilder to internal.
+
+2008-07-22 Zoltan Varga <vargaz@gmail.com>
+
+ * CustomAttributeBuilder.cs (get_umarshal): Add support for all
+ MarshalAsAttribute fields to fix the build.
+
+ * CustomAttributeBuilder.cs (get_umarshal): Decode enums properly.
+
+2008-07-21 Marek Safar <marek.safar@gmail.com>
+
+ * ParameterBuilder.cs, CustomAttributeBuilder.cs: Check for
+ UnmanagedType.ByValArray to be used only on fields.
+
+2008-07-16 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * MethodOnTypeBuilderInst.cs: Special case all methods
+ under compiler context as needed by mcs.
+
+ * MethodBuilder.cs: Change the visibility of some fields
+ to internal so MethodOnTypeBuilderInst can use it.
+
+2008-07-11 Marek Safar <marek.safar@gmail.com>
+
+ * ModuleBuilder.cs: Couple of micro optimizations.
+
+2008-07-03 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
+
+ * SignatureHelper.cs: Fix parameter names
+ * ModuleBuilder.cs: Fix parameter names
+
+2008-06-18 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * TypeBuilder.cs (IsAssignableTo): Fixed check for interfaces
+ defined on parent. Based on Geoff's Norton patch.
+ Fixes #349194.
+
+2008-06-12 Marek Safar <marek.safar@gmail.com>
+
+ * MethodBuilder.cs: Removed SetGenericMethodSignature.
+
+2008-06-06 Jb Evain <jbevain@novell.com>
+
+ * OpCodes.cs: OpCode constrained. is of type InlineType.
+
+2008-05-18 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * TypeBuilder.cs (IsAssignableTo): When an interface is passed as
+ argument and the TypeBuilder has been created, also check if parent
+ can be assigned to type.
+
+2008-05-15 Zoltan Varga <vargaz@gmail.com>
+
+ * TypeBuilder.cs (.ctor): Convert a null parent to typeof (object) here, not just
+ in CreateType (). Fixes #389171.
+
+2008-05-11 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * FieldBuilder.cs: Added null check for type.
+ * TypeBuilder.cs: For enums, construct UnderlyingSystemType when
+ first instance field is defined instead of having to lookup it up on
+ demand. Avoid cast in IsCompilerContext.
+
+2008-05-11 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * TypeBuilder.cs: Use Assembly.FullName instead of AssemblyName.
+ In UnderlyingSystemType, return UnderlyingSystemType of created type
+ when available. For an enum, UnderlyingSystemType is the type of the
+ first instance field. If no instance field is available, throw an
+ InvalidOperationException. Retain original behavior when operating in
+ compiler context.
+ * ConstructorBuilder.cs: Moved implementation of GetParameters to
+ GetParametersInternal to allow it to be used internally when type is
+ not yet created.
+ * CustomAttributeBuilder.cs: Added GetParameters method that uses
+ GetParametersInternal on ConstructorBuilder, and use it where
+ necessary.
+
+2008-05-03 Zoltan Varga <vargaz@gmail.com>
+
+ * ConstructorBuilder.cs: Revert the throw not_created () change as it causes
+ vbnc bootstrap to fail. Fixes #386419.
+
+2008-05-01 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * ConstructorBuilder.cs: Switch arguments for AORE.
+
+2008-04-30 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * ModuleBuilder.cs (DefineType): Do not perform lookup of in cache if
+ name is null to allow correct exception to be thrown (in TypeBuilder
+ ctor).
+ * TypeBuilder: Moved name argument check to TypeBuilder ctor. Modified
+ ArgumentException parameter names to match MS. Removed duplicate check
+ for data length from DefineInitializedData. Modified check_name to
+ only throw when first character is null char.
+ * ConstructorBuilder.cs (GetParameters): Throw NotSupportedException
+ (2.0) or InvalidOperationException (1.0) when type is not yet created
+ and we're not in compiler context. Return empty array when no
+ parameters are defined.
+ (MethodHandle): Always throw NotSupportedException.
+ (DefineParameter): Prevent NRE when parameters is null.
+ (GetCustomAttributes): When not in compiler context, always throw
+ NotSupportedException.
+ * ConstructorOnTypeBuilderInst.cs: Delegate to ConstructorBuilder
+ where possible. Fixed ContainsGenericParameters and IsGenericMethod
+ to always return false. In MethodBase.Invoke, throw an
+ InvalidOperationException instead of NIE.
+
+2008-04-26 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * MethodOnTypeBuilderInst.cs: Added overrides for ReturnType and
+ GetGenericMethodDefinition. Implement GetGenericArgument,
+ IsGenericMethod(Definition). Throw NotSupportedException instead of
+ NotImplementedException.
+
+2008-04-26 Jb Evain <jbevain@novell.com>
+
+ * ILGenerator.cs, AssemblyBuilder.cs, TypeBuilder.cs:
+ replace usages of new Type [0] by Type.EmptyTypes.
+ Found with Gendarme.
+
+2008-04-22 Zoltan Varga <vargaz@gmail.com>
+
+ * MethodOnTypeBuilderInst.cs ConstructorOnTypeBuilderInst: New files.
+
+2008-03-29 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * AssemblyBuilder.cs: Added enum that determines the type of the
+ native (version) resource. Added fields for holding the native
+ resource type and the version culture. The versioninfo_culture was
+ introduced to hold the original culture of the assembly, since
+ the AssemblyCultureAttribute should only affect the language of the
+ versioninfo block when not used in compiler context. Move constructin
+ of native version info to DefineVersionInfoResourceImpl to allow
+ attributes to affect the versioninfo after DefineVersionInfoResource
+ has been invoked. Allow ArgumentException for invalid culture string
+ to bubble up. In compiler context, use FileVersion as default value
+ for ProductionVersion.
+
+2008-03-14 Zoltan Varga <vargaz@gmail.com>
+
+ * FieldOnTypeBuilderInst.cs: New file.
+
+2008-03-11 Marek Safar <marek.safar@gmail.com>
+
+ * MethodBuilder.cs (GetGenericArguments): Returns Type.EmptyType.
+
+2008-03-06 Zoltan Varga <vargaz@gmail.com>
+
+ * AssemblyBuilder.cs: Define GetManifestModule () for net 2.0 bootstrap too.
+
+ * DynamicMethod.cs: Create a dynamic assembly to hold the anon hosted methods.
+
+ * DynamicMethod.cs: Add net 3.5 ctor overloads.
+
+ * ModuleBuilder.cs (RegisterToken): New icall.
+
+ * MethodBuilder.cs (ctor): Call ModuleBuilder.RegisterToken (), so the token gets
+ added to the internal hash table. Fixes #367668.
+
+ * ConstructorBuilder.cs: Ditto.
+
+2008-03-06 Jb Evain <jbevain@novell.com>
+
+ * SignatureHelper.cs (GetMethodSigHelper): if returnType
+ is null, use typeof (void) instead. Fixes #367663.
+
+2008-03-03 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * MethodBuilder.cs (check_override): Added, verify if this method has explicit
+ override set and doesn't follow virtual settings of overriden method.
+
+ * TypeBuilder.cs (CreateType): Call MethodBuilder::check_override before
+ creating the type.
+
+ Fixes #361689.
+
+2008-01-29 Zoltan Varga <vargaz@gmail.com>
+
+ * ModuleBuilder.cs: Fix build.
+
+ * AssemblyBuilder.cs (GetTypes): Implement this entirely in managed code.
+
+ * ModuleBuilder.cs (GetTypes): Replace TypeBuilders with their created types to
+ match MS.
+
+ * AssemblyBuilder.cs: Override GetModulesInternal () so we can return
+ ModuleBuilders.
+
+2008-01-25 Zoltan Varga <vargaz@gmail.com>
+
+ * TypeBuilder.cs (GenerateDebugInfo): Emit debug info for nested types as well.
+ Fixes #356316.
+
+2008-01-21 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * AssemblyBuilder.cs: Introduce magic value for AssemblyBuilderAccess
+ to signal usage from a compiler. On 2.0 profile, perform argument
+ check for access. Use AssemblyFlags passed in through AssemblyName
+ arguments. Modified SetCustomAttribute to only use the Assembly*
+ attribute for constructing the assembly name when used in compiler
+ context. Fixes corlib part of bug #354970.
+
+2008-01-17 Zoltan Varga <vargaz@gmail.com>
+
+ * TypeBuilder.cs (GetConstructorImpl): Add back the code removed by the last
+ patch since it is needed when building mscorlib.
+
+2008-01-16 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * TypeBuilder.cs (GetConstructorImpl): Use GetConstructor on created
+ type. Original implementation did not take into account the binding
+ flags and failed with a NotSupportedException if the default binder
+ checked if a ParamArrayAttribute was defined. It also does not make
+ sense to return a ConstructorBuilder once the type is emitted.
+ (GetConstructors): When the type is emitted, use GetConstructors
+ on the created type.
+ (GetFields): Removed duplicate code.
+ (GetMethodsByName): Fixed matching of methods in the parent class
+ depending on their accessibility:
+ - Private: never include private methods of parent
+ - Public: ignore if Public flag is not set
+ - Assembly: ignore if NonPublic is not set or when on the 1.0 profile
+ - Rest (Family, FamANDAssem, FamORAssem): ignore if NonPublic flag is
+ not set
+ Static methods of the parent are ignored unless the FlattenHierarchy
+ flag is set.
+ (GetProperties): When the type is emitted, use GetProperties on the
+ created type as the TypeBuilder implementation itself does not include
+ properties from the parent class.
+
+2007-12-31 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * AssemblyBuilder.cs (UnprotectedGetName): Set the public key token
+ as well.
+
+2007-12-10 Zoltan Varga <vargaz@gmail.com>
+
+ * FieldBuilder.cs (GetToken): Use the MetadataToken property.
+
+2007-11-20 Atsushi Enomoto <atsushi@ximian.com>
+
+ * GenericTypeParameterBuilder.cs : fixed regression.
+ GenericParameterAttributes also needs some special care.
+
+2007-11-20 Atsushi Enomoto <atsushi@ximian.com>
+
+ * MethodBuilder.cs : implemented ContainsGenericParameters().
+ * GenericTypeParameterBuilder.cs : removed most of extra members
+ and added missing members for 2.0 API.
+
+2007-11-18 Miguel de Icaza <miguel@novell.com>
+
+ * SignatureHelper.cs: Implement Equals and GetHashCode
+
+2007-11-17 Miguel de Icaza <miguel@novell.com>
+
+ * SignatureHelper.cs: Preparational tasks to support the
+ AddArgument overloads that allow the specification of modopts and
+ modreqs.
+
+ Refactor code, add new parameters.
+
+ * SignatureHelper.cs (AddArguments): Add new 2.0 API, used by
+ new versions of the DLR. Currently does not have support for
+ modreq, modopts. Just a simple wrapper as consumed by the DLR.
+
+2007-11-16 Atsushi Enomoto <atsushi@ximian.com>
+
+ * AssemblyBuilder.cs : added missing 2.0 member.
+ * DynamicMethod.cs : removed extra stuff.
+ * DynamicILInfo.cs : no public .ctor().
+ * ILGenerator.cs : fixed 2.0 member signatures.
+
+2007-11-16 Atsushi Enomoto <atsushi@ximian.com>
+
+ * EnumBuilder.cs, TypeBuilder.cs : implemented missing 2.0
+ stuff, in harmless manner.
+
+2007-11-16 Atsushi Enomoto <atsushi@ximian.com>
+
+ * ConstructorBuilder.cs : added CallingConvention.
+
+2007-11-16 Atsushi Enomoto <atsushi@ximian.com>
+
+ * SignatureHelper.cs : Module can be null, and for non-
+ ModuleBuilder argument, throw ArgumentException.
+ Added missing 2.0 stuff.
+
+2007-11-08 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * TypeBuilder.cs: Workaround for #82625 not needed anymore.
+ GetFields() returns the created type fields.
+
+2007-10-15 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * ILGenerator.cs: Added missing null checks. Removed extra tabs.
+
2007-09-23 Gert Driesen <drieseng@users.sourceforge.net>
* AssemblyBuilder.cs: Added missing paramname to ArgumentExceptions.