* ILParser.jay: Set true and false literals properly. Add instance
[mono.git] / mcs / ilasm / parser / ChangeLog
1 2004-03-28  Jackson Harper  <jackson@ximian.com>
2
3         * ILParser.jay: Set true and false literals properly. Add instance
4         property attribute.
5         
6 2004-02-18  Jackson Harper  <jackson@ximian.com>
7
8         * ILParser.jay: Create ExternTypeRefInsts when a valuetype
9         extern_class is encountered. This way the underlying type is not
10         changed to a value type.
11         
12
13 2003-12-10  Jackson Harper <jackson@ximian.com>
14
15         * ILParser.jay: When modifying extern types, clone them and modify
16         the clone.
17         
18 2003-12-10  Jackson Harper <jackson@ximian.com>
19
20         * ILParser.jay: Use the extern table for all extern type
21         creations.
22         
23 2003-12-10  Jackson Harper <jackson@ximian.com>
24
25         * ILParser.jay: Add COMP_NAME token.
26         
27 2003-12-10  Jackson Harper <jackson@ximian.com>
28
29         * ILParser.jay: vtable fixups can be int32s
30         
31 2003-11-18  Jackson Harper <jackson@ximian.com>
32
33         * ILParser.jay: Add zeroinit.
34         
35 2003-11-17 Jackson Harper <jackson@ximian.com>
36
37         * ILParser.jay: Create strings from byte arrays. Fix parsing of
38         bytes that are passed as INT64.
39         
40 2003-11-16 Jackson Harper <jackson@ximian.com>
41
42         * ILParser.jay: Handle string instructions that are given byte
43         arrays. This fixes bug #51039.
44         
45 2003-10-28 Jackson Harper <jackson@ximian.com>
46
47         * ILParser.jay: Use the ExternTable to create external type
48         references. Remove some ultra top secret debugging code.
49         
50 2003-10-17 Jackson Harper <jackson@ximian.com>
51
52         * ILParser.jay: Set value types, set enums as value types. Use
53         correct var for call conv in method signatures.
54         
55 2003-10-10 Jackson Harper <jackson@ximian.com>
56
57         * ILParser.jay: Create generic method refs.
58         
59 2003-10-08 Jackson Harper <jackson@ximian.com>
60
61         * ILParser.jay: Attach generic type parameters to methods.
62         
63 2003-09-27 Jackson Harper <jackson@latitudegeo.com>
64
65         * ILParser.jay: Set pinvoke info. Allow param attributes in type
66         lists.
67         
68 2003-09-21 Jackson Harper <jackson@latitudegeo.com>
69
70         * ILParser.jay: Define data
71         
72 2003-09-15 Jackson Harper <jackson@latitudegeo.com>
73
74         * ILParser.jay: dashed names aren't legal for file names, if the
75         name has a dash in it it needs to be quoted ie 'gtk-sharp'.
76         
77 2003-09-12 Jackson Harper <jackson@latitudegeo.com>
78
79         * ILParser.jay: Fix typo in field inits. Methods attached to
80         modified types should be type spec method refs.
81         
82 2003-08-19 Jackson Harper <jackson@latitudegeo.com>
83
84         * ILParser.jay: Implement address constants and string
85         constants. Add data definitions to their types, and create data
86         item lists. Also implement long form overrides.
87         
88 2003-08-19 Jackson Harper <jackson@latitudegeo.com>
89
90         * ILParser.jay: Add override methods.
91         
92 2003-08-10 Jackson Harper <jackson@latitudegeo.com>
93
94         * ILParser.jay: Create an empty array list for empty type
95         lists. Start phasing out INT32 because the tokenizer will no
96         longer create this token.
97                 
98 2003-08-03 Jackson Harper <jackson@latitudegeo.com>
99
100         * ILParser.jay: Use new sentinel type. Create valuetypes.
101
102 2003-08-03 Jackson Harper <jackson@latitudegeo.com>
103
104         * ILParser.jay: Make value types and enum types.
105         
106 2003-08-03 Jackson Harper <jackson@latitudegeo.com>
107
108         * ILParser.jay: Create label references where appropriate instead
109         of adding labels.
110         
111 2003-08-02 Jackson Harper <jackson@latitudegeo.com>
112
113         * ILParser.jay: Set from label, not to label for filter block handlers
114         
115 2003-07-30 Jackson Harper <jackson@latitudegeo.com>
116
117         * ILParser.jay: Create branch instructions with explicit offsets
118         
119 2003-07-29 Jackson Harper <jackson@latitudegeo.com>
120
121         * ILParser.jay: Use new labeling system for handler blocks.
122         
123 2003-07-29 Jackson Harper <jackson@latitudegeo.com>
124
125         * ILParser.jay: No longer need to supply method references
126         to instructions, they get that when emitting now.
127         
128 2003-07-28 Jackson Harper <jackson@latitudegeo.com>
129
130         * ILParser.jay: Use TypeRef.Ellipsis instead of null for a 
131         placeholder in bound arrays. Do not use AsClassRef anymore.
132         
133 2003-07-21 Jackson Harper <jackson@latitudegeo.com>
134
135         * ILParser.jay: Set maxstack
136         
137 2003-07-20 Jackson Harper <jackson@latitudegeo.com>
138
139         * ILParser.jay: Do not use the AsClassRef method anymore to attach
140         methods and fields to types. All types can do this now. Create
141         generic type refs and generic type instances. 
142         
143 2003-07-17 Jackson Harper <jackson@latitudegeo.com>
144
145         * ILParser.jay: Add generic type refs, and fake generic class refs.
146                 
147 2003-07-15 Jackson Harper <jackson@latitudegeo.com>
148
149         * ILParser.jay: Add generic type constraints and tokens used to
150         create them
151                 
152 2003-07-16  Peter Williams  <peter@newton.cx>
153
154         * .cvsignore: ILParser.cs has been moved.
155
156 2003-07-14 Jackson Harper <jackson@latitudegeo.com>
157
158         * ILParser.jay: Seperate generic constraints from generic parameters.
159                 
160 2003-06-14 Jackson Harper <jackson@latitudegeo.com>
161
162         * ILParser.jay: Add set imagebase, subsystem, and corflags.
163                 
164 2003-06-14 Jackson Harper <jackson@latitidegeo.com>
165
166         * ILParser.jay: Implement custom modified types.
167                 
168 2003-06-08 Jackson Harper <jackson@latitudegeo.com>
169
170         * ILParser.jay: Implement properties
171                 
172 2003-06-08 Jackson Harper <jackson@latitudegeo.com>
173
174         * ILParser.jay: Add generic type parameters to types. Implement events.
175                 
176 2003-06-04 Jackson Harper <jackson@latitudegeo.com>
177
178         * ILParser.jay: Assembly and module names may have dashes in them
179         (like gtk-sharp.dll).
180                 
181 2003-05-31 Jackson Harper <jackson@latitudegeo.com>
182
183         * ILParser.jay: Set assembly names. When looking up types in the
184         form [assembly]name first check if the assembly is this
185         assembly. Implement scope_blocks, and implement scope block form
186         exception handling.
187                 
188 2003-05-31 Jackson Harper <jackson@latitudegeo.com>
189
190         * ILParser.jay: Use type instead of params for calli signatures.
191                 
192 2003-05-31 Jackson Harper <jackson@latitudegeo.com>
193
194         * ILParser.jay: When looking up types first check to see if this
195         is actually a primitive object type (System.String,
196         System.Object). Add custom attributes to types. Handle the il
197         keyword the exact same way as cil. Add ellipsises to param and sig
198         lists. Add an optional name to typelists, this is just parsed it
199         is not implemented properly. Add custom attributes to
200         methods. Implement custom types (just methodrefs to ctors).
201                 
202 2003-05-25 Jackson Harper <jackson@latitudegeo.com>
203
204         * ILParser.jay: Pass call conv to methoref constructors. Add the
205         ELLIPSIS to type_lists, this is for vararg methods
206                 
207 2003-05-23 Jackson Harper <jackson@latitudegeo.com>
208
209         * ILParser.jay: Remove top secret debugging code.
210                 
211 2003-05-23 Jackson Harper <jackson@latitudegeo.com>
212
213         * ILParser.jay: Implement label form structured exception handling.
214                 
215 2003-05-22 Jackson Harper <jackson@latitudegeo.com>
216
217         * ILParser.jay: Comment out K_IMF and K_NAN these are not used in
218         the grammar.
219                 
220 2003-05-21 Jackson Harper <jackson@latitudegeo.com>
221
222         * ILParser.jay: Add ldc.r4 to INSTR_R int also fix cast to double.
223                 
224 2003-05-21 Jackson Harper <jackson@latitudegeo.com>
225
226         * ILParser.jay: When converting from int32 to int64 do an exact
227         bit conversion, not a numerical conversion.
228                 
229 2003-05-21 Jackson Harper <jackson@latitudegeo.com>
230
231         * ILParser.jay: INT_I8s are not int instructions, currently the
232         only INT_I8 instruction is ldc.i8 so this new code does more
233         checks then needed but is written in anticipation of some new long
234         instructions being found. Implement signature instructions, token
235         instructions, and signatures. Convert INT32s masquerading as
236         INT64s to Int64.
237                 
238 2003-05-19 Jackson Harper <jackson@latitudegeo.com>
239
240         * ILParser.jay: Same as below but with float64 ()
241                 
242 2003-05-19 Jackson Harper <jackson@latitudegeo.com>
243
244         * ILParser.jay: When the float32 (0xFFFFFF) syntax is used the hex
245         value represents the exact byte value of a float NOT an integer
246         value that is converted to a float.
247                 
248 2003-05-18 Jackson Harper <jackson@latitudegeo.com>
249
250         * ILParser.jay: Use new methods for converting types to
251         classrefs. Expand grammar for locals.
252
253                 
254 2003-05-18 Jackson Harper <jackson@latitudegeo.com>
255
256         * ILParser.jay: Convert cast integers to floats.
257                 
258 2003-05-11 Jackson Harper <jackson@latitudegeo.com>
259
260         * ILParser.jay: Add tokens for instructions that take param and
261         local args. Do not create empty lists for sig_args and
262         type_lists. Add param and local instructions.
263                 
264 2003-05-11 Jackson Harper <jackson@latitudegeo.com>
265
266         * ILParser.jay: Set size and packing information for types
267                 
268 2003-05-10 Jackson Harper <jackson@latitudegeo.com>
269
270         * ILParser.jay: Add field instructions
271                 
272 2003-05-10 Jackson Harper <jackson@latitudegeo.com>
273
274         * ILParser.jay: Add global method references
275                 
276 2003-05-10 Jackson Harper <jackson@latitudegeo.com>
277
278         * ILParser.jay: Add locals, method references, and method instructions
279                 
280 2003-05-07 Jackson Harper <jackson@latitudegeo.com>
281
282         * ILParser.jay: Add type instructions. NOTE - type_spec is not
283         fully implemented yet, so this has some explosive potential.
284                 
285 2003-05-07 Jackson Harper <jackson@latitudegeo.com>
286
287         * ILParser.jay: Remove dotted_name, it is not used at all
288         anymore. vtattr only take an int64 param, this fix gets rid of all
289         of the remaining reduce/reduce conflicts
290                 
291 2003-05-07 Jackson Harper <jackson@latitudegeo.com>
292
293         * ILParser.jay: Remove extraneous dotted_name, also make comp_name
294         contain dotted_name logic. Oh how I will miss the 301
295         reduce/reduce conflicts these small changes fixed :-)
296                 
297 2003-05-06 Jackson Harper <jackson@latitudegeo.com>
298
299         * ILParser.jay: Emit INSTR_I8 instructions as int
300         instructions. Implement label lists, emit switch instruction.
301                 
302 2003-05-05 Jackson Harper <jackson@latitudegeo.com>
303
304         * ILParser.jay: Add labels to methods, add branching instructions.
305                 
306 2003-05-04 Jackson Harper <jackson@latitudegeo.com>
307
308         * ILParser.jay: Use new MiscInstr.ldstr for ldstr, add INSTR_Rs
309                 
310 2003-05-04 Jackson Harper <jackson@latitudegeo.com>
311
312         * ILParser.jay: Set int64's masquerading as int32 to upper and
313         lower bounds if neccasary. NEED TO TEST this behavoir on windows.
314                 
315 2003-05-01 Jackson Harper <jackson@latitudegeo.com>
316
317         * ILParser.jay: Fix a bunch of conversions, implement hexbytes
318                 
319 2003-04-30 Jackson Harper <jackson@latitudegeo.com>
320
321         * ILParser.jay: Implement non marshalled methodheads, method
322         attributes, impl attributes, imit simple int and ldstr instructions.
323                 
324 2003-04-17 Jackson Harper <jackson@latitudegeo.com>
325
326         * ILParser.jay: Define data, fix repeat_opt allways being set.
327                 
328 2003-04-17 Jackson Harper <jackson@latitudegeo.com>
329
330         * ILParser.jay: Add external types to the extern type table.
331                 
332 2003-04-17 Jackson Harper <jackson@latitudegeo.com>
333
334         * ILParser.jay: Use new types and methods to build a tree.
335                 
336 2003-04-07 Jackson Harper <jackson@latitudegeo.com>
337
338         * ILParser.jay: Implement data items
339                 
340 2003-04-07 Jackson Harper <jackson@latitudegeo.com>
341
342         * ILParser.jay: Implement most field features
343                 
344 2003-04-05 Jackson Harper <jackson@latitudegeo.com>
345
346         * ILParser.jay: Set type parameter index
347                 
348 2003-04-05 Jackson Harper <jackson@latitudegeo.com>
349
350         * ILParser.jay: Emit parameterized types
351                 
352 2003-04-04 Jackson Harper <jackson@latitudegeo.com>
353
354         * ILParser.jay: Add parameterized method declarations.
355                 
356 2003-04-03 Jackson Harper <jackson@latitudegeo.com>
357
358         * ILParser.jay: Add parameterized types to classes.
359                 
360 2003-04-02 Jackson Harper <jackson@latitudegeo.com>
361
362         * ILParser.jay: Support most non-obsolete native types.
363                 
364 2003-04-02 Jackson Harper <jackson@latitudegeo.com>
365
366         * ILParser.jay: Proper names for native int and native uint
367                 
368 2003-04-01 Jackson Harper <jackson@latitudegeo.com>
369
370         * ILParser.jay: Add Call conventions, fix primitive spelling.
371         
372 2003-04-01 Jackson Harper <jackson@latitudegeo.com>
373
374         * ILParser.jay: Add TypedRef primative type.
375         
376 2003-04-01 Jackson Harper <jackson@latitudegeo.com>
377
378         * ILParser.jay: Support pinned, modreq, and modopt types.
379         
380 2003-04-01 Jackson Harper <jackson@latitudegeo.com>
381
382         * ILParser.jay: Use the CodeGen CompleteClass method when a class
383         is completed instead of setting the current class to null. This
384         does some extra cleanup
385         
386 2003-03-31 Jackson Harper <jackson@latitudegeo.com>
387
388         * ILParser.jay: Add bound arrays
389         
390 2003-03-30 Jackson Harper <jackson@latitudegeo.com>
391
392         * ILParser.jay: Concat slashed names properly
393         
394 2003-03-30 Jackson Harper <jackson@latitudegeo.com>
395
396         * ILParser.jay: Implement most of type
397         
398 2003-03-30 Jackson Harper <jackson@latitudegeo.com>
399
400         * ILParser.jay: Add code from old parser to declare and define classes.
401                 
402 2003-03-30 Jackson Harper <jackson@latitudegeo.com>
403
404         * ILParser.jay: New grammar that I haven't made a mess of, this
405         takes all the special cases into account much better.
406                 
407 2003-03-19 Jackson Harper <jackson@latitudegeo.com>
408
409         * ILParser.jay: .hash algorithm can be followed by bytes
410
411 2003-03-19 Jackson Harper <jackson@latitudegeo.com>
412
413         * ILParser.jay: Allow assembly refs to have dots in name.
414
415 2003-03-17 Jackson Harper <jackson@latitudegeo.com>
416
417         * ILParser.jay: Add object to primative types
418
419 2003-03-17 Jackson Harper <jackson@latitudegeo.com>
420
421         * ILParser.jay: Set CallConv for opcodes that have a call conv, 
422         like call and newobj
423
424 2003-03-17 Jackson Harper <jackson@latitudegeo.com>
425
426         * ILParser.jay: Set CallConvs properly, use type_ref instead of type for
427         method overrides.
428
429 2003-03-16 Jackson Harper <jackson@latitudegeo.com>
430
431         * ILParser.jay: .ctor and .cctor can also be method names.
432
433 2003-03-16 Jackson Harper <jackson@latitudegeo.com>
434
435         * ILParser.jay: Use assembly_ref for extern assemblies so names with dashes can be used.
436
437 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
438
439         * ILParser.jay: Define local variables
440
441 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
442
443         * ILParser.jay: Add param_list definition, use param_list for method refs
444
445 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
446
447         * ILParser.jay: de-bacwardificate values passed to add method, 
448         I was setting the return to the parent before, but the parent 
449         value was being set to the return type value so it all worked 
450         out but was very confusing.
451
452 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
453
454         * ILParser.jay: Add external field references
455
456 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
457
458         * ILParser.jay: Add fields to the field table, add field references,
459         emit instructions that take a field param
460
461 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
462
463         * ILParser.jay: Emit ldstr instruction
464
465 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
466
467         * ILParser.jay: Create external method references
468
469 2003-03-14 Jackson Harper <jackson@latitudegeo.com>
470
471         * ILParser.jay: Emit instructions that take a method def as a single param
472
473 2003-03-14 Jackson Harper <jackson@latitudegeo.com>
474
475         * ILParser.jay: Emit instructions that take a single type as a param
476
477 2003-03-14 Jackson Harper <jackson@latitudegeo.com>
478
479         * ILParser.jay: Emit instructions that take a single int32 as a param
480
481 2003-03-13 Jackson Harper <jackson@latitudegeo.com>
482
483         * ILParser.jay: Remove unused references
484
485 2003-03-13 Jackson Harper <jackson@latitudegeo.com>
486
487         * ILParser.jay: Emit simple instructions
488
489 2003-03-13 Jackson Harper <jackson@latitudegeo.com>
490
491         * ILParser.jay: Set MaxStack, clean up some typos
492
493 2003-03-13 Jackson Harper <jackson@latitudegeo.com>
494
495         * ILParser.jay: Set entrypoint 
496
497 2003-03-11 Jackson Harper <jackson@latitudegeo.com>
498
499         * ILParser.jay: Create TypeRefs instead of types, define methods.
500
501 2003-03-09 Jackson Harper <jackson@latitudegeo.com>
502
503         * ILParser.jay: Set Call Conventions and Implementation Flags
504
505 2003-03-09 Jackson Harper <jackson@latitudegeo.com>
506
507         * ILParser.jay: Add implemented interfaces
508
509 2003-03-08 Jackson Harper <jackson@latitudegeo.com>
510
511         * ILParser.jay: Create method attributes
512
513 2003-03-08 Jackson Harper <jackson@latitudegeo.com>
514
515         * ILParser.jay: Reference external assemblies.
516
517 2003-03-06 Jackson Harper <jackson@latitudegeo.com>
518
519         * ILParser.jay: Implemented class inheritence
520
521 2003-03-06 Jackson Harper <jackson@latitudegeo.com>
522
523         * ILParser.jay: Pass null Location when adding class, concat dottedName pieces
524
525 2003-03-06 Jackson Harper <jackson@latitudegeo.com>
526
527         * ILParser.jay: Reconfigure to work with new PEAPI emission system
528
529 2003-02-10 Jackson Harper <jackson@latitudegeo.com>
530
531         * ILParser.jay: Use arg_list for method signatures, set method parameters
532
533 2003-02-09 Jackson Harper <jackson@latitudegeo.com>
534
535         * ILParser.jay: full names can be short names too (for members)
536
537 2003-02-09 Jackson Harper <jackson@latitudegeo.com>
538
539         * ILParser.jay: Use full names for calling instructions
540
541 2003-02-08 Jackson Harper <jackson@latitudegeo.com>
542
543         * ILParser.jay: Create type names properly
544
545 2003-02-08 Jackson Harper <jackson@latitudegeo.com>
546
547         * ILParser.jay: Handle argument lists better
548
549 2003-02-08 Jackson Harper <jackson@latitudegeo.com>
550
551         * ILParser.jay: Handle .local and newobj
552
553 2003-02-06 Jackson Harper <jackson@latitudegeo.com>
554
555         * ILParser.jay: Allow assembly names to have lots of dashes.
556
557 2003-02-06 Jackson Harper <jackson@latitudegeo.com>
558
559         * ILParser.jay: Add dash token, allow assembly refs to have dashes in their names.
560
561 2003-02-02 Jackson Harper <jackson@latitudegeo.com>
562
563         * ILParser.jay: Add call instruction, other little fixes and additions