2010-10-03  Miguel de Icaza  <miguel@gnome.org>

	Retval is not a reserved keyword, fixes 643345

2010-08-31  Marek Safar  <marek.safar@gmail.com>

	Don't use break in jay

2010-03-14  Zoltan Varga  <vargaz@gmail.com>

	* ILParser.jay: Fix the float32(<long>) case in the previous change.

2010-03-14  Zoltan Varga  <vargaz@gmail.com>

	* ILParser.jay: Fix support for hex float literals on big-endian platforms.

2009-04-20  Ankit Jain  <jankit@novell.com>

	Fix bug #494221.
	* ILParser.jay (scope_block_begin): Mark begin .locals scope.
	(scope_block): Mark end .locals scope.

2009-04-15  Ankit Jain  <jankit@novell.com>

	* ILParser.jay (instr): Handle unidentified local var id.

2009-03-31  Rodrigo Kumpera  <rkumpera@novell.com>

	* ILParser.jay: Fix integer labels in handler blocks.

2008-06-02  Ankit Jain  <jankit@novell.com>

	Part of fix for bug #367114.
	* ILParser.jay (seh_clause): Allow exception to be of any type and not
	just class.

2008-06-01  Ankit Jain  <jankit@novell.com>

	* ILParser.jay: Track api changes.

2008-03-05  Ankit Jain  <jankit@novell.com>

	* ILParser.jay (custom_type): Allow any method name.

2008-03-05  Ankit Jain  <jankit@novell.com>

	Fix bug #367024.
	* ILParser.jay (seh_clause): catch can take generic class refs also.

2008-01-03  Rodrigo Kumpera <rkumpera@novell.com>

	* ILParser.jay: Fixed typo in EmitByteInstr class name.

2007-12-31  Rodrigo Kumpera <rkumpera@novell.com>

	* ILParser.jay: Implement .emitbyte directive 

2007-12-31  Rodrigo Kumpera  <rkumpera@novell.com>

	* ILParser.jay: Create LabelInfo instances for switch labels,
	this allows the code generator to spot invalid labels.
	Fixes #350480.

2007-06-05  Rodrigo Kumpera <kumpera@gmail.com>

	* ILParser.jay: Support for variance related generic modifiers <+T> and <-T> 

Fri Mar 23 16:52:06 CET 2007 Paolo Molaro <lupus@ximian.com>

	* ILParser.jay: fix BitConverter use on big endian archs
	(this was likely the cause of Zoltan's change in r72237
	which has been reverted in r74485).

2007-01-10  Ankit Jain  <jankit@novell.com>

	* ILParser.jay (GetTypeRef): Use BaseTypeRef.Clone

2006-11-09  Ankit Jain  <jankit@novell.com>

	* ILParser.jay (K_RETARGETABLE): New.
	(asm_attr): Add rule for K_RETARGETABLE.
	(assembly_head): Handle attributes.
	(assemblyref_head): Add asm_attr.

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.
	* ILParser.jay (type): Emit TypeRefs instead of TypeSpecs for valuetypes,
	so don't create ExternTypeRefInst.
	Hack along with Hari.

2005-04-30  Ankit Jain  <ankit@corewars.org>

	* ILParser.jay (event_decl): Add custom attribute.

2005-04-27  Ankit Jain  <ankit@corewars.org>
	
	* ILParser.jay (method_ref): Let owner.GetMethodRef handle the
	creation of TypeSpecMethodRef.
	
2005-04-26  Ankit Jain  <ankit@corewars.org>

	* ILParser.jay (comp_name): Allow n.a.'b' . 

2005-04-18  Ankit Jain  <ankit@corewars.org>

	* ILParser.jay (manifestres_head): Read resource file and 
	add ManifestResource with CodeGen.
	(manres_attr): Set visibility flag of the resource.
	
2005-04-12  Ankit Jain  <ankit@corewars.org>

	* ILParser.jay (class_decl, method_decl, prop_decl, 
	assemblyref_decl | customattr_decl): Use
	codegen.CurrentCustomAttrTarget for adding custom
	attributes.
	(field_decl, method_decl, event_head, prop_head):
	Set codegen.CurrentCustomAttrTarget 	

2005-04-08  Ankit Jain  <radical@corewars.org>

	* ILParser.jay (type): When parsing K_VALUETYPE, mark the typeref
	as a value type.
	(field_init): The float32 and float64 constructor argument is
	the hex representation, not the integer equivalent value.

2005-03-17  Ankit Jain  <radical@corewars.org>

	* ILParser.jay(method_decl): Add default value for a method param.
	
