+2006-06-07 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay : Update to use Report.Warning instead of
+ Console.Error.WriteLine
+
+2006-06-01 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (instr | INSTR_PARAM ..): Report error if the param is not
+ found.
+
+2006-06-01 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (method_decl | D_PARAM ..): Param index is zero-based,
+ with zero representing the return value.
+ Update to check CurrentCustomAttrTarget for null before using it.
+
+2006-05-26 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay: Update to use new Assembly class.
+
+2006-05-26 Ankit Jain <jankit@novell.com>
+
+ Add support or 2.0 style declarative security attributes.
+ * ILParser.jay (primitive_type): New. Extracted from 'type'.
+ (field_init_primitive): New. Extracted from 'field_init', with all
+ primitive types.
+ (sec_decl | ..): New rule for 2.0 style permissions.
+
+ (permissions):
+ (permission):
+ (permission_members):
+ (permission_member):
+ (perm_mbr_nameval_pair):
+ (prop_or_field): New rules for 2.0 style permissions.
+
+ (AddSecDecl): New.
+
+2006-05-11 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (type |type MODREQ ..): Use CustomModifier.modreq .
+
+2006-05-10 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (native_type | K_ERROR): Use NativeType.Error for the
+ value.
+ (native_type | K_LPSTRUCT): Likewise for K_LPSTRUCT.
+
+2006-05-10 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay: Add K_PROPERTY.
+
+2006-02-20 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay: Remove D_CONSTRAINT
+
+2006-02-20 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay: Update to use Report.Error instead of directly throwing
+ an exception.
+
+2006-02-09 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (bound | int32): Handle invalid -ve size.
+
+2006-02-02 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (bound | int32 ELLIPSIS int32): Throw exception if
+ lower_bound > upper_bound.
+
+2006-01-28 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (pinv_attr | ..): Fix typo.
+
+2006-01-28 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (method_ref): Remove 2 redundant productions.
+ (method_decl | D_OVERRIDE K_METHOD ..): New production for overriding
+ generic methods.
+
+2006-01-27 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (formal_typars_clause): Allow generics only for NET_2_0 profile.
+ (typars_clause): Likewise.
+
+2006-01-19 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (decl | customattr_decl): Add custom attributes.
+ (assembly_all | ..): Set CurrentCustomAttrTarget to null.
+
+2006-01-19 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (K_TYPE): New.
+ (param_type_decl): New. Rule for '.param type ..', for specifying custom attibutes
+ for type parameters.
+ (class_decl | param_type_decl):
+ (method_decl | param_type_decl): New.
+
+2006-01-16 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (K_BESTFIT):
+ (K_CHARMAPERROR):
+ (K_ON):
+ (K_OFF): New tokens.
+ (pinv_attr | ..): Add rules for the new tokens.
+
+2006-01-16 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (K_UINT): New token.
+ (type | K_NATIVE K_UINT): New.
+
+2006-01-15 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (method_decl): Add new "full" syntax specifying overrides.
+
+2006-01-13 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay: Update to use codegen.GetTypeRef instead of creating
+ TypeRefs.
+ Update to use BaseMethodRef.GetGenericMethodRef instead of creating them.
+
+2006-01-13 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay: Update to use CodeGen.GetGlobalMethodRef &
+ CodeGen.GetGlobalFieldRef instead of creating objects.
+
+2006-01-13 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay: Update to use Base* instead of ITypeRef, IClassRef
+ & IGenTypeRef.
+
+2006-01-10 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (type | BANG ..): Move !* and !!* rules to ..
+ (generic_class_ref): ..this, to allow using VAR/MVARs as class refs.
+ Eg. "extends !0"
+
+2006-01-09 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (type_spec : class_ref): Remove.
+
+2006-01-09 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay: Update to use GenericParamRef instead of GenericTypeRef.
+
+2006-01-08 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (constraint_decl): Remove. This syntax is no longer used.
+ (class_decl | constraint_decl): Remove.
+
+2006-01-07 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay: Update to use new GenericParameters class.
+ (generic_class_ref| K_CLASS class_ref typars_clause): New.
+ Update rules to use generic_class_ref instead of 'K_CLASS class_ref..'
+ (constraints_clause): New.
+ (constraints): New. Rules for constraints on generic parameters.
+ (formal_typar_attr): New. Generic param attributes (.ctor, valuetype, class).
+ (formal_typars): Update to use new constraints stuff.
+
+2006-01-06 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (field_init): Add rules for UINT8/UINT16/etc
+
+2006-01-06 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (sec_decl | D_PERMISSION sec_action comp_qstring): New. Support
+ new (2.0) syntax which uses string(xml) instead of a bytearray for specifying
+ value of the security attribute.
+
+2006-01-06 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (GetTypeRef): Use new IClassRef.Clone .
+ (extends_clause): Use new IClassRef.GetGenericTypeInst.
+ (impl_clause | K_IMPLEMENTS class_refs): Remove.
+ (impl_clause | impl_class_refs): New.
+ (impl_class_refs): New. Add rules for generic and non-generic interface
+ implementations.
+ (class_ref | slashed_name): Use new codegen.GetTypeRef so that the TypeRef
+ gets cached.
+ (type | K_CLASS class_ref): Add typars_clause to the rule and handle accordingly.
+ (type | K_VALUETYPE ...): Likewise.
+
+2005-12-24 Jb Evain <jbevain@gmail.com>
+
+ * ILParser.jay (prop_attr): Activate instance keyword on properties.
+
+2005-12-22 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (method_head | ..): Update usage of MethodDef.ctor to pass
+ codegen.CurrentTypeDef also. ResolveGenParams is called by MethodDef internally.
+ (instr | INSTR_FIELD ..): Update usage of MethodDef.ResolveGenParam .
+
+2005-12-21 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay: Update to use new GenericArguments class for 'typars'.
+
+2005-12-14 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay: Add K_UINT8, K_UINT16, K_UINT32 and K_UINT64 tokens.
+ (type): Add rule for the new keywords.
+ (native_type): Likewise.
+ Fix #76978.
+
+2005-12-13 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (class_head | D_CLASS ..): Use 'comp_name' instead of 'id' to allow
+ dotted names.
+
+2005-12-09 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (class_decl | D_OVERRIDE ..): Update usage of ITypeRef.GetMethodRef
+ and MethodDef.CreateSignature .
+ (method_head | D_METHOD ..): Update usage of MethodDef.ctor .
+ Use MethodDef.ResolveGenParams to resolve VARs/MVARs in parameter list.
+ (type | K_CLASS slashed_name ..): Remove redundant rule.
+ (type | BANG id): New. Generic type parameter.
+ (type | BANG BANG id): New. Generic method type parameter.
+ (instr | INSTR_FIELD type ..): Resolve generic param for 'type'.
+ (method_ref | call_conv ..): Set MethodRef's GenParamCount.
+ (method_ref | call_conv type ..): Update usage of TypeSpecMethodRef.ctor and GetMethodRef.
+ (method_ref | call_conv type ..): New. Rule for global generic method refs.
+ (custom_type | call_conv ..): Update usage of GlobalMethodRef.ctor .
+
+2005-12-05 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (type | BANG int32 .. ): Update to use GenParam instead of
+ PEAPI.MVar and PEAPI.GenericTypeSpec.
+ (method_head | D_METHOD ..): Set callConv to Generic if the method has type
+ parameters.
+ (method_ref | call_conv ...): Likewise.
+
+2005-09-15 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (ILParser.NameValuePair): New.
+ (ILParser.PermPair): New.
+ (ILParser.CheckSecurityActionValidity): New.
+ (ILParser.ClassRefToObject): New.
+ (ILParser.TypeSpecToPermPair): New.
+ (class_decl | sec_decl): Use the new codegen.AddPermission .
+ (method_decl | sec_decl): Use the new codegen.AddPermission .
+ (sec_decl | D_PERMISSION ..): Use the new TypeSpecToPermPair method.
+ (sec_decl | D_PERMISSIONSET ..): Use PermissionSetAttribute to create PermissionSet
+ which will validate the bytearray.
+ (nameval_pairs): Create ArrayList of NameValuePair.
+ (nameval_pair): Create NameValuePair.
+ (cavalue | class_ref): Use ClassRefToObject.
+ (assembly_decl | sec_decl): Use the new codegen.AddAssemblyPermission .
+
+2005-09-08 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (decl | D_STACKRESERVE int64): New. Set stack reserve.
+
+2005-08-29 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay : Comment out K_LCID token.
+
+2005-08-29 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (native_type | K_CUSTOM ..): Instantiate object of CustomMarshaller
+ class.
+
+2005-08-23 Ankit Jain <jankit@novell.com>
+
+ * ILParser (method_ref : call_conv..): Use TypeRef instead of PrimitiveTypeRef
+ if this assembly is mscorlib.
+ (type | ..): Correct names of primitive types.
+
+2005-08-18 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (instr | INSTR_R bytes_list): Convert bytes_list to single/double
+ and add the corresponding instruction.
+
+2005-08-18 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay: Comment out K_PUBLICKEY keyword, not used in the grammar.
+
+2005-08-16 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (native_type | K_FIXED K_SYSSTRING ..): Instantiate
+ object of PEAPI.FixedSysString.
+ (native_type | native_type OPEN_BRACKET ..): Instantiate object of
+ NativeArray with the proper arguments.
+ (native_type | K_METHOD): Use NativeType.FuncPtr.
+ (native_type | K_FIXED K_ARRAY ..): Instantiate object of FixedArray.
+ (native_type | K_SAFEARRAY ..): Instantiate object of SafeArray.
+ (variant_type): Use appropriate values from SafeArrayType enum.
+ (field_decl | D_FIELD ..): Cast repeat_opt to int before casting to uint
+ as repeat_opt is int32.
+ (field_attr | field_attr K_MARSHAL ..): Add Marshal info for field.
+ Set field attr to HasFieldMarshal.
+ (method_head): Add Marshal info for return type if specified.
+ (sig_arg | param_attr ..): Create ParamDef and add marshal info.
+
+2005-08-11 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (class_ref | slashed_name): Don't use PrimitiveTypeRef for
+ primitive types if the assembly being compiled is 'mscorlib'.
+ (seh_clause | K_CATCH ..): Report error if exception(class_ref) is a
+ PrimitiveTypeRef.
+
+2005-08-08 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (method_decl | D_ENTRYPOINT): Set codegen.HasEntryPoint
+ to true.
+
+2005-08-05 Ankit Jain <jankit@novell.com>
+
+ * ILParser.jay (class_decl, method_decl | sec_decl): Use
+ codegen.CurrentDeclSecurityTarget for adding DeclSecurity info.
+ (assembly_decl | sec_decl): Use codegen.AddAssemblyDeclSecurity
+ for adding DeclSecurity info.
+ (sec_decl): Instantiate DeclSecurity object.
+ (sec_action | K_REQUEST, K_DEMAND, .. etc): Use the corresponding
+ value from PEAPI.SecurityAction enum.
+
+2005-05-12 Jackson Harper <jackson@ximian.com>
+
+ * ILParser.jay: Handle lists of data items correctly.
+
2005-05-10 Ankit Jain <ankit@corewars.org>
Fix #74768.