1 2009-04-20 Ankit Jain <jankit@novell.com>
4 * ILParser.jay (scope_block_begin): Mark begin .locals scope.
5 (scope_block): Mark end .locals scope.
7 2009-04-15 Ankit Jain <jankit@novell.com>
9 * ILParser.jay (instr): Handle unidentified local var id.
11 2009-03-31 Rodrigo Kumpera <rkumpera@novell.com>
13 * ILParser.jay: Fix integer labels in handler blocks.
15 2008-06-02 Ankit Jain <jankit@novell.com>
17 Part of fix for bug #367114.
18 * ILParser.jay (seh_clause): Allow exception to be of any type and not
21 2008-06-01 Ankit Jain <jankit@novell.com>
23 * ILParser.jay: Track api changes.
25 2008-03-05 Ankit Jain <jankit@novell.com>
27 * ILParser.jay (custom_type): Allow any method name.
29 2008-03-05 Ankit Jain <jankit@novell.com>
32 * ILParser.jay (seh_clause): catch can take generic class refs also.
34 2008-01-03 Rodrigo Kumpera <rkumpera@novell.com>
36 * ILParser.jay: Fixed typo in EmitByteInstr class name.
38 2007-12-31 Rodrigo Kumpera <rkumpera@novell.com>
40 * ILParser.jay: Implement .emitbyte directive
42 2007-12-31 Rodrigo Kumpera <rkumpera@novell.com>
44 * ILParser.jay: Create LabelInfo instances for switch labels,
45 this allows the code generator to spot invalid labels.
48 2007-06-05 Rodrigo Kumpera <kumpera@gmail.com>
50 * ILParser.jay: Support for variance related generic modifiers <+T> and <-T>
52 Fri Mar 23 16:52:06 CET 2007 Paolo Molaro <lupus@ximian.com>
54 * ILParser.jay: fix BitConverter use on big endian archs
55 (this was likely the cause of Zoltan's change in r72237
56 which has been reverted in r74485).
58 2007-01-10 Ankit Jain <jankit@novell.com>
60 * ILParser.jay (GetTypeRef): Use BaseTypeRef.Clone
62 2006-11-09 Ankit Jain <jankit@novell.com>
64 * ILParser.jay (K_RETARGETABLE): New.
65 (asm_attr): Add rule for K_RETARGETABLE.
66 (assembly_head): Handle attributes.
67 (assemblyref_head): Add asm_attr.
69 2006-06-07 Ankit Jain <jankit@novell.com>
71 * ILParser.jay : Update to use Report.Warning instead of
72 Console.Error.WriteLine
74 2006-06-01 Ankit Jain <jankit@novell.com>
76 * ILParser.jay (instr | INSTR_PARAM ..): Report error if the param is not
79 2006-06-01 Ankit Jain <jankit@novell.com>
81 * ILParser.jay (method_decl | D_PARAM ..): Param index is zero-based,
82 with zero representing the return value.
83 Update to check CurrentCustomAttrTarget for null before using it.
85 2006-05-26 Ankit Jain <jankit@novell.com>
87 * ILParser.jay: Update to use new Assembly class.
89 2006-05-26 Ankit Jain <jankit@novell.com>
91 Add support or 2.0 style declarative security attributes.
92 * ILParser.jay (primitive_type): New. Extracted from 'type'.
93 (field_init_primitive): New. Extracted from 'field_init', with all
95 (sec_decl | ..): New rule for 2.0 style permissions.
101 (perm_mbr_nameval_pair):
102 (prop_or_field): New rules for 2.0 style permissions.
106 2006-05-11 Ankit Jain <jankit@novell.com>
108 * ILParser.jay (type |type MODREQ ..): Use CustomModifier.modreq .
110 2006-05-10 Ankit Jain <jankit@novell.com>
112 * ILParser.jay (native_type | K_ERROR): Use NativeType.Error for the
114 (native_type | K_LPSTRUCT): Likewise for K_LPSTRUCT.
116 2006-05-10 Ankit Jain <jankit@novell.com>
118 * ILParser.jay: Add K_PROPERTY.
120 2006-02-20 Ankit Jain <jankit@novell.com>
122 * ILParser.jay: Remove D_CONSTRAINT
124 2006-02-20 Ankit Jain <jankit@novell.com>
126 * ILParser.jay: Update to use Report.Error instead of directly throwing
129 2006-02-09 Ankit Jain <jankit@novell.com>
131 * ILParser.jay (bound | int32): Handle invalid -ve size.
133 2006-02-02 Ankit Jain <jankit@novell.com>
135 * ILParser.jay (bound | int32 ELLIPSIS int32): Throw exception if
136 lower_bound > upper_bound.
138 2006-01-28 Ankit Jain <jankit@novell.com>
140 * ILParser.jay (pinv_attr | ..): Fix typo.
142 2006-01-28 Ankit Jain <jankit@novell.com>
144 * ILParser.jay (method_ref): Remove 2 redundant productions.
145 (method_decl | D_OVERRIDE K_METHOD ..): New production for overriding
148 2006-01-27 Ankit Jain <jankit@novell.com>
150 * ILParser.jay (formal_typars_clause): Allow generics only for NET_2_0 profile.
151 (typars_clause): Likewise.
153 2006-01-19 Ankit Jain <jankit@novell.com>
155 * ILParser.jay (decl | customattr_decl): Add custom attributes.
156 (assembly_all | ..): Set CurrentCustomAttrTarget to null.
158 2006-01-19 Ankit Jain <jankit@novell.com>
160 * ILParser.jay (K_TYPE): New.
161 (param_type_decl): New. Rule for '.param type ..', for specifying custom attibutes
163 (class_decl | param_type_decl):
164 (method_decl | param_type_decl): New.
166 2006-01-16 Ankit Jain <jankit@novell.com>
168 * ILParser.jay (K_BESTFIT):
172 (pinv_attr | ..): Add rules for the new tokens.
174 2006-01-16 Ankit Jain <jankit@novell.com>
176 * ILParser.jay (K_UINT): New token.
177 (type | K_NATIVE K_UINT): New.
179 2006-01-15 Ankit Jain <jankit@novell.com>
181 * ILParser.jay (method_decl): Add new "full" syntax specifying overrides.
183 2006-01-13 Ankit Jain <jankit@novell.com>
185 * ILParser.jay: Update to use codegen.GetTypeRef instead of creating
187 Update to use BaseMethodRef.GetGenericMethodRef instead of creating them.
189 2006-01-13 Ankit Jain <jankit@novell.com>
191 * ILParser.jay: Update to use CodeGen.GetGlobalMethodRef &
192 CodeGen.GetGlobalFieldRef instead of creating objects.
194 2006-01-13 Ankit Jain <jankit@novell.com>
196 * ILParser.jay: Update to use Base* instead of ITypeRef, IClassRef
199 2006-01-10 Ankit Jain <jankit@novell.com>
201 * ILParser.jay (type | BANG ..): Move !* and !!* rules to ..
202 (generic_class_ref): ..this, to allow using VAR/MVARs as class refs.
205 2006-01-09 Ankit Jain <jankit@novell.com>
207 * ILParser.jay (type_spec : class_ref): Remove.
209 2006-01-09 Ankit Jain <jankit@novell.com>
211 * ILParser.jay: Update to use GenericParamRef instead of GenericTypeRef.
213 2006-01-08 Ankit Jain <jankit@novell.com>
215 * ILParser.jay (constraint_decl): Remove. This syntax is no longer used.
216 (class_decl | constraint_decl): Remove.
218 2006-01-07 Ankit Jain <jankit@novell.com>
220 * ILParser.jay: Update to use new GenericParameters class.
221 (generic_class_ref| K_CLASS class_ref typars_clause): New.
222 Update rules to use generic_class_ref instead of 'K_CLASS class_ref..'
223 (constraints_clause): New.
224 (constraints): New. Rules for constraints on generic parameters.
225 (formal_typar_attr): New. Generic param attributes (.ctor, valuetype, class).
226 (formal_typars): Update to use new constraints stuff.
228 2006-01-06 Ankit Jain <jankit@novell.com>
230 * ILParser.jay (field_init): Add rules for UINT8/UINT16/etc
232 2006-01-06 Ankit Jain <jankit@novell.com>
234 * ILParser.jay (sec_decl | D_PERMISSION sec_action comp_qstring): New. Support
235 new (2.0) syntax which uses string(xml) instead of a bytearray for specifying
236 value of the security attribute.
238 2006-01-06 Ankit Jain <jankit@novell.com>
240 * ILParser.jay (GetTypeRef): Use new IClassRef.Clone .
241 (extends_clause): Use new IClassRef.GetGenericTypeInst.
242 (impl_clause | K_IMPLEMENTS class_refs): Remove.
243 (impl_clause | impl_class_refs): New.
244 (impl_class_refs): New. Add rules for generic and non-generic interface
246 (class_ref | slashed_name): Use new codegen.GetTypeRef so that the TypeRef
248 (type | K_CLASS class_ref): Add typars_clause to the rule and handle accordingly.
249 (type | K_VALUETYPE ...): Likewise.
251 2005-12-24 Jb Evain <jbevain@gmail.com>
253 * ILParser.jay (prop_attr): Activate instance keyword on properties.
255 2005-12-22 Ankit Jain <jankit@novell.com>
257 * ILParser.jay (method_head | ..): Update usage of MethodDef.ctor to pass
258 codegen.CurrentTypeDef also. ResolveGenParams is called by MethodDef internally.
259 (instr | INSTR_FIELD ..): Update usage of MethodDef.ResolveGenParam .
261 2005-12-21 Ankit Jain <jankit@novell.com>
263 * ILParser.jay: Update to use new GenericArguments class for 'typars'.
265 2005-12-14 Ankit Jain <jankit@novell.com>
267 * ILParser.jay: Add K_UINT8, K_UINT16, K_UINT32 and K_UINT64 tokens.
268 (type): Add rule for the new keywords.
269 (native_type): Likewise.
272 2005-12-13 Ankit Jain <jankit@novell.com>
274 * ILParser.jay (class_head | D_CLASS ..): Use 'comp_name' instead of 'id' to allow
277 2005-12-09 Ankit Jain <jankit@novell.com>
279 * ILParser.jay (class_decl | D_OVERRIDE ..): Update usage of ITypeRef.GetMethodRef
280 and MethodDef.CreateSignature .
281 (method_head | D_METHOD ..): Update usage of MethodDef.ctor .
282 Use MethodDef.ResolveGenParams to resolve VARs/MVARs in parameter list.
283 (type | K_CLASS slashed_name ..): Remove redundant rule.
284 (type | BANG id): New. Generic type parameter.
285 (type | BANG BANG id): New. Generic method type parameter.
286 (instr | INSTR_FIELD type ..): Resolve generic param for 'type'.
287 (method_ref | call_conv ..): Set MethodRef's GenParamCount.
288 (method_ref | call_conv type ..): Update usage of TypeSpecMethodRef.ctor and GetMethodRef.
289 (method_ref | call_conv type ..): New. Rule for global generic method refs.
290 (custom_type | call_conv ..): Update usage of GlobalMethodRef.ctor .
292 2005-12-05 Ankit Jain <jankit@novell.com>
294 * ILParser.jay (type | BANG int32 .. ): Update to use GenParam instead of
295 PEAPI.MVar and PEAPI.GenericTypeSpec.
296 (method_head | D_METHOD ..): Set callConv to Generic if the method has type
298 (method_ref | call_conv ...): Likewise.
300 2005-09-15 Ankit Jain <jankit@novell.com>
302 * ILParser.jay (ILParser.NameValuePair): New.
303 (ILParser.PermPair): New.
304 (ILParser.CheckSecurityActionValidity): New.
305 (ILParser.ClassRefToObject): New.
306 (ILParser.TypeSpecToPermPair): New.
307 (class_decl | sec_decl): Use the new codegen.AddPermission .
308 (method_decl | sec_decl): Use the new codegen.AddPermission .
309 (sec_decl | D_PERMISSION ..): Use the new TypeSpecToPermPair method.
310 (sec_decl | D_PERMISSIONSET ..): Use PermissionSetAttribute to create PermissionSet
311 which will validate the bytearray.
312 (nameval_pairs): Create ArrayList of NameValuePair.
313 (nameval_pair): Create NameValuePair.
314 (cavalue | class_ref): Use ClassRefToObject.
315 (assembly_decl | sec_decl): Use the new codegen.AddAssemblyPermission .
317 2005-09-08 Ankit Jain <jankit@novell.com>
319 * ILParser.jay (decl | D_STACKRESERVE int64): New. Set stack reserve.
321 2005-08-29 Ankit Jain <jankit@novell.com>
323 * ILParser.jay : Comment out K_LCID token.
325 2005-08-29 Ankit Jain <jankit@novell.com>
327 * ILParser.jay (native_type | K_CUSTOM ..): Instantiate object of CustomMarshaller
330 2005-08-23 Ankit Jain <jankit@novell.com>
332 * ILParser (method_ref : call_conv..): Use TypeRef instead of PrimitiveTypeRef
333 if this assembly is mscorlib.
334 (type | ..): Correct names of primitive types.
336 2005-08-18 Ankit Jain <jankit@novell.com>
338 * ILParser.jay (instr | INSTR_R bytes_list): Convert bytes_list to single/double
339 and add the corresponding instruction.
341 2005-08-18 Ankit Jain <jankit@novell.com>
343 * ILParser.jay: Comment out K_PUBLICKEY keyword, not used in the grammar.
345 2005-08-16 Ankit Jain <jankit@novell.com>
347 * ILParser.jay (native_type | K_FIXED K_SYSSTRING ..): Instantiate
348 object of PEAPI.FixedSysString.
349 (native_type | native_type OPEN_BRACKET ..): Instantiate object of
350 NativeArray with the proper arguments.
351 (native_type | K_METHOD): Use NativeType.FuncPtr.
352 (native_type | K_FIXED K_ARRAY ..): Instantiate object of FixedArray.
353 (native_type | K_SAFEARRAY ..): Instantiate object of SafeArray.
354 (variant_type): Use appropriate values from SafeArrayType enum.
355 (field_decl | D_FIELD ..): Cast repeat_opt to int before casting to uint
356 as repeat_opt is int32.
357 (field_attr | field_attr K_MARSHAL ..): Add Marshal info for field.
358 Set field attr to HasFieldMarshal.
359 (method_head): Add Marshal info for return type if specified.
360 (sig_arg | param_attr ..): Create ParamDef and add marshal info.
362 2005-08-11 Ankit Jain <jankit@novell.com>
364 * ILParser.jay (class_ref | slashed_name): Don't use PrimitiveTypeRef for
365 primitive types if the assembly being compiled is 'mscorlib'.
366 (seh_clause | K_CATCH ..): Report error if exception(class_ref) is a
369 2005-08-08 Ankit Jain <jankit@novell.com>
371 * ILParser.jay (method_decl | D_ENTRYPOINT): Set codegen.HasEntryPoint
374 2005-08-05 Ankit Jain <jankit@novell.com>
376 * ILParser.jay (class_decl, method_decl | sec_decl): Use
377 codegen.CurrentDeclSecurityTarget for adding DeclSecurity info.
378 (assembly_decl | sec_decl): Use codegen.AddAssemblyDeclSecurity
379 for adding DeclSecurity info.
380 (sec_decl): Instantiate DeclSecurity object.
381 (sec_action | K_REQUEST, K_DEMAND, .. etc): Use the corresponding
382 value from PEAPI.SecurityAction enum.
384 2005-05-12 Jackson Harper <jackson@ximian.com>
386 * ILParser.jay: Handle lists of data items correctly.
388 2005-05-10 Ankit Jain <ankit@corewars.org>
391 * ILParser.jay (type): Emit TypeRefs instead of TypeSpecs for valuetypes,
392 so don't create ExternTypeRefInst.
393 Hack along with Hari.
395 2005-04-30 Ankit Jain <ankit@corewars.org>
397 * ILParser.jay (event_decl): Add custom attribute.
399 2005-04-27 Ankit Jain <ankit@corewars.org>
401 * ILParser.jay (method_ref): Let owner.GetMethodRef handle the
402 creation of TypeSpecMethodRef.
404 2005-04-26 Ankit Jain <ankit@corewars.org>
406 * ILParser.jay (comp_name): Allow n.a.'b' .
408 2005-04-18 Ankit Jain <ankit@corewars.org>
410 * ILParser.jay (manifestres_head): Read resource file and
411 add ManifestResource with CodeGen.
412 (manres_attr): Set visibility flag of the resource.
414 2005-04-12 Ankit Jain <ankit@corewars.org>
416 * ILParser.jay (class_decl, method_decl, prop_decl,
417 assemblyref_decl | customattr_decl): Use
418 codegen.CurrentCustomAttrTarget for adding custom
420 (field_decl, method_decl, event_head, prop_head):
421 Set codegen.CurrentCustomAttrTarget
423 2005-04-08 Ankit Jain <radical@corewars.org>
425 * ILParser.jay (type): When parsing K_VALUETYPE, mark the typeref
427 (field_init): The float32 and float64 constructor argument is
428 the hex representation, not the integer equivalent value.
430 2005-03-17 Ankit Jain <radical@corewars.org>
432 * ILParser.jay(method_decl): Add default value for a method param.
434 2004-12-02 Miguel de Icaza <miguel@ximian.com>
436 * ILParser.jay(field_init): Explicit cast to the target type, this
437 is what ilasm does (0xFFFFFFFF) as an int gets translated
439 Added D_STACKRESERVE token.
441 (prop_head, event_head): Allow it to take a compound name (for explicit
442 interface implementations of properties).
444 2004-07-21 Jackson Harper <jackson@ximian.com>
446 * ILParser.jay: Clones ExternTypeRefInsts as well as
447 ExternTypeRefs, wrap this check into a method so things are
450 2004-07-08 Jackson Harper <jackson@ximian.com>
452 * ILParser.jay: Add custom attributes to assemblyrefs.
454 2004-06-26 Jackson Harper <jackson@ximian.com>
456 * ILParser.jay: vtable fixups use the int32 or int64 keyword, not
457 actual int values. When adding modules for pinvoke info use the
458 ExternTable so we dont get duplicate modules.
460 2004-06-19 Jackson Harper <jackson@ximian.com>
462 * ILParser.jay: Resolve method pointers that are being treated as
465 2004-06-19 Jackson Harper <jackson@ximian.com>
467 * ILParser.jay: Resolve other modules global 'type'.
469 2004-06-14 Jackson Harper <jackson@ximian.com>
471 * ILParser.jay: Add file refs.
473 2004-06-14 Jackson Harper <jackson@ximian.com>
475 * ILParser.jay: Add module refs, allow them to be referenced.
477 2004-06-14 Jackson Harper <jackson@ximian.com>
479 * ILParser.jay: Set module names.
481 2004-05-25 Jackson Harper <jackson@ximian.com>
483 * ILParser.jay: Fix casting for data type constants.
485 2004-05-22 Jackson Harper <jackson@ximian.com>
487 * ILParser.jay: [,] is short form for [...,...] this fixes bug
490 2004-05-22 Jackson Harper <jackson@ximian.com>
492 * ILParser.jay: Handle wchar, it is just an alias for char. This
495 2004-05-05 Jackson Harper <jackson@ximian.com>
497 * ILParser.jay: Handle endian issues when converting numeric
500 2004-04-14 Jackson Harper <jackson@ximian.com>
502 * ILParser.jay: Correct args for version numbers.
504 2004-04-03 Jackson Harper <jackson@ximian.com>
506 * ILParser.jay: Dont use hash alg enum its too restrictive
508 2004-04-02 Jackson Harper <jackson@ximian.com>
510 * ILParser.jay: Set assembly info.
512 2004-04-01 Jackson Harper <jackson@ximian.com>
514 * ILParser.jay: Set a flag in the tokenizer when parsing byte
515 arrays. Otherwise we can't tell WTF they are. Set assemblyref
518 2004-03-28 Jackson Harper <jackson@ximian.com>
520 * ILParser.jay: Fix typo.
522 2004-03-28 Jackson Harper <jackson@ximian.com>
524 * ILParser.jay: Set true and false literals properly. Add instance
527 2004-02-18 Jackson Harper <jackson@ximian.com>
529 * ILParser.jay: Create ExternTypeRefInsts when a valuetype
530 extern_class is encountered. This way the underlying type is not
531 changed to a value type.
534 2003-12-10 Jackson Harper <jackson@ximian.com>
536 * ILParser.jay: When modifying extern types, clone them and modify
539 2003-12-10 Jackson Harper <jackson@ximian.com>
541 * ILParser.jay: Use the extern table for all extern type
544 2003-12-10 Jackson Harper <jackson@ximian.com>
546 * ILParser.jay: Add COMP_NAME token.
548 2003-12-10 Jackson Harper <jackson@ximian.com>
550 * ILParser.jay: vtable fixups can be int32s
552 2003-11-18 Jackson Harper <jackson@ximian.com>
554 * ILParser.jay: Add zeroinit.
556 2003-11-17 Jackson Harper <jackson@ximian.com>
558 * ILParser.jay: Create strings from byte arrays. Fix parsing of
559 bytes that are passed as INT64.
561 2003-11-16 Jackson Harper <jackson@ximian.com>
563 * ILParser.jay: Handle string instructions that are given byte
564 arrays. This fixes bug #51039.
566 2003-10-28 Jackson Harper <jackson@ximian.com>
568 * ILParser.jay: Use the ExternTable to create external type
569 references. Remove some ultra top secret debugging code.
571 2003-10-17 Jackson Harper <jackson@ximian.com>
573 * ILParser.jay: Set value types, set enums as value types. Use
574 correct var for call conv in method signatures.
576 2003-10-10 Jackson Harper <jackson@ximian.com>
578 * ILParser.jay: Create generic method refs.
580 2003-10-08 Jackson Harper <jackson@ximian.com>
582 * ILParser.jay: Attach generic type parameters to methods.
584 2003-09-27 Jackson Harper <jackson@latitudegeo.com>
586 * ILParser.jay: Set pinvoke info. Allow param attributes in type
589 2003-09-21 Jackson Harper <jackson@latitudegeo.com>
591 * ILParser.jay: Define data
593 2003-09-15 Jackson Harper <jackson@latitudegeo.com>
595 * ILParser.jay: dashed names aren't legal for file names, if the
596 name has a dash in it it needs to be quoted ie 'gtk-sharp'.
598 2003-09-12 Jackson Harper <jackson@latitudegeo.com>
600 * ILParser.jay: Fix typo in field inits. Methods attached to
601 modified types should be type spec method refs.
603 2003-08-19 Jackson Harper <jackson@latitudegeo.com>
605 * ILParser.jay: Implement address constants and string
606 constants. Add data definitions to their types, and create data
607 item lists. Also implement long form overrides.
609 2003-08-19 Jackson Harper <jackson@latitudegeo.com>
611 * ILParser.jay: Add override methods.
613 2003-08-10 Jackson Harper <jackson@latitudegeo.com>
615 * ILParser.jay: Create an empty array list for empty type
616 lists. Start phasing out INT32 because the tokenizer will no
617 longer create this token.
619 2003-08-03 Jackson Harper <jackson@latitudegeo.com>
621 * ILParser.jay: Use new sentinel type. Create valuetypes.
623 2003-08-03 Jackson Harper <jackson@latitudegeo.com>
625 * ILParser.jay: Make value types and enum types.
627 2003-08-03 Jackson Harper <jackson@latitudegeo.com>
629 * ILParser.jay: Create label references where appropriate instead
632 2003-08-02 Jackson Harper <jackson@latitudegeo.com>
634 * ILParser.jay: Set from label, not to label for filter block handlers
636 2003-07-30 Jackson Harper <jackson@latitudegeo.com>
638 * ILParser.jay: Create branch instructions with explicit offsets
640 2003-07-29 Jackson Harper <jackson@latitudegeo.com>
642 * ILParser.jay: Use new labeling system for handler blocks.
644 2003-07-29 Jackson Harper <jackson@latitudegeo.com>
646 * ILParser.jay: No longer need to supply method references
647 to instructions, they get that when emitting now.
649 2003-07-28 Jackson Harper <jackson@latitudegeo.com>
651 * ILParser.jay: Use TypeRef.Ellipsis instead of null for a
652 placeholder in bound arrays. Do not use AsClassRef anymore.
654 2003-07-21 Jackson Harper <jackson@latitudegeo.com>
656 * ILParser.jay: Set maxstack
658 2003-07-20 Jackson Harper <jackson@latitudegeo.com>
660 * ILParser.jay: Do not use the AsClassRef method anymore to attach
661 methods and fields to types. All types can do this now. Create
662 generic type refs and generic type instances.
664 2003-07-17 Jackson Harper <jackson@latitudegeo.com>
666 * ILParser.jay: Add generic type refs, and fake generic class refs.
668 2003-07-15 Jackson Harper <jackson@latitudegeo.com>
670 * ILParser.jay: Add generic type constraints and tokens used to
673 2003-07-16 Peter Williams <peter@newton.cx>
675 * .cvsignore: ILParser.cs has been moved.
677 2003-07-14 Jackson Harper <jackson@latitudegeo.com>
679 * ILParser.jay: Seperate generic constraints from generic parameters.
681 2003-06-14 Jackson Harper <jackson@latitudegeo.com>
683 * ILParser.jay: Add set imagebase, subsystem, and corflags.
685 2003-06-14 Jackson Harper <jackson@latitidegeo.com>
687 * ILParser.jay: Implement custom modified types.
689 2003-06-08 Jackson Harper <jackson@latitudegeo.com>
691 * ILParser.jay: Implement properties
693 2003-06-08 Jackson Harper <jackson@latitudegeo.com>
695 * ILParser.jay: Add generic type parameters to types. Implement events.
697 2003-06-04 Jackson Harper <jackson@latitudegeo.com>
699 * ILParser.jay: Assembly and module names may have dashes in them
700 (like gtk-sharp.dll).
702 2003-05-31 Jackson Harper <jackson@latitudegeo.com>
704 * ILParser.jay: Set assembly names. When looking up types in the
705 form [assembly]name first check if the assembly is this
706 assembly. Implement scope_blocks, and implement scope block form
709 2003-05-31 Jackson Harper <jackson@latitudegeo.com>
711 * ILParser.jay: Use type instead of params for calli signatures.
713 2003-05-31 Jackson Harper <jackson@latitudegeo.com>
715 * ILParser.jay: When looking up types first check to see if this
716 is actually a primitive object type (System.String,
717 System.Object). Add custom attributes to types. Handle the il
718 keyword the exact same way as cil. Add ellipsises to param and sig
719 lists. Add an optional name to typelists, this is just parsed it
720 is not implemented properly. Add custom attributes to
721 methods. Implement custom types (just methodrefs to ctors).
723 2003-05-25 Jackson Harper <jackson@latitudegeo.com>
725 * ILParser.jay: Pass call conv to methoref constructors. Add the
726 ELLIPSIS to type_lists, this is for vararg methods
728 2003-05-23 Jackson Harper <jackson@latitudegeo.com>
730 * ILParser.jay: Remove top secret debugging code.
732 2003-05-23 Jackson Harper <jackson@latitudegeo.com>
734 * ILParser.jay: Implement label form structured exception handling.
736 2003-05-22 Jackson Harper <jackson@latitudegeo.com>
738 * ILParser.jay: Comment out K_IMF and K_NAN these are not used in
741 2003-05-21 Jackson Harper <jackson@latitudegeo.com>
743 * ILParser.jay: Add ldc.r4 to INSTR_R int also fix cast to double.
745 2003-05-21 Jackson Harper <jackson@latitudegeo.com>
747 * ILParser.jay: When converting from int32 to int64 do an exact
748 bit conversion, not a numerical conversion.
750 2003-05-21 Jackson Harper <jackson@latitudegeo.com>
752 * ILParser.jay: INT_I8s are not int instructions, currently the
753 only INT_I8 instruction is ldc.i8 so this new code does more
754 checks then needed but is written in anticipation of some new long
755 instructions being found. Implement signature instructions, token
756 instructions, and signatures. Convert INT32s masquerading as
759 2003-05-19 Jackson Harper <jackson@latitudegeo.com>
761 * ILParser.jay: Same as below but with float64 ()
763 2003-05-19 Jackson Harper <jackson@latitudegeo.com>
765 * ILParser.jay: When the float32 (0xFFFFFF) syntax is used the hex
766 value represents the exact byte value of a float NOT an integer
767 value that is converted to a float.
769 2003-05-18 Jackson Harper <jackson@latitudegeo.com>
771 * ILParser.jay: Use new methods for converting types to
772 classrefs. Expand grammar for locals.
775 2003-05-18 Jackson Harper <jackson@latitudegeo.com>
777 * ILParser.jay: Convert cast integers to floats.
779 2003-05-11 Jackson Harper <jackson@latitudegeo.com>
781 * ILParser.jay: Add tokens for instructions that take param and
782 local args. Do not create empty lists for sig_args and
783 type_lists. Add param and local instructions.
785 2003-05-11 Jackson Harper <jackson@latitudegeo.com>
787 * ILParser.jay: Set size and packing information for types
789 2003-05-10 Jackson Harper <jackson@latitudegeo.com>
791 * ILParser.jay: Add field instructions
793 2003-05-10 Jackson Harper <jackson@latitudegeo.com>
795 * ILParser.jay: Add global method references
797 2003-05-10 Jackson Harper <jackson@latitudegeo.com>
799 * ILParser.jay: Add locals, method references, and method instructions
801 2003-05-07 Jackson Harper <jackson@latitudegeo.com>
803 * ILParser.jay: Add type instructions. NOTE - type_spec is not
804 fully implemented yet, so this has some explosive potential.
806 2003-05-07 Jackson Harper <jackson@latitudegeo.com>
808 * ILParser.jay: Remove dotted_name, it is not used at all
809 anymore. vtattr only take an int64 param, this fix gets rid of all
810 of the remaining reduce/reduce conflicts
812 2003-05-07 Jackson Harper <jackson@latitudegeo.com>
814 * ILParser.jay: Remove extraneous dotted_name, also make comp_name
815 contain dotted_name logic. Oh how I will miss the 301
816 reduce/reduce conflicts these small changes fixed :-)
818 2003-05-06 Jackson Harper <jackson@latitudegeo.com>
820 * ILParser.jay: Emit INSTR_I8 instructions as int
821 instructions. Implement label lists, emit switch instruction.
823 2003-05-05 Jackson Harper <jackson@latitudegeo.com>
825 * ILParser.jay: Add labels to methods, add branching instructions.
827 2003-05-04 Jackson Harper <jackson@latitudegeo.com>
829 * ILParser.jay: Use new MiscInstr.ldstr for ldstr, add INSTR_Rs
831 2003-05-04 Jackson Harper <jackson@latitudegeo.com>
833 * ILParser.jay: Set int64's masquerading as int32 to upper and
834 lower bounds if neccasary. NEED TO TEST this behavoir on windows.
836 2003-05-01 Jackson Harper <jackson@latitudegeo.com>
838 * ILParser.jay: Fix a bunch of conversions, implement hexbytes
840 2003-04-30 Jackson Harper <jackson@latitudegeo.com>
842 * ILParser.jay: Implement non marshalled methodheads, method
843 attributes, impl attributes, imit simple int and ldstr instructions.
845 2003-04-17 Jackson Harper <jackson@latitudegeo.com>
847 * ILParser.jay: Define data, fix repeat_opt allways being set.
849 2003-04-17 Jackson Harper <jackson@latitudegeo.com>
851 * ILParser.jay: Add external types to the extern type table.
853 2003-04-17 Jackson Harper <jackson@latitudegeo.com>
855 * ILParser.jay: Use new types and methods to build a tree.
857 2003-04-07 Jackson Harper <jackson@latitudegeo.com>
859 * ILParser.jay: Implement data items
861 2003-04-07 Jackson Harper <jackson@latitudegeo.com>
863 * ILParser.jay: Implement most field features
865 2003-04-05 Jackson Harper <jackson@latitudegeo.com>
867 * ILParser.jay: Set type parameter index
869 2003-04-05 Jackson Harper <jackson@latitudegeo.com>
871 * ILParser.jay: Emit parameterized types
873 2003-04-04 Jackson Harper <jackson@latitudegeo.com>
875 * ILParser.jay: Add parameterized method declarations.
877 2003-04-03 Jackson Harper <jackson@latitudegeo.com>
879 * ILParser.jay: Add parameterized types to classes.
881 2003-04-02 Jackson Harper <jackson@latitudegeo.com>
883 * ILParser.jay: Support most non-obsolete native types.
885 2003-04-02 Jackson Harper <jackson@latitudegeo.com>
887 * ILParser.jay: Proper names for native int and native uint
889 2003-04-01 Jackson Harper <jackson@latitudegeo.com>
891 * ILParser.jay: Add Call conventions, fix primitive spelling.
893 2003-04-01 Jackson Harper <jackson@latitudegeo.com>
895 * ILParser.jay: Add TypedRef primative type.
897 2003-04-01 Jackson Harper <jackson@latitudegeo.com>
899 * ILParser.jay: Support pinned, modreq, and modopt types.
901 2003-04-01 Jackson Harper <jackson@latitudegeo.com>
903 * ILParser.jay: Use the CodeGen CompleteClass method when a class
904 is completed instead of setting the current class to null. This
905 does some extra cleanup
907 2003-03-31 Jackson Harper <jackson@latitudegeo.com>
909 * ILParser.jay: Add bound arrays
911 2003-03-30 Jackson Harper <jackson@latitudegeo.com>
913 * ILParser.jay: Concat slashed names properly
915 2003-03-30 Jackson Harper <jackson@latitudegeo.com>
917 * ILParser.jay: Implement most of type
919 2003-03-30 Jackson Harper <jackson@latitudegeo.com>
921 * ILParser.jay: Add code from old parser to declare and define classes.
923 2003-03-30 Jackson Harper <jackson@latitudegeo.com>
925 * ILParser.jay: New grammar that I haven't made a mess of, this
926 takes all the special cases into account much better.
928 2003-03-19 Jackson Harper <jackson@latitudegeo.com>
930 * ILParser.jay: .hash algorithm can be followed by bytes
932 2003-03-19 Jackson Harper <jackson@latitudegeo.com>
934 * ILParser.jay: Allow assembly refs to have dots in name.
936 2003-03-17 Jackson Harper <jackson@latitudegeo.com>
938 * ILParser.jay: Add object to primative types
940 2003-03-17 Jackson Harper <jackson@latitudegeo.com>
942 * ILParser.jay: Set CallConv for opcodes that have a call conv,
945 2003-03-17 Jackson Harper <jackson@latitudegeo.com>
947 * ILParser.jay: Set CallConvs properly, use type_ref instead of type for
950 2003-03-16 Jackson Harper <jackson@latitudegeo.com>
952 * ILParser.jay: .ctor and .cctor can also be method names.
954 2003-03-16 Jackson Harper <jackson@latitudegeo.com>
956 * ILParser.jay: Use assembly_ref for extern assemblies so names with dashes can be used.
958 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
960 * ILParser.jay: Define local variables
962 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
964 * ILParser.jay: Add param_list definition, use param_list for method refs
966 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
968 * ILParser.jay: de-bacwardificate values passed to add method,
969 I was setting the return to the parent before, but the parent
970 value was being set to the return type value so it all worked
971 out but was very confusing.
973 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
975 * ILParser.jay: Add external field references
977 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
979 * ILParser.jay: Add fields to the field table, add field references,
980 emit instructions that take a field param
982 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
984 * ILParser.jay: Emit ldstr instruction
986 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
988 * ILParser.jay: Create external method references
990 2003-03-14 Jackson Harper <jackson@latitudegeo.com>
992 * ILParser.jay: Emit instructions that take a method def as a single param
994 2003-03-14 Jackson Harper <jackson@latitudegeo.com>
996 * ILParser.jay: Emit instructions that take a single type as a param
998 2003-03-14 Jackson Harper <jackson@latitudegeo.com>
1000 * ILParser.jay: Emit instructions that take a single int32 as a param
1002 2003-03-13 Jackson Harper <jackson@latitudegeo.com>
1004 * ILParser.jay: Remove unused references
1006 2003-03-13 Jackson Harper <jackson@latitudegeo.com>
1008 * ILParser.jay: Emit simple instructions
1010 2003-03-13 Jackson Harper <jackson@latitudegeo.com>
1012 * ILParser.jay: Set MaxStack, clean up some typos
1014 2003-03-13 Jackson Harper <jackson@latitudegeo.com>
1016 * ILParser.jay: Set entrypoint
1018 2003-03-11 Jackson Harper <jackson@latitudegeo.com>
1020 * ILParser.jay: Create TypeRefs instead of types, define methods.
1022 2003-03-09 Jackson Harper <jackson@latitudegeo.com>
1024 * ILParser.jay: Set Call Conventions and Implementation Flags
1026 2003-03-09 Jackson Harper <jackson@latitudegeo.com>
1028 * ILParser.jay: Add implemented interfaces
1030 2003-03-08 Jackson Harper <jackson@latitudegeo.com>
1032 * ILParser.jay: Create method attributes
1034 2003-03-08 Jackson Harper <jackson@latitudegeo.com>
1036 * ILParser.jay: Reference external assemblies.
1038 2003-03-06 Jackson Harper <jackson@latitudegeo.com>
1040 * ILParser.jay: Implemented class inheritence
1042 2003-03-06 Jackson Harper <jackson@latitudegeo.com>
1044 * ILParser.jay: Pass null Location when adding class, concat dottedName pieces
1046 2003-03-06 Jackson Harper <jackson@latitudegeo.com>
1048 * ILParser.jay: Reconfigure to work with new PEAPI emission system
1050 2003-02-10 Jackson Harper <jackson@latitudegeo.com>
1052 * ILParser.jay: Use arg_list for method signatures, set method parameters
1054 2003-02-09 Jackson Harper <jackson@latitudegeo.com>
1056 * ILParser.jay: full names can be short names too (for members)
1058 2003-02-09 Jackson Harper <jackson@latitudegeo.com>
1060 * ILParser.jay: Use full names for calling instructions
1062 2003-02-08 Jackson Harper <jackson@latitudegeo.com>
1064 * ILParser.jay: Create type names properly
1066 2003-02-08 Jackson Harper <jackson@latitudegeo.com>
1068 * ILParser.jay: Handle argument lists better
1070 2003-02-08 Jackson Harper <jackson@latitudegeo.com>
1072 * ILParser.jay: Handle .local and newobj
1074 2003-02-06 Jackson Harper <jackson@latitudegeo.com>
1076 * ILParser.jay: Allow assembly names to have lots of dashes.
1078 2003-02-06 Jackson Harper <jackson@latitudegeo.com>
1080 * ILParser.jay: Add dash token, allow assembly refs to have dashes in their names.
1082 2003-02-02 Jackson Harper <jackson@latitudegeo.com>
1084 * ILParser.jay: Add call instruction, other little fixes and additions