2004-12-02  Miguel de Icaza  <miguel@ximian.com>

	* ILParser.jay(field_init): Explicit cast to the target type, this
	is what ilasm does (0xFFFFFFFF) as an int gets translated
	
	Added D_STACKRESERVE token.

	(prop_head, event_head): Allow it to take a compound name (for explicit
	interface implementations of properties).

2004-07-21  Jackson Harper  <jackson@ximian.com>

	* ILParser.jay: Clones ExternTypeRefInsts as well as
	ExternTypeRefs, wrap this check into a method so things are
	somewhat clean.
	
2004-07-08  Jackson Harper  <jackson@ximian.com>

	* ILParser.jay: Add custom attributes to assemblyrefs.
	
2004-06-26  Jackson Harper  <jackson@ximian.com>

	* ILParser.jay: vtable fixups use the int32 or int64 keyword, not
	actual int values. When adding modules for pinvoke info use the
	ExternTable so we dont get duplicate modules.
	
2004-06-19  Jackson Harper  <jackson@ximian.com>

	* ILParser.jay: Resolve method pointers that are being treated as
	typerefs.
	
2004-06-19  Jackson Harper  <jackson@ximian.com>

	* ILParser.jay: Resolve other modules global 'type'.
	
2004-06-14  Jackson Harper  <jackson@ximian.com>

	* ILParser.jay: Add file refs.
	
2004-06-14  Jackson Harper  <jackson@ximian.com>

	* ILParser.jay: Add module refs, allow them to be referenced.
	
2004-06-14  Jackson Harper  <jackson@ximian.com>

	* ILParser.jay: Set module names.
	
2004-05-25  Jackson Harper  <jackson@ximian.com>

	* ILParser.jay: Fix casting for data type constants.
	
2004-05-22  Jackson Harper  <jackson@ximian.com>

	* ILParser.jay: [,] is short form for [...,...] this fixes bug
	number 58569.
	
2004-05-22  Jackson Harper  <jackson@ximian.com>

	* ILParser.jay: Handle wchar, it is just an alias for char. This
	fixes bug #58523.
	
2004-05-05  Jackson Harper  <jackson@ximian.com>

	* ILParser.jay: Handle endian issues when converting numeric
	types.
	
2004-04-14  Jackson Harper  <jackson@ximian.com>

	* ILParser.jay: Correct args for version numbers.
	
2004-04-03  Jackson Harper  <jackson@ximian.com>

	* ILParser.jay: Dont use hash alg enum its too restrictive
	
2004-04-02  Jackson Harper  <jackson@ximian.com>

	* ILParser.jay: Set assembly info.
	
2004-04-01  Jackson Harper  <jackson@ximian.com>

	* ILParser.jay: Set a flag in the tokenizer when parsing byte
	arrays. Otherwise we can't tell WTF they are. Set assemblyref
	attributes.
	
2004-03-28  Jackson Harper  <jackson@ximian.com>

	* ILParser.jay: Fix typo.
	
2004-03-28  Jackson Harper  <jackson@ximian.com>

	* ILParser.jay: Set true and false literals properly. Add instance
	property attribute.
	
2004-02-18  Jackson Harper  <jackson@ximian.com>

	* ILParser.jay: Create ExternTypeRefInsts when a valuetype
	extern_class is encountered. This way the underlying type is not
	changed to a value type.
	

2003-12-10  Jackson Harper <jackson@ximian.com>

	* ILParser.jay: When modifying extern types, clone them and modify
	the clone.
	
2003-12-10  Jackson Harper <jackson@ximian.com>

	* ILParser.jay: Use the extern table for all extern type
	creations.
	
2003-12-10  Jackson Harper <jackson@ximian.com>

	* ILParser.jay: Add COMP_NAME token.
	
2003-12-10  Jackson Harper <jackson@ximian.com>

	* ILParser.jay: vtable fixups can be int32s
	
2003-11-18  Jackson Harper <jackson@ximian.com>

	* ILParser.jay: Add zeroinit.
	
2003-11-17 Jackson Harper <jackson@ximian.com>

	* ILParser.jay: Create strings from byte arrays. Fix parsing of
	bytes that are passed as INT64.
	
2003-11-16 Jackson Harper <jackson@ximian.com>

	* ILParser.jay: Handle string instructions that are given byte
	arrays. This fixes bug #51039.
	
2003-10-28 Jackson Harper <jackson@ximian.com>

	* ILParser.jay: Use the ExternTable to create external type
	references. Remove some ultra top secret debugging code.
	
2003-10-17 Jackson Harper <jackson@ximian.com>

	* ILParser.jay: Set value types, set enums as value types. Use
	correct var for call conv in method signatures.
	
