1 2007-01-10 Ankit Jain <jankit@novell.com>
3 * ILParser.jay (GetTypeRef): Use BaseTypeRef.Clone
5 2006-11-09 Ankit Jain <jankit@novell.com>
7 * ILParser.jay (K_RETARGETABLE): New.
8 (asm_attr): Add rule for K_RETARGETABLE.
9 (assembly_head): Handle attributes.
10 (assemblyref_head): Add asm_attr.
12 2006-06-07 Ankit Jain <jankit@novell.com>
14 * ILParser.jay : Update to use Report.Warning instead of
15 Console.Error.WriteLine
17 2006-06-01 Ankit Jain <jankit@novell.com>
19 * ILParser.jay (instr | INSTR_PARAM ..): Report error if the param is not
22 2006-06-01 Ankit Jain <jankit@novell.com>
24 * ILParser.jay (method_decl | D_PARAM ..): Param index is zero-based,
25 with zero representing the return value.
26 Update to check CurrentCustomAttrTarget for null before using it.
28 2006-05-26 Ankit Jain <jankit@novell.com>
30 * ILParser.jay: Update to use new Assembly class.
32 2006-05-26 Ankit Jain <jankit@novell.com>
34 Add support or 2.0 style declarative security attributes.
35 * ILParser.jay (primitive_type): New. Extracted from 'type'.
36 (field_init_primitive): New. Extracted from 'field_init', with all
38 (sec_decl | ..): New rule for 2.0 style permissions.
44 (perm_mbr_nameval_pair):
45 (prop_or_field): New rules for 2.0 style permissions.
49 2006-05-11 Ankit Jain <jankit@novell.com>
51 * ILParser.jay (type |type MODREQ ..): Use CustomModifier.modreq .
53 2006-05-10 Ankit Jain <jankit@novell.com>
55 * ILParser.jay (native_type | K_ERROR): Use NativeType.Error for the
57 (native_type | K_LPSTRUCT): Likewise for K_LPSTRUCT.
59 2006-05-10 Ankit Jain <jankit@novell.com>
61 * ILParser.jay: Add K_PROPERTY.
63 2006-02-20 Ankit Jain <jankit@novell.com>
65 * ILParser.jay: Remove D_CONSTRAINT
67 2006-02-20 Ankit Jain <jankit@novell.com>
69 * ILParser.jay: Update to use Report.Error instead of directly throwing
72 2006-02-09 Ankit Jain <jankit@novell.com>
74 * ILParser.jay (bound | int32): Handle invalid -ve size.
76 2006-02-02 Ankit Jain <jankit@novell.com>
78 * ILParser.jay (bound | int32 ELLIPSIS int32): Throw exception if
79 lower_bound > upper_bound.
81 2006-01-28 Ankit Jain <jankit@novell.com>
83 * ILParser.jay (pinv_attr | ..): Fix typo.
85 2006-01-28 Ankit Jain <jankit@novell.com>
87 * ILParser.jay (method_ref): Remove 2 redundant productions.
88 (method_decl | D_OVERRIDE K_METHOD ..): New production for overriding
91 2006-01-27 Ankit Jain <jankit@novell.com>
93 * ILParser.jay (formal_typars_clause): Allow generics only for NET_2_0 profile.
94 (typars_clause): Likewise.
96 2006-01-19 Ankit Jain <jankit@novell.com>
98 * ILParser.jay (decl | customattr_decl): Add custom attributes.
99 (assembly_all | ..): Set CurrentCustomAttrTarget to null.
101 2006-01-19 Ankit Jain <jankit@novell.com>
103 * ILParser.jay (K_TYPE): New.
104 (param_type_decl): New. Rule for '.param type ..', for specifying custom attibutes
106 (class_decl | param_type_decl):
107 (method_decl | param_type_decl): New.
109 2006-01-16 Ankit Jain <jankit@novell.com>
111 * ILParser.jay (K_BESTFIT):
115 (pinv_attr | ..): Add rules for the new tokens.
117 2006-01-16 Ankit Jain <jankit@novell.com>
119 * ILParser.jay (K_UINT): New token.
120 (type | K_NATIVE K_UINT): New.
122 2006-01-15 Ankit Jain <jankit@novell.com>
124 * ILParser.jay (method_decl): Add new "full" syntax specifying overrides.
126 2006-01-13 Ankit Jain <jankit@novell.com>
128 * ILParser.jay: Update to use codegen.GetTypeRef instead of creating
130 Update to use BaseMethodRef.GetGenericMethodRef instead of creating them.
132 2006-01-13 Ankit Jain <jankit@novell.com>
134 * ILParser.jay: Update to use CodeGen.GetGlobalMethodRef &
135 CodeGen.GetGlobalFieldRef instead of creating objects.
137 2006-01-13 Ankit Jain <jankit@novell.com>
139 * ILParser.jay: Update to use Base* instead of ITypeRef, IClassRef
142 2006-01-10 Ankit Jain <jankit@novell.com>
144 * ILParser.jay (type | BANG ..): Move !* and !!* rules to ..
145 (generic_class_ref): ..this, to allow using VAR/MVARs as class refs.
148 2006-01-09 Ankit Jain <jankit@novell.com>
150 * ILParser.jay (type_spec : class_ref): Remove.
152 2006-01-09 Ankit Jain <jankit@novell.com>
154 * ILParser.jay: Update to use GenericParamRef instead of GenericTypeRef.
156 2006-01-08 Ankit Jain <jankit@novell.com>
158 * ILParser.jay (constraint_decl): Remove. This syntax is no longer used.
159 (class_decl | constraint_decl): Remove.
161 2006-01-07 Ankit Jain <jankit@novell.com>
163 * ILParser.jay: Update to use new GenericParameters class.
164 (generic_class_ref| K_CLASS class_ref typars_clause): New.
165 Update rules to use generic_class_ref instead of 'K_CLASS class_ref..'
166 (constraints_clause): New.
167 (constraints): New. Rules for constraints on generic parameters.
168 (formal_typar_attr): New. Generic param attributes (.ctor, valuetype, class).
169 (formal_typars): Update to use new constraints stuff.
171 2006-01-06 Ankit Jain <jankit@novell.com>
173 * ILParser.jay (field_init): Add rules for UINT8/UINT16/etc
175 2006-01-06 Ankit Jain <jankit@novell.com>
177 * ILParser.jay (sec_decl | D_PERMISSION sec_action comp_qstring): New. Support
178 new (2.0) syntax which uses string(xml) instead of a bytearray for specifying
179 value of the security attribute.
181 2006-01-06 Ankit Jain <jankit@novell.com>
183 * ILParser.jay (GetTypeRef): Use new IClassRef.Clone .
184 (extends_clause): Use new IClassRef.GetGenericTypeInst.
185 (impl_clause | K_IMPLEMENTS class_refs): Remove.
186 (impl_clause | impl_class_refs): New.
187 (impl_class_refs): New. Add rules for generic and non-generic interface
189 (class_ref | slashed_name): Use new codegen.GetTypeRef so that the TypeRef
191 (type | K_CLASS class_ref): Add typars_clause to the rule and handle accordingly.
192 (type | K_VALUETYPE ...): Likewise.
194 2005-12-24 Jb Evain <jbevain@gmail.com>
196 * ILParser.jay (prop_attr): Activate instance keyword on properties.
198 2005-12-22 Ankit Jain <jankit@novell.com>
200 * ILParser.jay (method_head | ..): Update usage of MethodDef.ctor to pass
201 codegen.CurrentTypeDef also. ResolveGenParams is called by MethodDef internally.
202 (instr | INSTR_FIELD ..): Update usage of MethodDef.ResolveGenParam .
204 2005-12-21 Ankit Jain <jankit@novell.com>
206 * ILParser.jay: Update to use new GenericArguments class for 'typars'.
208 2005-12-14 Ankit Jain <jankit@novell.com>
210 * ILParser.jay: Add K_UINT8, K_UINT16, K_UINT32 and K_UINT64 tokens.
211 (type): Add rule for the new keywords.
212 (native_type): Likewise.
215 2005-12-13 Ankit Jain <jankit@novell.com>
217 * ILParser.jay (class_head | D_CLASS ..): Use 'comp_name' instead of 'id' to allow
220 2005-12-09 Ankit Jain <jankit@novell.com>
222 * ILParser.jay (class_decl | D_OVERRIDE ..): Update usage of ITypeRef.GetMethodRef
223 and MethodDef.CreateSignature .
224 (method_head | D_METHOD ..): Update usage of MethodDef.ctor .
225 Use MethodDef.ResolveGenParams to resolve VARs/MVARs in parameter list.
226 (type | K_CLASS slashed_name ..): Remove redundant rule.
227 (type | BANG id): New. Generic type parameter.
228 (type | BANG BANG id): New. Generic method type parameter.
229 (instr | INSTR_FIELD type ..): Resolve generic param for 'type'.
230 (method_ref | call_conv ..): Set MethodRef's GenParamCount.
231 (method_ref | call_conv type ..): Update usage of TypeSpecMethodRef.ctor and GetMethodRef.
232 (method_ref | call_conv type ..): New. Rule for global generic method refs.
233 (custom_type | call_conv ..): Update usage of GlobalMethodRef.ctor .
235 2005-12-05 Ankit Jain <jankit@novell.com>
237 * ILParser.jay (type | BANG int32 .. ): Update to use GenParam instead of
238 PEAPI.MVar and PEAPI.GenericTypeSpec.
239 (method_head | D_METHOD ..): Set callConv to Generic if the method has type
241 (method_ref | call_conv ...): Likewise.
243 2005-09-15 Ankit Jain <jankit@novell.com>
245 * ILParser.jay (ILParser.NameValuePair): New.
246 (ILParser.PermPair): New.
247 (ILParser.CheckSecurityActionValidity): New.
248 (ILParser.ClassRefToObject): New.
249 (ILParser.TypeSpecToPermPair): New.
250 (class_decl | sec_decl): Use the new codegen.AddPermission .
251 (method_decl | sec_decl): Use the new codegen.AddPermission .
252 (sec_decl | D_PERMISSION ..): Use the new TypeSpecToPermPair method.
253 (sec_decl | D_PERMISSIONSET ..): Use PermissionSetAttribute to create PermissionSet
254 which will validate the bytearray.
255 (nameval_pairs): Create ArrayList of NameValuePair.
256 (nameval_pair): Create NameValuePair.
257 (cavalue | class_ref): Use ClassRefToObject.
258 (assembly_decl | sec_decl): Use the new codegen.AddAssemblyPermission .
260 2005-09-08 Ankit Jain <jankit@novell.com>
262 * ILParser.jay (decl | D_STACKRESERVE int64): New. Set stack reserve.
264 2005-08-29 Ankit Jain <jankit@novell.com>
266 * ILParser.jay : Comment out K_LCID token.
268 2005-08-29 Ankit Jain <jankit@novell.com>
270 * ILParser.jay (native_type | K_CUSTOM ..): Instantiate object of CustomMarshaller
273 2005-08-23 Ankit Jain <jankit@novell.com>
275 * ILParser (method_ref : call_conv..): Use TypeRef instead of PrimitiveTypeRef
276 if this assembly is mscorlib.
277 (type | ..): Correct names of primitive types.
279 2005-08-18 Ankit Jain <jankit@novell.com>
281 * ILParser.jay (instr | INSTR_R bytes_list): Convert bytes_list to single/double
282 and add the corresponding instruction.
284 2005-08-18 Ankit Jain <jankit@novell.com>
286 * ILParser.jay: Comment out K_PUBLICKEY keyword, not used in the grammar.
288 2005-08-16 Ankit Jain <jankit@novell.com>
290 * ILParser.jay (native_type | K_FIXED K_SYSSTRING ..): Instantiate
291 object of PEAPI.FixedSysString.
292 (native_type | native_type OPEN_BRACKET ..): Instantiate object of
293 NativeArray with the proper arguments.
294 (native_type | K_METHOD): Use NativeType.FuncPtr.
295 (native_type | K_FIXED K_ARRAY ..): Instantiate object of FixedArray.
296 (native_type | K_SAFEARRAY ..): Instantiate object of SafeArray.
297 (variant_type): Use appropriate values from SafeArrayType enum.
298 (field_decl | D_FIELD ..): Cast repeat_opt to int before casting to uint
299 as repeat_opt is int32.
300 (field_attr | field_attr K_MARSHAL ..): Add Marshal info for field.
301 Set field attr to HasFieldMarshal.
302 (method_head): Add Marshal info for return type if specified.
303 (sig_arg | param_attr ..): Create ParamDef and add marshal info.
305 2005-08-11 Ankit Jain <jankit@novell.com>
307 * ILParser.jay (class_ref | slashed_name): Don't use PrimitiveTypeRef for
308 primitive types if the assembly being compiled is 'mscorlib'.
309 (seh_clause | K_CATCH ..): Report error if exception(class_ref) is a
312 2005-08-08 Ankit Jain <jankit@novell.com>
314 * ILParser.jay (method_decl | D_ENTRYPOINT): Set codegen.HasEntryPoint
317 2005-08-05 Ankit Jain <jankit@novell.com>
319 * ILParser.jay (class_decl, method_decl | sec_decl): Use
320 codegen.CurrentDeclSecurityTarget for adding DeclSecurity info.
321 (assembly_decl | sec_decl): Use codegen.AddAssemblyDeclSecurity
322 for adding DeclSecurity info.
323 (sec_decl): Instantiate DeclSecurity object.
324 (sec_action | K_REQUEST, K_DEMAND, .. etc): Use the corresponding
325 value from PEAPI.SecurityAction enum.
327 2005-05-12 Jackson Harper <jackson@ximian.com>
329 * ILParser.jay: Handle lists of data items correctly.
331 2005-05-10 Ankit Jain <ankit@corewars.org>
334 * ILParser.jay (type): Emit TypeRefs instead of TypeSpecs for valuetypes,
335 so don't create ExternTypeRefInst.
336 Hack along with Hari.
338 2005-04-30 Ankit Jain <ankit@corewars.org>
340 * ILParser.jay (event_decl): Add custom attribute.
342 2005-04-27 Ankit Jain <ankit@corewars.org>
344 * ILParser.jay (method_ref): Let owner.GetMethodRef handle the
345 creation of TypeSpecMethodRef.
347 2005-04-26 Ankit Jain <ankit@corewars.org>
349 * ILParser.jay (comp_name): Allow n.a.'b' .
351 2005-04-18 Ankit Jain <ankit@corewars.org>
353 * ILParser.jay (manifestres_head): Read resource file and
354 add ManifestResource with CodeGen.
355 (manres_attr): Set visibility flag of the resource.
357 2005-04-12 Ankit Jain <ankit@corewars.org>
359 * ILParser.jay (class_decl, method_decl, prop_decl,
360 assemblyref_decl | customattr_decl): Use
361 codegen.CurrentCustomAttrTarget for adding custom
363 (field_decl, method_decl, event_head, prop_head):
364 Set codegen.CurrentCustomAttrTarget
366 2005-04-08 Ankit Jain <radical@corewars.org>
368 * ILParser.jay (type): When parsing K_VALUETYPE, mark the typeref
370 (field_init): The float32 and float64 constructor argument is
371 the hex representation, not the integer equivalent value.
373 2005-03-17 Ankit Jain <radical@corewars.org>
375 * ILParser.jay(method_decl): Add default value for a method param.
377 2004-12-02 Miguel de Icaza <miguel@ximian.com>
379 * ILParser.jay(field_init): Explicit cast to the target type, this
380 is what ilasm does (0xFFFFFFFF) as an int gets translated
382 Added D_STACKRESERVE token.
384 (prop_head, event_head): Allow it to take a compound name (for explicit
385 interface implementations of properties).
387 2004-07-21 Jackson Harper <jackson@ximian.com>
389 * ILParser.jay: Clones ExternTypeRefInsts as well as
390 ExternTypeRefs, wrap this check into a method so things are
393 2004-07-08 Jackson Harper <jackson@ximian.com>
395 * ILParser.jay: Add custom attributes to assemblyrefs.
397 2004-06-26 Jackson Harper <jackson@ximian.com>
399 * ILParser.jay: vtable fixups use the int32 or int64 keyword, not
400 actual int values. When adding modules for pinvoke info use the
401 ExternTable so we dont get duplicate modules.
403 2004-06-19 Jackson Harper <jackson@ximian.com>
405 * ILParser.jay: Resolve method pointers that are being treated as
408 2004-06-19 Jackson Harper <jackson@ximian.com>
410 * ILParser.jay: Resolve other modules global 'type'.
412 2004-06-14 Jackson Harper <jackson@ximian.com>
414 * ILParser.jay: Add file refs.
416 2004-06-14 Jackson Harper <jackson@ximian.com>
418 * ILParser.jay: Add module refs, allow them to be referenced.
420 2004-06-14 Jackson Harper <jackson@ximian.com>
422 * ILParser.jay: Set module names.
424 2004-05-25 Jackson Harper <jackson@ximian.com>
426 * ILParser.jay: Fix casting for data type constants.
428 2004-05-22 Jackson Harper <jackson@ximian.com>
430 * ILParser.jay: [,] is short form for [...,...] this fixes bug
433 2004-05-22 Jackson Harper <jackson@ximian.com>
435 * ILParser.jay: Handle wchar, it is just an alias for char. This
438 2004-05-05 Jackson Harper <jackson@ximian.com>
440 * ILParser.jay: Handle endian issues when converting numeric
443 2004-04-14 Jackson Harper <jackson@ximian.com>
445 * ILParser.jay: Correct args for version numbers.
447 2004-04-03 Jackson Harper <jackson@ximian.com>
449 * ILParser.jay: Dont use hash alg enum its too restrictive
451 2004-04-02 Jackson Harper <jackson@ximian.com>
453 * ILParser.jay: Set assembly info.
455 2004-04-01 Jackson Harper <jackson@ximian.com>
457 * ILParser.jay: Set a flag in the tokenizer when parsing byte
458 arrays. Otherwise we can't tell WTF they are. Set assemblyref
461 2004-03-28 Jackson Harper <jackson@ximian.com>
463 * ILParser.jay: Fix typo.
465 2004-03-28 Jackson Harper <jackson@ximian.com>
467 * ILParser.jay: Set true and false literals properly. Add instance
470 2004-02-18 Jackson Harper <jackson@ximian.com>
472 * ILParser.jay: Create ExternTypeRefInsts when a valuetype
473 extern_class is encountered. This way the underlying type is not
474 changed to a value type.
477 2003-12-10 Jackson Harper <jackson@ximian.com>
479 * ILParser.jay: When modifying extern types, clone them and modify
482 2003-12-10 Jackson Harper <jackson@ximian.com>
484 * ILParser.jay: Use the extern table for all extern type
487 2003-12-10 Jackson Harper <jackson@ximian.com>
489 * ILParser.jay: Add COMP_NAME token.
491 2003-12-10 Jackson Harper <jackson@ximian.com>
493 * ILParser.jay: vtable fixups can be int32s
495 2003-11-18 Jackson Harper <jackson@ximian.com>
497 * ILParser.jay: Add zeroinit.
499 2003-11-17 Jackson Harper <jackson@ximian.com>
501 * ILParser.jay: Create strings from byte arrays. Fix parsing of
502 bytes that are passed as INT64.
504 2003-11-16 Jackson Harper <jackson@ximian.com>
506 * ILParser.jay: Handle string instructions that are given byte
507 arrays. This fixes bug #51039.
509 2003-10-28 Jackson Harper <jackson@ximian.com>
511 * ILParser.jay: Use the ExternTable to create external type
512 references. Remove some ultra top secret debugging code.
514 2003-10-17 Jackson Harper <jackson@ximian.com>
516 * ILParser.jay: Set value types, set enums as value types. Use
517 correct var for call conv in method signatures.
519 2003-10-10 Jackson Harper <jackson@ximian.com>
521 * ILParser.jay: Create generic method refs.
523 2003-10-08 Jackson Harper <jackson@ximian.com>
525 * ILParser.jay: Attach generic type parameters to methods.
527 2003-09-27 Jackson Harper <jackson@latitudegeo.com>
529 * ILParser.jay: Set pinvoke info. Allow param attributes in type
532 2003-09-21 Jackson Harper <jackson@latitudegeo.com>
534 * ILParser.jay: Define data
536 2003-09-15 Jackson Harper <jackson@latitudegeo.com>
538 * ILParser.jay: dashed names aren't legal for file names, if the
539 name has a dash in it it needs to be quoted ie 'gtk-sharp'.
541 2003-09-12 Jackson Harper <jackson@latitudegeo.com>
543 * ILParser.jay: Fix typo in field inits. Methods attached to
544 modified types should be type spec method refs.
546 2003-08-19 Jackson Harper <jackson@latitudegeo.com>
548 * ILParser.jay: Implement address constants and string
549 constants. Add data definitions to their types, and create data
550 item lists. Also implement long form overrides.
552 2003-08-19 Jackson Harper <jackson@latitudegeo.com>
554 * ILParser.jay: Add override methods.
556 2003-08-10 Jackson Harper <jackson@latitudegeo.com>
558 * ILParser.jay: Create an empty array list for empty type
559 lists. Start phasing out INT32 because the tokenizer will no
560 longer create this token.
562 2003-08-03 Jackson Harper <jackson@latitudegeo.com>
564 * ILParser.jay: Use new sentinel type. Create valuetypes.
566 2003-08-03 Jackson Harper <jackson@latitudegeo.com>
568 * ILParser.jay: Make value types and enum types.
570 2003-08-03 Jackson Harper <jackson@latitudegeo.com>
572 * ILParser.jay: Create label references where appropriate instead
575 2003-08-02 Jackson Harper <jackson@latitudegeo.com>
577 * ILParser.jay: Set from label, not to label for filter block handlers
579 2003-07-30 Jackson Harper <jackson@latitudegeo.com>
581 * ILParser.jay: Create branch instructions with explicit offsets
583 2003-07-29 Jackson Harper <jackson@latitudegeo.com>
585 * ILParser.jay: Use new labeling system for handler blocks.
587 2003-07-29 Jackson Harper <jackson@latitudegeo.com>
589 * ILParser.jay: No longer need to supply method references
590 to instructions, they get that when emitting now.
592 2003-07-28 Jackson Harper <jackson@latitudegeo.com>
594 * ILParser.jay: Use TypeRef.Ellipsis instead of null for a
595 placeholder in bound arrays. Do not use AsClassRef anymore.
597 2003-07-21 Jackson Harper <jackson@latitudegeo.com>
599 * ILParser.jay: Set maxstack
601 2003-07-20 Jackson Harper <jackson@latitudegeo.com>
603 * ILParser.jay: Do not use the AsClassRef method anymore to attach
604 methods and fields to types. All types can do this now. Create
605 generic type refs and generic type instances.
607 2003-07-17 Jackson Harper <jackson@latitudegeo.com>
609 * ILParser.jay: Add generic type refs, and fake generic class refs.
611 2003-07-15 Jackson Harper <jackson@latitudegeo.com>
613 * ILParser.jay: Add generic type constraints and tokens used to
616 2003-07-16 Peter Williams <peter@newton.cx>
618 * .cvsignore: ILParser.cs has been moved.
620 2003-07-14 Jackson Harper <jackson@latitudegeo.com>
622 * ILParser.jay: Seperate generic constraints from generic parameters.
624 2003-06-14 Jackson Harper <jackson@latitudegeo.com>
626 * ILParser.jay: Add set imagebase, subsystem, and corflags.
628 2003-06-14 Jackson Harper <jackson@latitidegeo.com>
630 * ILParser.jay: Implement custom modified types.
632 2003-06-08 Jackson Harper <jackson@latitudegeo.com>
634 * ILParser.jay: Implement properties
636 2003-06-08 Jackson Harper <jackson@latitudegeo.com>
638 * ILParser.jay: Add generic type parameters to types. Implement events.
640 2003-06-04 Jackson Harper <jackson@latitudegeo.com>
642 * ILParser.jay: Assembly and module names may have dashes in them
643 (like gtk-sharp.dll).
645 2003-05-31 Jackson Harper <jackson@latitudegeo.com>
647 * ILParser.jay: Set assembly names. When looking up types in the
648 form [assembly]name first check if the assembly is this
649 assembly. Implement scope_blocks, and implement scope block form
652 2003-05-31 Jackson Harper <jackson@latitudegeo.com>
654 * ILParser.jay: Use type instead of params for calli signatures.
656 2003-05-31 Jackson Harper <jackson@latitudegeo.com>
658 * ILParser.jay: When looking up types first check to see if this
659 is actually a primitive object type (System.String,
660 System.Object). Add custom attributes to types. Handle the il
661 keyword the exact same way as cil. Add ellipsises to param and sig
662 lists. Add an optional name to typelists, this is just parsed it
663 is not implemented properly. Add custom attributes to
664 methods. Implement custom types (just methodrefs to ctors).
666 2003-05-25 Jackson Harper <jackson@latitudegeo.com>
668 * ILParser.jay: Pass call conv to methoref constructors. Add the
669 ELLIPSIS to type_lists, this is for vararg methods
671 2003-05-23 Jackson Harper <jackson@latitudegeo.com>
673 * ILParser.jay: Remove top secret debugging code.
675 2003-05-23 Jackson Harper <jackson@latitudegeo.com>
677 * ILParser.jay: Implement label form structured exception handling.
679 2003-05-22 Jackson Harper <jackson@latitudegeo.com>
681 * ILParser.jay: Comment out K_IMF and K_NAN these are not used in
684 2003-05-21 Jackson Harper <jackson@latitudegeo.com>
686 * ILParser.jay: Add ldc.r4 to INSTR_R int also fix cast to double.
688 2003-05-21 Jackson Harper <jackson@latitudegeo.com>
690 * ILParser.jay: When converting from int32 to int64 do an exact
691 bit conversion, not a numerical conversion.
693 2003-05-21 Jackson Harper <jackson@latitudegeo.com>
695 * ILParser.jay: INT_I8s are not int instructions, currently the
696 only INT_I8 instruction is ldc.i8 so this new code does more
697 checks then needed but is written in anticipation of some new long
698 instructions being found. Implement signature instructions, token
699 instructions, and signatures. Convert INT32s masquerading as
702 2003-05-19 Jackson Harper <jackson@latitudegeo.com>
704 * ILParser.jay: Same as below but with float64 ()
706 2003-05-19 Jackson Harper <jackson@latitudegeo.com>
708 * ILParser.jay: When the float32 (0xFFFFFF) syntax is used the hex
709 value represents the exact byte value of a float NOT an integer
710 value that is converted to a float.
712 2003-05-18 Jackson Harper <jackson@latitudegeo.com>
714 * ILParser.jay: Use new methods for converting types to
715 classrefs. Expand grammar for locals.
718 2003-05-18 Jackson Harper <jackson@latitudegeo.com>
720 * ILParser.jay: Convert cast integers to floats.
722 2003-05-11 Jackson Harper <jackson@latitudegeo.com>
724 * ILParser.jay: Add tokens for instructions that take param and
725 local args. Do not create empty lists for sig_args and
726 type_lists. Add param and local instructions.
728 2003-05-11 Jackson Harper <jackson@latitudegeo.com>
730 * ILParser.jay: Set size and packing information for types
732 2003-05-10 Jackson Harper <jackson@latitudegeo.com>
734 * ILParser.jay: Add field instructions
736 2003-05-10 Jackson Harper <jackson@latitudegeo.com>
738 * ILParser.jay: Add global method references
740 2003-05-10 Jackson Harper <jackson@latitudegeo.com>
742 * ILParser.jay: Add locals, method references, and method instructions
744 2003-05-07 Jackson Harper <jackson@latitudegeo.com>
746 * ILParser.jay: Add type instructions. NOTE - type_spec is not
747 fully implemented yet, so this has some explosive potential.
749 2003-05-07 Jackson Harper <jackson@latitudegeo.com>
751 * ILParser.jay: Remove dotted_name, it is not used at all
752 anymore. vtattr only take an int64 param, this fix gets rid of all
753 of the remaining reduce/reduce conflicts
755 2003-05-07 Jackson Harper <jackson@latitudegeo.com>
757 * ILParser.jay: Remove extraneous dotted_name, also make comp_name
758 contain dotted_name logic. Oh how I will miss the 301
759 reduce/reduce conflicts these small changes fixed :-)
761 2003-05-06 Jackson Harper <jackson@latitudegeo.com>
763 * ILParser.jay: Emit INSTR_I8 instructions as int
764 instructions. Implement label lists, emit switch instruction.
766 2003-05-05 Jackson Harper <jackson@latitudegeo.com>
768 * ILParser.jay: Add labels to methods, add branching instructions.
770 2003-05-04 Jackson Harper <jackson@latitudegeo.com>
772 * ILParser.jay: Use new MiscInstr.ldstr for ldstr, add INSTR_Rs
774 2003-05-04 Jackson Harper <jackson@latitudegeo.com>
776 * ILParser.jay: Set int64's masquerading as int32 to upper and
777 lower bounds if neccasary. NEED TO TEST this behavoir on windows.
779 2003-05-01 Jackson Harper <jackson@latitudegeo.com>
781 * ILParser.jay: Fix a bunch of conversions, implement hexbytes
783 2003-04-30 Jackson Harper <jackson@latitudegeo.com>
785 * ILParser.jay: Implement non marshalled methodheads, method
786 attributes, impl attributes, imit simple int and ldstr instructions.
788 2003-04-17 Jackson Harper <jackson@latitudegeo.com>
790 * ILParser.jay: Define data, fix repeat_opt allways being set.
792 2003-04-17 Jackson Harper <jackson@latitudegeo.com>
794 * ILParser.jay: Add external types to the extern type table.
796 2003-04-17 Jackson Harper <jackson@latitudegeo.com>
798 * ILParser.jay: Use new types and methods to build a tree.
800 2003-04-07 Jackson Harper <jackson@latitudegeo.com>
802 * ILParser.jay: Implement data items
804 2003-04-07 Jackson Harper <jackson@latitudegeo.com>
806 * ILParser.jay: Implement most field features
808 2003-04-05 Jackson Harper <jackson@latitudegeo.com>
810 * ILParser.jay: Set type parameter index
812 2003-04-05 Jackson Harper <jackson@latitudegeo.com>
814 * ILParser.jay: Emit parameterized types
816 2003-04-04 Jackson Harper <jackson@latitudegeo.com>
818 * ILParser.jay: Add parameterized method declarations.
820 2003-04-03 Jackson Harper <jackson@latitudegeo.com>
822 * ILParser.jay: Add parameterized types to classes.
824 2003-04-02 Jackson Harper <jackson@latitudegeo.com>
826 * ILParser.jay: Support most non-obsolete native types.
828 2003-04-02 Jackson Harper <jackson@latitudegeo.com>
830 * ILParser.jay: Proper names for native int and native uint
832 2003-04-01 Jackson Harper <jackson@latitudegeo.com>
834 * ILParser.jay: Add Call conventions, fix primitive spelling.
836 2003-04-01 Jackson Harper <jackson@latitudegeo.com>
838 * ILParser.jay: Add TypedRef primative type.
840 2003-04-01 Jackson Harper <jackson@latitudegeo.com>
842 * ILParser.jay: Support pinned, modreq, and modopt types.
844 2003-04-01 Jackson Harper <jackson@latitudegeo.com>
846 * ILParser.jay: Use the CodeGen CompleteClass method when a class
847 is completed instead of setting the current class to null. This
848 does some extra cleanup
850 2003-03-31 Jackson Harper <jackson@latitudegeo.com>
852 * ILParser.jay: Add bound arrays
854 2003-03-30 Jackson Harper <jackson@latitudegeo.com>
856 * ILParser.jay: Concat slashed names properly
858 2003-03-30 Jackson Harper <jackson@latitudegeo.com>
860 * ILParser.jay: Implement most of type
862 2003-03-30 Jackson Harper <jackson@latitudegeo.com>
864 * ILParser.jay: Add code from old parser to declare and define classes.
866 2003-03-30 Jackson Harper <jackson@latitudegeo.com>
868 * ILParser.jay: New grammar that I haven't made a mess of, this
869 takes all the special cases into account much better.
871 2003-03-19 Jackson Harper <jackson@latitudegeo.com>
873 * ILParser.jay: .hash algorithm can be followed by bytes
875 2003-03-19 Jackson Harper <jackson@latitudegeo.com>
877 * ILParser.jay: Allow assembly refs to have dots in name.
879 2003-03-17 Jackson Harper <jackson@latitudegeo.com>
881 * ILParser.jay: Add object to primative types
883 2003-03-17 Jackson Harper <jackson@latitudegeo.com>
885 * ILParser.jay: Set CallConv for opcodes that have a call conv,
888 2003-03-17 Jackson Harper <jackson@latitudegeo.com>
890 * ILParser.jay: Set CallConvs properly, use type_ref instead of type for
893 2003-03-16 Jackson Harper <jackson@latitudegeo.com>
895 * ILParser.jay: .ctor and .cctor can also be method names.
897 2003-03-16 Jackson Harper <jackson@latitudegeo.com>
899 * ILParser.jay: Use assembly_ref for extern assemblies so names with dashes can be used.
901 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
903 * ILParser.jay: Define local variables
905 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
907 * ILParser.jay: Add param_list definition, use param_list for method refs
909 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
911 * ILParser.jay: de-bacwardificate values passed to add method,
912 I was setting the return to the parent before, but the parent
913 value was being set to the return type value so it all worked
914 out but was very confusing.
916 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
918 * ILParser.jay: Add external field references
920 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
922 * ILParser.jay: Add fields to the field table, add field references,
923 emit instructions that take a field param
925 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
927 * ILParser.jay: Emit ldstr instruction
929 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
931 * ILParser.jay: Create external method references
933 2003-03-14 Jackson Harper <jackson@latitudegeo.com>
935 * ILParser.jay: Emit instructions that take a method def as a single param
937 2003-03-14 Jackson Harper <jackson@latitudegeo.com>
939 * ILParser.jay: Emit instructions that take a single type as a param
941 2003-03-14 Jackson Harper <jackson@latitudegeo.com>
943 * ILParser.jay: Emit instructions that take a single int32 as a param
945 2003-03-13 Jackson Harper <jackson@latitudegeo.com>
947 * ILParser.jay: Remove unused references
949 2003-03-13 Jackson Harper <jackson@latitudegeo.com>
951 * ILParser.jay: Emit simple instructions
953 2003-03-13 Jackson Harper <jackson@latitudegeo.com>
955 * ILParser.jay: Set MaxStack, clean up some typos
957 2003-03-13 Jackson Harper <jackson@latitudegeo.com>
959 * ILParser.jay: Set entrypoint
961 2003-03-11 Jackson Harper <jackson@latitudegeo.com>
963 * ILParser.jay: Create TypeRefs instead of types, define methods.
965 2003-03-09 Jackson Harper <jackson@latitudegeo.com>
967 * ILParser.jay: Set Call Conventions and Implementation Flags
969 2003-03-09 Jackson Harper <jackson@latitudegeo.com>
971 * ILParser.jay: Add implemented interfaces
973 2003-03-08 Jackson Harper <jackson@latitudegeo.com>
975 * ILParser.jay: Create method attributes
977 2003-03-08 Jackson Harper <jackson@latitudegeo.com>
979 * ILParser.jay: Reference external assemblies.
981 2003-03-06 Jackson Harper <jackson@latitudegeo.com>
983 * ILParser.jay: Implemented class inheritence
985 2003-03-06 Jackson Harper <jackson@latitudegeo.com>
987 * ILParser.jay: Pass null Location when adding class, concat dottedName pieces
989 2003-03-06 Jackson Harper <jackson@latitudegeo.com>
991 * ILParser.jay: Reconfigure to work with new PEAPI emission system
993 2003-02-10 Jackson Harper <jackson@latitudegeo.com>
995 * ILParser.jay: Use arg_list for method signatures, set method parameters
997 2003-02-09 Jackson Harper <jackson@latitudegeo.com>
999 * ILParser.jay: full names can be short names too (for members)
1001 2003-02-09 Jackson Harper <jackson@latitudegeo.com>
1003 * ILParser.jay: Use full names for calling instructions
1005 2003-02-08 Jackson Harper <jackson@latitudegeo.com>
1007 * ILParser.jay: Create type names properly
1009 2003-02-08 Jackson Harper <jackson@latitudegeo.com>
1011 * ILParser.jay: Handle argument lists better
1013 2003-02-08 Jackson Harper <jackson@latitudegeo.com>
1015 * ILParser.jay: Handle .local and newobj
1017 2003-02-06 Jackson Harper <jackson@latitudegeo.com>
1019 * ILParser.jay: Allow assembly names to have lots of dashes.
1021 2003-02-06 Jackson Harper <jackson@latitudegeo.com>
1023 * ILParser.jay: Add dash token, allow assembly refs to have dashes in their names.
1025 2003-02-02 Jackson Harper <jackson@latitudegeo.com>
1027 * ILParser.jay: Add call instruction, other little fixes and additions