2007-09-18 Jb Evain <jbevain@novell.com>
[mono.git] / mcs / class / Mono.Cecil / ChangeLog
1 2007-09-18  Jb Evain  <jbevain@novell.com>
2
3         * Mono.Cecil.Cil/MethodBody.cs:
4                 Adapt a patch from Ivan <ivanjh@gmail.com>.
5                 Fix cloning of the This parameter.
6
7 2007-09-12  Jb Evain  <jbevain@novell.com>
8
9         * Mono.Cecil/ReflectionReader.cs
10           Mono.Cecil.Signatures/SignatureReader.cs
11           Mono.Cecil.Signatures/TypeSpec.cs
12           Mono.Cecil.Signatures/SignatureWriter.cs:
13                 Deal with custom mods on typespecs.
14
15 2007-09-12  Jb Evain  <jbevain@novell.com>
16
17         * Mono.Cecil.Binary/ImageReader.cs: some 64bits assemblies
18         have a strange header without import tables.
19
20 2007-09-09  Jb Evain  <jbevain@novell.com>
21
22         * Mono.Cecil/GenericContext.cs
23           Mono.Cecil/ReflectionReader.cs
24           Mono.Cecil/DefaultImporter.cs:
25                 Better handling of generic instances of references, where
26                 the number of generic parameters is not known.
27
28 2007-09-06  Jb Evain  <jbevain@novell.com>
29
30         * Mono.Cecil/MethodDefinition: add Is** methods for MethodImplAttributes.
31
32 2007-09-04  Jb Evain  <jbevain@novell.com>
33
34         * Mono.Cecil/ReflectionWriter.cs:
35                 Adapt a patch by Ewout Prangsma <ewout@tallapplications.com>.
36                 Cache the typespec tokens instead of the typespec themselves
37                 because GenericParameters are somethimes considered as typespecs.
38
39 2007-08-28  Jb Evain  <jbevain@novell.com>
40
41         * Mono.Cecil.Cil/CodeWriter.cs
42           Mono.Cecil/ReflectionWriter.cs
43           Mono.Cecil.Cil/SymbolStoreHelper.cs
44           Mono.Cecil.Signatures/SignatureWriter.cs:
45                 Generate proper variables signatures for symbols
46                 stores.
47
48 2007-08-19  Jb Evain  <jbevain@novell.com>
49
50         * Mono.Cecil.Cil/CodeReader.cs:
51                 Deal with generic exceptions.
52
53 2007-08-15  Jb Evain  <jbevain@novell.com>
54
55         * CodeGen/cecil.xml,
56           Mono.Cecil.Cil/OpCodes.cs:
57                 Fix bug spotted by Jesse Jones, ldelem.any has a
58                 stack behavior pop of popref, popi.
59
60 2007-08-15  Jb Evain  <jbevain@novell.com>
61
62         * Mono.Cecil/TypeReference.cs
63           Mono.Cecil/TypeSpecification.cs:
64                 TypeSpecification.Module return the module of the elemen
65                 type now.
66
67 2007-08-13  Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
68
69         * default.build
70           Mono.Cecil/AssemblyInfo.cs:
71                 Ability to pass custom defines to the c# compiler through
72                 the csc.defines property. KEYFILE can be used to force
73                 an AssemblyKeyFile attribute on AssemblyInfo.cs so strongly
74                 signed versions of Mono.Cecil can be produced on .net 1.1,
75                 cf 1.0 and cf 2.0.
76
77 2007-08-13  Jb Evain  <jbevain@novell.com>
78
79         * Mono.Cecil.Cil/CilWorker.cs:
80                 Fix InsertBefore.
81
82 2007-08-06  Jb Evain  <jbevain@novell.com>
83
84         * Mono.Cecil.Cil/CilWorker.cs:
85                 Fix the linked list after an InsertBefore, InsertAfter.
86
87 2007-08-02  Jb Evain  <jbevain@novell.com>
88
89         * Mono.Cecil/GenericParameter.cs
90           Mono.Cecil/FieldDefinition.cs
91           Mono.Cecil/TypeDefinition.cs
92           Mono.Cecil/MethodDefinition.cs
93           Mono.Cecil/EventDefinition.cs
94           Mono.Cecil/PInvokeInfo.cs
95           Mono.Cecil/Resource.cs
96           Mono.Cecil/ParameterDefinition.cs
97           Mono.Cecil/PropertyDefinition.cs:
98
99                 Add Isxxx properties based on the xxxAttributes enums.
100
101 2007-07-23  Raja R Harinath  <rharinath@novell.com>
102
103         Fix 'make warnings'.
104         * Makefile (LIBRARY_PACKAGE): Set to none.
105         (install-local): Remove.
106
107 2007-07-21  Jb Evain  <jbevain@novell.com>
108
109         * Mono.Cecil/TypeReference.cs
110           Mono.Cecil/TypeSpecification.cs:
111                 Add a new GetOriginalType () method.
112
113         * Mono.Cecil/MethodReference.cs
114           Mono.Cecil/MethodSpecification.cs:
115                 Add a new GetOriginalMethod () method.
116
117 2007-07-19  Jb Evain  <jbevain@novell.com>
118
119         * Mono.Cecil/AssemblyFactory.cs
120           Mono.Cecil.Binary/Image.cs:
121                 Update the fileinfo after writing an assembly
122                 to a file.
123
124 2007-07-19  Jb Evain  <jbevain@novell.com>
125
126         * Mono.Cecil/ReflectionReader.cs
127           Mono.Cecil.Cil/CodeReader.cs
128           Mono.Cecil.Signature/SignatureReader.cs:
129                 Better handling of the sentil in the varargs methods.
130
131         * Mono.Cecil/ReflectionReader.cs
132           Mono.Cecil/SentinelType.cs
133           Mono.Cecil.Cil/CodeWriter.cs:
134           Mono.Cecil.Signatures/SignatureReader.cs:
135                 Fix handling of varargs methods.
136
137 2007-07-18  Jb Evain  <jbevain@novell.com>
138
139         * Mono.Cecil.Cil/CodeReader.cs
140           Mono.Cecil.Cil/CodeWriter.cs:
141                 Deal with non-sense instructions that some
142                 obfuscators emit.
143
144         * Mono.Cecil/AggressiveReflectionReader.cs:
145                 Deal with out of range properties.
146         * Mono.Cecil.Metadata/StringsHeap.cs:
147                 Deal with out of range string indexes.
148
149 2007-07-17  Jb Evain  <jbevain@novell.com>
150
151         * Mono.Cecil/AggressiveReflectionReader.cs:
152                 Add some gards against zeroed tokens.
153
154         * Mono.Cecil.Metadata/Utilities.cs:
155                 Return zero instead of throwing on invalid tags.
156                 Allow Cecil to read assemblies partially broken
157                 by some obfuscators.
158
159 2007-07-14  Gert Driesen  <drieseng@users.sourceforge.net>
160
161         * default.build: Fix relative path to key. Avoid use of ugly foreach
162         contruct. Spaces to tabs.
163         * Mono.Cecil.csproj: Fix relative path to key.
164         * standalone.make: Fix relative path to key and config.make.
165
166 2007-07-03  Jb Evain  <jbevain@novell.com>
167
168         * Mono.Cecil/BaseAssemblyResolver.cs:
169                 Expose a way to add default directories
170                 where the assemblies are first looked for.
171
172 2007-06-20  Jb Evain  <jbevain@novell.com>
173
174         * Mono.Cecil/IReferenceImporter.cs => IImporter.cs
175           Mono.Cecil/DefaultReferenceImporter.cs => DefaultImporter.cs
176
177         * Mono.Cecil/ReflectionHelper.cs
178           Mono.Cecil/DefaultReferenceImporter.cs
179           Mono.Cecil/ModuleDefinition.cs:
180                 Move Cecil types import logic into
181                 the DefaultReferenceImporter.
182
183                 Needed by the merger and the extractor.
184
185 2007-06-19  Jb Evain  <jbevain@novell.com>
186
187         * Mono.Cecil.Cil/MethodBody.cs:
188                 Avoid invalid cast by properly simplifying
189                 instructions.
190
191         * Mono.Cecil.Cil/OpCodes.cs:
192           CodeGen/cecil.xml:
193                 leave.s is a macro instruction.
194
195         * Mono.Cecil/TypeDefinition.cs
196           Mono.Cecil/ParameterDefinition.cs:
197                 Fix cloning.
198
199 2007-06-18  Jb Evain  <jbevain@novell.com>
200
201         * Mono.Cecil/ReflectionReader.cs:
202                 Fix custom mods for fields ref.
203
204 2007-06-13  Jb Evain  <jbevain@novell.com>
205
206         Integrated patches by:
207         Paul Apostolescu <papostolescu@fortifysoftware.com>
208
209         * patch3:
210           Mono.Cecil/ReflectionReader.cs
211           Mono.Cecil.Signatures/SignatureWriter.cs:
212                 In named args, objects are encoded as boxed.
213
214         * patch1:
215           Mono.Cecil/IMemberDefinition.cs
216           Mono.Cecil/Constants.cs
217           Mono.Cecil/ReflectionReader.cs
218           Mono.Cecil/AggressiveReflectionReader.cs:
219                 Do not take into account special _Deleted
220                 members.
221
222         * patch6:
223           Mono.Cecil/StructureReader.cs:
224                 Read the flags of the references as well.
225
226         * patch5:
227           Mono.Cecil.Metadata/UserStringsHeap.cs:
228                 Don't bother getting a string from the bytes
229                 if the length is < 2 (0, or 0 + an encoding flag)
230
231         * patch4:
232           Mono.Cecil/ReflectionHelper.cs:
233                 Update the value type flags of types
234                 when they are imported if the type
235                 reference was first seen as a type reference.
236
237         * patch2:
238           Mono.Cecil.Signature/SignatureWriter.cs:
239                 Patch to handle nullref values for types in
240                 custom attributes arguments.
241
242 2007-06-13  Jb Evain  <jbevain@novell.com>
243
244         * Mono.Cecil/StructureWriter.cs,
245           Mono.Cecil/ReflectionWriter.cs:
246                 Revert the on demand creation of memberref.
247
248 2007-06-12  Jb Evain  <jbevain@novell.com>
249
250         * Mono.Cecil/CallSite.cs
251           Mono.Cecil/ModuleReference.cs
252           Mono.Cecil/CustomAttribute.cs
253           Mono.Cecil/AssemblyDefinition.cs
254           Mono.Cecil/SecurityDeclaration.cs
255           Mono.Cecil/AssemblyNameReference.cs
256           Mono.Cecil/MemberReference.cs
257           Mono.Cecil/Resource.cs
258           Mono.Cecil/ParameterReference.cs:
259                 Implement explicitely IAnnotationProvider.
260
261 2007-06-05  Jb Evain  <jbevain@novell.com>
262
263         * Mono.Cecil/AssemblyNameReference.cs:
264                 Cache the fullname when possible.
265
266 2007-05-31  Jb Evain  <jbevain@novell.com>
267
268         * Mono.Cecil/ModuleDefinition.cs:
269                 Add types to the module and members to the context
270                 on inject.
271
272         * Mono.Cecil/BaseAssemblyResolver.cs:
273                 Improve resolve, works for people requiring
274                 .net 1.0 assemblies when they only have 1.1.
275
276 2007-05-30  Jb Evain  <jbevain@novell.com>
277
278         * Mono.Cecil/DefaultAssemblyResolver.cs:
279                 Add a RegisterAssembly method to register an
280                 assembly to the cache without having to resolve it.
281
282         * Mono.Cecil/DefaultReferenceImporter.cs:
283                 Make methods virtual.
284
285         * Mono.Cecil.dll.sources
286           Mono.Cecil.csproj
287           Mono.Cecil/ReflectionHelper.cs
288           Mono.Cecil/IReferenceImporter.cs
289           Mono.Cecil/FieldDefinition.cs
290           Mono.Cecil/CustomAttribute.cs
291           Mono.Cecil/ImportContext.cs
292           Mono.Cecil/NullReferenceImporter.cs
293           Mono.Cecil/MethodDefinition.cs
294           Mono.Cecil/EventDefinition.cs
295           Mono.Cecil/ReflectionController.cs
296           Mono.Cecil/ModuleDefinition.cs
297           Mono.Cecil/GenericContext.cs
298           Mono.Cecil/DefaultReferenceImporter.cs
299           Mono.Cecil/PropertyDefinition.cs:
300                 Provide a IReferenceImporter to customize how
301                 types are injected from an assembly to another.
302
303 2007-05-28  Jb Evain  <jbevain@novell.com>
304
305         * Borrow annotations concept from boo ast node.
306           Should be useful for the linker.
307
308 2007-05-23  Jb Evain  <jbevain@novell.com>
309
310         * Mono.Cecil/StructureWriter.cs
311           Mono.Cecil/ReflectionWriter.cs
312           Mono.Cecil.Cil/CodeWriter.cs:
313                 Emit MemberReferences rows on demand.
314
315 2007-05-16  Jb Evain  <jb@nurv.fr>
316
317         * Mono.Cecil.Binary/ImageReader.cs:
318                 Fix reading of the debug header for
319                 headers half way emitted by .net SRE.
320
321         * Mono.Cecil/BaseAssemblyResolver:
322                 try to resolve unversionned assemblies.
323
324 2007-05-09  Jb Evain  <jb@nurv.fr>
325
326         * Mono.Cecil.Binary/Image.cs:
327                 Throw when rva cannot be resolved.
328
329         * Mono.Cecil.csproj
330           Mono.Cecil.Binary/ExportTable.cs
331           Mono.Cecil.Binary/BaseImageVisitor.cs
332           Mono.Cecil.Binary/ImageReader.cs
333           Mono.Cecil.Binary/IBinaryVisitor.cs
334           Mono.Cecil.Binary/Image.cs
335           Mono.Cecil.Binary/ImageInitializer.cs
336           Mono.Cecil/StructureReader.cs
337           Mono.Cecil/ReflectionWriter.cs:
338                 When present, read the export table, so that people
339                 reading non managed assemblies can use the Mono.Cecil.Binary
340                 stuff.
341
342                 Fix the bug when section name is 8 char long.
343
344                 Based on a patch by Pavel Savara <pavel.savara@gmail.com>.
345
346 2007-04-27  Jb Evain  <jb@nurv.fr>
347
348         * Mono.Cecil/AssemblyNameReference.cs:
349                 Allow the computation of pktoken on CF_2_0.
350
351 2007-04-25  Jb Evain  <jb@nurv.fr>
352
353         * Mono.Cecil/ModuleDefinition.cs
354           Mono.Cecil/ReflectionWriter.cs
355           Mono.Cecil.Cil/ISymbolWriter.cs
356           Mono.Cecil.Signatures/SignatureWriter.cs
357                 Start working on local var debug infos emitting.
358
359 2007-04-08  Jb Evain  <jb@nurv.fr>
360
361         * Mono.Cecil/ParameterAttributes.cs:
362                 ParameterAttributes.None
363
364 2007-03-30  Jb Evain  <jb@nurv.fr>
365
366         * Collections:
367                 Remove uneeded tests as an optimizations.
368                 Based on a suggestion by Carlo Kok <ck@remobjects.com>.
369
370         * Mono.Cecil.Metadata/StringsHeap.cs:
371                 Optimize GetStringAt, patch by:
372                 Carlo Kok <ck@remobjects.com>
373
374 2007-03-22  Jb Evain  <jbevain@gmail.com>
375
376         * Mono.Cecil/AssemblyInfo.cs:
377                 Bump to 0.5.0.0 for the sake of our packagers friends.
378                 Re-Bump to 0.5.0.1.
379
380         * Mono.Cecil/StructureWriter.cs:
381                 Throw a NotSupportedException instead of a NIE
382                 for mixed mode assemblies.
383
384 2007-03-20  Jb Evain  <jbevain@gmail.com>
385
386         * Mono.Cecil.Metadata/MetadataWriter.cs:
387                 Correct epilog for unicode user strings heap.
388
389 2007-03-16  Jb Evain  <jbevain@gmail.com>
390
391         * Mono.Cecil.Cil/CodeReader.cs
392           Mono.Cecil.Cil/MethodBody.cs:
393                 Add a MethodBody.Simplify method to expand
394                 macros.
395
396         * Mono.Cecil.dll.sources
397           Mono.Cecil.csproj
398           Mono.Cecil.Cil/OpCode.cs
399           Mono.Cecil.Cil/OpCodes.cs
400           Mono.Cecil.Cil/Code.cs
401           CodeGen/cecil-gen.rb
402           CodeGen/templates/OpCodes.cs
403           CodeGen/templates/Code.cs:
404                 Add a Code enumeration to simplify working with
405                 OpCodes.
406
407 2007-03-12  Jb Evain  <jbevain@gmail.com>
408
409         * Mono.Cecil.Metadata/UserStringsHeap.cs:
410                 Avoid trailing blank on some systems.
411
412 2007-02-22  Jb Evain  <jbevain@gmail.com>
413
414         * Mono.Cecil/ReflectionWriter.cs:
415                 Deal with sentinels on simple methodrefs.
416
417 2007-02-22  Jb Evain  <jbevain@gmail.com>
418
419         * Mono.Cecil.dll.sources
420           Mono.Cecil.csproj
421           CodeGen/cecil.xml
422           Mono.Cecil.Metadata/ParamPtr.cs
423           Mono.Cecil.Metadata/MethodSpec.cs
424           Mono.Cecil.Metadata/BaseMetadataVisitor.cs
425           Mono.Cecil.Metadata/EventPtr.cs
426           Mono.Cecil.Metadata/MetadataTableReader.cs
427           Mono.Cecil.Metadata/MetadataTableWriter.cs
428           Mono.Cecil.Metadata/MetadataRowReader.cs
429           Mono.Cecil.Metadata/MetadataRowWriter.cs
430           Mono.Cecil.Metadata/PropertyPtr.cs
431           Mono.Cecil.Metadata/FieldPtr.cs
432           Mono.Cecil.Metadata/MethodPtr.cs
433           Mono.Cecil.Metadata/IMetadataVisitor.cs:
434                 Add *Ptr table definitions.
435
436         * Mono.Cecil.dll.sources
437           Mono.Cecil.csproj
438           Mono.Cecil/CallSite.cs
439           Mono.Cecil/IMethodSignature.cs
440           Mono.Cecil/SentinelType.cs
441           Mono.Cecil/FunctionPointerType.cs
442           Mono.Cecil/MethodReference.cs
443           Mono.Cecil/ReflectionReader.cs
444           Mono.Cecil/ReflectionWriter.cs
445           Mono.Cecil.Cil/CodeReader.cs
446           Mono.Cecil.Cil/CodeWriter.cs:
447                 Implement support for writing function pointers.
448                 Based on a patch by Argiris Kirtzidis <akyrtzi@gmail.com>
449
450         * Mono.Cecil/Constants.cs:
451                 Make it public due to some demands.
452
453 2007-02-21  Jb Evain  <jbevain@gmail.com>
454
455         * Mono.Cecil.Signatures/SignatureReader.cs:
456                 do not read enums if the resolution is not forced until
457                 cecil knows how to write them.
458
459         * Mono.Cecil/ReflectionWriter.cs
460           Mono.Cecil.Signatures/SzArray.cs
461           Mono.Cecil.Signatures/Array.cs
462           Mono.Cecil.Signatures/SignatureReader.cs
463           Mono.Cecil.Signatures/TypeSpec.cs
464           Mono.Cecil.Signatures/SignatureWriter.cs:
465                 handle custom mods on arrays signatures.
466
467         * Mono.Cecil/ReflectionReader.cs:
468                 Handle fields TypeSpecs that have an initial value.
469                 Based on a patch by Argiris Kirtzidis <akyrtzi@gmail.com>
470
471 2007-01-29  Jb Evain  <jbevain@gmail.com>
472
473         * Mono.Cecil.Metadata/MetadataWriter.cs:
474                 Save a byte ! Yeah !
475
476 2006-12-18  Jb Evain  <jbevain@gmail.com>
477
478         * Mono.Cecil/ReflectionReader.cs:
479                 Fix a bug in reading MemberRef pointing to MethodDef.
480
481 2006-12-16  Jb Evain  <jbevain@gmail.com>
482
483         * Mono.Cecil/StructureReader.cs:
484                 Prevent a NRE if we're reading a multi module
485                 assembly through a stream if a module is not find.
486                 Fix #80273.
487
488 2006-12-07  Jb Evain  <jbevain@gmail.com>
489
490         * Mono.Cecil/ReflectionWriter.cs:
491                 Allow an AssemblyDefinition to be written
492                 more than once.
493
494 2006-12-05  Jb Evain  <jbevain@gmail.com>
495
496         * Mono.Cecil/ReflectionWriter.cs:
497                 Deal with nullref default parameters.
498
499 2006-12-03  Jb Evain  <jbevain@gmail.com>
500
501         * Mono.Cecil/ReflectionWriter.cs:
502                 Handle constant where the parameter is object
503                 and the signature is something else.
504
505 2006-11-27  Jb Evain  <jbevain@gmail.com>
506
507         * Mono.Cecil/TypeDefinitionCollection.cs
508           CodeGen/templates/NamedCollection.cs:
509                 Allow multiple typedefs with the same namespace+name
510                 to be able to read unvalid assemblies.
511
512         * Mono.Cecil/ReflectionReader.cs
513           Mono.Cecil/ReflectionWriter.cs
514           Mono.Cecil.Signatures/PropertySig.cs
515           Mono.Cecil.Signatures/SignatureReader.cs
516           Mono.Cecil.Signatures/SignatureWriter.cs:
517                 - Deal with modifiers on properties.
518                 - Deal with non standard signatures when the byref
519                 flag is placed after the custom modifiers.
520           Mono.Cecil/StructureReader.cs:
521                 - Properly detect wether an assembli is a dll or not.
522
523                 Based on a patch by Argiris Kirtzidis <akyrtzi@gmail.com>.
524
525 2006-11-25  Jb Evain  <jbevain@gmail.com>
526
527         * Mono.Cecil/ReflectionReader.cs
528           Mono.Cecil/ReflectionWriter.cs
529           Mono.Cecil.Signatures/GenericArg.cs
530           Mono.Cecil.Signatures/GenericInstSignature.cs
531           Mono.Cecil.Signatures/SignatureReader.cs
532           Mono.Cecil.Signatures/SignatureWriter.cs:
533                 Deal with modifiers for generic arguments.
534                 Based on a patch by Argiris Kirtzidis <akyrtzi@gmail.com>.
535
536         * Mono.Cecil.Binary/ImageWriter.cs:
537                 Fix a bug in writing rsrc sections.
538
539         * Mono.Cecil.Cil/CodeReader.cs:
540                 Do some refactoring.
541
542         * Mono.Cecil.Metadata/MetadataToken.cs:
543                 Add a ctor to get a MetadataToken
544                 from an integer token.
545
546 2006-11-22  Jb Evain  <jbevain@gmail.com>
547
548         * Mono.Cecil.Cil/GuidAttribute.cs:
549                 Fix for CF compilation.
550
551 2006-11-16  Jb Evain  <jbevain@gmail.com>
552
553         * Mono.Cecil/StructureReader.cs:
554                 If an assembly has no managed assembly defined,
555                 consider it as a dll.
556
557 2006-11-08  Jb Evain  <jbevain@gmail.com>
558
559         * Mono.Cecil/BaseAssemblyResolver.cs:
560                 Handles different kind of GAC on Windows.
561
562 2006-11-07  Jb Evain  <jbevain@gmail.com>
563
564         * Mono.Cecil/ReflectionHelper.cs:
565                 Don't import the flags of an assembly name reference.
566
567 2006-11-03  Jb Evain  <jbevain@gmail.com>
568
569         * Mono.Cecil/PropertyDefinition.cs:
570                 Fix property cloning.
571                 Patch by Alex Prudkiy <prudkiy@mail.ru>
572
573 2006-10-26  Jb Evain  <jbevain@gmail.com>
574
575         * Mono.Cecil/ReflectionReader.cs:
576                 Use the proper generic context when reading memberrefs.
577
578 2006-10-11  Jb Evain  <jbevain@gmail.com>
579
580         * Mono.Cecil.Cil/Document.cs:
581                 Complete a little bit.
582
583         * Mono.Cecil/SecurityDeclarationReader.cs:
584                 Get rid of a lot of exceptions when creating the security
585                 attribute.
586
587 2006-10-10  Jb Evain  <jbevain@gmail.com>
588
589         * Mono.Cecil/ReflectionReader.cs:
590           Mono.Cecil/CustomAttribute.cs:
591           Mono.Cecil.Signatures/SignatureReader.cs:
592           Mono.Cecil/SecurityDeclarationReader.cs:
593                 Patch from: Eyal Alaluf  <eyala@mainsoft.com>.
594                 Add support for resolving custom attributes that contain references
595                 to enum in other assemblies.
596
597 2006-10-09  Jb Evain  <jbevain@gmail.com>
598
599         * Mono.Cecil/IRequireResolving.cs
600           Mono.Cecil/CustomAttribute.cs
601           Mono.Cecil/SecurityDeclaration.cs
602           Mono.Cecil/SecurityDeclarationReader.cs
603           Mono.Cecil/AggressiveReflectionReader.cs
604           Mono.Cecil/ReflectionWriter.cs
605           Mono.Cecil/ModuleDefinition.cs:
606                 Introduce the interface IRequireResolving implemented
607                 by CustomAttribute and SecurityDeclaration for when they can't
608                 be read without loading another assembly.
609
610         * Mono.Cecil/SecurityDeclarationReader.cs:
611                 Prevent Cecil to crash when it can not get the type
612                 of the declaration.
613
614 2006-10-04  Eyal Alaluf  <eyala@mainsoft.com>
615
616         * Mono.Cecil/StructureReader.cs:
617                 Visit the module we load when a DLL has more then 1 module.
618           Mono.Cecil/AssemblyNameReference.cs:
619                 Allow "PublicToken=null" when parsing an assembly full name.
620
621 2006-10-03  Jb Evain  <jbevain@gmail.com>
622
623         * Mono.Cecil/BaseAssemblyResolver.cs
624           Mono.Cecil.Binary/ResourceReader.cs:
625                 CompactFramework fix.
626
627 2006-10-02  Jb Evain  <jbevain@gmail.com>
628
629         * implement IList on the named collections.
630
631         * implement the first bits of Win32 resources handling.
632
633         * Mono.Cecil/ReflectionHelper.cs:
634                 It does not make sense to import the assembly flags.
635
636 2006-09-28  Jb Evain  <jbevain@gmail.com>
637
638         * Mono.Cecil/MethodDefinitionCollection.cs
639           Mono.Cecil/ConstructorCollection.cs
640           Mono.Cecil.Cil/InstructionCollection.cs
641           CodeGen/templates/IndexedCollection.cs
642                 Fix StackOverlow.
643
644 2006-09-27  Jb Evain  <jbevain@gmail.com>
645
646         * *Collection.cs: use CollectionBase when possible.
647
648 2006-09-24  Jb Evain  <jbevain@gmail.com>
649
650         * Mono.Cecil/AssemblyFactory.cs
651           Mono.Cecil/ReflectionWriter.cs
652           Mono.Cecil.Cil/ISymbolStoreFactory.cs
653           Mono.Cecil.Cil/SymbolStoreHelper.cs:
654                 Some more work on the debugging infos api.
655
656         * Mono.Cecil/MethodDefinitionCollection.cs
657           Mono.Cecil/ConstructorCollection.cs
658           CodeGen/templates/IndexedCollection.cs:
659                 Fix the GetConstructor/GetMethod methods.
660                 Based on a patch by Jon Chambers.
661
662 2006-09-20  Jb Evain  <jbevain@gmail.com>
663
664         * Mono.Cecil/StructureWriter.cs
665           Mono.Cecil/ModuleDefinition.cs
666           Mono.Cecil/ReflectionWriter.cs
667           Mono.Cecil/AssemblyFactory.cs
668           Mono.Cecil.Cil/ISymbolReader.cs
669           Mono.Cecil.Cil/CodeWriter.cs
670           Mono.Cecil.Cil/ISymbolWriter.cs
671           Mono.Cecil.Cil/SymbolStoreHelper.cs:
672                 Working on the debug infos stuff.
673
674         * Mono.Cecil.Signatures/SignatureReader.cs:
675                 Ensure custom attributes are read when they can be.
676                 Patch by Sebastien Pouliot.
677
678 2006-09-19  Jb Evain  <jbevain@gmail.com>
679
680         * Mono.Cecil/ModuleDefinition.cs
681           Mono.Cecil/ReflectionReader.cs
682           Mono.Cecil/ReflectionWriter.cs
683           Mono.Cecil.Cil/Document.cs
684           Mono.Cecil.Cil/Instruction.cs
685           Mono.Cecil.Cil/SequencePoint.cs
686           Mono.Cecil.Cil/CodeReader.cs
687           Mono.Cecil.Cil/IScopeProvider.cs
688           Mono.Cecil.Cil/ISymbolReader.cs
689           Mono.Cecil.Cil/CodeWriter.cs
690           Mono.Cecil.Cil/ISymbolWriter.cs
691           Mono.Cecil.Cil/IVariableDefinitionProvider.cs
692           Mono.Cecil.Cil/SymbolStoreHelper.cs
693           Mono.Cecil.Cil/ISymbolStoreFactory.cs
694           Mono.Cecil.Cil/ScopeCollection.cs
695           Mono.Cecil.Cil/Scope.cs:
696                 Work on the architecture for debugging infos.
697
698         * Mono.Cecil.dll.sources
699           Mono.Cecil.Cil/Document.cs
700           Mono.Cecil.Cil/IVariableDefinitionProvider.cs
701           Mono.Cecil.Cil/SequencePoint.cs
702           Mono.Cecil.Cil/ScopeCollection.cs
703           Mono.Cecil.Cil/BaseCodeVisitor.cs
704           Mono.Cecil.Cil/CodeReader.cs
705           Mono.Cecil.Cil/IScopeProvider.cs
706           Mono.Cecil.Cil/MethodBody.cs
707           Mono.Cecil.Cil/ICodeVisitor.cs
708           Mono.Cecil.Cil/CodeWriter.cs
709           Mono.Cecil.Cil/Scope.cs
710           Mono.Cecil.Cil/VariableDefinitionCollection.cs
711           CodeGen/cecil.xml:
712                 First bits of the debug infos stuff.
713
714         * Mono.Cecil.Cil/InstructionCollection.cs
715           CodeGen/templates/IndexedCollection.cs:
716                 The outside instruction has an offset of -1.
717
718         * Mono.Cecil.Cil/OpCodes.cs
719           Mono.Cecil.Cil/CodeReader.cs
720           Mono.Cecil.Cil/OpCode.cs
721           CodeGen/templates/OpCodes.cs:
722                 Simpliest way of dealing with different opcodes.
723
724 2006-09-07  Jb Evain  <jbevain@gmail.com>
725
726         * support PE32+ file format.
727
728         * Add an Outside instruction to an InstructionCollection.
729         Cleaner than the old null instruction.
730
731         * Mono.Cecil/MarshalSpec.cs
732           Mono.Cecil/ReflectionReader.cs
733           Mono.Cecil/ReflectionWriter.cs
734           CodeGen/cecil-mig.rb:
735                 Refactor names from Desc to Spec.
736
737         * *Collection.cs:
738                 Remove the unused events stuff.
739
740 2006-08-31  Jb Evain  <jbevain@gmail.com>
741
742         * /!\ Breaking changes:
743                 On the way to Cecil 0.5. Remove meaningless interfaces.
744                 GenericParamAttributes -> GenericParameterAttributes
745                 ParamAttributes -> ParamAttributes
746
747                 I'll provide a migration path with a script.
748
749                 Please do not use this revision, other changes are on the way.
750
751 2006-08-26  Jb Evain  <jbevain@gmail.com>
752
753         * Mono.Cecil/ReflectionReader.cs:
754                 Fix a bug when reading some parameters.
755
756 2006-08-26  Jb Evain  <jbevain@gmail.com>
757
758         * Mono.Cecil.Cil/ReflectionWriter.cs:
759                 Fix the computation of the size of the last opcode in case
760                 of an exception handler is pointing outside the cil stream.
761
762         * Mono.Cecil.Cil/ReflectionWriter.cs:
763                 Don't use seh tiny headers when the size can't fit in a byte.
764
765         * Mono.Cecil.Cil/ReflectionWriter.cs:
766                 Fix a problem in the computation of the stack when the IL
767                 is somewhat strange.
768
769 2006-08-23  Jb Evain  <jbevain@gmail.com>
770
771         * Mono.Cecil/AssemblyInfo.cs:
772                 Cecil 0.4.3 release.
773
774 2006-08-21  Jb Evain  <jbevain@gmail.com>
775
776         * Mono.Cecil.Metadata/MetadataWriter.cs:
777                 Fix a bug in field initial values writing.
778
779         * Mono.Cecil/BaseAssemblyResolver.cs:
780                 Look for assemblies in ./ first
781
782 2006-08-17  Jb Evain  <jbevain@gmail.com>
783
784         * Mono.Cecil/BaseAssemblyResolver.cs:
785                 Resolve the corlib depending on its version.
786
787         * Mono.Cecil/AssemblyName.cs
788           Mono.Cecil/BaseAssemblyResolver.cs:
789                 Implement a AssemblyNameReference.Parse(string)
790
791         * Mono.Cecil/TypeReferenceCollection.cs
792           Mono.Cecil/ExternTypeCollection.cs
793           Mono.Cecil/TypeDefinitionCollection.cs
794           CodeGen/templates/NamedCollectionImplem.cs:
795                 Avoid infinite recursion.
796
797         * Mono.Cecil/BaseAssemblyResolver.sc:
798                 Stay .net 1.1 compatible
799
800 2006-08-16  Jb Evain  <jbevain@gmail.com>
801
802         * Mono.Cecil/IAssemblyResolver.cs
803           Mono.Cecil/BaseAssemblyResolver.cs
804           Mono.Cecil/DefaultAssemblyResolver.cs
805           Mono.Cecil/AssemblyDefinition.cs
806                 Implement an assembly resolver.
807
808         * Mono.Cecil/ReflectionReader.cs:
809                 Fix the initial value reading.
810                 Based on a report and a patch of Roei Erez  <roeie@mainsoft.com>
811
812 2006-08-15  Jb Evain  <jbevain@gmail.com>
813
814         * Mono.Cecil/TypeReferenceCollection.cs
815           Mono.Cecil/ExternTypeCollection.cs
816           Mono.Cecil/TypeDefinitionCollection.cs
817           CodeGen/templates/NamedCollectionImplem.cs:
818                 Fix the CopyTo method.
819
820 2006-07-19  Jb Evain  <jbevain@gmail.com>
821
822         * CodeGen/templates/IIndexedCollection.cs
823           CodeGen/templates/IndexedCollectionImplem.cs
824           Mono.Cecil/IConstructorCollection.cs
825           Mono.Cecil/IMethodDefinitionCollection.cs
826           Mono.Cecil/MethodDefinitionCollection.cs
827           Mono.Cecil/ConstructorCollection.cs:
828                 Add a GetConstructor(bool,ParameterDefinitionCollection) method
829                 required by the linker.
830
831         * Mono.Cecil.Metadata/MetadataReader.cs
832           Mono.Cecil.Metadata/StringsHeap.cs:
833                 Read the string on demand, based on the index.
834                 Needed due to some obfuscators that create a string entry like
835                 xClassName, and make the pointer points to after the x.
836
837 2006-07-03      Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
838         * CodeGen/templates/ImageReader.cs
839           Mono.Cecil.Binary/ImageReader.cs:
840                 CompactFramework compatibility.
841
842 2006-07-02      Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
843
844         * CodeGen/templates/ImageReader.cs
845           Mono.Cecil.Binary/ImageReader.cs:
846                 Proper FileNotFoundException construction.
847
848         * Mono.Cecil/MethodDefinition.cs
849           Mono.Cecil/IMethod.cs:
850                 Helper properties IsInternalCall and IsRuntime.
851
852 2006-06-21  Jb Evain  <jbevain@gmail.com>
853
854         * Mono.Cecil.Cil/CilWorker.cs:
855                 Fix ldc.i4.s emitting.
856
857 2006-06-13  Jb Evain  <jbevain@gmail.com>
858
859         * Mono.Cecil/ReflectionWriter.cs:
860                 Fix for compiling on CF 1.
861         * Mono.Cecil/StructureReader.cs:
862                 Fix for a "bug" when csc 7.1 emits an assembly
863                 with an assembly row, but no blob heap.
864                 Plus style fix.
865
866 2006-06-08  Jb Evain  <jbevain@gmail.com>
867
868         * Mono.Cecil/IMethod.cs
869           Mono.Cecil/MethodDefinition.cs
870           Mono.Cecil/ReflectionWriter.cs:
871                 Add a public HasBody property.
872
873 2006-06-07  Jb Evain  <jbevain@gmail.com>
874
875         * Mono.Cecil/MethodDefinition.cs
876           Mono.Cecil/ReflectionWriter.cs:
877                 Read and write method bodies only when allowed.
878
879 2006-05-29  Jb Evain  <jbevain@gmail.com>
880
881         * Mono.Cecil/IMethodDefinition.cs
882           Mono.Cecil/MethodDefinition.cs:
883                 Remove the useless CreateBody method.
884
885 2006-05-27  Jb Evain  <jbevain@gmail.com>
886
887         * Mono.Cecil/StructureWriter.cs
888           Mono.Cecil/ReflectionReader.cs
889           Mono.Cecil/MethodDefinition.cs
890           Mono.Cecil.Metadata/MetadataToken.cs
891           Mono.Cecil.Signatures/SignatureReader.cs:
892                 Play better with mixed mode assemblies.
893
894         * Mono.Cecil/SecurityDeclarationReader.cs
895           Mono.Cecil/ReflectionWriter.cs
896           Mono.Cecil.Signatures/SignatureReader.cs:
897                 Read/Write this awful load of crap that is sharepoint.
898
899 2006-05-22  Jb Evain  <jbevain@gmail.com>
900
901         * Mono.Cecil.Cil/CilWorker.cs:
902                 Fix #78479. Patch by David Emsellem.
903
904 2006-05-20  Jb Evain  <jbevain@gmail.com>
905
906         * CodeGen/templates/ImageReader.cs
907           CodeGen/templates/ImageWriter.cs
908           Mono.Cecil/AssemblyFactory.cs
909           Mono.Cecil/StructureWriter.cs
910           Mono.Cecil/Binary/ImageReader.cs
911           Mono.Cecil/Binary/Image.cs
912           Mono.Cecil/Binary/ImageWriter.cs
913           Mono.Cecil.Metadata/MetadataWriter.cs:
914                 Optimize assembly writing.
915                 Add methods to read assemblies from byte arrays.
916
917         * Mono.Cecil/StructureWriter.cs:
918                 Throw an exception when the target is an exe
919                 and no entry point have been setted.
920         * Mono.Cecil/AssemblyFactory.cs:
921                 Add helpers method to defines assemblies.
922         * Mono.Cecil/MethodDefinition.cs:
923                 Set the hasThis flag to the correct value.
924         * Mono.Cecil.Cil/CodeReader.cs:
925                 Remove old comment.
926         * Mono.Xml/SmallXmlParser.cs:
927                 Make private.
928
929 2006-05-18  Jb Evain  <jbevain@gmail.com>
930
931         * CodeGen/templates/MetadataTableReader.cs
932           Mono.Cecil.Metadata/MetadataTableReader.cs
933           Mono.Cecil.Metadata/TableCollection.cs
934           Mono.Cecil.Metadata/TablesHeap.cs:
935                 Optimize a little bit.
936
937         * CodeGen/templates/MetadataTableWriter.cs
938           Mono.Cecil.Metadata/MetadataTableWriter.cs
939           Mono.Cecil.Metadata/TableCollection.cs:
940                 Fix for last changeset.
941
942         * Mono.Cecil.Metadata/RIdAttribute.cs:
943                 deleted.
944
945         * Mono.Cecil/ReflectionReader.cs
946           Mono.Cecil/StructureReader.cs
947           Mono.Cecil/ReflectionWriter.cs
948           Mono.Cecil/AggressiveReflectionReader.cs
949           Mono.Cecil.Cil/CodeReader.cs
950           CodeGen/templates/Utilities.cs
951           CodeGen/templates/MetadataTableReader.cs
952           CodeGen/templates/MetadataTableWriter.cs
953           CodeGen/templates/Table.cs
954           CodeGen/templates/MetadataRowReader.cs
955           CodeGen/templates/MetadataRowWriter.cs
956           Mono.Cecil.Metadata/Assembly.cs
957           Mono.Cecil.Metadata/InterfaceImpl.cs
958           Mono.Cecil.Metadata/PropertyMap.cs
959           Mono.Cecil.Metadata/Constant.cs
960           Mono.Cecil.Metadata/MethodSpec.cs
961           Mono.Cecil.Metadata/DeclSecurity.cs
962           Mono.Cecil.Metadata/TypeDef.cs
963           Mono.Cecil.Metadata/GenericParamConstraint.cs
964           Mono.Cecil.Metadata/MethodImpl.cs
965           Mono.Cecil.Metadata/NestedClass.cs
966           Mono.Cecil.Metadata/MetadataTableReader.cs
967           Mono.Cecil.Metadata/AssemblyRefProcessor.cs
968           Mono.Cecil.Metadata/AssemblyRef.cs
969           Mono.Cecil.Metadata/AssemblyRefOS.cs
970           Mono.Cecil.Metadata/Method.cs
971           Mono.Cecil.Metadata/MetadataTableWriter.cs
972           Mono.Cecil.Metadata/MetadataRowReader.cs
973           Mono.Cecil.Metadata/ExportedType.cs
974           Mono.Cecil.Metadata/CustomAttribute.cs
975           Mono.Cecil.Metadata/Param.cs
976           Mono.Cecil.Metadata/ClassLayout.cs
977           Mono.Cecil.Metadata/MetadataRowWriter.cs
978           Mono.Cecil.Metadata/Utilities.cs
979           Mono.Cecil.Metadata/AssemblyOS.cs
980           Mono.Cecil.Metadata/ModuleRef.cs
981           Mono.Cecil.Metadata/FieldMarshal.cs
982           Mono.Cecil.Metadata/GenericParam.cs
983           Mono.Cecil.Metadata/ImplMap.cs
984           Mono.Cecil.Metadata/TableCollection.cs
985           Mono.Cecil.Metadata/TablesHeap.cs
986           Mono.Cecil.Metadata/TypeRef.cs
987           Mono.Cecil.Metadata/ManifestResource.cs
988           Mono.Cecil.Metadata/File.cs
989           Mono.Cecil.Metadata/EventMap.cs
990           Mono.Cecil.Metadata/AssemblyProcessor.cs
991           Mono.Cecil.Metadata/FieldLayout.cs
992           Mono.Cecil.Metadata/Event.cs
993           Mono.Cecil.Metadata/Field.cs
994           Mono.Cecil.Metadata/Property.cs
995           Mono.Cecil.Metadata/Module.cs
996           Mono.Cecil.Metadata/MethodSemantics.cs
997           Mono.Cecil.Metadata/StandAloneSig.cs
998           Mono.Cecil.Metadata/FieldRVA.cs
999           Mono.Cecil.Metadata/TypeSpec.cs
1000           Mono.Cecil.Metadata/IMetadataTable.cs
1001           Mono.Cecil.Metadata/MemberRef.cs:
1002                 Fix the way the metadata tables are handled.
1003
1004         * Mono.Cecil.Signatures/SignatureWriter.cs:
1005                 Fix bug in string writing.
1006
1007 2006-05-12  Jb Evain  <jbevain@gmail.com>
1008
1009         * Mono.Cecil/AssemblyInfo.cs:
1010                 Hide the info if Cecil is embedded.
1011
1012 2006-05-09  Jb Evain  <jbevain@gmail.com>
1013
1014         * cecil.build: rename to default.build
1015
1016 2006-05-08  Jb Evain  <jbevain@gmail.com>
1017
1018         * Makefile:
1019                 Sign the assembly.
1020
1021         * cecil.csproj:
1022                 Add an msbuild file.
1023
1024 2006-05-05  Jb Evain  <jbevain@gmail.com>
1025
1026         * Mono.Cecil/AssemblyFactory.cs
1027           Mono.Cecil/StructureReader.cs
1028           Mono.Cecil/ModuleDefinition.cs:
1029                 Add an AssemblyFactory.GetAssemblyManifest method.
1030
1031 2006-05-04  Jb Evain  <jbevain@gmail.com>
1032
1033         * Mono.Cecil/TableComparers.cs:
1034                 TypeDef.Compare: the name is enough against <Module>.
1035
1036         * Mono.Cecil/ReflectionWriter.cs:
1037                 Fix writing of namedargs in custom attributes.
1038
1039 2006-04-26  Jb Evain  <jbevain@gmail.com>
1040
1041         * Mono.Cecil.Signatures/SignatureReader.cs:
1042                 Don't create tons of hashtables.
1043
1044 2006-04-24  Jb Evain  <jbveain@gmail.com>
1045
1046        * Mono.Cecil.Cil/MethodBody.cs:
1047                Fix cloning.
1048
1049 2006-04-21  Jb Evain  <jbevain@gmail.com>
1050
1051         * Mono.Cecil/AssemblyFactory.cs
1052           Mono.Cecil.Binary/MemoryBinaryWriter.cs:
1053                 Use MemoryStream::WriteTo when it's possible.
1054
1055 2006-04-21      Rodrigo B. de Oliveira  <rodrigobamboo@gmail.com>
1056
1057         * Mono.Cecil/SecurityDeclaration.cs
1058           Mono.Cecil/ISecurityDeclaration.cs
1059           Mono.Cecil/SecurityDeclarationCollection.cs
1060           Mono.Cecil/ModuleDefinition.cs:
1061                 Patch by Almann T. Goo (almann.goo@gmail.com) conditionally
1062                 removing references to PermissionSet when compiling for the CompactFramework.
1063
1064         * Mono.Cecil/CompactFrameworkCompatibility.cs:
1065                 System.Security.PermissionSet definition no longer needed.
1066
1067 2006-04-21  Jb Evain  <jbevain@gmail.com>
1068
1069         * *Collection.cs:
1070                 Fix typo in RemoveAt.
1071
1072 2006-04-20  Jb Evain  <jbevain@gmail.com>
1073
1074         * Mono.Cecil/ReflectionWriter.cs:
1075                 Fix writing of complex arrays.
1076                 Now we roundtrip SharpDevelop.
1077
1078         * Mono.Cecil/ReflectionWriter.cs
1079           Mono.Cecil/TableComparers.cs:
1080                 Ensure <Module> will always be the first type.
1081                 Fix roundtrip of Nemerle.
1082
1083 2006-04-19  Jb Evain  <jbevain@gmail.com>
1084
1085         * Mono.Cecil.Cil/CodeWriter.cs:
1086                 Handle the case where an handler points after the last
1087                 instruction. Now we roundtrip db4o.
1088
1089         * Mono.Cecil/IIndexedCollection.cs:
1090           *Collection.cs:
1091                 Make every collection implement an indexed collection.
1092
1093 2006-04-15  Jb Evain  <jbevain@gmail.com>
1094
1095         * Mono.Cecil/CustomAttribute.cs:
1096                 Fix handling of types.
1097
1098 2006-04-11  Jb Evain  <jbevain@gmail.com>
1099
1100         * Mono.Cecil/FieldDefinition.cs
1101           Mono.Cecil/ReflectionReader.cs
1102           Mono.Cecil/TypeDefinition.cs
1103           Mono.Cecil/IField.cs
1104           Mono.Cecil/ITypeDefinition.cs
1105           Mono.Cecil/ReflectionWriter.cs
1106           Mono.Cecil/AggressiveReflectionReader.cs
1107           Mono.Cecil.Cil/IVariable.cs
1108           Mono.Cecil.Cil/MethodBody.cs
1109           Mono.Cecil.Cil/VariableDefinition.cs
1110           Mono.Cecil.Cil/CodeWriter.cs:
1111                 Don't use interfaces internally.
1112
1113         * Mono.Cecil/TypeReference.cs:
1114                 Make TypeReference extend MemberReference.
1115
1116         * Mono.Cecil/Modifiers.cs
1117           Mono.Cecil.Cil/CodeReader.cs
1118           Mono.Cecil.Cil/CodeWriter.cs
1119           Mono.Cecil.Signatures/LocalVarSig.cs
1120           Mono.Cecil.Signatures/SignatureReader.cs:
1121                 Fix modifiers on localvar signatures.
1122                 Fix roundtrip of delphi assemblies.
1123
1124         * Mono.Cecil/CustomAttribute.cs
1125           Mono.Cecil/ReflectionReader.cs
1126           Mono.Cecil/ReflectionWriter.cs
1127           Mono.Cecil.Signatures/SignatureWriter.cs:
1128                 Work on complex custom attributes encoding.
1129
1130         * Mono.Cecil/TableComparers.cs:
1131                 Style.
1132
1133 2006-04-09  Eyal Alaluf  <eyala@mainsoft.com>
1134
1135     * Mono.Cecil/ReflectionReader.cs
1136             Cannot assume that TypeRefs are ordered is such a way that an outer
1137                 class index comes always before all its inner classes.
1138
1139 2006-04-06  Jb Evain  <jbevain@gmail.com>
1140
1141         * Mono.Cecil/ReflectionWriter.cs
1142           Mono.Cecil.Signatures/SignatureWriter.cs:
1143                 Clean up things a little bit prior ending
1144                 custom attribute encoding.
1145
1146         * Mono.Cecil/ReflectionWriter.cs:
1147                 Write custom attributes of parameters
1148                 onyl when all methods have their tokens.
1149
1150         * Mono.Cecil/ReflectionReader.cs
1151           Mono.Cecil/ReflectionWriter.cs
1152           Mono.Cecil/AggressiveReflectionReader.cs:
1153                 Handle custom attributes on generic parameters.
1154
1155 2006-04-05  Jb Evain  <jbevain@gmail.com>
1156
1157         * Mono.Cecil/ReflectionWriter.cs:
1158                 Ensure the param[0] is written when it should be.
1159
1160 2006-04-04  Jb Evain  <jbevain@gmail.com>
1161
1162         * Mono.Cecil/ReflectionHelper.cs:
1163                 Remove an unused hack.
1164
1165         * Mono.Cecil/AssemblyInfo.cs: Go 0.4.1
1166
1167         * Mono.Cecil.Metadata/MetadataHeap.cs
1168           Mono.Cecil.Metadata/MetadataStream.cs:
1169                 Read #- stream has well.
1170
1171         * Mono.Cecil/ReflectionHelper.cs:
1172                 Implement Import stuff for System.Type and SR.*
1173
1174 2006-04-03      Rodrigo B. de Oliveira  <rodrigobamboo@gmail.com>
1175
1176         * Mono.Cecil/SecurityDeclarationReader.cs
1177           Mono.Cecil/TypeReferenceCollection.cs
1178           Mono.Cecil/CompactFrameworkCompatibility.cs
1179           Mono.Cecil/AssemblyFactory.cs
1180           Mono.Cecil/AssemblyName.cs
1181           Mono.Cecil/ExternTypeCollection.cs
1182           Mono.Cecil/TypeDefinitionCollection.cs
1183           CodeGen/templates/NamedCollectionImplem.cs
1184           Mono.Cecil.Metadata/CultureUtils.cs
1185           cecil.build:
1186                 CompactFramework 2.0 support through CF_2_0 compilation symbol.
1187
1188 2006-04-03  Jb Evain  <jbevain@gmail.com>
1189
1190         * Mono.Cecil.dll.sources
1191           Mono.Cecil/GenericParameter.cs
1192           Mono.Cecil/ReflectionHelper.cs
1193           Mono.Cecil/FieldDefinition.cs
1194           Mono.Cecil/CustomAttribute.cs
1195           Mono.Cecil/TypeDefinition.cs
1196           Mono.Cecil/IModuleDefinition.cs
1197           Mono.Cecil/ImportContext.cs
1198           Mono.Cecil/AssemblyName.cs
1199           Mono.Cecil/MethodDefinition.cs
1200           Mono.Cecil/EventDefinition.cs
1201           Mono.Cecil/ModuleDefinition.cs
1202           Mono.Cecil/ReflectionWriter.cs
1203           Mono.Cecil/GenericContext.cs
1204           Mono.Cecil/ParameterDefinition.cs
1205           Mono.Cecil/PropertyDefinition.cs
1206           Mono.Cecil.Cil/MethodBody.cs:
1207                 Work on generic assemblies manipulation via
1208                 import stuff.
1209
1210 2006-03-31  Jb Evain  <jbevain@gmail.com>
1211
1212         * Mono.Cecil/AssemblyFlags.cs:
1213                 Add a Retargetable flag used on the CF.
1214
1215 2006-03-30  Jb Evain  <jbevain@gmail.com>
1216
1217         * Mono.Cecil/SecurityDeclarationReader.cs:
1218                 Don't crash if the declaration is empty.
1219
1220         * Mono.Cecil/ParamAttributes.cs:
1221                 Update the Optional flag.
1222           Mono.Cecil/ReflectionWriter.cs:
1223                 Fix the encoding of nullref.
1224                 Fixes #77959. Based on a patch by
1225                 Armand Du Plessis < armand@dotnet.org.za>
1226
1227 2006-03-29  Jb Evain  <jbevain@gmail.com>
1228
1229         * Mono.Cecil/IHasSecurity.cs
1230           Mono.Cecil/IHasConstant.cs
1231           Mono.Cecil/IHasMarshalSpec.cs:
1232           Mono.Cecil/MethodReturnType.cs
1233           Mono.Cecil/AssemblyDefinition.cs:
1234                 Implement IMetadataTokenProvider.
1235
1236         * Mono.Cecil/StructureReader.cs
1237           Mono.Cecil/ReflectionWriter.cs:
1238                 Use more the token providers.
1239
1240 2006-03-28  Jb Evain  <jbevain@gmail.com>
1241
1242         * Mono.Cecil/ReflectionReader.cs
1243           Mono.Cecil/MarshalDesc.cs
1244           Mono.Cecil/IMarshalSpec.cs
1245           Mono.Cecil/ReflectionWriter.cs:
1246                 Fix round-tripping of assemblies using
1247                 COM stuff.
1248
1249 2006-03-27  Jb Evain  <jbevain@gmail.com>
1250
1251         * Mono.Cecil.Metadata/MetadataToken.cs:
1252                 Override GetHashCode as we override Equals.
1253
1254         * Mono.Cecil/TableComparers.cs:
1255                 Fix the ordering of generic parameters.
1256                 This revision roundtrips C5. Yeah!
1257
1258         * Mono.Cecil/ReflectionWriter.cs:
1259                 Fix method spec "caching"
1260           Mono.Cecil.Cil/OpCode.cs:
1261                 Override ToString ();
1262           Mono.Cecil.Metadata/MetadataToken.cs:
1263                 Implement operator ==
1264
1265         * Mono.Cecil/ReflectionWriter.cs
1266           Mono.Cecil/TableComparers.cs:
1267                 Better handling of generic tables sorting.
1268
1269         * Mono.Cecil/ReflectionWriter.cs
1270           Mono.Cecil/TableComparers.cs:
1271                 Sort generic tables as well.
1272
1273 2006-03-27      Rodrigo B. de Oliveira  <rodrigobamboo@gmail.com>
1274         * Mono.Cecil.Metadata/MetadataWriter.cs:
1275                 Use CompactFramework compatible version of
1276                 System.Convert.ToBase64String.
1277
1278 2006-03-27  Jb Evain  <jbevain@gmail.com>
1279
1280         * Mono.Cecil.dll.sources
1281           Mono.Cecil/GenericParameter.cs
1282           Mono.Cecil/ConstraintCollection.cs
1283           Mono.Cecil/IGenericParameter.cs
1284           Mono.Cecil/IConstraintCollection.cs
1285           CodeGen/cecil.xml:
1286                 Add a ConstraintCollection to be used within
1287                 generic parameters.
1288
1289         * Mono.Cecil/GenericInstanceType.cs:
1290                 Correctly return if the instance is a value type
1291                 or not.
1292
1293 2006-03-25  Jb Evain  <jbevain@gmail.com>
1294
1295         * Mono.Cecil/ModuleDefinition.cs:
1296                 Support the unreadable security declarations
1297                 when converting one to byte [].
1298
1299         * Mono.Cecil/IModuleDefinition.cs
1300           Mono.Cecil/ModuleDefinition.cs
1301           Mono.Cecil/ReflectionWriter.cs:
1302                 Add a FullLoad method on a module.
1303
1304         * Mono.Cecil/StructureWriter.cs
1305           Mono.Cecil/ReflectionWriter.cs:
1306                 Fix a  few bugs in generics type emitting.
1307
1308         * Mono.Cecil.Cil/CodeWriter.cs:
1309                 Cache local sig as well.
1310
1311 2006-03-24  Jb Evain  <jbevain@gmail.com>
1312
1313         * Mono.Cecil/ReflectionWriter.cs:
1314                 Cache method specs as well.
1315
1316         * CodeGen/templates/ImageWriter.cs
1317           Mono.Cecil.Metadata/MetadataWriter.cs
1318           Mono.Cecil.Binary/ImageWriter.cs:
1319                 Replace the foreach char pattern by
1320                 Encoding.GetBytes
1321
1322 2006-03-23  Jb Evain  <jbevain@gmail.com>
1323
1324         * Mono.Cecil/TypeReferenceCollection.cs
1325           Mono.Cecil/ExternTypeCollection.cs
1326           Mono.Cecil/TypeDefinitionCollection.cs
1327           CodeGen/templates/NamedCollectionImplem.cs
1328           CodeGen/templates/ImageReader.cs:
1329                 Ensure type with the same name are added
1330                 to the collection.
1331
1332         * Mono.Cecil.Metadata/MetadataWriter.cs:
1333                 Ensure every blob signature is unique.
1334
1335         * Mono.Cecil/IModuleDefinition.cs
1336           Mono.Cecil/ModuleDefinition.cs:
1337                 Rename method to avoid confusion.
1338
1339 2006-03-22  Jb Evain  <jbevain@gmail.com>
1340
1341         * Mono.Cecil.Cil/CodeWriter.cs:
1342                 Precisely detect whether we emit fat seh or not.
1343
1344         * Mono.Cecil/ReflectionWriter.cs:
1345                 Avoid duplicates in the typespec table.
1346
1347 2006-03-21  Jb Evain  <jbevain@gmail.com>
1348
1349         * Mono.Cecil/ReflectionWriter.cs:
1350                 Correctly write generic parameters.
1351
1352         * Mono.Cecil/SecurityDeclarationReader.cs
1353           Mono.Cecil/SecurityDeclaration.cs
1354           Mono.Cecil/ReflectionWriter.cs:
1355                 Fix for security declarations reading on .net 2.0.
1356
1357         * Mono.Cecil/ReflectionReader.cs
1358           Mono.Cecil/GenericContext.cs:
1359                 Fix test case RoundtripTestFixture.boo.
1360
1361 2006-03-20  Jb Evain  <jbevain@gmail.com>
1362
1363         * Mono.Cecil.Metadata/MetadataReader.cs:
1364                 #Strings heap is utf8, fix #77820.
1365
1366 2006-03-08  Jb Evain  <jbevain@gmail.com>
1367
1368         * CodeGen/cecil-gen-tests.rb
1369           CodeGen/templates/Tests.cs:
1370                 Start of a very small infrastructure to use tests from
1371                 rotor/mono with Cecil.
1372
1373         * Mono.Cecil/IMethod.cs
1374           Mono.Cecil/TypeDefinition.cs
1375           Mono.Cecil/MethodDefinition.cs
1376           Mono.Cecil.Cil/CodeReader.cs
1377           Mono.Cecil.Cil/CodeWriter.cs:
1378                 Add support for the very special case ldarg 0.
1379                 Patch idea by Vladislav Spivak <spivak@mainsoft.com>
1380
1381 2006-03-07  Jb Evain  <jbevain@gmail.com>
1382
1383         * CodeGen/templates/ImageReader.cs
1384           Mono.Cecil/AssemblyFactory.cs
1385           Mono.Cecil/StructureReader.cs
1386           Mono.Cecil.Binary/Image.cs
1387           Mono.Cecil.Binary/ImageReader.cs:
1388                 Allow users to get a loaded image using
1389                 Image.GetImage as they have no access to
1390                 the ImageReader.
1391
1392 2006-03-06  Jb Evain  <jbevain@gmail.com>
1393
1394         * Mono.Cecil.Signatures/SignatureReader.cs:
1395                 Fix array reading in custom attributes.
1396
1397 2006-03-06  Joshua Tauberer <tauberer@for.net>
1398
1399         * Mono.Cecil/TypeAttributes.cs: Fixed typo
1400           in value for Abstract.
1401
1402 2006-02-27  Jb Evain  <jbevain@gmail.com>
1403
1404         * CodeGen/templates/IndexedCollectionImplem.cs
1405           CodeGen/templates/IIndexedCollection.cs
1406           Mono.Cecil.Cil/InstructionCollection.cs
1407           Mono.Cecil.Cil/IInstructionCollection.cs:
1408                 Small API fix, prevent the user from not using
1409                 the CilWorker.
1410
1411         * Mono.Cecil.Cil/CodeReader.cs
1412           Mono.Cecil.Cil/Label.cs:
1413                 Remove Label.
1414
1415         * Mono.Cecil/ReflectionReader.cs:
1416                 Fix typo.
1417
1418 2006-02-20  Jb Evain  <jbevain@gmail.com>
1419
1420         * Mono.Cecil.Signatures/SignatureWriter.cs:
1421                 Fix a bug when a value is null in a custom attribute.
1422
1423 2006-02-20  Sebastien Pouliot  <sebastien@ximian.com>
1424
1425         * Mono.Cecil.Metadata/MetadataWriter.cs:
1426                 Fix GetStrongNameSignatureSize to handle the ECMA pseudo-key.
1427
1428 2006-02-07  Jb Evain  <jbevain@gmail.com>
1429
1430         * Mono.Cecil/AssemblyInfos.cs:
1431                 Tag this version 0.3, as users are happy with it.
1432
1433 2006-01-26  Jb Evain  <jbevain@gmail.com>
1434
1435         * Mono.Cecil/CustomAttribute.cs:
1436                 Fix cloning of non readable attributes.
1437
1438         * Mono.Cecil/ReflectionReader.cs
1439           Mono.Cecil/ReflectionWriter.cs
1440           Mono.Cecil.Signatures/MethodRefSig.cs
1441           Mono.Cecil.Signatures/SignatureWriter.cs
1442           Mono.Cecil.Signatures/MethodDefSig.cs:
1443                 Work on generics.
1444
1445         * Mono.Cecil/ArrayType.cs
1446           Mono.Cecil/ReferenceType.cs
1447           Mono.Cecil/PointerType.cs:
1448                 Fix names of typespecs.
1449
1450         * Mono.Cecil/TypeReferenceCollection.cs
1451           Mono.Cecil/ExternTypeCollection.cs
1452           CodeGen/templates/NamedCollectionImplem.cs:
1453                 Allow multiple key by names in type references.
1454
1455 2006-01-25  Jb Evain  <jbevain@gmail.com>
1456
1457         * Mono.Cecil/AssemblyFactory.cs:
1458                 Don't trap exceptions.
1459
1460         * Mono.Cecil/GenericParameter.cs
1461           Mono.Cecil/IMethod.cs
1462           Mono.Cecil/GenericInstanceType.cs
1463           Mono.Cecil/TypeReference.cs
1464           Mono.Cecil/GenericInstanceMethod.cs
1465           Mono.Cecil/ReflectionReader.cs
1466           Mono.Cecil/TypeDefinition.cs
1467           Mono.Cecil/IGenericArgumentCollection.cs
1468           Mono.Cecil/ITypeReference.cs
1469           Mono.Cecil/IGenericInstance.cs
1470           Mono.Cecil/GenericArgumentCollection.cs
1471           Mono.Cecil/MethodDefinition.cs
1472           Mono.Cecil/MethodReference.cs
1473           Mono.Cecil/ITypeDefinition.cs
1474           Mono.Cecil/IGenericArgumentProvider.cs
1475           Mono.Cecil/ReflectionWriter.cs
1476           Mono.Cecil/GenericContext.cs
1477           CodeGen/cecil.xml:
1478                 Clean the generic api. This is not stable yet.
1479
1480 2006-01-24  Jb Evain  <jbevain@gmail.com>
1481
1482         * Mono.Cecil/ArrayType.cs:
1483                 Bug reported by  Vladislav Spivak (spivak@mainsoft.com).
1484                 Fix a bug in array handling.
1485         * Mono.Cecil/ConstructorCollection.cs
1486           CodeGen/templates/IndexedCollectionImplem.cs:
1487                 Bug reported by Oleg Varchovsky (olegv@mainsoft.com).
1488                 Fix the lookup of constructors.
1489
1490 2006-01-19  Jb Evain  <jbevain@gmail.com>
1491
1492         * Mono.Cecil/AssemblyName.cs:
1493                 Fix computation of public key token.
1494
1495 2006-01-18  Jb Evain  <jbevain@gmail.com>
1496
1497         * Mono.Cecil.Cil/CodeWriter.cs
1498           Mono.Cecil.Metadata/MetadataToken.cs:
1499                 Add an use an ToUInt method and use it.
1500           CodeGen/templates/DebugHeader.cs
1501           Mono.Cecil.Binary/DebugHeader.cs:
1502                 Fix the size of the debug header.
1503
1504         * Mono.Cecil/ModuleReference.cs
1505           Mono.Cecil/AssemblyName.cs
1506           Mono.Cecil/StructureReader.cs
1507           Mono.Cecil/IMetadataScope.cs:
1508                 Make IMetadataScope implement IMetadataTokenProvider.
1509         * Mono.Cecil/ReflectionWriter.cs:
1510                 Fix a typo when saving nested type refs.
1511
1512 2006-01-17  Jb Evain  <jbevain@gmail.com>
1513
1514         * Mono.Cecil/ArrayType.cs
1515           Mono.Cecil/ArrayDimension.cs
1516           Mono.Cecil/ReflectionWriter.cs:
1517                 End arrays support.
1518
1519 2006-01-03  Jb Evain  <jbevain@gmail.com>
1520
1521         * Mono.Cecil/GenericParameter.cs
1522           Mono.Cecil/ReflectionHelper.cs
1523           Mono.Cecil/ReflectionReader.cs
1524           Mono.Cecil/GenericContext.cs:
1525                 Work on generics.
1526
1527 2005-12-31  Jb Evain  <jbevain@gmail.com>
1528
1529         * Mono.Cecil/ReflectionHelper.cs:
1530                 Fix import of type specs.
1531
1532 2005-12-30  Jb Evain  <jbevain@gmail.com>
1533
1534         * CodeGen/templates/ImageReader.cs
1535           Mono.Cecil.Metadata/MetadataReader.cs
1536           Mono.Cecil.Binary/Image.cs
1537           Mono.Cecil.Binary/ImageReader.cs:
1538                 Add support to assemblies where the metadata is defined
1539                 outside of the text section. (c++/cli /safe for instance)
1540
1541 2005-12-23  Jb Evain  <jbevain@gmail.com>
1542
1543         * Mono.Cecil/AssemblyInfo.cs:
1544                 Version 0.2.2.2 devel.
1545
1546         * Mono.Cecil/AssemblyInfo.cs:
1547                 Version 0.2 to be released.
1548
1549         * Mono.Cecil/ReflectionWriter.cs:
1550                 IGenericInstance are typespecs as well.
1551
1552         * Mono.Cecil/ArrayType.cs:
1553                 Add a single dimension in the default ctor.
1554         * Mono.Cecil/ReflectionReader.cs:
1555                 Don't manually add the default dimension as it's done
1556                 int the array type ctor.
1557         * Mono.Cecil/ReflectionHelper.cs:
1558                 Import type specs.
1559
1560 2005-12-22  Jb Evain  <jbevain@gmail.com>
1561
1562         * Mono.Cecil/ReflectionWriter:
1563                 Write pinvoke infos as well.
1564
1565         * Mono.Cecil/ReflectionReader.cs:
1566                 Unsure that primitive value types are viewed as
1567                 value types.
1568
1569         * CodeGen/templates/Section.cs
1570           CodeGen/templates/ImageReader.cs
1571           Mono.Cecil.Metadata/MetadataReader.cs
1572           Mono.Cecil.Binary/Image.cs
1573           Mono.Cecil.Binary/Section.cs
1574           Mono.Cecil.Binary/ImageReader.cs:
1575                 Simplify the way you read binary data whithin
1576                 high level layer.
1577
1578         * Mono.Cecil.Cil/CodeReader.cs:
1579                 Make helper methods public static.
1580         * Mono.Cecil/ReflectionReader.cs:
1581                 Don't try to get the entry point method
1582                 if it don't point on a valid method RID.
1583
1584         * CodeGen/templates/NamedCollectionImplem.cs
1585           Mono.Cecil/ExternTypeCollection.cs
1586           Mono.Cecil/TypeDefinitionCollection.cs
1587           Mono.Cecil/TypeReferenceCollection.cs:
1588                 Don't add existing values.
1589
1590         * Mono.Cecil/ModuleDefinition.cs:
1591                 Protect import from null refs.
1592
1593 2005-12-21  Jb Evain  <jbevain@gmail.com>
1594
1595         * Mono.Cecil/StructureWriter.cs:
1596                 Don't increment pdb age. Not Cecil's job.
1597
1598         * Mono.Cecil.Cil/ICilWorker.cs
1599           Mono.Cecil.Cil/CilWorker.cs:
1600                 Add a new replace method.
1601
1602 2005-12-20  Jb Evain  <jbevain@gmail.com>
1603
1604         * Mono.Cecil/StructureWriter.cs:
1605                 Ensure every assembly reference is processed.
1606
1607         * Mono.Cecil/ReflectionHelper.cs:
1608                 Don't assume the cache is magically loaded.
1609                 Aka: most stupid bug of the year.
1610
1611 2005-12-19  Jb Evain  <jbevain@gmail.com>
1612
1613         * CodeGen/templates/DebugHeader.cs
1614           Mono.Cecil.Binary/DebugHeader.cs
1615           Mono.Cecil.Binary/DebugStoreType.cs:
1616                 New files to store debug header infos.
1617         * Mono.Cecil.dll.sources: updated
1618         * CodeGen/cecil.xml
1619           CodeGen/cecil-gen.rb
1620           Mono.Cecil/StructureWriter.cs
1621           Mono.Cecil.Binary/IBinaryVisitor.cs
1622           Mono.Cecil.Binary/ImageWriter.cs
1623           Mono.Cecil.Binary/Image.cs
1624           Mono.Cecil.Binary/ImageInitializer.cs
1625           Mono.Cecil.Binary/BaseImageVisitor.cs
1626           Mono.Cecil.Binary/ImageReader.cs
1627           Mono.Cecil.Metadata/MetadataWriter.cs:
1628                 Read and write debug header.
1629
1630         * CodeGen/templates/ImageWriter.cs
1631           Mono.Cecil.Binary/ImageWriter.cs:
1632                 Revert revision 54409.
1633
1634 2005-12-14  Jb Evain  <jbevain@gmail.com>
1635
1636         * Mono.Cecil.Cil/ICilWorker.cs
1637           Mono.Cecil.Cil/CilWorker.cs:
1638                 Add a remove method.
1639
1640         * CodeGen/templates/ImageWriter.cs
1641           Mono.Cecil.Binary/ImageWriter.cs:
1642                 Don't allocate potential big arrays here.
1643
1644 2005-12-13  Jb Evain  <jbevain@gmail.com>
1645
1646         * Mono.Cecil.Metadata/MetadataWriter.cs:
1647                 Set the correct version for .net 2 assemblies.
1648                 Correctly write embedded resources.
1649                 Fix #76963.
1650
1651 2005-12-03  Jb Evain  <jbevain@gmail.com>
1652
1653         * Mono.Cecil/MethodSpecification.cs:
1654                 Override the declaring type and the name property to
1655                 match the inner method.
1656         * Mono.Cecil/GenericInstanceType.cs:
1657                 Correctly set the FullName.
1658         * Mono.Cecil/GenericInstanceMethod.cs:
1659                 Style.
1660
1661 2005-12-02  Jb Evain  <jbevain@gmail.com>
1662
1663         * Mono.Cecil/TypeDefinition.cs:
1664                 Fix interface import. Patch by Thomas Gil.
1665
1666 2005-11-24  Jb Evain  <jbevain@gmail.com>
1667
1668         * CodeGen/cecil-gen.rb
1669           CodeGen/templates/MetadataTableReader.cs
1670           CodeGen/templates/PEFileHeader.cs
1671           CodeGen/templates/CLIHeader.cs
1672           CodeGen/templates/PEOptionalHeader.cs
1673           CodeGen/templates/Table.cs
1674           CodeGen/templates/MetadataRowReader.cs
1675           CodeGen/templates/OpCodes.cs
1676           CodeGen/templates/Section.cs
1677           CodeGen/templates/ImageReader.cs:
1678                 Update the codegen engine so that everyone can run it
1679                 without having to install a dependency (eruby).
1680
1681         * Mono.Cecil.Metadata/Utilities.cs: re-codegenerated.
1682
1683 2005-11-23  Jb Evain  <jbevain@gmail.com>
1684
1685         * Mono.Cecil/IGenericArgumentProvider.cs
1686                 Style.
1687         * CodeGen/cecil.xml:
1688                 Mirror Martin's change in the codegen engine.
1689
1690 2005-11-23  Martin Baulig  <martin@ximian.com>
1691
1692         Generics API changes:
1693         TypeReference and MethodReference now contain a
1694         `GenericArguments' property (of type `GenericArgumentCollection')
1695         and `GenericParameters' is moved into TypeDefinition/MethodDefinition.
1696
1697         * Mono.Cecil/IGenericArgumentProvider.cs: New file.
1698         (IGenericArgumentProvider): New public interface.
1699
1700         * Mono.Cecil/IGenericArgumentCollection.cs
1701         (IGenericArgumentCollection.Container): Changed type from
1702         `IGenericInstance' -> `IGenericArgumentProvider'.
1703
1704         * Mono.Cecil/IGenericInstance.cs
1705         (IGenericInstance.Arguments): Renamed to `GenericArguments'.
1706
1707         * Mono.Cecil/ITypeReference.cs
1708         (ITypeReference): Implement `IGenericArgumentProvider' instead of
1709         `IGenericParameterProvider'.
1710
1711         * Mono.Cecil/ITypeDefinition.cs
1712         (ITypeDefinition): Implement `IGenericParameterProvider'.
1713
1714         * Mono.Cecil/IMethod.cs
1715         (IMethodReference): Implement `IGenericArgumentProvider' instead of
1716         `IGenericParameterProvider'.
1717         (IMethodDefinition): Implement `IGenericParameterProvider'.
1718
1719         * Mono.Cecil/TypeReference.cs
1720         (TypeReference.GenericParameters): Removed.
1721         (TypeReference.GenericArguments): New public property.
1722
1723         * Mono.Cecil/TypeDefinition.cs
1724         (TypeDefinition.GenericParameters): New public property.
1725         (TypeDefinition.OnGenericParameterAdded): If a generic parameter
1726         is added, also add it to the `GenericArguments'.
1727
1728         * Mono.Cecil/MethodReference.cs
1729         (MethodReference.GenericParameters): Removed.
1730         (MethodReference.GenericArguments): New public property.
1731
1732         * Mono.Cecil/MethodDefinition.cs
1733         (MethodDefinition.GenericParameters): New public property.
1734         (MethodDefinition.OnGenericParameterAdded): If a generic parameter
1735         is added, also add it to the `GenericArguments'.
1736
1737         * Mono.Cecil/GenericInstanceType.cs
1738         (GenericInstanceType): Removed the `m_arguments' field; we now
1739         inherit the `GenericArguments' property from `TypeReference'.
1740
1741         * Mono.Cecil/GenericInstanceMethod.cs
1742         (GenericInstanceMethod): Removed the `m_arguments' field; we now
1743         inherit the `GenericArguments' property from `MethodReference'.
1744
1745         * Mono.Cecil/GenericContext.cs
1746         (GenericContext): We now operate on type/method references and not
1747         definitions.
1748         (GenericContext.Type): Changed type to `TypeReference'.
1749         (GenericContext.Method): Changed type to `MethodReference'.
1750
1751 2005-11-23  Martin Baulig  <martin@ximian.com>
1752
1753         * Mono.Cecil.Metadata/TokenType.cs: Added `GenericParam'.
1754
1755         * Mono.Cecil.Metadata/Utilities.cs
1756         (GetMetadataToken): In `case CodedIndex.HasCustomAttribute', add
1757         `TokenType.GenericParam'.
1758
1759 2005-11-22  Jb Evain  <jbevain@gmail.com>
1760
1761         * Mono.Cecil/IMethodDefinitionCollection.cs
1762           Mono.Cecil/MethodDefinitionCollection.cs
1763           CodeGen/templates/IndexedCollectionImplem.cs
1764           CodeGen/templates/IIndexedCollection.cs:
1765                 Add a new search method.
1766         * CodeGen/templates/NamedCollectionImplem.cs
1767           Mono.Cecil/TypeReferenceCollection.cs
1768           Mono.Cecil/ExternTypeCollection.cs
1769           Mono.Cecil/TypeDefinitionCollection.cs:
1770                 Style.
1771
1772 2005-11-13      Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
1773         * Mono.Cecil/ReflectionReader.cs
1774                 Fix for NRE when reading assemblies with a field initializer
1775                 pointing to a data section
1776                 (TestCases/Regression/OddInt64Initializer.dll).
1777
1778 2005-11-11  Sebastien Pouliot  <sebastien@ximian.com>
1779
1780         * Mono.Cecil.Metadata/MetadataWriter.cs
1781                 Add support for different strongname key size (between 384
1782                 and 16384 bits) as now supported in fx 2.0. Default is still
1783                 1024 bits.
1784
1785 2005-11-10      Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
1786         * Mono.Cecil/CompactFrameworkCompatibility.cs
1787           Mono.Cecil/SecurityDeclarationReader.cs
1788           Mono.Cecil/TypeReferenceCollection.cs
1789           Mono.Cecil/ReflectionReader.cs
1790           Mono.Cecil/AssemblyFactory.cs
1791           Mono.Cecil/AssemblyName.cs
1792           Mono.Cecil/ExternTypeCollection.cs
1793           Mono.Cecil/ModuleDefinition.cs
1794           Mono.Cecil/TypeDefinitionCollection.cs
1795           CodeGen/templates/NamedCollectionImplem.cs
1796           CodeGen/templates/ImageReader.cs
1797           Mono.Cecil.Metadata/MetadataReader.cs
1798           Mono.Cecil.Metadata/MetadataWriter.cs
1799           Mono.Cecil.Metadata/CultureUtils.cs
1800           Mono.Xml/SecurityParser.cs
1801           Mono.Xml/SmallXmlParser.cs
1802           Mono.Cecil.Signatures/SignatureReader.cs
1803           Mono.Cecil.Binary/ImageReader.cs
1804           cecil.build
1805                 Implement support for compiling on the CompactFramework
1806
1807 2005-11-08  Jb Evain  <jbevain@gmail.com>
1808
1809         * Mono.Cecil/GenericInstanceType.cs
1810           Mono.Cecil/TypeReference.cs:
1811                 Fix a regression with 2.0 assemblies.
1812
1813 2005-11-03  Jb Evain  <jbevain@gmail.com>
1814
1815         * Mono.Cecil/CallSite.cs
1816           Mono.Cecil/ReflectionReader.cs
1817           Mono.Cecil/ICallSite.cs
1818           Mono.Cecil.Cil/CodeReader.cs
1819           Mono.Cecil.Cil/CodeWriter.cs
1820           Mono.Cecil.Signatures/SignatureReader.cs
1821           Mono.Cecil.dll.sources:
1822                 Implement support for calli opcodes reading.
1823
1824 2005-11-01  Jb Evain  <jbevain@gmail.com>
1825
1826         * Mono.Cecil/FunctionPointerType.cs
1827           Mono.Cecil/ReflectionReader.cs
1828           Mono.Cecil.Signatures/SignatureReader.cs:
1829                 Work on function pointers.
1830
1831         * Mono.Cecil/AssemblyInfo.cs:
1832                 Increase Cecil SVN version.
1833
1834         * Mono.Cecil/ArrayType.cs
1835           Mono.Cecil/MethodSpecification.cs
1836           Mono.Cecil/TypeSpecification.cs
1837           Mono.Cecil/IMethodSpecification.cs
1838           Mono.Cecil/GenericInstanceType.cs
1839           Mono.Cecil/IGenericInstanceType.cs
1840           Mono.Cecil/GenericInstanceMethod.cs
1841           Mono.Cecil/IModifierType.cs
1842           Mono.Cecil/IPinnedType.cs
1843           Mono.Cecil/ReferenceType.cs
1844           Mono.Cecil/IGenericInstanceMethod.cs
1845           Mono.Cecil/PinnedType.cs
1846           Mono.Cecil/PointerType.cs
1847           Mono.Cecil/IPointerType.cs
1848           Mono.Cecil/IReferenceType.cs
1849           Mono.Cecil/IArrayType.cs
1850           Mono.Cecil/ITypeSpecification.cs
1851           Mono.Cecil/Modifiers.cs
1852           Mono.Cecil.dll.sources:
1853                 Uniformize the specification model.
1854
1855 2005-10-31  Jb Evain  <jbevain@gmail.com>
1856
1857         * AUTHORS,
1858           NEWS,
1859           README,
1860           TODO,
1861           Mono.Cecil/AssemblyInfo.cs:
1862                 Cecil 0.1 release.
1863
1864         * Mono.Cecil/ReflectionReader.cs:
1865                 Force value type property on known core types.
1866
1867 2005-10-28  Jb Evain  <jbevain@gmail.com>
1868
1869         * Mono.Cecil/TypeReference.cs
1870           Mono.Cecil/ReflectionReader.cs
1871           Mono.Cecil/TypeDefinition.cs
1872           Mono.Cecil/ModuleDefinition.cs
1873           Mono.Cecil/ReflectionWriter.cs:
1874                 Uniformize the API.
1875
1876         * Mono.Cecil.Signatures/SignatureWriter.cs:
1877                 Correct a bug in strings encoding in custom attributes.
1878
1879         * CodeGen/templates/ImageWriter.cs
1880           Mono.Cecil.Metadata/MetadataWriter.cs
1881           Mono.Cecil/StructureWriter.cs
1882           Mono.Cecil/ReflectionWriter.cs
1883           Mono.Cecil.Binary/ImageWriter.cs:
1884                 Implement a big of public key management,
1885                 here we reserve space for the strong name
1886                 signature if needed.
1887
1888         * Mono.Cecil/StructureWriter.cs
1889           Mono.Cecil/StructureReader.cs:
1890                 Disable public key writing until
1891                 it is implemented.
1892
1893         * Mono.Cecil/GenericParameter.cs
1894           Mono.Cecil/TypeReference.cs
1895           Mono.Cecil/MethodReference.cs:
1896                 Work on generics writing api.
1897         * Mono.Cecil/ReflectionReader.cs:
1898                 Fix a bug when defining a fresh assembly.
1899
1900         * Mono.Cecil/GenericInstanceType.cs
1901           Mono.Cecil/ReflectionWriter.cs
1902           Mono.Cecil/IGenericParameterProvider.cs
1903           Mono.Cecil.Signatures/Var.cs
1904           Mono.Cecil.Signatures/MVar.cs
1905           Mono.Cecil.Signatures/SignatureReader.cs
1906           Mono.Cecil.Signatures/SignatureWriter.cs
1907           Mono.Cecil.Cil/CodeWriter.cs:
1908                 Work on generics writing.
1909
1910 2005-10-27  Jb Evain  <jbevain@gmail.com>
1911
1912         * Mono.Cecil.Cil/CodeReader.cs
1913           Mono.Cecil.Cil/CilWorker.cs
1914           Mono.Cecil.Cil/CodeWriter.cs
1915           Mono.Cecil.Cil/OpCode.cs:
1916                 Override op == and != on opcodes.
1917
1918         * Mono.Cecil/FieldDefinition.cs
1919           Mono.Cecil/TypeDefinition.cs
1920           Mono.Cecil/MethodDefinition.cs
1921           Mono.Cecil/EventDefinition.cs
1922           Mono.Cecil/PropertyDefinition.cs:
1923                 Fix setters working on attributes.
1924
1925         * Mono.Cecil.Cil/CodeWriter.cs:
1926                 Compute max stack before writing method.
1927
1928         * Mono.Cecil/GenericContext.cs
1929           Mono.Cecil/ReflectionReader.cs
1930           Mono.Cecil.Signatures/SignatureReader.cs:
1931                 Work on generics support.
1932
1933         * CodeGen/cecil.xml
1934           Mono.Cecil/ISecurityDeclarationCollection.cs
1935           Mono.Cecil/SecurityDeclarationCollection.cs:
1936                 Remove the security declaration from the codegen.
1937
1938 2005-10-27  Sebastien Pouliot  <sebastien@ximian.com>
1939
1940         * Mono.Cecil\SecurityDeclaration.cs
1941                 Copy the permission set when cloning.
1942         * Mono.Cecil\SecurityDeclarationCollection.cs
1943                 Ajusted to use an Hashtable, to Union permission sets on
1944                 the same action and to set/unset HasSecurity when needed.
1945         * Mono.Cecil\ModuleDefinition.cs:
1946                 Added TODO (remainder) for complete 2.0 format support.
1947         * Mono.Cecil\ReflectionWriter.cs:
1948                 Move MetadataToken finding outside the loop.
1949         * Mono.Cecil\ISecurityDeclarationCollection.cs:
1950                 Adjust interface.
1951
1952 2005-10-27  Jb Evain  <jbevain@gmail.com>
1953
1954         * Mono.Cecil/TypeDefinition.cs
1955           Mono.Cecil/MethodDefinition.cs:
1956                 Add generics parameters in visitor path.
1957
1958         * Mono.Cecil/GenericParamAttributes.cs:
1959                 Add new constraints flags.
1960
1961 2005-10-22  Jb Evain  <jbevain@gmail.com>
1962
1963         * Mono.Cecil/GenericParameter.cs
1964           Mono.Cecil/ReflectionReader.cs
1965           Mono.Cecil/IGenericParameter.cs
1966           Mono.Cecil/AggressiveReflectionReader.cs
1967           Mono.Cecil/GenericContext.cs:
1968                 Support generic parameters constraints.
1969
1970 2005-10-21  Jb Evain  <jbevain@gmail.com>
1971
1972         * Mono.Cecil/FieldDefinition.cs
1973           Mono.Cecil/CustomAttribute.cs
1974           Mono.Cecil/TypeDefinition.cs
1975           Mono.Cecil/SecurityDeclaration.cs
1976           Mono.Cecil/MethodDefinition.cs
1977           Mono.Cecil/EventDefinition.cs
1978           Mono.Cecil/ParameterDefinition.cs
1979           Mono.Cecil/PropertyDefinition.cs:
1980                 Implement ICloneable.
1981
1982         * Mono.Cecil/IAssemblyDefinition.cs:
1983                 Mirror changes on asm kind.
1984         * Mono.Cecil/StructureReader.cs:
1985                 Fix asm kind detection.
1986
1987         * Mono.Cecil/StructureWriter.cs
1988           Mono.Cecil/ReflectionReader.cs
1989           Mono.Cecil/MethodDefinition.cs
1990           Mono.Cecil/ReflectionWriter.cs:
1991                 Fix regressions.
1992         * Mono.Cecil.Cil/MethodBody.cs:
1993                 Fix method cloning.
1994
1995         * CodeGen/templates/MetadataTableReader.cs
1996           Mono.Cecil.Metadata/MetadataTableReader.cs
1997           Mono.Cecil.Metadata/MetadataReader.cs:
1998                 Add helpers for reading.
1999
2000         * Mono.Cecil/ReflectionReader.cs
2001           Mono.Cecil/MethodDefinition.cs
2002           Mono.Cecil/AggressiveReflectionReader.cs
2003           Mono.Cecil/GenericContext.cs:
2004                 Working on generic parameters reading.
2005                 Still have troubles reading a 2.0 corlib.
2006
2007         * Mono.Cecil/IHasMarshalSpec.cs:
2008                 API fix.
2009
2010         * Mono.Cecil/ParameterDefinition.cs
2011           Mono.Cecil.Cil/VariableDefinition.cs:
2012                 Override ToString.
2013
2014 2005-10-20  Jb Evain  <jbevain@gmail.com>
2015
2016         * Mono.Cecil.Cil/CodeReader.cs
2017           Mono.Cecil.Cil/CodeWriter.cs
2018           Mono.Cecil.Cil/ICilWorker.cs
2019           Mono.Cecil.Cil/CilWorker.cs:
2020                 ShortInlineI operands are signed.
2021                 Spotted by Rodrigo B. de Oliveira.
2022
2023         * CodeGen/templates/OpCodes.cs
2024           Mono.Cecil.Cil/OpCodes.cs:
2025                 Add 2.0 opcodes.
2026
2027         * Mono.Cecil/StructureWriter.cs
2028           Mono.Cecil/AssemblyDefinition.cs
2029           Mono.Cecil/AssemblyFactory.cs
2030           Mono.Cecil/StructureReader.cs
2031           Mono.Cecil/ReflectionWriter.cs:
2032                 Handle the assembly kind in a smoothie way.
2033
2034 2005-10-19  Sebastien Pouliot  <sebastien@ximian.com>
2035
2036         * Mono.Cecil/AssemblyDefinition.cs: Added an override for ToString to
2037         ease debugging.
2038         * Mono.Cecil/ModuleDefinition.cs: Make SecurityDeclaration works with
2039         2.0 assemblies.
2040         * Mono.Cecil/ReflectionReader.cs: Modified BuildSecurityDeclaration
2041         to use the new SecurityDeclarationReader (supporting both formats).
2042         * Mono.Cecil/SecurityAction.cs: Removed actions that were "cutted" out
2043         of 2.0 final.
2044         * Mono.Cecil/SecurityDeclarationReader.cs: New. Handle both the 1.x
2045         and 2.0 formats for reading declarative security.
2046
2047 2005-10-18  Jb Evain  <jbevain@gmail.com>
2048
2049         * Mono.Cecil/GenericParameter.cs:
2050                 A little change before the fix.
2051
2052         * Mono.Cecil/ReflectionHelper.cs
2053           Mono.Cecil/MethodDefinition.cs
2054           Mono.Cecil.Cil/MethodBody.cs:
2055                 Implement method cloning.
2056
2057         * Mono.Cecil/ModuleReference.cs
2058           Mono.Cecil/FieldDefinition.cs
2059           Mono.Cecil/TypeReference.cs
2060           Mono.Cecil/ReflectionReader.cs
2061           Mono.Cecil/TypeDefinition.cs
2062           Mono.Cecil/EventDefinition.cs
2063           Mono.Cecil/ModuleDefinition.cs
2064           Mono.Cecil/FieldReference.cs
2065           Mono.Cecil/ReflectionWriter.cs
2066           Mono.Cecil/PropertyDefinition.cs
2067           Mono.Cecil/AssemblyFactory.cs:
2068                 Small API change.
2069
2070         * Mono.Cecil.Cil/CodeReader.cs:
2071                 Fix variables names.
2072
2073         TODO before 0.1:
2074                 Fix generic parameters,
2075                 generic writing,
2076                 constructor changes (with S.Type and SR.*Info)
2077
2078 2005-10-14  Jb Evain  <jbevain@gmail.com>
2079
2080         Work on generics support.
2081
2082         * CodeGen/cecil.xml: new collections, coded indexes, opcodes.
2083
2084         * Mono.Cecil/IGenericParameterCollection.cs
2085           Mono.Cecil/GenericParameterCollection.cs
2086           Mono.Cecil/IGenericArgumentCollection.cs
2087           Mono.Cecil/GenericArgumentCollection.cs:
2088                 Added new collections.
2089
2090         * Mono.Cecil.Metadata/Utilities.cs: updated.
2091         * Mono.Cecil.Metadata/TokenType.cs: added MethodSpec.
2092
2093         * Mono.Cecil/IGenericParameter.cs
2094           Mono.Cecil/GenericParameter.cs
2095           Mono.Cecil/IGenericParameterConstraints.cs
2096           Mono.Cecil/GenericParameterConstraints.cs
2097           Mono.Cecil/IGenericParameterProvider.cs
2098           Mono.Cecil/IGenericInstance.cs
2099           Mono.Cecil/IGenericInstanceType.cs
2100           Mono.Cecil/GenericInstanceType.cs
2101           Mono.Cecil/IGenericInstanceMethod.cs
2102           Mono.Cecil/GenericInstanceMethod.cs:
2103                 Generics API elements.
2104
2105         * Mono.Cecil/IMethod.cs
2106           Mono.Cecil/MethodReference.cs
2107           Mono.Cecil/ITypeReference.cs
2108           Mono.Cecil/TypeReference.cs:
2109                 Implement IGenericParameterProvider
2110
2111         * Mono.Cecil/ReflectionReader.cs
2112           Mono.Cecil/IReflectionVisitor.cs
2113           Mono.Cecil/BaseReflectionVisitor.cs
2114           Mono.Cecil/StructureReader.cs
2115           Mono.Cecil/AggressiveReflectionReader.cs
2116           Mono.Cecil/MemberReference.cs:
2117                 Support for the new generics elements.
2118
2119         * Mono.Cecil.Signatures/Var.cs
2120           Mono.Cecil.Signatures/MVar.cs
2121           Mono.Cecil.Signatures/GenericInstSignature.cs
2122           Mono.Cecil.Signatures/GenericInst.cs:
2123                 Added file header.
2124
2125         * Mono.Cecil.Signatures/SignatureReader.cs
2126           Mono.Cecil.Signatures/GenericInstSignature.cs
2127           Mono.Cecil.Signatures/MethodDefSig.cs
2128           Mono.Cecil.Signatures/GenericInst.cs
2129           Mono.Cecil.Signatures/MethodSpec.cs
2130           Mono.Cecil/MethodCallingConvention.cs
2131           Mono.Cecil.Cil/CodeReader.cs:
2132                 Added support for generic signatures.
2133
2134         * Mono.Cecil.Cil/OpCodes.cs:
2135                 Add consrained. opcode.
2136
2137         * Mono.Cecil.dll.sources:
2138                 Updated.
2139
2140         Known problems: !!parameters
2141
2142 2005-10-13  Jb Evain  <jbevain@gmail.com>
2143
2144         * Mono.Cecil/ReflectionHelper.cs
2145           Mono.Cecil/FieldDefinition.cs
2146           Mono.Cecil/CustomAttribute.cs
2147           Mono.Cecil/MethodReturnType.cs
2148           Mono.Cecil/TypeDefinition.cs
2149           Mono.Cecil/SecurityDeclaration.cs
2150           Mono.Cecil/MethodDefinition.cs
2151           Mono.Cecil/EventDefinition.cs
2152           Mono.Cecil/ModuleDefinition.cs
2153           Mono.Cecil/ParameterDefinition.cs
2154           Mono.Cecil/IMethodReturnType.cs
2155           Mono.Cecil/PropertyDefinition.cs
2156           Mono.Cecil.Cil/MethodBody.cs:
2157                 Work on the import.
2158         * Mono.Cecil/ITypeParameterType.cs
2159           Mono.Cecil/TypeParameterType.cs:
2160                 Correct the interface.
2161
2162 2005-10-12  Jb Evain  <jbevain@gmail.com>
2163
2164         * Mono.Cecil/EventDefinition.cs
2165           Mono.Cecil/TypeDefinition.cs
2166           Mono.Cecil/ModuleDefinition.cs
2167           Mono.Cecil/ReflectionWriter.cs
2168           Mono.Cecil/PropertyDefinition.cs:
2169                 Small fixes.
2170
2171 2005-09-16  Martin Baulig  <martin@ximian.com>
2172
2173         Added generics support to Cecil.
2174
2175         * Mono.Cecil/IGenericInstType.cs: New file.
2176         * Mono.Cecil/ITypeParameterType.cs: New file.
2177         * Mono.Cecil/IMethodTypeParameterType.cs: New file.
2178
2179         * Mono.Cecil.Metadata/ElementType.cs
2180         (ElementType): Added `Var', `MVar' and `GenericInst'.
2181
2182         * Mono.Cecil.Metadata/Utilities.cs
2183         (Utilities.GetMetadataToken): .NET 2.0 also uses TypeDef's in the
2184         MemberRefParent.
2185
2186         * Mono.Cecil/GenericInstType.cs: New file.
2187         * Mono.Cecil/MethodTypeParameterType.cs: New file.
2188         * Mono.Cecil/TypeParameterType.cs: New file.
2189
2190         * Mono.Cecil.Signatures/Var.cs: New file.
2191         * Mono.Cecil.Signatures/MVar.cs: New file.
2192         * Mono.Cecil.Signatures/GenericInst.cs: New file.
2193         * Mono.Cecil.Signatures/GenericInstSignature.cs: New file.
2194
2195         * Mono.Cecil/ReflectionReader.cs
2196         (ReflectionReader.GetTypeRefFromSig): Add the new types.
2197
2198         * Mono.Cecil.Signatures/SignatureReader.cs
2199         (SignatureReader.ReadType): Add the new types.
2200
2201 2005-10-06  Jb Evain  <jbevain@gmail.com>
2202
2203         * Mono.Cecil/ReflectionHelper.cs
2204           Mono.Cecil/ModuleDefinition.cs:
2205                 Fix a bug in type importing.
2206
2207 2005-10-06  Jb Evain  <jbevain@gmail.com>
2208
2209         * Hopefully, this is the last API change before the release of Cecil 0.1.
2210           Mono.Cecil.Implem has been moved to Mono.Cecil. The interfaces where
2211           very convenient for a reading API, it was far less convenient for a
2212           modification and writing one. The modification API still needs some work,
2213           but this should be easier this way.
2214
2215 2005-09-27  Jb Evain  <jbevain@gmail.com>
2216
2217         * Mono.Cecil.Metadata/MetadataReader.cs:
2218                 Fix resources reading.
2219
2220         * Mono.Cecil.Implem/StructureWriter.cs:
2221                 Correctly set the offset of resources in the manifest.
2222         * Mono.Cecil.Implem/StructureFactories.cs:
2223                 Use correct overrides when creating assembly references.
2224         * Mono.Cecil.Implem/ReflectionFactories:
2225                 Correctly create type references.
2226
2227 2005-09-06  Jb Evain  <jbevain@gmail.com>
2228
2229         * Mono.Cecil/IReflectionFactories.cs
2230           Mono.Cecil.Implem/ReflectionFactories.cs:
2231                 Allow the creation of reference types for methods
2232                 parameters and return types.
2233         * Mono.Cecil.Cil/ICilWorker.cs
2234           Mono.Cecil.Implem/CilWorker.cs
2235           Mono.Cecil.Implem/CodeReader.cs
2236           Mono.Cecil.Implem/CodeWriter.cs:
2237                 Global fix on the handling of parameters in instructions.
2238         * Mono.Cecil.Implem/AssemblyName.cs:
2239                 Correcty write the version of an assembly fullname.
2240                 Spotted by Bruno Cabral.
2241         * Mono.Cecil.Implem/TypeDefinition.cs:
2242                 Set the declaring type of a nested type on add.
2243         * Mono.Cecil.Implem/CustomAttribute.cs
2244           Mono.Cecil.Implem/ReflectionReader.cs
2245           Mono.Cecil.Implem/ReflectionWriter.cs
2246           Mono.Cecil.Implem/AggressiveReflectionReader.cs
2247           Mono.Cecil.Signatures/CustomAttrib.cs
2248           Mono.Cecil.Signatures/SignatureReader.cs:
2249                 Global fix on custom attribute handling. Some
2250                 custom attribute (containing enums) blobs can not be
2251                 decoded.
2252
2253 2005-09-04  Jb Evain  <jbevain@gmail.com>
2254
2255         * Mono.Cecil.Implem/Instruction.cs:
2256                 Add the setter for IInstruction::OpCode.
2257
2258 2005-09-02  Jb Evain  <jbevain@gmail.com>
2259
2260         * Mono.Cecil/ICustomAttribute.cs
2261           Mono.Cecil.Implem/ReflectionFactories.cs
2262           Mono.Cecil.Implem/CustomAttribute.cs
2263           Mono.Cecil.Implem/ReflectionWriter.cs
2264           Mono.Cecil.Signatures/SignatureWriter.cs:
2265                 Prepare the work on custom attributes.
2266         * Mono.Cecil.Cil/IInstruction.cs:
2267                 Let users modify the content of an instruction.
2268         * Mono.Cecil.Implem/StructureReader.cs:
2269                 Do not try to read 2.0 assemblies.
2270
2271 2005-08-28  Jb Evain  <jbevain@gmail.com>
2272
2273         * Mono.Cecil.Metadata/MetadataWriter.cs:
2274                 Write the fields initial value back.
2275                 As of this revision, a round tripped mcs
2276                 can compile Cecil.
2277
2278         * Mono.Cecil.Implem/ReflectionWriter.cs:
2279                 Emit things in proper order.
2280           Mono.Cecil.Implem/CodeReader.cs
2281           Mono.Cecil.Implem/CodeWriter.cs:
2282                 Correct bug with InlineVar opcodes.
2283                 Emit fat body if maxstack is set.
2284
2285         * Mono.Cecil.Implem/CodeWriter.cs:
2286                 Handle null tokens.
2287           Mono.Cecil.Metadata/MetadataWriter.cs:
2288                 Allow one empty string in the userstring heap.
2289
2290         * Mono.Cecil.Implem/ReflectionReader.cs
2291           Mono.Cecil.Implem/ReflectionWriter.cs:
2292                 Strings constant are unicode.
2293
2294         * Mono.Cecil/LoadingType.cs
2295           Mono.Cecil/AssemblyFactory.cs
2296           CodeGen/templates/IndexedCollectionImplem.cs
2297           CodeGen/templates/LzIndexedCollectionImplem.cs
2298           CodeGen/cecil.xml
2299           Mono.Cecil.Implem/InterfaceCollection.cs
2300           Mono.Cecil.Implem/ILazyLoadable.cs
2301           Mono.Cecil.Implem/ExternTypeCollection.cs
2302           Mono.Cecil.Implem/SecurityDeclarationCollection.cs
2303           Mono.Cecil.Implem/ReflectionHelper.cs
2304           Mono.Cecil.Implem/OverrideCollection.cs
2305           Mono.Cecil.Implem/EventDefinitionCollection.cs
2306           Mono.Cecil.Implem/FieldDefinitionCollection.cs
2307           Mono.Cecil.Implem/PropertyDefinitionCollection.cs
2308           Mono.Cecil.Implem/CustomAttributeCollection.cs
2309           Mono.Cecil.Implem/MethodDefinition.cs
2310           Mono.Cecil.Implem/EventDefinition.cs
2311           Mono.Cecil.Implem/FieldDefinition.cs
2312           Mono.Cecil.Implem/ModuleDefinition.cs
2313           Mono.Cecil.Implem/ReflectionController.cs
2314           Mono.Cecil.Implem/TypeReference.cs
2315           Mono.Cecil.Implem/ReflectionReader.cs
2316           Mono.Cecil.Implem/ReflectionWriter.cs
2317           Mono.Cecil.Implem/AssemblyDefinition.cs
2318           Mono.Cecil.Implem/TypeDefinition.cs
2319           Mono.Cecil.Implem/AggressiveReflectionReader.cs
2320           Mono.Cecil.Implem/MethodDefinitionCollection.cs
2321           Mono.Cecil.Implem/LazyReflectionReader.cs
2322           Mono.Cecil.Implem/ParameterDefinition.cs
2323           Mono.Cecil.Implem/PropertyDefinition.cs
2324           Mono.Cecil.Implem/ConstructorCollection.cs
2325           Mono.Cecil.Signatures/SignatureWriter.cs:
2326                 Get rid of the complexity introduced by the
2327                 internal lazy loading.
2328
2329         * Mono.Cecil.Implem/EventDefinition.cs
2330           Mono.Cecil.Implem/PropertyDefinition.cs:
2331                 Fix the behavior of .ToString ().
2332
2333 2005-08-27  Jb Evain  <jbevain@gmail.com>
2334
2335         * Mono.Cecil.Implem/ReflectionWriter.cs:
2336                 Write back custom attributes of modules and assemblies
2337                 as well as their security declaration.
2338         * Mono.Cecil.Implem/CodeWriter.cs:
2339                 Fix branches computation.
2340           Mono.Cecil.Signatures/SignatureReader.cs:
2341                 Disable custom attribute reading cache.
2342
2343         * CodeGen/templates/ImageWriter.cs
2344           Mono.Cecil.Binary/ImageWriter.cs:
2345                 Compute relocations.
2346         * Mono.Cecil.Implem/ReflectionFactories.cs:
2347                 Blah.
2348
2349         * Mono.Cecil.Implem/TablesComparer.cs
2350           Mono.Cecil.Implem/ReflectionWriter.cs:
2351                 Sort all tables that need to be sorted.
2352
2353         * Mono.Cecil.Implem/CodeReader.cs:
2354                 Oops. Add fat exception handlers to the method body.
2355
2356         * CodeGen/templates/ImageWriter.cs
2357           Mono.Cecil.Implem/StructureWriter.cs
2358           Mono.Cecil.Implem/ReflectionWriter.cs
2359           Mono.Cecil.Implem/TypeDefinition.cs
2360           Mono.Cecil.Binary/ImageWriter.cs:
2361                 Correct a few bugs: relocations now works.
2362                 Encode enums in custom attributes.
2363                 Compute memberrefs tokens before visitings types.
2364
2365         * Mono.Cecil.Implem/FieldDefinition.cs:
2366                 Correct a bug that causes null ref due to
2367                 the new api.
2368         * Mono.Cecil.Signatures/SignatureWriter.cs:
2369                 Implement a very little more custom attributes
2370                 writing.
2371
2372 2005-08-26  Jb Evain  <jbevain@gmail.com>
2373
2374         * Mono.Cecil/IMemberReferenceCollection.cs
2375           Mono.Cecil/IReflectionVisitor.cs
2376           Mono.Cecil/IReflectionFactories.cs
2377           Mono.Cecil/BaseReflectionVisitor.cs
2378           Mono.Cecil/IModuleDefinition.cs
2379           CodeGen/cecil.xml
2380           Mono.Cecil.Implem/ReflectionFactories.cs
2381           Mono.Cecil.Implem/ReflectionHelper.cs
2382           Mono.Cecil.Implem/ModuleDefinition.cs
2383           Mono.Cecil.Implem/MemberReferenceCollection.cs
2384           Mono.Cecil.Implem/ReflectionReader.cs
2385           Mono.Cecil.Implem/ReflectionWriter.cs
2386           Mono.Cecil.Implem/ParameterDefinition.cs:
2387                 Handle member references nicely.
2388
2389         * Mono.Cecil/ICustomAttributeProvider.cs
2390           Mono.Cecil/IModuleDefinitionCollection.cs
2391           Mono.Cecil/IReflectionStructureFactories.cs
2392           Mono.Cecil/IInterfaceCollection.cs
2393           Mono.Cecil/IMethod.cs
2394           Mono.Cecil/IReflectionFactories.cs
2395           Mono.Cecil/INestedTypeCollection.cs
2396           Mono.Cecil/ITypeReferenceCollection.cs
2397           Mono.Cecil/IExternTypeCollection.cs
2398           Mono.Cecil/IAssemblyDefinition.cs
2399           Mono.Cecil/ITypeDefinition.cs
2400           Mono.Cecil/ICustomAttribute.cs
2401           Mono.Cecil/IArrayDimensionCollection.cs
2402           Mono.Cecil/TypeFactory.cs
2403           Mono.Cecil/IConstructorCollection.cs
2404           Mono.Cecil/IHasSecurity.cs
2405           Mono.Cecil/IMethodDefinitionCollection.cs
2406           Mono.Cecil/IPropertyDefinitionCollection.cs
2407           Mono.Cecil/IAssemblyNameReferenceCollection.cs
2408           Mono.Cecil/IModuleReferenceCollection.cs
2409           Mono.Cecil/IArrayType.cs
2410           Mono.Cecil/ISecurityDeclarationCollection.cs
2411           Mono.Cecil/IModuleDefinition.cs
2412           Mono.Cecil/IResourceCollection.cs
2413           Mono.Cecil/IParameterDefinitionCollection.cs
2414           Mono.Cecil/IEventDefinitionCollection.cs
2415           Mono.Cecil/ITypeDefinitionCollection.cs
2416           Mono.Cecil/IFieldDefinitionCollection.cs
2417           Mono.Cecil/ICustomAttributeCollection.cs
2418           Mono.Cecil/ISecurityDeclaration.cs
2419           Mono.Cecil/IOverrideCollection.cs
2420           Mono.Cecil/ITypeReference.cs
2421           Mono.Cecil.Cil/IExceptionHandlerCollection.cs
2422           Mono.Cecil.Cil/IVariableDefinitionCollection.cs
2423           Mono.Cecil.Cil/IInstructionCollection.cs
2424           Mono.Cecil.Cil/IMethodBody.cs
2425           CodeGen/cecil-gen-types.rb
2426           CodeGen/templates/ImageWriter.cs
2427           CodeGen/templates/IndexedCollectionImplem.cs
2428           CodeGen/templates/NamedCollectionImplem.cs
2429           CodeGen/templates/IIndexedCollection.cs
2430           CodeGen/templates/LzIndexedCollectionImplem.cs
2431           CodeGen/templates/INamedCollection.cs
2432           CodeGen/templates/LzNamedCollectionImplem.cs
2433           Mono.Cecil.Implem/InterfaceCollection.cs
2434           Mono.Cecil.Implem/AssemblyLinkedResource.cs
2435           Mono.Cecil.Implem/ModuleReferenceCollection.cs
2436           Mono.Cecil.Implem/ExternTypeCollection.cs
2437           Mono.Cecil.Implem/SecurityDeclarationCollection.cs
2438           Mono.Cecil.Implem/ReflectionFactories.cs
2439           Mono.Cecil.Implem/ReflectionHelper.cs
2440           Mono.Cecil.Implem/OverrideCollection.cs
2441           Mono.Cecil.Implem/ArrayDimensionCollection.cs
2442           Mono.Cecil.Implem/EmbeddedResource.cs
2443           Mono.Cecil.Implem/CilWorker.cs
2444           Mono.Cecil.Implem/ParameterDefinitionCollection.cs
2445           Mono.Cecil.Implem/EventDefinitionCollection.cs
2446           Mono.Cecil.Implem/FieldDefinitionCollection.cs
2447           Mono.Cecil.Implem/PropertyDefinitionCollection.cs
2448           Mono.Cecil.Implem/ModuleDefinitionCollection.cs
2449           Mono.Cecil.Implem/CustomAttributeCollection.cs
2450           Mono.Cecil.Implem/VariableDefinitionCollection.cs
2451           Mono.Cecil.Implem/TypeReferenceCollection.cs
2452           Mono.Cecil.Implem/MemberDefinition.cs
2453           Mono.Cecil.Implem/StructureReader.cs
2454           Mono.Cecil.Implem/FunctionPointerType.cs
2455           Mono.Cecil.Implem/MethodDefinition.cs
2456           Mono.Cecil.Implem/EventDefinition.cs
2457           Mono.Cecil.Implem/FieldDefinition.cs
2458           Mono.Cecil.Implem/InstructionCollection.cs
2459           Mono.Cecil.Implem/VariableDefinition.cs
2460           Mono.Cecil.Implem/CustomAttribute.cs
2461           Mono.Cecil.Implem/ModuleDefinition.cs
2462           Mono.Cecil.Implem/MethodReference.cs
2463           Mono.Cecil.Implem/TypeReference.cs
2464           Mono.Cecil.Implem/StructureFactories.cs
2465           Mono.Cecil.Implem/TypeDefinitionCollection.cs
2466           Mono.Cecil.Implem/AssemblyNameReferenceCollection.cs
2467           Mono.Cecil.Implem/ReflectionReader.cs
2468           Mono.Cecil.Implem/MethodReturnType.cs
2469           Mono.Cecil.Implem/MemberReference.cs
2470           Mono.Cecil.Implem/ReflectionWriter.cs
2471           Mono.Cecil.Implem/Resource.cs
2472           Mono.Cecil.Implem/AssemblyDefinition.cs
2473           Mono.Cecil.Implem/TypeDefinition.cs
2474           Mono.Cecil.Implem/AggressiveReflectionReader.cs
2475           Mono.Cecil.Implem/CodeReader.cs
2476           Mono.Cecil.Implem/FieldReference.cs
2477           Mono.Cecil.Implem/MethodDefinitionCollection.cs
2478           Mono.Cecil.Implem/LazyReflectionReader.cs
2479           Mono.Cecil.Implem/LinkedResource.cs
2480           Mono.Cecil.Implem/ParameterDefinition.cs
2481           Mono.Cecil.Implem/PropertyDefinition.cs
2482           Mono.Cecil.Implem/MethodBody.cs
2483           Mono.Cecil.Implem/NestedTypeCollection.cs
2484           Mono.Cecil.Implem/ConstructorCollection.cs
2485           Mono.Cecil.Implem/ResourceCollection.cs
2486           Mono.Cecil.Implem/ExceptionHandlerCollection.cs
2487           Mono.Cecil.Binary/ImageWriter.cs
2488           Mono.Cecil.Binary/ImageReader.cs:
2489                 Fix the writing API before the API freeze. Few things
2490                 are not implemented, see todos.
2491
2492 2005-08-20  Jb Evain  <jbevain@gmail.com>
2493
2494         * Mono.Cecil/ITypeDefinition.cs
2495           Mono.Cecil/IModuleDefinition.cs
2496           Mono.Cecil/ITypeReference.cs
2497           Mono.Cecil.Implem/ReflectionHelper.cs
2498           Mono.Cecil.Implem/ModuleDefinition.cs
2499           Mono.Cecil.Implem/TypeReference.cs
2500           Mono.Cecil.Implem/ReflectionReader.cs
2501           Mono.Cecil.Implem/ReflectionWriter.cs
2502           Mono.Cecil.Implem/TypeDefinition.cs:
2503                 Add way to know if a type reference is a
2504                 value type or not. This hack saved my life.
2505
2506         * Mono.Cecil.Implem/CodeWriter.cs:
2507                 Fix typespec emitting.
2508
2509         * Mono.Cecil/IReflectionVisitor.cs
2510           Mono.Cecil/IMethod.cs
2511           Mono.Cecil/BaseReflectionVisitor.cs
2512           Mono.Cecil/ITypeDefinition.cs
2513           Mono.Cecil/IConstructorCollection.cs
2514           CodeGen/cecil.xml
2515           Mono.Cecil.Implem/MethodDefinition.cs
2516           Mono.Cecil.Implem/ReflectionReader.cs
2517           Mono.Cecil.Implem/ReflectionWriter.cs
2518           Mono.Cecil.Implem/TypeDefinition.cs
2519           Mono.Cecil.Implem/ConstructorCollection.cs:
2520                 Support constructors decently.
2521
2522         * CodeGen/templates/Utilities.cs
2523           Mono.Cecil.Metadata/Utilities.cs:
2524                 Return a null token if the rid of a md token
2525                 is 0. Fix the crash when Mono try to read
2526                 assemblies emitted by Cecil.
2527
2528 2005-08-19  Jb Evain  <jbevain@gmail.com>
2529
2530         * Mono.Cecil.Implem/ReflectionWriter.cs:
2531                 Set the RVA of a method only if it can
2532                 have a body.
2533         * Mono.Cecil.Signatures/SignatureReader.cs:
2534                 Remove debugging stuff.
2535
2536         * Mono.Cecil.Implem/ReflectionReader.cs
2537           Mono.Cecil.Signatures/SignatureReader.cs:
2538                 Fix custom marshaller reading.
2539
2540         * CodeGen/templates/NamedCollectionImplem.cs
2541           CodeGen/templates/LzNamedCollectionImplem.cs
2542           Mono.Cecil.Implem/ExternTypeCollection.cs
2543           Mono.Cecil.Implem/TypeReferenceCollection.cs
2544           Mono.Cecil.Implem/TypeDefinitionCollection.cs
2545           Mono.Cecil.Implem/ReflectionReader.cs
2546           Mono.Cecil.Implem/ReflectionWriter.cs
2547           Mono.Cecil.Implem/TablesComparer.cs
2548           Mono.Cecil.Implem/Constants.cs
2549           Mono.Cecil.Signatures/SignatureWriter.cs:
2550                 Correct bugs in type* tables generations.
2551
2552         * Mono.Cecil/IModuleDefinitionCollection.cs
2553           Mono.Cecil/IInterfaceCollection.cs
2554           Mono.Cecil/INestedTypeCollection.cs
2555           Mono.Cecil/ITypeReferenceCollection.cs
2556           Mono.Cecil/IExternTypeCollection.cs
2557           Mono.Cecil/IArrayDimensionCollection.cs
2558           Mono.Cecil/IMethodDefinitionCollection.cs
2559           Mono.Cecil/IPropertyDefinitionCollection.cs
2560           Mono.Cecil/IAssemblyNameReferenceCollection.cs
2561           Mono.Cecil/IModuleReferenceCollection.cs
2562           Mono.Cecil/ISecurityDeclarationCollection.cs
2563           Mono.Cecil/IResourceCollection.cs
2564           Mono.Cecil/IParameterDefinitionCollection.cs
2565           Mono.Cecil/IEventDefinitionCollection.cs
2566           Mono.Cecil/ITypeDefinitionCollection.cs
2567           Mono.Cecil/IFieldDefinitionCollection.cs
2568           Mono.Cecil/ICustomAttributeCollection.cs
2569           Mono.Cecil/IOverrideCollection.cs
2570           Mono.Cecil.Cil/IExceptionHandlerCollection.cs
2571           Mono.Cecil.Cil/IVariableDefinitionCollection.cs
2572           Mono.Cecil.Cil/IInstructionCollection.cs
2573           CodeGen/templates/IIndexedCollection.cs
2574           CodeGen/templates/INamedCollection.cs
2575           Mono.Cecil.Implem/ReflectionWriter.cs
2576           Mono.Cecil.Binary/SubSystem.cs
2577           Mono.Cecil.Signatures/SignatureWriter.cs:
2578                 On going change to the writing api. Not setter allowed on
2579                 collections. Work on custom attribute encoding. Remove
2580                 the Flags on Subsystem.
2581
2582         * Mono.Cecil.dll.sources
2583           Mono.Cecil.Implem/ReflectionHelper.cs
2584           Mono.Cecil.Implem/TypeReference.cs
2585           Mono.Cecil.Implem/ReflectionReader.cs
2586           Mono.Cecil.Implem/ReflectionWriter.cs
2587           Mono.Cecil.Implem/TypeDefinition.cs
2588           Mono.Cecil.Implem/TablesComparer.cs
2589           Mono.Cecil.Signatures/SignatureReader.cs:
2590                 Fix the build.
2591                 Stop to prefix typeref by the scope.
2592                 Cecil will have buggy behaviour if it have to handle
2593                 two typeref with the same namespace+name, but for the
2594                 moment, let it like that.
2595
2596         * Mono.Cecil/INestedTypeCollection.cs
2597           Mono.Cecil/IModuleReference.cs
2598           Mono.Cecil/ITypeReferenceCollection.cs
2599           Mono.Cecil/IAssemblyName.cs
2600           Mono.Cecil/IExternTypeCollection.cs
2601           Mono.Cecil/IMetadataScope.cs
2602           Mono.Cecil/IModuleDefinition.cs
2603           Mono.Cecil/IResourceCollection.cs
2604           Mono.Cecil/ITypeDefinitionCollection.cs
2605           CodeGen/templates/NamedCollectionImplem.cs
2606           CodeGen/templates/INamedCollection.cs
2607           CodeGen/templates/LzNamedCollectionImplem.cs
2608           CodeGen/cecil.xml
2609           Mono.Cecil.Metadata/RowCollection.cs
2610           Mono.Cecil.Metadata/MetadataWriter.cs
2611           Mono.Cecil.Metadata/MetadataToken.cs
2612           Mono.Cecil.Implem/TablesComparer.cs
2613           Mono.Cecil.Implem/ExternTypeCollection.cs
2614           Mono.Cecil.Implem/ReflectionHelper.cs
2615           Mono.Cecil.Implem/TypeReferenceCollection.cs
2616           Mono.Cecil.Implem/StructureReader.cs
2617           Mono.Cecil.Implem/StructureWriter.cs
2618           Mono.Cecil.Implem/ModuleDefinition.cs
2619           Mono.Cecil.Implem/TypeReference.cs
2620           Mono.Cecil.Implem/TypeDefinitionCollection.cs
2621           Mono.Cecil.Implem/ReflectionReader.cs
2622           Mono.Cecil.Implem/ReflectionWriter.cs
2623           Mono.Cecil.Implem/TypeDefinition.cs
2624           Mono.Cecil.Implem/CodeReader.cs
2625           Mono.Cecil.Implem/CodeWriter.cs
2626           Mono.Cecil.Implem/Constants.cs
2627           Mono.Cecil.Implem/NestedTypeCollection.cs
2628           Mono.Cecil.Implem/ResourceCollection.cs
2629           Mono.Cecil.Signatures/SignatureReader.cs
2630           Mono.Cecil.Signatures/SignatureWriter.cs:
2631                 Correct some part of the API.
2632                 Correct tons of bugs in the writing layer.
2633
2634 2005-08-17  Jb Evain  <jbevain@gmail.com>
2635
2636         * Mono.Cecil/IField.cs
2637           CodeGen/cecil.xml
2638           Mono.Cecil.Metadata/MetadataReader.cs
2639           Mono.Cecil.Metadata/MetadataWriter.cs
2640           Mono.Cecil.Implem/ReflectionHelper.cs
2641           Mono.Cecil.Implem/StructureReader.cs
2642           Mono.Cecil.Implem/FieldDefinition.cs
2643           Mono.Cecil.Implem/BaseReflectionReader.cs
2644           Mono.Cecil.Implem/ReflectionReader.cs
2645           Mono.Cecil.Implem/ReflectionWriter.cs
2646           Mono.Cecil.Implem/TypeDefinition.cs
2647           Mono.Cecil.Implem/AggressiveReflectionReader.cs
2648           Mono.Cecil.Implem/CodeReader.cs
2649           Mono.Cecil.Implem/IDetailReader.cs
2650           Mono.Cecil.Implem/CodeWriter.cs
2651           Mono.Cecil.Implem/LazyReflectionReader.cs
2652           Mono.Cecil.Signatures/SignatureWriter.cs:
2653                 Work on the working layer. Implement field initial
2654                 data. Bugs.
2655
2656 2005-08-16  Jb Evain  <jbevain@gmail.com>
2657
2658         * Mono.Cecil.Implem/ReflectionWriter.cs
2659           Mono.Cecil.Implem/CodeWriter.cs
2660           Mono.Cecil.Signatures/SignatureReader.cs:
2661                 Implement local var sig writing.
2662
2663         * Mono.Cecil.Implem/ArrayType.cs:
2664                 Style.
2665           Mono.Cecil.Implem/ParameterDefinition.cs:
2666                 Correct a bug in module obtention.
2667           Mono.Cecil.Signatures/SignatureReader.cs:
2668                 Correct a bug in arrays's signature reading.
2669
2670         * Mono.Cecil.dll.sources
2671           Mono.Cecil/IReflectionVisitor.cs
2672           Mono.Cecil/IModuleDefinitionCollection.cs
2673           Mono.Cecil/IInterfaceCollection.cs
2674           Mono.Cecil/IProperty.cs
2675           Mono.Cecil/BaseReflectionVisitor.cs
2676           Mono.Cecil/INestedTypeCollection.cs
2677           Mono.Cecil/ITypeReferenceCollection.cs
2678           Mono.Cecil/IParameter.cs
2679           Mono.Cecil/IExternTypeCollection.cs
2680           Mono.Cecil/IField.cs
2681           Mono.Cecil/IArrayDimensionCollection.cs
2682           Mono.Cecil/IMethodDefinitionCollection.cs
2683           Mono.Cecil/IPropertyDefinitionCollection.cs
2684           Mono.Cecil/IAssemblyNameReferenceCollection.cs
2685           Mono.Cecil/IModuleReferenceCollection.cs
2686           Mono.Cecil/IHasConstant.cs
2687           Mono.Cecil/ISecurityDeclarationCollection.cs
2688           Mono.Cecil/IMetadataTokenProvider.cs
2689           Mono.Cecil/IModuleDefinition.cs
2690           Mono.Cecil/BaseStructureVisitor.cs
2691           Mono.Cecil/IResourceCollection.cs
2692           Mono.Cecil/IParameterDefinitionCollection.cs
2693           Mono.Cecil/IEventDefinitionCollection.cs
2694           Mono.Cecil/ITypeDefinitionCollection.cs
2695           Mono.Cecil/IFieldDefinitionCollection.cs
2696           Mono.Cecil/ICustomAttributeCollection.cs
2697           Mono.Cecil/IOverrideCollection.cs
2698           Mono.Cecil.Cil/IExceptionHandlerCollection.cs
2699           Mono.Cecil.Cil/IVariableDefinitionCollection.cs
2700           Mono.Cecil.Cil/IInstructionCollection.cs
2701           CodeGen/cecil-gen.rb
2702           CodeGen/cecil-gen-types.rb
2703           CodeGen/templates/IndexedCollectionImplem.cs
2704           CodeGen/templates/NamedCollectionImplem.cs
2705           CodeGen/templates/IIndexedCollection.cs
2706           CodeGen/templates/LzIndexedCollectionImplem.cs
2707           CodeGen/templates/INamedCollection.cs
2708           CodeGen/templates/LzNamedCollectionImplem.cs
2709           CodeGen/cecil.xml
2710           Mono.Cecil.Metadata/MetadataRowWriter.cs
2711           Mono.Cecil.Metadata/MetadataWriter.cs
2712           Mono.Cecil.Implem/InterfaceCollection.cs
2713           Mono.Cecil.Implem/ModuleReferenceCollection.cs
2714           Mono.Cecil.Implem/ExternTypeCollection.cs
2715           Mono.Cecil.Implem/SecurityDeclarationCollection.cs
2716           Mono.Cecil.Implem/OverrideCollection.cs
2717           Mono.Cecil.Implem/ParameterDefinitionCollection.cs
2718           Mono.Cecil.Implem/EventDefinitionCollection.cs
2719           Mono.Cecil.Implem/FieldDefinitionCollection.cs
2720           Mono.Cecil.Implem/PropertyDefinitionCollection.cs
2721           Mono.Cecil.Implem/ModuleDefinitionCollection.cs
2722           Mono.Cecil.Implem/CustomAttributeCollection.cs
2723           Mono.Cecil.Implem/VariableDefinitionCollection.cs
2724           Mono.Cecil.Implem/TypeReferenceCollection.cs
2725           Mono.Cecil.Implem/StructureReader.cs
2726           Mono.Cecil.Implem/MethodDefinition.cs
2727           Mono.Cecil.Implem/EventDefinition.cs
2728           Mono.Cecil.Implem/FieldDefinition.cs
2729           Mono.Cecil.Implem/InstructionCollection.cs
2730           Mono.Cecil.Implem/StructureWriter.cs
2731           Mono.Cecil.Implem/ModuleDefinition.cs
2732           Mono.Cecil.Implem/MethodReference.cs
2733           Mono.Cecil.Implem/TypeReference.cs
2734           Mono.Cecil.Implem/TypeDefinitionCollection.cs
2735           Mono.Cecil.Implem/AssemblyNameReferenceCollection.cs
2736           Mono.Cecil.Implem/ReflectionReader.cs
2737           Mono.Cecil.Implem/MethodReturnType.cs
2738           Mono.Cecil.Implem/ReflectionWriter.cs
2739           Mono.Cecil.Implem/AssemblyDefinition.cs
2740           Mono.Cecil.Implem/TypeDefinition.cs
2741           Mono.Cecil.Implem/AggressiveReflectionReader.cs
2742           Mono.Cecil.Implem/MethodDefinitionCollection.cs
2743           Mono.Cecil.Implem/CodeWriter.cs
2744           Mono.Cecil.Implem/LazyReflectionReader.cs
2745           Mono.Cecil.Implem/ParameterDefinition.cs
2746           Mono.Cecil.Implem/PropertyDefinition.cs
2747           Mono.Cecil.Implem/NestedTypeCollection.cs
2748           Mono.Cecil.Implem/ResourceCollection.cs
2749           Mono.Cecil.Implem/ExceptionHandlerCollection.cs
2750           Mono.Cecil.Signatures/SignatureReader.cs
2751           Mono.Cecil.Signatures/SignatureWriter.cs:
2752                 Working on the writing layer.
2753                 Begin to fix brokens part of the API.
2754
2755 2005-08-15  Jb Evain  <jbevain@gmail.com>
2756
2757         * Mono.Cecil/ITypeDefinition.cs
2758           CodeGen/templates/MetadataTableReader.cs
2759           CodeGen/templates/PEFileHeader.cs
2760           CodeGen/templates/ImageWriter.cs
2761           CodeGen/templates/CLIHeader.cs
2762           CodeGen/templates/PEOptionalHeader.cs
2763           CodeGen/templates/MetadataTableWriter.cs
2764           CodeGen/templates/Table.cs
2765           CodeGen/templates/MetadataRowReader.cs
2766           CodeGen/templates/BaseMetadataVisitor.cs
2767           CodeGen/templates/Section.cs
2768           CodeGen/templates/MetadataRowWriter.cs
2769           CodeGen/templates/ImageReader.cs
2770           CodeGen/templates/IMetadataVisitor.cs
2771           Mono.Cecil.Metadata/Assembly.cs
2772           Mono.Cecil.Metadata/PropertyMap.cs
2773           Mono.Cecil.Metadata/InterfaceImpl.cs
2774           Mono.Cecil.Metadata/MetadataInitializer.cs
2775           Mono.Cecil.Metadata/Constant.cs
2776           Mono.Cecil.Metadata/MethodSpec.cs
2777           Mono.Cecil.Metadata/BaseMetadataVisitor.cs
2778           Mono.Cecil.Metadata/DeclSecurity.cs
2779           Mono.Cecil.Metadata/TypeDef.cs
2780           Mono.Cecil.Metadata/MethodImpl.cs
2781           Mono.Cecil.Metadata/GenericParamConstraint.cs
2782           Mono.Cecil.Metadata/NestedClass.cs
2783           Mono.Cecil.Metadata/MetadataTableReader.cs
2784           Mono.Cecil.Metadata/AssemblyRefProcessor.cs
2785           Mono.Cecil.Metadata/AssemblyRef.cs
2786           Mono.Cecil.Metadata/AssemblyRefOS.cs
2787           Mono.Cecil.Metadata/Method.cs
2788           Mono.Cecil.Metadata/RowCollection.cs
2789           Mono.Cecil.Metadata/MetadataTableWriter.cs
2790           Mono.Cecil.Metadata/StringsHeap.cs
2791           Mono.Cecil.Metadata/MetadataRowReader.cs
2792           Mono.Cecil.Metadata/ExportedType.cs
2793           Mono.Cecil.Metadata/CustomAttribute.cs
2794           Mono.Cecil.Metadata/Param.cs
2795           Mono.Cecil.Metadata/MetadataReader.cs
2796           Mono.Cecil.Metadata/ClassLayout.cs
2797           Mono.Cecil.Metadata/MetadataRowWriter.cs
2798           Mono.Cecil.Metadata/BlobHeap.cs
2799           Mono.Cecil.Metadata/MetadataWriter.cs
2800           Mono.Cecil.Metadata/AssemblyOS.cs
2801           Mono.Cecil.Metadata/ModuleRef.cs
2802           Mono.Cecil.Metadata/MetadataRoot.cs
2803           Mono.Cecil.Metadata/UserStringsHeap.cs
2804           Mono.Cecil.Metadata/FieldMarshal.cs
2805           Mono.Cecil.Metadata/GenericParam.cs
2806           Mono.Cecil.Metadata/ImplMap.cs
2807           Mono.Cecil.Metadata/TableCollection.cs
2808           Mono.Cecil.Metadata/TablesHeap.cs
2809           Mono.Cecil.Metadata/MetadataStreamCollection.cs
2810           Mono.Cecil.Metadata/ManifestResource.cs
2811           Mono.Cecil.Metadata/TypeRef.cs
2812           Mono.Cecil.Metadata/AssemblyProcessor.cs
2813           Mono.Cecil.Metadata/EventMap.cs
2814           Mono.Cecil.Metadata/File.cs
2815           Mono.Cecil.Metadata/Event.cs
2816           Mono.Cecil.Metadata/FieldLayout.cs
2817           Mono.Cecil.Metadata/Field.cs
2818           Mono.Cecil.Metadata/Property.cs
2819           Mono.Cecil.Metadata/Module.cs
2820           Mono.Cecil.Metadata/GuidHeap.cs
2821           Mono.Cecil.Metadata/MethodSemantics.cs
2822           Mono.Cecil.Metadata/StandAloneSig.cs
2823           Mono.Cecil.Metadata/MetadataStream.cs
2824           Mono.Cecil.Metadata/FieldRVA.cs
2825           Mono.Cecil.Metadata/TypeSpec.cs
2826           Mono.Cecil.Metadata/MemberRef.cs
2827           Mono.Cecil.Metadata/IMetadataVisitor.cs
2828           Mono.Cecil.Implem/TypeDefinition.cs
2829           Mono.Cecil.Signatures/MethodRefSig.cs
2830           Mono.Cecil.Signatures/SignatureReader.cs
2831           Mono.Cecil.Signatures/FieldSig.cs
2832           Mono.Cecil.Signatures/PropertySig.cs
2833           Mono.Cecil.Signatures/ISignatureVisitor.cs
2834           Mono.Cecil.Signatures/SignatureWriter.cs
2835           Mono.Cecil.Signatures/MethodDefSig.cs
2836           Mono.Cecil.Signatures/LocalVarSig.cs
2837           Mono.Cecil.Binary/PEFileHeader.cs
2838           Mono.Cecil.Binary/IBinaryVisitor.cs
2839           Mono.Cecil.Binary/ImageWriter.cs
2840           Mono.Cecil.Binary/CLIHeader.cs
2841           Mono.Cecil.Binary/SectionCollection.cs
2842           Mono.Cecil.Binary/Image.cs
2843           Mono.Cecil.Binary/PEOptionalHeader.cs
2844           Mono.Cecil.Binary/ImageInitializer.cs
2845           Mono.Cecil.Binary/Imports.cs
2846           Mono.Cecil.Binary/BaseImageVisitor.cs
2847           Mono.Cecil.Binary/DOSHeader.cs
2848           Mono.Cecil.Binary/Section.cs
2849           Mono.Cecil.Binary/ImageReader.cs:
2850                 Apply the new visitor model to the rest of Cecil.
2851
2852         * Mono.Cecil/IReflectionVisitor.cs
2853           Mono.Cecil/BaseReflectionVisitor.cs
2854           Mono.Cecil/IReflectionStructureVisitor.cs
2855           Mono.Cecil/BaseStructureVisitor.cs
2856           Mono.Cecil.Cil/BaseCodeVisitor.cs
2857           Mono.Cecil.Cil/ICodeVisitor.cs
2858           CodeGen/cecil-gen.rb
2859           CodeGen/cecil-gen-types.rb
2860           CodeGen/templates/IndexedCollectionImplem.cs
2861           CodeGen/templates/NamedCollectionImplem.cs
2862           CodeGen/templates/LzIndexedCollectionImplem.cs
2863           CodeGen/templates/LzNamedCollectionImplem.cs
2864           CodeGen/cecil.xml
2865           Mono.Cecil.Implem/InterfaceCollection.cs
2866           Mono.Cecil.Implem/AssemblyLinkedResource.cs
2867           Mono.Cecil.Implem/ModuleReferenceCollection.cs
2868           Mono.Cecil.Implem/AssemblyName.cs
2869           Mono.Cecil.Implem/Instruction.cs
2870           Mono.Cecil.Implem/ExternTypeCollection.cs
2871           Mono.Cecil.Implem/MarshalDesc.cs
2872           Mono.Cecil.Implem/SecurityDeclarationCollection.cs
2873           Mono.Cecil.Implem/OverrideCollection.cs
2874           Mono.Cecil.Implem/ExceptionHandler.cs
2875           Mono.Cecil.Implem/EmbeddedResource.cs
2876           Mono.Cecil.Implem/ModuleReference.cs
2877           Mono.Cecil.Implem/ParameterDefinitionCollection.cs
2878           Mono.Cecil.Implem/EventDefinitionCollection.cs
2879           Mono.Cecil.Implem/FieldDefinitionCollection.cs
2880           Mono.Cecil.Implem/PropertyDefinitionCollection.cs
2881           Mono.Cecil.Implem/ModuleDefinitionCollection.cs
2882           Mono.Cecil.Implem/CustomAttributeCollection.cs
2883           Mono.Cecil.Implem/VariableDefinitionCollection.cs
2884           Mono.Cecil.Implem/TypeReferenceCollection.cs
2885           Mono.Cecil.Implem/StructureReader.cs
2886           Mono.Cecil.Implem/MethodDefinition.cs
2887           Mono.Cecil.Implem/EventDefinition.cs
2888           Mono.Cecil.Implem/FieldDefinition.cs
2889           Mono.Cecil.Implem/InstructionCollection.cs
2890           Mono.Cecil.Implem/StructureWriter.cs
2891           Mono.Cecil.Implem/ModuleDefinition.cs
2892           Mono.Cecil.Implem/CustomAttribute.cs
2893           Mono.Cecil.Implem/VariableDefinition.cs
2894           Mono.Cecil.Implem/TypeReference.cs
2895           Mono.Cecil.Implem/TypeDefinitionCollection.cs
2896           Mono.Cecil.Implem/AssemblyNameReferenceCollection.cs
2897           Mono.Cecil.Implem/ReflectionReader.cs
2898           Mono.Cecil.Implem/ReflectionWriter.cs
2899           Mono.Cecil.Implem/PInvokeInfo.cs
2900           Mono.Cecil.Implem/AssemblyDefinition.cs
2901           Mono.Cecil.Implem/TypeDefinition.cs
2902           Mono.Cecil.Implem/CodeReader.cs
2903           Mono.Cecil.Implem/AggressiveReflectionReader.cs
2904           Mono.Cecil.Implem/MethodDefinitionCollection.cs
2905           Mono.Cecil.Implem/CodeWriter.cs
2906           Mono.Cecil.Implem/SecurityDeclaration.cs
2907           Mono.Cecil.Implem/LazyReflectionReader.cs
2908           Mono.Cecil.Implem/LinkedResource.cs
2909           Mono.Cecil.Implem/ParameterDefinition.cs
2910           Mono.Cecil.Implem/PropertyDefinition.cs
2911           Mono.Cecil.Implem/MethodBody.cs
2912           Mono.Cecil.Implem/NestedTypeCollection.cs
2913           Mono.Cecil.Implem/ResourceCollection.cs
2914           Mono.Cecil.Implem/ExceptionHandlerCollection.cs:
2915                 BIG changes in the visitor object model. Last one
2916                 was causing ambiguous calls, and does not provides
2917                 differences between an interface and a typedef for
2918                 instance. This is corrected by suffixing the visit
2919                 method by the name of what it is visiting, and by
2920                 configuring some collection to stop the propagation
2921                 of the visitor.
2922
2923         * Mono.Cecil/ITypeDefinition.cs
2924           Mono.Cecil/IArrayType.cs
2925           CodeGen/templates/Utilities.cs
2926           Mono.Cecil.Metadata/Utilities.cs
2927           Mono.Cecil.Implem/ArrayType.cs
2928           Mono.Cecil.Implem/TypeReference.cs
2929           Mono.Cecil.Implem/ReflectionWriter.cs
2930           Mono.Cecil.Implem/TypeDefinition.cs
2931           Mono.Cecil.Implem/CodeWriter.cs
2932           Mono.Cecil.Implem/Constants.cs
2933           Mono.Cecil.Signatures/MarshalSig.cs:
2934                 Work on the writing layer goes on.
2935
2936 2005-08-14  Jb Evain  <jbevain@gmail.com>
2937
2938         * Mono.Cecil/NativeType.cs
2939           Mono.Cecil.Signatures/MarshalSig.cs
2940           Mono.Cecil.Signatures/SignatureWriter.cs
2941           Mono.Cecil.Signatures/Signature.cs:
2942                 Work on signature writing.
2943           Mono.Cecil.Implem/MethodDefinition.cs
2944           Mono.Cecil.Implem/TypeDefinition.cs:
2945                 Correct bugs in setting the hasThis field.
2946
2947         * CodeGen/templates/ImageWriter.cs
2948           Mono.Cecil.Binary/templates/ImageWriter.cs
2949           Mono.Cecil/AssemblyKind.cs:
2950                 Make assemblies executable on win32.
2951           Mono.Cecil.Implem/TypeDefinition.cs:
2952                 Mark new fields as loaded.
2953           Mono.Cecil.Implem/ReflectionWriter.cs:
2954                 Correct the style to patch provided by
2955                 Sebastien Ros  <s.ros@evaluant.com>
2956
2957 2005-08-13  Jb Evain  <jbevain@gmail.com>
2958
2959         * Mono.Cecil/IMethod.cs
2960           Mono.Cecil/ITypeDefinition.cs
2961           Mono.Cecil/IModuleDefinition.cs
2962           Mono.Cecil.Cil/OpCode.cs
2963           Mono.Cecil.Cil/ICilWorker.cs
2964           CodeGen/templates/ImageReader.cs
2965           Mono.Cecil.Metadata/MetadataReader.cs
2966           Mono.Cecil.Metadata/MetadataWriter.cs
2967           Mono.Cecil.Metadata/MetadataRoot.cs
2968           Mono.Cecil.Implem/ReflectionHelper.cs
2969           Mono.Cecil.Implem/CilWorker.cs
2970           Mono.Cecil.Implem/StructureReader.cs
2971           Mono.Cecil.Implem/MethodDefinition.cs
2972           Mono.Cecil.Implem/StructureWriter.cs
2973           Mono.Cecil.Implem/ModuleDefinition.cs
2974           Mono.Cecil.Implem/MethodReference.cs
2975           Mono.Cecil.Implem/ReflectionReader.cs
2976           Mono.Cecil.Implem/ReflectionWriter.cs
2977           Mono.Cecil.Implem/TypeDefinition.cs
2978           Mono.Cecil.Implem/CodeReader.cs
2979           Mono.Cecil.Implem/CodeWriter.cs
2980           Mono.Cecil.Implem/Constants.cs
2981           Mono.Cecil.Implem/ParameterDefinition.cs
2982           Mono.Cecil.Implem/MethodBody.cs
2983           Mono.Cecil.Binary/ImageReader.cs
2984           Mono.Cecil.Binary/MemoryBinaryWriter.cs
2985           Mono.Cecil.Signatures/SignatureReader.cs
2986           Mono.Cecil.Signatures/SignatureWriter.cs:
2987                 On going work on the writing layer.
2988
2989         * Mono.Cecil.Signatures/SignatureReader.cs:
2990                 Fix a bug when reading chars inside a custom
2991                 attribute signature.
2992
2993 2005-08-12  Jb Evain  <jbevain@gmail.com>
2994
2995         * Mono.Cecil/AssemblyFactory.cs
2996           CodeGen/templates/ImageWriter.cs
2997           CodeGen/templates/MetadataTableWriter.cs
2998           CodeGen/templates/MetadataRowWriter.cs
2999           Mono.Cecil.Metadata/MetadataTableWriter.cs
3000           Mono.Cecil.Metadata/MetadataRowWriter.cs
3001           Mono.Cecil.Metadata/MetadataWriter.cs
3002           Mono.Cecil.Implem/StructureWriter.cs
3003           Mono.Cecil.Binary/ImageWriter.cs
3004           Mono.Cecil.Binary/MemoryBinaryWriter.cs:
3005                 Use a custom binary writer instead of the old one.
3006
3007         * Mono.Cecil/IMethod.cs
3008           Mono.Cecil.Cil/BaseCodeVisitor.cs
3009           Mono.Cecil.Cil/MethodHeader.cs
3010           Mono.Cecil.Cil/ICodeVisitor.cs
3011           Mono.Cecil.Implem/Instruction.cs
3012           Mono.Cecil.Implem/MethodDefinition.cs
3013           Mono.Cecil.Implem/FieldDefinition.cs
3014           Mono.Cecil.Implem/ReflectionWriter.cs
3015           Mono.Cecil.Implem/CodeReader.cs
3016           Mono.Cecil.Implem/CodeWriter.cs
3017           Mono.Cecil.Implem/MethodBody.cs:
3018                 Ongoing work on the writing layer.
3019
3020         * CodeGen/templates/Utilities.cs
3021           CodeGen/templates/NamedCollectionImplem.cs
3022           CodeGen/templates/MetadataRowWriter.cs
3023           CodeGen/templates/LzNamedCollectionImplem.cs
3024           CodeGen/cecil.xml
3025           Mono.Cecil/IMethod.cs
3026           Mono.Cecil/IAssemblyName.cs
3027           Mono.Cecil/IModuleDefinition.cs
3028           Mono.Cecil/AssemblyFactory.cs
3029           Mono.Cecil.Metadata/MetadataRowWriter.cs
3030           Mono.Cecil.Metadata/Utilities.cs
3031           Mono.Cecil.Implem/ReflectionHelper.cs
3032           Mono.Cecil.Implem/StructureReader.cs
3033           Mono.Cecil.Implem/MethodDefinition.cs
3034           Mono.Cecil.Implem/EventDefinition.cs
3035           Mono.Cecil.Implem/FieldDefinition.cs
3036           Mono.Cecil.Implem/StructureWriter.cs
3037           Mono.Cecil.Implem/ModuleDefinition.cs
3038           Mono.Cecil.Implem/MethodReference.cs
3039           Mono.Cecil.Implem/TypeDefinitionCollection.cs
3040           Mono.Cecil.Implem/ReflectionReader.cs
3041           Mono.Cecil.Implem/ReflectionWriter.cs
3042           Mono.Cecil.Implem/TypeDefinition.cs
3043           Mono.Cecil.Implem/AggressiveReflectionReader.cs
3044           Mono.Cecil.Implem/Constants.cs
3045           Mono.Cecil.Implem/ParameterDefinition.cs
3046           Mono.Cecil.Implem/PropertyDefinition.cs
3047           Mono.Cecil.Signatures/SignatureWriter.cs:
3048                 Ongoing work on the writing layer.
3049                 Some fixes to the reading layer as well.
3050
3051 2005-08-11  Jb Evain  <jbevain@gmail.com>
3052
3053         * Mono.Cecil.Signatures/SignatureReader.cs:
3054                 Read Array signatures correctly.
3055
3056         * Mono.Cecil/IMethodSignature.cs:
3057                 Remove the setted for the return type.
3058         * Mono.Cecil.Implem/CilWorker.cs:
3059                 Fix the build. Me idiot!
3060         * Mono.Cecil.Implem/Constants.cs:
3061                 Remove unexisting type Variant.
3062         * Mono.Cecil.Implem/ReflectionHelper.cs:
3063                 Complete the helper.
3064
3065 2005-08-10  Jb Evain  <jbevain@gmail.com>
3066
3067         * Mono.Cecil.Cil/IMethodBody.cs
3068           Mono.Cecil.Cil/ICilEmitter.cs
3069           Mono.Cecil.Cil/ICilWorker.cs
3070           Mono.Cecil.Implem/CilWorker.cs
3071           Mono.Cecil.Implem/ReflectionWriter.cs
3072           Mono.Cecil.Implem/MethodBody.cs
3073           Mono.Cecil.Implem/CilEmitter.cs
3074           Mono.Cecil.Signatures/SignatureReader.cs
3075           Mono.Cecil.Signatures/SignatureWriter.cs:
3076                 Prepare the api for the cil emitting.
3077
3078         * CodeGen/templates/Utilities.cs
3079           CodeGen/templates/MetadataRowReader.cs
3080           CodeGen/templates/MetadataRowWriter.cs
3081           Mono.Cecil.Metadata/Utilities.cs
3082           Mono.Cecil.Metadata/MetadataRowReader.cs
3083           Mono.Cecil.Metadata/MetadataRowWriter.cs:
3084                 Fix the build on .net, i was using a sugar
3085                 syntax for delegates that csc does not understand.
3086                 Remove the coded index cache from the static class
3087                 Utilities, and add one per row visitor.
3088
3089         * Mono.Cecil/IMethodReturnType.cs
3090           Mono.Cecil.Implem/MethodReturnType.cs
3091           Mono.Cecil.Implem/ReflectionReader.cs
3092           Mono.Cecil.Implem/ParameterDefinition.cs:
3093                 Make IMethodReturn type inherits IHasMarshalSpec so
3094                 that users can read marshaling info for return types,
3095                 and implement it.
3096
3097         * CodeGen/templates/ImageWriter.cs
3098           Mono.Cecil.Binary/ImageWriter.cs
3099           Mono.Cecil.Metadata/MetadataWriter.cs
3100           Mono.Cecil.Implem/ReflectionWriter.cs:
3101                 Cecil now emits assemblies understood by the .net clr.
3102
3103 2005-08-09  Jb Evain  <jbevain@gmail.com>
3104
3105         * Mono.Cecil/AssemblyKind.cs
3106           CodeGen/templates/ImageWriter.cs
3107           CodeGen/templates/ImageReader.cs
3108           Mono.Cecil.Metadata/MetadataWriter.cs
3109           Mono.Cecil.Binary/ImageWriter.cs
3110           Mono.Cecil.Binary/ImageInitializer.cs
3111           Mono.Cecil.Binary/ImageReader.cs:
3112                 Lots of little fixes. Now dumpbin is coherent
3113                 compared with an assembly emitted with csc or mcs
3114                 but still not yet compatible with .net.
3115
3116         * Mono.Cecil.Signatures/SignatureReader.cs:
3117                 Fix an array out of range while trying to read
3118                 fixed arrays signatures
3119
3120         * CodeGen/templates/ImageWriter.cs
3121           Mono.Cecil.Metadata/MetadataReader.cs
3122           Mono.Cecil.Metadata/MetadataWriter.cs
3123           Mono.Cecil.Implem/AssemblyName.cs
3124           Mono.Cecil.Implem/StructureReader.cs
3125           Mono.Cecil.Implem/ReflectionWriter.cs
3126           Mono.Cecil.Binary/ImageCharacteristics.cs
3127           Mono.Cecil.Binary/ImageWriter.cs
3128           Mono.Cecil.Binary/Image.cs:
3129                 Cecil now emits assemblies that are understood
3130                 by Mono and Cecil itself. Still have troubles
3131                 with Msft CLR.
3132
3133 2005-08-08  Jb Evain  <jbevain@gmail.com>
3134
3135         * CodeGen/cecil-gen.rb
3136           CodeGen/templates/MetadataTableReader.cs
3137           CodeGen/templates/ImageWriter.cs
3138           CodeGen/templates/MetadataTableWriter.cs
3139           CodeGen/templates/BaseMetadataVisitor.cs
3140           CodeGen/templates/MetadataRowReader.cs
3141           CodeGen/templates/MetadataRowWriter.cs
3142           CodeGen/cecil.xml
3143           Mono.Cecil.Metadata/MetadataInitializer.cs
3144           Mono.Cecil.Metadata/BaseMetadataVisitor.cs
3145           Mono.Cecil.Metadata/MetadataTableReader.cs
3146           Mono.Cecil.Metadata/MetadataTableWriter.cs
3147           Mono.Cecil.Metadata/MetadataRowReader.cs
3148           Mono.Cecil.Metadata/MetadataRowWriter.cs
3149           Mono.Cecil.Metadata/MetadataWriter.cs
3150           Mono.Cecil.Binary/ImageWriter.cs
3151           Mono.Cecil.Binary/CLIHeader.cs
3152           Mono.Cecil.Binary/ImageInitializer.cs:
3153                 The writing layer almost works.
3154
3155         * Mono.Cecil/AssemblyKind.cs
3156           Mono.Cecil/TargetRuntime.cs
3157           Mono.Cecil.dll.sources:
3158                 Add thoses enumes to control assembly writing.
3159         * Mono.Cecil/AssemblyFactory.cs
3160           Mono.Cecil/IReflectionVisitor.cs
3161           Mono.Cecil/BaseReflectionVisitor.cs
3162           Mono.Cecil/IAssemblyDefinition.cs
3163           Mono.Cecil/IReflectionStructureVisitor.cs
3164           Mono.Cecil/BaseStructureVisitor.cs
3165           CodeGen/templates/ImageWriter.cs
3166           CodeGen/templates/MetadataTableWriter.cs
3167           CodeGen/templates/MetadataRowWriter.cs
3168           CodeGen/templates/LzNamedCollectionImplem.cs
3169           Mono.Cecil.Metadata/MetadataInitializer.cs
3170           Mono.Cecil.Metadata/MetadataTableWriter.cs
3171           Mono.Cecil.Metadata/MetadataRowWriter.cs
3172           Mono.Cecil.Metadata/MetadataWriter.cs
3173           Mono.Cecil.Metadata/MetadataStreamCollection.cs
3174           Mono.Cecil.Implem/AssemblyName.cs
3175           Mono.Cecil.Implem/StructureWriter.cs
3176           Mono.Cecil.Implem/ModuleDefinition.cs
3177           Mono.Cecil.Implem/TypeDefinitionCollection.cs
3178           Mono.Cecil.Implem/ReflectionWriter.cs
3179           Mono.Cecil.Implem/AssemblyDefinition.cs
3180           Mono.Cecil.Binary/ImageWriter.cs
3181           Mono.Cecil.Binary/ImageInitializer.cs
3182           Mono.Cecil.Binary/Imports.cs:
3183                 Things are now plugged. SaveAssembly will now emits
3184                 a binary file. A broken file, but heh, at least it does.
3185
3186 2005-08-07  Jb Evain  <jbevain@gmail.com>
3187
3188         * CodeGen/templates/ImageReader.cs
3189           CodeGen/templates/ImageWriter.cs
3190           CodeGen/templates/IMetadataVisitor.cs
3191           Mono.Cecil.Binary/ImageReader.cs
3192           Mono.Cecil.Binary/ImageWriter.cs
3193           Mono.Cecil.Metadata/IMetadataVisitor.cs
3194           Mono.Cecil.Metadata/BaseMetadataVisitor.cs
3195           Mono.Cecil.Metadata/MetadataReader.cs
3196           Mono.Cecil.Metadata/MetadataWriter.cs
3197           Mono.Cecil.Metadata/MetadataStreamCollection.cs:
3198                 Simplify IMetadataVisitor.
3199                 Work on the writing layer, closer to have something testable
3200                 than ever.
3201
3202         * CodeGen/cecil.xml
3203           CodeGen/templates/ImageWriter.cs
3204           Mono.Cecil.Metadata/MetadataWriter.cs
3205           Mono.Cecil.Binary/PEOptionalHeader.cs
3206           Mono.Cecil.Binary/ImageWriter.cs
3207           Mono.Cecil.Binary/Imports.cs:
3208                 don't stop don't stop come ON!
3209
3210         * CodeGen/templates/ImageWriter.cs
3211           CodeGen/templates/ImageReader.cs
3212           CodeGen/templates/Section.cs
3213           Mono.Cecil.Binary/Image.cs
3214           Mono.Cecil.Binary/ImageReader.cs
3215           Mono.Cecil.Binary/ImageInitializer.cs
3216           Mono.Cecil.Binary/ImageWriter.cs
3217           Mono.Cecil.Binary/Section.cs
3218           Mono.Cecil.Metadata/MetadataReader.cs
3219           Mono.Cecil.Metadata/MetadataWriter.cs
3220           Mono.Cecil.Implem/StructureReader.cs
3221           Mono.Cecil.Implem/StructureWriter.cs
3222           Mono.Cecil.Implem/CodeWriter.cs:
3223                 Some writing layer love.
3224
3225         * CodeGen/templates/ImageWriter.cs
3226           CodeGen/templates/ImageReader.cs
3227           Mono.Cecil.Binary/Imports.cs
3228           Mono.Cecil.Binary/ImageReader.cs
3229           Mono.Cecil.Binary/ImageInitializer.cs
3230           Mono.Cecil.Binary/ImageWriter.cs:
3231                 Read an write correctly the Hint/Name table
3232                 at the end of the .text section.
3233
3234         * CodeGen/templates/ImageWriter.cs
3235           Mono.Cecil.Metadata/MetadataWriter.cs
3236           Mono.Cecil.Binary/ImageWriter.cs
3237           Mono.Cecil.Binary/ImageInitializer.cs:
3238                 More writing layer stuff.
3239
3240 2005-08-06  Jb Evain  <jbevain@gmail.com>
3241
3242         * CodeGen/templates/ImageWriter.cs
3243           CodeGen/templates/MetadataTableWriter.cs
3244           Mono.Cecil.Metadata/MetadataInitializer.cs
3245           Mono.Cecil.Metadata/MetadataTableWriter.cs
3246           Mono.Cecil.Metadata/StringsHeap.cs
3247           Mono.Cecil.Metadata/BlobHeap.cs
3248           Mono.Cecil.Metadata/MetadataWriter.cs
3249           Mono.Cecil.Metadata/UserStringsHeap.cs
3250           Mono.Cecil.Metadata/TableCollection.cs
3251           Mono.Cecil.Metadata/TablesHeap.cs
3252           Mono.Cecil.Metadata/MetadataHeap.cs
3253           Mono.Cecil.Metadata/GuidHeap.cs
3254           Mono.Cecil.Metadata/MetadataStream.cs
3255           Mono.Cecil.Implem/StructureWriter.cs
3256           Mono.Cecil.Implem/ReflectionWriter.cs
3257           Mono.Cecil.Implem/CodeWriter.cs
3258           Mono.Cecil.Binary/ImageWriter.cs
3259           Mono.Cecil.Binary/ImageInitializer.cs:
3260                 Playing lego with bricks from the writing layer.
3261
3262         * Mono.Cecil.dll.sources:
3263                 Updated.
3264         * CodeGen/templates/CLIHeader.cs
3265           CodeGen/templates/PEOptionalHeader.cs
3266                 Blah.
3267         * CodeGen/cecil.xml
3268           Mono.Cecil.Binary/CLIHeader.cs
3269           Mono.Cecil.Binary/PEOptionalHeader.cs:
3270           Mono.Cecil.Binary/PEFileHeader.cs
3271                 On going work on the writing layer
3272
3273         * CodeGen/templates/ImageWriter.cs
3274           CodeGen/templates/ImageReader.cs
3275           Mono.Cecil.Binary/BaseImageVisitor.cs
3276           Mono.Cecil.Binary/ImageReader.cs
3277           Mono.Cecil.Binary/ImageInitializer.cs
3278           Mono.Cecil.Binary/ImageWriter.cs
3279           Mono.Cecil.Metadata/BaseMetadataVisitor.cs
3280           Mono.Cecil.Metadata/MetadataReader.cs
3281           Mono.Cecil.Metadata/MetadataInitializer.cs
3282           Mono.Cecil.Metadata/MetadataWriter.cs
3283           Mono.Cecil.Metadata/MetadataStream.cs
3284           Mono.Cecil.Implem/ReflectionWriter.cs
3285           Mono.Cecil.Implem/CodeWriter.cs:
3286                 Add helpers visitor.
3287                 On going work on the writing layer.
3288
3289         * CodeGen/templates/Utilities.cs
3290           CodeGen/templates/MetadataRowReader.cs
3291           CodeGen/templates/MetadataRowWriter.cs
3292           Mono.Cecil.Metadata/StringsHeap.cs
3293           Mono.Cecil.Metadata/MetadataRowReader.cs
3294           Mono.Cecil.Metadata/MetadataRowWriter.cs
3295           Mono.Cecil.Metadata/MetadataReader.cs
3296           Mono.Cecil.Metadata/Utilities.cs
3297           Mono.Cecil.Metadata/BlobHeap.cs
3298           Mono.Cecil.Metadata/MetadataWriter.cs
3299           Mono.Cecil.Metadata/MetadataHeap.cd
3300           Mono.Cecil.Metadata/GuidHeap.cs:
3301                 On going work on the writing layer.
3302
3303         * CodeGen/templates/MetadataTableWriter.cs
3304           Mono.Cecil.Metadata/MetadataTableWriter.cs
3305           Mono.Cecil.Metadata/MetadataWriter.cs:
3306                 On going work on the writing layer.
3307         * Mono.Cecil.Implem/StructureWriter.cs:
3308                 Correctly override methods
3309         * CodeGen/templates/MetadataRowWriter.cs
3310           Mono.Cecil.Metadata/MetadataRowWriter.cs
3311           Mono.Cecil.Implem/ReflectionWriter.cs:
3312                 Fix build warnings.
3313
3314         * Mono.Cecil/IResource.cs
3315           Mono.Cecil.Implem/AssemblyLinkedResource.cs
3316           Mono.Cecil.Implem/EmbeddedResource.cs
3317           Mono.Cecil.Implem/LinkedResource.cs
3318           Mono.Cecil.Implem/Resource.cs:
3319                 Rename field Attributes to Flags for the sake of consistency.
3320         * Mono.Cecil.Metadata/MetadataWriter.cs
3321           Mono.Cecil.Implem/ReflectionWriter.cs
3322           Mono.Cecil.Implem/StructureWriter.cs:
3323                 On going work on the writing layer.
3324         * Mono.Cecil.Implem/StructureReader.cs:
3325                 Style.
3326
3327         * Mono.Cecil/IAssemblyName.cs
3328           Mono.Cecil.Implem/AssemblyName.cs
3329           Mono.Cecil.Implem/StructureReader.cs:
3330                 Add an AssemblyFlag property to an IAssemblyNameReference,
3331                 implement it, and read it.
3332
3333 2005-08-04  Jb Evain  <jbevain@gmail.com>
3334
3335         * Mono.Cecil.Implem/ReflectionReader.cs:
3336                 set a correct name to nameless parameters
3337
3338         * Mono.Cecil.Signatures/SignatureReader.cs:
3339                 don't crash on null custom attributes
3340
3341 2005-08-03  Jb Evain  <jbevain@gmail.com>
3342
3343         * CodeGen/templates/OpCodes.cs
3344           Mono.Cecil.Cil/OpCodes.cs
3345           Mono.Cecil.Cil/OpCode.cs:
3346                 Revert modifications to reduce code. OpCodes::.ctors were
3347                 not called.
3348
3349         * Mono.Cecil.Implem/ReflectionReader.cs:
3350                 Make sure parameters are read even if there is no
3351                 corresponding Param row. Thanks Cesar for the hint.
3352
3353         * Mono.Cecil.Metadata/MetadataWriter.cs
3354           Mono.Cecil.Metadata/UserStringsHeap.cs
3355           Mono.Cecil.Metadata/GuidHeap.cs
3356           Mono.Cecil.Implem/CodeReader.cs:
3357                 On going work on the writing layer
3358
3359         * CodeGen/cecil-gen.rb
3360           CodeGen/cecil-gen-sources.rb
3361                 make executable
3362         * *.*: set svn:eol-style to native
3363
3364         * Mono.Cecil/BaseStructureVisitor.cs
3365           Mono.Cecil/BaseReflectionVisitor.cs
3366           Mono.Cecil.Implem/BaseReflectionReader.cs:
3367                 Add empty visitors for the sake of simplicity
3368         * Mono.Cecil.Implem/StructureReader.cs
3369           Mono.Cecil.Implem/ReflectionReader.cs:
3370                 Inherit new visitors
3371
3372 2005-08-03  Jb Evain  <jbevain@gmail.com>
3373
3374         * Mono.Cecil.Implem/ReflectionReader.cs
3375           Mono.Cecil.Implem/AggressiveReflectionReader.cs
3376           Mono.Cecil.Implem/LazyReflectionReader.cs
3377           Mono.Cecil.Implem/CodeReader.cs:
3378                 Modify and add helpers to avoid lots of casts.
3379                 Correct a bug in custom attributes attribution.
3380
3381 2005-08-02  Jb Evain  <jbevain@gmail.com>
3382
3383         * Mono.Cecil.Signatures/TypeSpec.cs:
3384                 Don't restrain the SigType
3385         * Mono.Cecil.Implem/AggressiveReflectionReader.cs:
3386                 Set PInvokeInfos on the correct method
3387
3388 2005-07-30  Jb Evain  <jbevain@gmail.com>
3389
3390         * CodeGen/cecil-gen.rb
3391           CodeGen/cecil-gen-sources.rb:
3392                 make them executable
3393         * CodeGen/cecil-gen-types: style
3394         * CodeGen/templates/ImageWriter.cs
3395           Mono.Cecil.Binary/ImageWriter.cs:
3396                 Prelimimary work on assembly writing
3397
3398 2005-07-29  Jb Evain  <jbevain@gmail.com>
3399
3400         * CodeGen/cecil-gen-types.rb
3401           CodeGen/templates/MetadataTableWriter.cs
3402           CodeGen/templates/MetadataRowWriter.cs
3403           Mono.Cecil/AssemblyFactory.cs
3404           Mono.Cecil.Metadata/MetadataTableWriter.cs
3405           Mono.Cecil.Metadata/MetadataRowWriter.cs
3406           Mono.Cecil.Implem/StructureWriter.cs
3407           Mono.Cecil.Implem/ReflectionWriter.cs:
3408                 Preliminary work on assembly writing
3409
3410 2005-07-28  Jb Evain  <jbevain@gmail.com>
3411
3412         * Mono.Cecil/AssemblyFactory.cs
3413           Mono.Cecil.Implem/StructureWriter.cs
3414                 Preliminary work on assembly writing
3415
3416         * Mono.Cecil/IMetadataTokenProvider.cs
3417           Mono.Cecil/IMember.cs
3418           Mono.Cecil/IParameter.cs:
3419                 Add a MetadataToken property on searchable items
3420         * Mono.Cecil.Metadata/MetadataToken.cs:
3421                 Add a factory method to create token from row number
3422         * Mono.Cecil.Implem/TypeReference.cs
3423           Mono.Cecil.Implem/MemberReference.cs
3424           Mono.Cecil.Implem/ParameterDefinition.cs:
3425                 Implement the token property
3426         * Mono.Cecil.Implem/ReflectionReader.cs
3427           Mono.Cecil.Implem/AggressiveReflectionReader.cs
3428           Mono.Cecil.Implem/LazyReflectionReader.cs:
3429                 Set the token property on reading
3430         * Mono.Cecil/IModuleDefinition.cs
3431           Mono.Cecil.Implem/ModuleDefinition.cs
3432           Mono.Cecil.Implem/ReflectionReader.cs:
3433                 Add methods to lookup items from their tokens
3434
3435 2005-07-27  Jb Evain  <jbevain@gmail.com>
3436
3437         * CodeGen/templates/OpCodes.cs
3438           Mono.Cecil.Cil/OpCodes.cs
3439           Mono.Cecil.Cil/OpCode.cs:
3440                 Changes to reduce the size of the cache ctor
3441
3442 2005-07-22  Raja R Harinath  <rharinath@novell.com>
3443
3444         * Makefile (MCS): Allow compiler to be overriden.
3445
3446 2005-07-21  Todd Berman  <tberman@off.net>
3447
3448         * configure: Add a small stub configure (stolen from mcs) to set the
3449         prefix.
3450         * mono-cecil.pc.in: Add a mono-cecil.pc.in to allow for installation
3451         according to the new "Libraries with Unstable API" Wiki documentation.
3452         * Makefile: Add an install an a mono-cecil.pc target to allow for
3453         installation and creation of the pc file.
3454
3455 2005-07-14  Jb Evain  <jbevain@gmail.com>
3456
3457         * CodeGen/templates/ImageReader.cs
3458           Mono.Cecil.Binary/IBinaryVisitor.cs
3459           Mono.Cecil.Binary/Image.cs
3460           Mono.Cecil.Binary/ImageInitializer.cs
3461           Mono.Cecil.Binary/Imports.cs
3462           Mono.Cecil.Binary/ImageReader.cs:
3463                 Read Imports Tables
3464
3465 2005-07-14  Jb Evain  <jbevain@gmail.com>
3466
3467         * CodeGen/cecil-gen.rb:
3468                 make codegen works on ruby 1.8.2
3469         * CodeGen/templates/*.cs
3470           Mono.Cecil.Metadata/*.cs:
3471                 style
3472
3473 2005-07-13  Jb Evain  <jbevain@gmail.com>
3474
3475         * Mono.Cecil.Implem/VariableDefinition.cs:
3476                 set the index field
3477
3478 2005-07-13  Jb Evain  <jbevain@gmail.com>
3479
3480         * Mono.Cecil.dll.sources: regenerated
3481         * Mono.Cecil.Signatures/SignatureReader.cs:
3482                 Fix compilation warnings
3483         * Mono.Cecil/IArrayType.cs
3484           Mono.Cecil.Implem/ArrayType.cs:
3485                 Add Rank helper property
3486         * Mono.Cecil/ITypeDefinition.cs
3487           Mono.Cecil.Implem/TypeDefinition.cs:
3488                 Add Constructors helper property
3489
3490 2005-07-11  Jb Evain  <jbevain@gmail.com>
3491
3492         * Mono.Cecil/IMethod.cs
3493           Mono.Cecil.Implem/Instruction.cs
3494           Mono.Cecil.Implem/ExceptionHandler.cs
3495           Mono.Cecil.Implem/MethodDefinition.cs
3496           Mono.Cecil.Implem/Label.cs
3497           Mono.Cecil.Implem/CodeReader.cs
3498           Mono.Cecil.Implem/MethodBody.cs
3499           Mono.Cecil.Implem/CilEmitter.cs
3500           Mono.Cecil.Cil/ILabel.cs
3501           Mono.Cecil.Cil/IInstruction.cs
3502           Mono.Cecil.Cil/IExceptionHandler.cs
3503           Mono.Cecil.Cil/IMethodBody.cs
3504           Mono.Cecil.Cil/ICilEmitter.cs:
3505                 Preliminary changes on the instruction model before
3506                 changing of latptop
3507
3508 2005-07-08  Jb Evain  <jbevain@gmail.com>
3509
3510    * Every generated files: use \n instead of \r\n
3511
3512 2005-07-07  Jb Evain  <jbevain@gmail.com>
3513
3514         * *.*: use Mono coding conventions
3515         * Mono.Xml/*.*: update Mono.Xml from corlib
3516         * Mono.Cecil.Metadata/CultureUtils.cs:
3517                 Ensure that Cecil works under Mono
3518
3519 2005-07-02  Jb Evain  <jbevain@gmail.com>
3520
3521         * Mono.Cecil/IMethod.cs
3522           Mono.Cecil/IProperty.cs
3523           Mono.Cecil/IEvent.cs
3524           Mono.Cecil/IField.cs
3525           Mono.Cecil/ITypeDefinition.cs
3526           Mono.Cecil.Implem/MethodDefinition.cs
3527           Mono.Cecil.Implem/PropertyDefinition.cs
3528           Mono.Cecil.Implem/EventDefinition.cs
3529           Mono.Cecil.Implem/FieldDefinition.cs
3530           Mono.Cecil.Implem/TypeDefinition.cs:
3531                 Add some funky sugar attributes,
3532                 more to come
3533
3534 2005-07-01  Jb Evain  <jbevain@gmail.com>
3535
3536         * CodeGen/cecil-gen.rb,
3537           CodeGen/templates/MetadataTableWriter.cs,
3538           CodeGen/templates/MetadataRowWriter.cs,
3539           Mono.Cecil.Metadata/MetadataTableWriter.cs,
3540           Mono.Cecil.Metadata/MetadataRowWriter.cs,
3541           Mono.Cecil.Metadata/MetadataWriter.cs:
3542                 Add metadata writing visitors
3543         * Mono.Cecil.Metadata/CultureUtils.cs:
3544                 Be sure to use every possible culture infos.
3545         * Mono.Cecil.Cil/IVariable.cs,
3546           Mono.Cecil.Implem/VariableDefinition.cs,
3547           Mono.Cecil.Implem/CodeReader.cs,
3548           Mono.Cecil.Implem/CilEmitter.cs:
3549                 Add an index property to local variables
3550         * Mono.Cecil.Metadata/MetadataReader.cs,
3551           Mono.Cecil.Metadata/MetadataRowReader.cs,
3552           CodeGen/templates/MetadataRowReader.cs,
3553           Mono.Cecil.Metadata/TablesHeap.cs:
3554                 Handles null heaps
3555         * Mono.Cecil.Implem/StructureWriter.cs,
3556           Mono.Cecil.Implem/ReflectionController.cs,
3557           Mono.Cecil.Implem/ReflectionWriter.cs:
3558                 Assemble writing classes
3559
3560 2005-06-28  Jb Evain  <jbevain@gmail.com>
3561
3562         * Mono.Cecil.Implem/ReflectionReader.cs: style
3563         * Mono.Cecil.Implem/LazyReflectionReader.cs:
3564                 read the last property as well.
3565
3566 2005-06-21  Jb Evain  <jbevain@gmail.com>
3567
3568         * Mono.Cecil.Implem/ReflectionReader.cs: Correct a bug that prevents
3569                 assemblies to be readed if they have an entrypoint. Suggestion by
3570                 Mario Sopena
3571         * Mono.Cecil.Implem/CodeReader.cs: Use sbyte not to lose negatives
3572                 offsets. Suggestion by Vladislav Spivak
3573         * CodeGen/cecil.xml,
3574           Mono.Cecil.Cil/OpCodes.cs,
3575           Mono.Cecil.Cil/StackBehaviour.cs: Add an PopAll enumeration value
3576                 for StackBehaviour, and set the StackBehaviourPop property for
3577                 leave and leave.s opcodes to it. Suggested by Vladislav Spivak
3578
3579 2005-06-12  Jb Evain  <jbevain@gmail.com>
3580
3581         * Mono.Cecil.Implem/TypeDefinition.cs: Set the declaring type
3582                 to this when defining a nested type.
3583
3584 2005-06-07  Jb Evain  <jbevain@gmail.com>
3585
3586         * Mono.Cecil.dll.sources,
3587         * CodeGen/cecil.xml,
3588         * Mono.Cecil/IReflectionVisitor.cs,
3589         * Mono.Cecil/INestedTypeCollection.cs,
3590         * Mono.Cecil/ITypeDefinition,
3591         * Mono.Cecil.Implem/ReflectionReader.cs,
3592         * Mono.Cecil.Implem/ReflectionWriter.cs,
3593         * Mono.Cecil.Implem/TypeDefinition.cs,
3594         * Mono.Cecil.Implem/NestedTypeCollection:
3595                 Add a collection of nested types for type definition
3596
3597         * Mono.Cecil.Implem/ModuleDefinition.cs: simplify type creation
3598
3599 2005-06-07  Jb Evain  <jbevain@gmail.com>
3600
3601         * ChangeLog: Cecil has now ChangeLogs. Let use them.