2003-10-10 Jackson Harper <jackson@ximian.com>

	* ILParser.jay: Create generic method refs.
	
2003-10-08 Jackson Harper <jackson@ximian.com>

	* ILParser.jay: Attach generic type parameters to methods.
	
2003-09-27 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Set pinvoke info. Allow param attributes in type
	lists.
	
2003-09-21 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Define data
	
2003-09-15 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: dashed names aren't legal for file names, if the
	name has a dash in it it needs to be quoted ie 'gtk-sharp'.
	
2003-09-12 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Fix typo in field inits. Methods attached to
	modified types should be type spec method refs.
	
2003-08-19 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Implement address constants and string
	constants. Add data definitions to their types, and create data
	item lists. Also implement long form overrides.
	
2003-08-19 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add override methods.
	
2003-08-10 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Create an empty array list for empty type
	lists. Start phasing out INT32 because the tokenizer will no
	longer create this token.
		
2003-08-03 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Use new sentinel type. Create valuetypes.

2003-08-03 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Make value types and enum types.
	
2003-08-03 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Create label references where appropriate instead
	of adding labels.
	
2003-08-02 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Set from label, not to label for filter block handlers
	
2003-07-30 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Create branch instructions with explicit offsets
	
2003-07-29 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Use new labeling system for handler blocks.
	
2003-07-29 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: No longer need to supply method references
	to instructions, they get that when emitting now.
	
2003-07-28 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Use TypeRef.Ellipsis instead of null for a 
	placeholder in bound arrays. Do not use AsClassRef anymore.
	
2003-07-21 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Set maxstack
	
2003-07-20 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Do not use the AsClassRef method anymore to attach
	methods and fields to types. All types can do this now. Create
	generic type refs and generic type instances. 
	
2003-07-17 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add generic type refs, and fake generic class refs.
		
2003-07-15 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add generic type constraints and tokens used to
	create them
		
2003-07-16  Peter Williams  <peter@newton.cx>

	* .cvsignore: ILParser.cs has been moved.

2003-07-14 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Seperate generic constraints from generic parameters.
		
2003-06-14 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add set imagebase, subsystem, and corflags.
		
2003-06-14 Jackson Harper <jackson@latitidegeo.com>

	* ILParser.jay: Implement custom modified types.
		
2003-06-08 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Implement properties
		
2003-06-08 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add generic type parameters to types. Implement events.
		
2003-06-04 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Assembly and module names may have dashes in them
	(like gtk-sharp.dll).
		
2003-05-31 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Set assembly names. When looking up types in the
	form [assembly]name first check if the assembly is this
	assembly. Implement scope_blocks, and implement scope block form
	exception handling.
		
2003-05-31 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Use type instead of params for calli signatures.
		
2003-05-31 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: When looking up types first check to see if this
	is actually a primitive object type (System.String,
	System.Object). Add custom attributes to types. Handle the il
	keyword the exact same way as cil. Add ellipsises to param and sig
	lists. Add an optional name to typelists, this is just parsed it
	is not implemented properly. Add custom attributes to
	methods. Implement custom types (just methodrefs to ctors).
		
2003-05-25 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Pass call conv to methoref constructors. Add the
	ELLIPSIS to type_lists, this is for vararg methods
		
2003-05-23 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Remove top secret debugging code.
		
2003-05-23 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Implement label form structured exception handling.
		
2003-05-22 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Comment out K_IMF and K_NAN these are not used in
	the grammar.
		
2003-05-21 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add ldc.r4 to INSTR_R int also fix cast to double.
		
2003-05-21 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: When converting from int32 to int64 do an exact
	bit conversion, not a numerical conversion.
		
2003-05-21 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: INT_I8s are not int instructions, currently the
	only INT_I8 instruction is ldc.i8 so this new code does more
	checks then needed but is written in anticipation of some new long
	instructions being found. Implement signature instructions, token
	instructions, and signatures. Convert INT32s masquerading as
	INT64s to Int64.
		
2003-05-19 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Same as below but with float64 ()
		
2003-05-19 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: When the float32 (0xFFFFFF) syntax is used the hex
	value represents the exact byte value of a float NOT an integer
	value that is converted to a float.
		
2003-05-18 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Use new methods for converting types to
	classrefs. Expand grammar for locals.

		
2003-05-18 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Convert cast integers to floats.
		
2003-05-11 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add tokens for instructions that take param and
	local args. Do not create empty lists for sig_args and
	type_lists. Add param and local instructions.
		
2003-05-11 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Set size and packing information for types
		
2003-05-10 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add field instructions
		
2003-05-10 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add global method references
		
2003-05-10 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add locals, method references, and method instructions
		
