+2006-07-20 Ankit Jain <jankit@novell.com>
+
+ * Metadata.cs (CustomAttribute.BuildTables): Value can be null.
+
+2006-06-07 Ankit Jain <jankit@novell.com>
+
+ * PEAPI.cs (PEFile.GetNextSectStart): Handle the case when (tide %
+ SectionAlignment) == 0 . Patch by Carlo Kok. Fixes bug #78182.
+
+2006-06-01 Ankit Jain <jankit@novell.com>
+
+ * PEAPI.cs (PEFile.AddMethod): Add overload for return type as Param
+ instead of PEAPI.Type .
+ * Metadata.cs (MetaDataElement.HasCustomAttr): New. Temporary hack.
+ (Param.HasMarshalInfo): New.
+ (ClassDef.AddMethod): Add overload for return type as Param.
+ (MethodDef.ctor): Change internal .ctor's sig to take Param instead of
+ PEAPI.Type for return type.
+ (MethodDef.retType): Remove.
+ (MethodDef.TypeSig): Update to use ret_param always.
+ (MethodDef.BuildTables): Add ret_param to Param table only if it has
+ marshal info or custom attributes.
+
+2006-05-26 Ankit Jain <jankit@novell.com>
+
+ * Metadata.cs (DeclSecurity): Rename to ..
+ (BaseDeclSecurity): .. this.
+ (DeclSecurity): New. Derive from BaseDeclSecurity.
+ (DeclSecurity_20): Likewise. For 2.0 style declaritive security.
+ (PermissionSet): New.
+ (Permission): New.
+ (PermissionMember): New.
+ (MetaData.AddDeclSecurity): Update to use BaseDeclSecurity.
+ (MetaData.BuildMetaData): Likewise.
+
+ * PEAPI.cs (PEFile.AddDeclSecurity): New overload for new PermissionSet
+ class.
+
+2006-05-10 Ankit Jain <jankit@novell.com>
+
+ * Metadata.cs (NativeType): Add LPStruct and Error.
+
+2006-04-24 Ankit Jain <jankit@novell.com>
+
+ * PEAPI.cs (PEFile.WritePEFile): ReserveStrongNameSignatureSpace only if
+ we have assembly manifest.
+
+2006-02-22 Ankit Jain <jankit@novell.com>
+
+ * Metadata.cs (TypeAttr): Add [Flags] attribute.
+
+2006-02-20 Ankit Jain <jankit@novell.com>
+
+ * PEAPI.cs (PEFileException): Update error message.
+ * Metadata.cs: Update to throw PEFileException instead of Exception.
+
+2006-02-19 Ankit Jain <jankit@novell.com>
+
+ * Metadata.cs (Module): Implment IExternRef to allow reference to types
+ in 'this' module.
+
+2006-02-15 Raja R Harinath <rharinath@novell.com>
+
+ * Metadata.cs (BoundArray.CompressSignedNum): Document the
+ transformation. Avoid a few casts.
+
+2006-02-15 Ankit Jain <jankit@novell.com>
+
+ * Metadata.cs (BoundArray.CompressSignedNum): New. Encode signed values,
+ used only for encoding lower bounds of arrays.
+ (BoundArray.TypeSig): Use new CompressSignedNum to encode lower bounds.
+
+2006-02-08 Ankit Jain <jankit@novell.com>
+
+ * Metadata.cs (BoundArray.ctor): Change param 'upBounds' to sizes.
+ (MetaData.CompressNum): Fix range check.
+
+2006-01-31 Ankit Jain <jankit@novell.com>
+
+ * Metadata.cs (Op.readonly_): New.
+
+2006-01-19 Ankit Jain <jankit@novell.com>
+
+ * Metadata.cs (GenericParameter.GetCodedIx): Override. Return coded index
+ for HasCustomAttr.
+ (MetaData.BuildMetaData): Sort CustomAttribute table at the end.
+
+2006-01-16 Ankit Jain <jankit@novell.com>
+
+ * Metadata.cs (PInvokeAttr): Add 'bestfit_on', 'bestfit_off', 'bestfit_mask',
+ 'charmaperror_on' & 'charmaperror_off'.
+
+2006-01-13 Ankit Jain <jankit@novell.com>
+
+ * Metadata.cs (GenericMethodSig): Ensure sig is added to the blob only once.
+
+2006-01-10 Ankit Jain <jankit@novell.com>
+
+ * Metadata.cs (GenParam): Don't use GetTypeSpec to create typespec for GenParam.
+ Adding required methods directly to GenParam.
+ * PEAPI.cs (PEFile.AddGenericParam): Add it to the TypeSpec table directly.
+
+2006-01-09 Ankit Jain <jankit@novell.com>
+
+ * PEAPI.cs (PEFile.AddGenricParam): New. Adds a GenParam to the TypeSpec
+ table.
+ * Metadata.cs (GenParam): Inherit from 'Class' instead of 'Type'.
+ (GenParam.name): Rename to param_name as it hides Class.name .
+ (GenParam.GetTypeSpec): Override to create TypeSpec for genparam.
+
+2006-01-08 Ankit Jain <jankit@novell.com>
+
+ * Metadata.cs (TypeOp): Add 'constrained' op.
+
+2006-01-07 Ankit Jain <jankit@novell.com>
+
+ * Metadata.cs (GenericParamAttributes): New.
+ (MetaDataElement.Row): Always set value.
+ (GenericParameter): Update to use GenericParameterAttributes.
+ (GenericParameterConstraint.SortKey): New. override to support sorting.
+ (ClassDef.AddGenericParameter):
+ (MethodDef.AddGenericParameter): New overloads for accepting attributes also.
+
+2006-01-06 Ankit Jain <jankit@novell.com>
+
+ * Metadata.cs (UIntConst): Change constructor param from signed int/sbyte/etc to
+ unsigned.
+ (UIntConst.GetBlobIndex):
+ (UIntConst.Write): Change use of signed types to unsigned ones.
+
+2006-01-06 Ankit Jain <jankit@novell.com>
+
+ * PEAPI.cs (PEFile.AddGenericClass): New. Adds a GenericTypeInst to the TypeSpec table.
+ * Metadata.cs (GenericTypeInst): Change base class from 'Type' to 'Class'.
+ (GenericTypeInst.GetTypeSpec):
+ (GenericTypeInst.BuildTables):
+ (GenericTypeInst.Size):
+ (GenericTypeInst.Write):
+ (GenericTypeInst.GetCodedIx): Implement these for GenericTypeInst.
+ (ClassDef.SetSuper): Set typeIndexChecked to false if 'super' is not GenericTypeInst.
+ Fixup of typeIndex is not required for GenericTypeInst .
+ (ClassDef.CheckTypeIndex): Recursively fix typeIndex if superType is ClassDef.
+ (MetaData.BuildMetaData): BuildTable for TypeSpec.
+
+2005-12-24 Jb Evain <jbevain@gmail.com>
+
+ * Metadata.cs (Property): Add a new 'instance' field.
+ (Property.SetInstance): New mutator for the instance field.
+ (Property.BuildTables): Emit the correct property tag depending on the instance field.
+
+2005-12-14 Ankit Jain <jankit@novell.com>
+
+ * Metadata.cs (BoundArray.ctor): Don't calculate sizes if upBounds is
+ null.
+
+2005-12-12 Ankit Jain <jankit@novell.com>
+
+ * Metadata.cs (TypeAttr): Add VisibilityMask.
+
+2005-12-09 Ankit Jain <jankit@novell.com>
+
+ * Metadata.cs (Method.ctor): Remove rType parameter.
+ (Method.GetRetType): Remove.
+ (Method.AddCallConv): Make it abstract.
+ (Method.GetSigIx): Likewise.
+ (MethodDef): Override and implement abstract methods from Method class.
+ (MethodRef): Likewise.
+ (MethodSpec): Change base class from MetaDataElement to Method. Override
+ abstract methods from Method but throw Exception as they are not meant to be used here.
+ (MethodDef.TypeSig): Write gen_param_count before num of params.
+ (ClassRef.AddMethod): New overload with an extra gen_param_count param.
+ * PEAPI.cs (PEFile.AddMethodToTypeSpec): New overload with an extra gen_param_count
+ param.
+ (PEFile.AddMethodSpec): Change return type from void to Method.
+
+2005-12-05 Ankit Jain <jankit@novell.com>
+
+ * Metadata.cs (GenParamType): New enum.
+ (CallConv): Add [Flags] attribute.
+ (GenParam): New. Replaces ..
+ (MVar): .. this ..
+ (GenericTypeSpec): .. and this.
+ (GenericTypeInst.ctor): Use PrimitiveType.GenericInst.GetTypeIndex () instead
+ of hard-coded 0x15.
+ (GenericTypeInst.TypeSig): First byte should the 0x0A (GENERIC_INST).
+ (Method.gen_param_count): New. Num of generic parameters.
+ (MethodDef.ctor): Use overload.
+ (MethodDef.TypeSig): Write gen_param_count if callConv is Generic.
+ (MethodRef.GenParamCount): New.
+ (MethodRef.TypeSig): Write gen_param_count if callConv is Generic.
+ (PrimitiveType.Var): New.
+ (PrimitiveType.MVar): New.
+ (PrimitiveType.GenericInst): New.
+
+2005-11-21 Ankit Jain <jankit@novell.com>
+
+ * Metadata.cs (MetaData.WriteCodedIndex): Fix indentation.
+
+2005-11-21 Ankit Jain <jankit@novell.com>
+
+ * Metadata.cs (GenericParameter.SortKey2): New. Use index as the secondary key.
+ (GenericParameter.Size): Set size correctly.
+ (GenericParameter.Write): Use StringsIndex to write the index.
+ (MetaData.WriteTildeStream): Emit 2,0 as version for NET_2_0 profile.
+ (MetaData.version): Use 'v2.0.50727' for NET_2_0 profile.
+ (MetaData.BuildMetaData): Build and sort GenericParam, MethodSpec and
+ GenericParamConstraint tables only for NET_2_0 profile.
+
2005-09-16 Ankit Jain <jankit@novell.com>
* PEAPI.cs: Clean up indentation. Split into ...