2003-05-07 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add type instructions. NOTE - type_spec is not
	fully implemented yet, so this has some explosive potential.
		
2003-05-07 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Remove dotted_name, it is not used at all
	anymore. vtattr only take an int64 param, this fix gets rid of all
	of the remaining reduce/reduce conflicts
		
2003-05-07 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Remove extraneous dotted_name, also make comp_name
	contain dotted_name logic. Oh how I will miss the 301
	reduce/reduce conflicts these small changes fixed :-)
		
2003-05-06 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Emit INSTR_I8 instructions as int
	instructions. Implement label lists, emit switch instruction.
		
2003-05-05 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add labels to methods, add branching instructions.
		
2003-05-04 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Use new MiscInstr.ldstr for ldstr, add INSTR_Rs
		
2003-05-04 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Set int64's masquerading as int32 to upper and
	lower bounds if neccasary. NEED TO TEST this behavoir on windows.
		
2003-05-01 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Fix a bunch of conversions, implement hexbytes
		
2003-04-30 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Implement non marshalled methodheads, method
	attributes, impl attributes, imit simple int and ldstr instructions.
		
2003-04-17 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Define data, fix repeat_opt allways being set.
		
2003-04-17 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add external types to the extern type table.
		
2003-04-17 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Use new types and methods to build a tree.
		
2003-04-07 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Implement data items
		
2003-04-07 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Implement most field features
		
2003-04-05 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Set type parameter index
		
2003-04-05 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Emit parameterized types
		
2003-04-04 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add parameterized method declarations.
		
2003-04-03 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add parameterized types to classes.
		
2003-04-02 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Support most non-obsolete native types.
		
2003-04-02 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Proper names for native int and native uint
		
2003-04-01 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add Call conventions, fix primitive spelling.
	
2003-04-01 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add TypedRef primative type.
	
2003-04-01 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Support pinned, modreq, and modopt types.
	
2003-04-01 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Use the CodeGen CompleteClass method when a class
	is completed instead of setting the current class to null. This
	does some extra cleanup
	
2003-03-31 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add bound arrays
	
2003-03-30 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Concat slashed names properly
	
2003-03-30 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Implement most of type
	
2003-03-30 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add code from old parser to declare and define classes.
		
2003-03-30 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: New grammar that I haven't made a mess of, this
	takes all the special cases into account much better.
		
2003-03-19 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: .hash algorithm can be followed by bytes

2003-03-19 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Allow assembly refs to have dots in name.

2003-03-17 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add object to primative types

2003-03-17 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Set CallConv for opcodes that have a call conv, 
	like call and newobj

2003-03-17 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Set CallConvs properly, use type_ref instead of type for
	method overrides.

2003-03-16 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: .ctor and .cctor can also be method names.

2003-03-16 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Use assembly_ref for extern assemblies so names with dashes can be used.

2003-03-15 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Define local variables

2003-03-15 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add param_list definition, use param_list for method refs

2003-03-15 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: de-bacwardificate values passed to add method, 
	I was setting the return to the parent before, but the parent 
	value was being set to the return type value so it all worked 
	out but was very confusing.

2003-03-15 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add external field references

2003-03-15 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add fields to the field table, add field references,
	emit instructions that take a field param

2003-03-15 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Emit ldstr instruction

2003-03-15 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Create external method references

2003-03-14 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Emit instructions that take a method def as a single param

2003-03-14 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Emit instructions that take a single type as a param

2003-03-14 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Emit instructions that take a single int32 as a param

2003-03-13 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Remove unused references

2003-03-13 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Emit simple instructions

2003-03-13 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Set MaxStack, clean up some typos

2003-03-13 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Set entrypoint 

2003-03-11 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Create TypeRefs instead of types, define methods.

2003-03-09 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Set Call Conventions and Implementation Flags

2003-03-09 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add implemented interfaces

2003-03-08 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Create method attributes

2003-03-08 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Reference external assemblies.

2003-03-06 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Implemented class inheritence

2003-03-06 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Pass null Location when adding class, concat dottedName pieces

2003-03-06 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Reconfigure to work with new PEAPI emission system

2003-02-10 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Use arg_list for method signatures, set method parameters

2003-02-09 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: full names can be short names too (for members)

2003-02-09 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Use full names for calling instructions

2003-02-08 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Create type names properly

2003-02-08 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Handle argument lists better

2003-02-08 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Handle .local and newobj

2003-02-06 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Allow assembly names to have lots of dashes.

2003-02-06 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add dash token, allow assembly refs to have dashes in their names.

2003-02-02 Jackson Harper <jackson@latitudegeo.com>

	* ILParser.jay: Add call instruction, other little fixes and additions
