Wed Feb 24 15:47:16 CET 2010 Paolo Molaro <lupus@ximian.com>
[mono.git] / mcs / class / corlib / System.Reflection / ChangeLog
1 2010-02-11 Rodrigo Kumpera  <rkumpera@novell.com>
2
3         * MethodBody.cs: Add v4 bits.
4
5 2010-02-11 Rodrigo Kumpera  <rkumpera@novell.com>
6
7         * MethodBase.cs: Add some v4 bits.
8
9 2010-02-11 Rodrigo Kumpera  <rkumpera@novell.com>
10
11         * MemberInfo.cs: Add GetCustomAttributesData.
12
13         * Assembly.cs:
14         * MemberInfo.cs:
15         * Module.cs:
16         * MonoEvent.cs:
17         * MonoField.cs:
18         * MonoMethod.cs:
19         * MonoProperty.cs:
20         * ParameterInfo.cs: Implement GetCustomAttributesData.
21
22 2010-02-11 Rodrigo Kumpera  <rkumpera@novell.com>
23
24         * MemberInfo.cs: Add some v4 bits.
25
26 2010-02-11 Rodrigo Kumpera  <rkumpera@novell.com>
27
28         * MethodImplAttributes.cs: Add NoOptimization flag.
29
30 2010-02-11  Marek Habersack  <mhabersack@novell.com>
31
32         * ConstructorInfo.cs, EventInfo.cs, FieldInfo.cs: fix 4.0 equality
33         and inequality operators by casting the passed parameters to
34         object. Failing to do so leads to infinite recursion calling the
35         operator.
36
37 2010-02-10 Rodrigo Kumpera  <rkumpera@novell.com>
38
39         * FieldInfo.cs: Add some v4 bits.
40
41 2010-02-10 Rodrigo Kumpera  <rkumpera@novell.com>
42
43         * EventInfo.cs: Add some v4 bits.
44
45 2010-02-10 Rodrigo Kumpera  <rkumpera@novell.com>
46
47         * ConstructorInfo.cs: Add some v4 bits.
48
49 2010-02-10 Rodrigo Kumpera  <rkumpera@novell.com>
50
51         * PropertyInfo.cs: Remove a pair of MonoTODO.
52
53         * MonoProperty.cs: Implement GetConstantValue and GetRawConstantValue.
54
55 2010-02-05 Rodrigo Kumpera  <rkumpera@novell.com>
56
57         * MonoMethod.cs (GetParameters): Must return a copy instead of the interned array.
58
59         * MonoMethod.cs (Invoke): Skip array clone in GetParameters.
60
61         * MonoProperty.cs (GetIndexParameters): Properly handle write-only indexed properties.
62         Return a ParameterInfo object bound to the properly and not to the method.
63
64         * ParameterInfo.cs: Add new constructor that copies all fields but Member.
65
66         * ParameterInfo.cs (MetadataToken): Properly handle tokens of non-method members.
67
68 2010-01-31  Zoltan Varga  <vargaz@gmail.com>
69
70         * MonoGenericClass.cs: Fix a warning.
71
72 2010-01-28  Rolf Bjarne Kvinge  <RKvinge@novell.com>
73
74         * Assembly.cs: GetSatelliteAssembly: Ask LoadSatellite to not throw
75         exceptions, since we ignore them anyway.
76
77 2010-01-05 Rodrigo Kumpera  <rkumpera@novell.com>
78
79         * ParameterInfo.cs (DefaultProperty): Fix small typo.
80
81 2010-01-05 Rodrigo Kumpera  <rkumpera@novell.com>
82
83         * ParameterInfo.cs (DefaultProperty): Add support for DateTime defaults.
84
85         * ParameterInfo.cs: Implements RawDefaultProperty.
86
87 2009-12-17 Rodrigo Kumpera  <rkumpera@novell.com>
88
89         * MonoGenericClass.cs (GetMethods): When the GTD is not a typebuilder,
90         calling GetMethods on it will return everything we need so no need to
91         do the crazy loop.
92         The returned methods might contains some that are not from a generic type
93         so we need to guard against this as well.
94
95         * MonoGenericClass.cs (GetMethodsInternal): Guard against methods that don't
96         belong to a GTD as well.
97
98 2009-12-14 Rodrigo Kumpera  <rkumpera@novell.com>
99
100         * MonoGenericClass.cs: Remove IsByRef hack.
101
102 2009-12-14 Rodrigo Kumpera  <rkumpera@novell.com>
103
104         * MonoGenericClass.cs (format_name): Avoid calling AssemblyQualifiedName as mcs DynamicObject
105         doesn't implement it.
106
107 2009-12-12 Rodrigo Kumpera  <rkumpera@novell.com>
108
109         * MonoGenericClass.cs: Remove useless field.
110
111 2009-12-12 Rodrigo Kumpera  <rkumpera@novell.com>
112
113         * MonoGenericClass.cs: Change it to support a non-sre generic type
114         definition.
115
116 2009-12-10 Rodrigo Kumpera  <rkumpera@novell.com>
117
118         * MonoGenericClass.cs: Add new register_with_runtime icall to make
119         sure that a managed code instantiated MGC will be returned when
120         the generic instantiation happens in unmanaged code.
121         
122         This is a temporary workaround while Type::MakeGenericType doesn't
123         handle user types properly.
124
125 2009-12-10 Rodrigo Kumpera  <rkumpera@novell.com>
126
127         * MonoGenericClass.cs: Make this class inherit from Type instead of
128         MonoType. Implement some missing methods and make sure we can still
129         be used as a byref type.
130
131 2009-12-08 Rodrigo Kumpera  <rkumpera@novell.com>
132
133         * MonoMethod.cs (MakeGenericMethod): If any of the arguments is
134         a non system type, inflate to a MethodOnTypeBuilderInst.
135
136 2009-12-08 Rodrigo Kumpera  <rkumpera@novell.com>
137
138         * ParameterInfo.cs: Add constructor that takes an array of ParameterInfo
139         objects.
140
141 2009-12-08 Rodrigo Kumpera  <rkumpera@novell.com>
142
143         * MonoGenericClass.cs: Implement IsCompilerContext property and replace
144         all checks to use it.
145
146 2009-12-04 Rodrigo Kumpera  <rkumpera@novell.com>
147
148         * MonoGenericClass.cs (InflateType): Add a type argument parameter and
149         make this function static. Now it can inflate types using the context
150         of any type.
151
152 2009-12-02  Jb Evain  <jbevain@novell.com>
153
154         * Assembly.cs: disable warning about Assembly overriding
155         Equals but not GetHashCode. That's sadly how it's in .net.
156
157 2009-12-02  Jb Evain  <jbevain@novell.com>
158
159         * MethodInfo.cs: add an internal virtual GetBaseMethod
160         returning the immediate predecessor in the inheritance chain.
161         * MonoMethod.cs: modify the get_base_definition icall to take
162         a boolean indicating that we want the immediate base method
163         or the original method definition and rename it to
164         get_base_method. Implement GetBaseMethod with it.
165
166 2009-11-21  Miguel de Icaza  <miguel@novell.com>
167
168         * Assembly.cs: Implement missing method.
169
170 2009-11-03  Marek Habersack  <mhabersack@novell.com>
171
172         * Assembly.cs: GetSatelliteAssembly must catch
173         AppDomain.LoadSatellite FileNotFoundException and attempt to load
174         satellites from subdirectories of current assembly's
175         directory. Fixes bug #548768
176
177 2009-10-30  Sebastien Pouliot  <sebastien@ximian.com>
178
179         * MonoMethod.cs: Remove CAS check in MonoCMethod.Invoke (just 
180         like it was done for MonoMethod.Invoke sister method)
181
182 2009-10-26  Sebastien Pouliot  <sebastien@ximian.com>
183
184         * Assembly.cs: Share code between GetSatelliteAssembly and 
185         GetSatelliteAssemblyNoThrow. For Moonlight ensure both 
186         GetManifestResourceStream and GetSatelliteAssembly don't load
187         anything "below" the assembly path.
188
189 2009-10-20  Sebastien Pouliot  <sebastien@ximian.com>
190
191         * MonoProperty.cs: Reduce code duplication and the number of direct
192         calls to icalls (affecting the number of SecuritySafeCritical in
193         Moonlight)
194
195 2009-10-19  Sebastien Pouliot  <sebastien@ximian.com>
196
197         * MonoEvent.cs: Reduce code duplication and the number of direct
198         calls to icalls (affecting the number of SecuritySafeCritical in
199         Moonlight)
200
201 2009-10-18  Sebastien Pouliot  <sebastien@ximian.com>
202
203         * MethodBase.cs: Reduce code duplication and the number of direct
204         calls to icalls (affecting the number of SecuritySafeCritical in
205         Moonlight)
206
207 2009-10-17  Sebastien Pouliot  <sebastien@ximian.com>
208
209         * MonoMethod.cs: Reduce code duplication and the number of direct
210         calls to icalls (affecting the number of SecuritySafeCritical in
211         Moonlight)
212
213 2009-09-22  Sebastien Pouliot  <sebastien@ximian.com>
214
215         * Assembly.cs: Remove Evidence and GlobalAssemblyCache 
216         properties for NET_2_1
217
218 2009-09-19  Sebastien Pouliot  <sebastien@ximian.com>
219
220         * TargetException.cs, TargetInvocationException.cs,
221         TargetParameterCountException.cs: Inherit from Exception for 
222         NET_2_1 since ApplicationException does not exists
223
224 2009-09-18  Sebastien Pouliot  <sebastien@ximian.com>
225
226         * Assembly.cs, Module.cs: Avoid imperative CAS checks for NET_2_1
227
228 2009-08-18  Zoltan Varga  <vargaz@gmail.com>
229
230         * MonoGenericClass.cs: Use StringComparison.Ordinal when calling
231         String.EndsWith ().
232
233 2009-08-07 Rodrigo Kumpera  <rkumpera@novell.com>
234
235         * MonoGenericClass.cs: Implement almost all methods required
236         to move to inherit from System.Type. The only missing methods
237         are Is(Array|Pointer|ByRef)Impl and GetElementType since the
238         runtime still generates weird instances for generics instances
239         of non-SRE types with SRE types as generic arguments.
240
241 2009-08-06 Rodrigo Kumpera  <rkumpera@novell.com>
242
243         * MonoGenericClass.cs (InflateType): Add support to inflate
244         generic method arguments.
245
246         * MonoGenericClass.cs (GetMethod): Remove restriction
247         with generic methods.
248
249 2009-08-05 Rodrigo Kumpera  <rkumpera@novell.com>
250
251         * MonoGenericClass.cs (FullName): mcs depends that FullName
252         doesn't return null for instantiations over generic params
253         of type builders. We special case this under compiler context.
254
255 2009-08-05 Rodrigo Kumpera  <rkumpera@novell.com>
256
257         * MonoGenericClass.cs: Remove Is(Array|Pointer|ByRef)Impl
258         and GetElementType since the runtime still produces instances
259         of MonoGenericClass for those types.
260
261 2009-08-04 Rodrigo Kumpera  <rkumpera@novell.com>
262
263         * MonoGenericClass.cs: Implement more methods from MonoType.
264         Done with all type name related properties.
265
266 2009-08-04 Rodrigo Kumpera  <rkumpera@novell.com>
267
268         * MonoGenericClass.cs: Implement Is*Impl methods to simply
269         return false.
270
271 2009-08-04 Rodrigo Kumpera  <rkumpera@novell.com>
272
273         * MonoGenericClass.cs: Implement Make(Array,ByRef,Pointer) using the
274         new managed types.
275
276 2009-08-04 Rodrigo Kumpera  <rkumpera@novell.com>
277
278         * MonoGenericClass.cs (InflateType): Implement it in terms of managed
279         code and kill the corresponding icall.
280
281 2009-08-04 Rodrigo Kumpera  <rkumpera@novell.com>
282
283         * MonoGenericClass.cs: Add type_arguments field and constructor
284         that initializes it.
285
286 2009-08-03 Rodrigo Kumpera  <rkumpera@novell.com>
287
288         * MonoGenericClass.cs (initialize): Remember the number
289         of events available at initialization time. This is required as
290         mcs expect this behavior under compiler context that new events
291         are not returned for an instance that was inflated before.
292
293         * MonoGenericClass.cs: Kill GetEvents_internal and implement it
294         in terms of managed code.
295
296 2009-07-30  Zoltan Varga  <vargaz@gmail.com>
297
298         * FieldInfo.cs: Throw an exception if internal_from_handle_type ()
299         returns null. Fixes #525733.
300
301 2009-07-29 Rodrigo Kumpera  <rkumpera@novell.com>
302
303         * MonoGenericClass.cs (initialize): Call TypeBuilder::GetConstructorsInternal
304         since the public version throws.
305
306 2008-07-29  Marek Safar  <marek.safar@gmail.com>
307
308         * MonoGenericClass.cs: Removed one IsCompilerContext hack.
309
310 2009-07-27 Rodrigo Kumpera  <rkumpera@novell.com>
311
312         * Assembly.cs (GetType): Throw if name is empty.
313
314 2009-07-27 Rodrigo Kumpera  <rkumpera@novell.com>
315
316         * EventInfo (RemoveEventHandler): Throw InvalidOperationException if the
317         event remove method is not visible.
318
319 2009-07-27 Rodrigo Kumpera  <rkumpera@novell.com>
320
321         * EventInfo (AddEventHandler): Throw TargetException if target is not cast
322         compatible.
323
324         * EventInfo (AddEventHandler): Throw InvalidOperationException if the
325         event add method is not visible.
326
327         * EventInfo (AddEventHandler): Throw TargetException if source is null
328         and the event is not static.
329
330 2009-07-24 Rodrigo Kumpera  <rkumpera@novell.com>
331
332         * MonoGenericClass.cs (GetParentType): Implement using managed code.
333
334 2009-07-24 Rodrigo Kumpera  <rkumpera@novell.com>
335
336         * MonoGenericClass.cs: Make all icalls private. Kill GetInterfaces_internal.
337         Add a workaround for a GetField under compiler context.
338
339 2009-07-24 Rodrigo Kumpera  <rkumpera@novell.com>
340
341         * MonoGenericClass.cs (GetMethod): Use the new code always. Don't
342         accept MethodOnTypeBuilderInst under compiler context.
343
344         * MonoGenericClass.cs (GetField): Use the new code always.
345
346         * MonoGenericClass.cs: Make a bunch of methods raise NotSupportedException
347         when not under compiler context. Remove some dead code.
348
349 2009-07-23 Rodrigo Kumpera  <rkumpera@novell.com>
350
351         * MonoGenericClass.cs: Kill GetConstructors_internal and implement it
352         all in terms of managed code.
353
354         * MonoGenericClass.cs: Return instances of ConstructorOnTypeBuilderInst
355         under bootstrap profile.
356
357 2009-07-23 Rodrigo Kumpera  <rkumpera@novell.com>
358
359         * MonoGenericClass.cs: Kill GetFields_internal and implement it
360         all in terms of managed code.
361
362 2009-07-23 Rodrigo Kumpera  <rkumpera@novell.com>
363
364         * MonoGenericClass.cs: Kill GetMethods_internal and implement it
365         all in terms of managed code.
366
367 2009-07-22 Rodrigo Kumpera  <rkumpera@novell.com>
368
369         * MonoGenericClass.cs: Kill GetProperties_internal and implement it
370         all in terms of managed code.
371
372 2009-07-12  Gert Driesen  <drieseng@users.sourceforge.net>
373
374         * Binder.cs: Only allow a type to match its byref version for
375         BindToMethod (and not for SelectMethod).
376
377 2009-07-11  Zoltan Varga  <vargaz@gmail.com>
378
379         * Binder.cs: Allow conversion of IntPtr to pointer types.
380
381 2009-07-10  Zoltan Varga  <vargaz@gmail.com>
382
383         * Binder.cs (check_arguments): Allow a type to match its byref version.
384         Fixes #520690.
385
386 2009-06-12  Zoltan Varga  <vargaz@gmail.com>
387
388         * ParameterInfo.cs (DefaultValue): Add support for decimals, their default
389         value is encoded using a custom attribute.
390
391 2009-05-02  Sebastien Pouliot  <sebastien@ximian.com>
392
393         * Assembly.cs: Exclude CAS-specific code for NET_2_1
394
395 2009-04-30  Sebastien Pouliot  <sebastien@ximian.com>
396
397         * Module.cs: Exclude GetSignerCertificate (Authenticode related) 
398         from NET_2_1
399         * StrongNameKeyPair.cs: Adapt to work with only RSAManaged when 
400         built for NET_2_1, i.e. remove use of RSACryptoServiceProvider
401
402 2009-03-26  Zoltan Varga  <vargaz@gmail.com>
403
404         * MonoMethod.cs: Add a 'member' argument to the get_parameter_info () icall.
405
406 2009-03-03  Matthew Metnetsky  <matthew@cowarthill.com>
407
408         * MonoMethod.cs: within Invoke only change types if BindingFlags.ExactBinding isn't set
409
410         * MonoMethod.cs: within Invoke ensure arg types match ParameterInfo types before
411         calling InvokeInternal
412
413 2009-03-20  Sebastien Pouliot  <sebastien@ximian.com>
414
415         * EventInfo.cs, MonoProperty.cs: Ensure the delegate optimization 
416         works correctly, i.e. throw the right exception, with Moonlight.
417
418 2009-03-11  Zoltan Varga  <vargaz@gmail.com>
419
420         * Binder.cs: Allow conversions from T to T?. Fixes #484294.
421
422 2008-03-02  Rodrigo Kumpera  <rkumpera@novell.com>
423
424         * EventInfo.cs: Apply similar trick to the one in MonoProperty to speed up
425         AddEventHandler.
426
427 2008-02-28  Rodrigo Kumpera  <rkumpera@novell.com>
428
429         * MonoProperty.cs (GetValue): Don't use the delegate optimization for valuetypes.
430
431 2008-02-26  Rodrigo Kumpera  <rkumpera@novell.com>
432
433         * MonoProperty.cs (GetValue): Optimize getters for properties without arguments.
434
435 2008-02-26  Rodrigo Kumpera  <rkumpera@novell.com>
436
437         * MonoProperty.cs (GetValue): Optimize getters for properties without arguments.
438         The optimization is to create a pair of chained delegates that duplicate the workings
439         on MethodBase::Invoke without all the aditional overhead and without doing two
440         managed/native transitions.
441
442         Simple Getter performance is up to 17x faster.
443
444         This patch reduces contention on domain and domain jit code hash locks, which
445         can be very hot on asp.net applications.
446
447 2008-02-21  Jb Evain  <jbevain@novell.com>
448
449         * Module.cs: add a new virtual GetModuleVersionId method,
450         and make the properties .MvId and ModuleVersionId call it.
451         This way, we can override it in ModuleBuilder.
452         Part of the fix for #471302.
453
454 2008-02-03  Rodrigo Kumpera  <rkumpera@novell.com>
455
456         * MonoMethod.cs: Fix the 1.1 build.
457
458 2008-02-02  Rodrigo Kumpera  <rkumpera@novell.com>
459
460         * MonoMethod.cs (ToString): Fix the representation of non primitive structs.
461
462 2008-02-02  Rodrigo Kumpera  <rkumpera@novell.com>
463
464         * MonoMethod.cs (ToString): Fix representation of pointer types.
465
466         Fixes #409583.
467
468 2009-01-24  Zoltan Varga  <vargaz@gmail.com>
469
470         * MonoGenericClass.cs: Fix warnings.
471
472 2009-01-24 Gonzalo Paniagua Javier <gonzalo@novell.com>
473
474         * Assembly.cs: add new LoadSatelliteAssemblyNoThrow method and use the
475         new LoadSatellite() in AppDomain.
476
477 2009-01-09  Zoltan Varga  <vargaz@gmail.com>
478
479         * CustomAttributeData.cs (ToString): Applied patch from Leszek Ciesielski
480         <skolima@gmail.com>. Use DeclaringType.FullName instead of DeclaringType.Name.
481         Fixes #464830.
482
483 2008-11-17  Rodrigo Kumpera  <rkumpera@novell.com>
484
485         * MonoField.cs (GetValue): Don't check for open generic types if the field
486         is a constant.
487
488 2008-11-11  Rodrigo Kumpera  <rkumpera@novell.com>
489
490         * Module.cs (ResolveMethod): Use internal method 
491         GetMethodFromHandleNoGenericCheck to avoid the generic type
492         limitation of GetMethodFromHandle.
493
494         Fixes #443763.
495
496 2008-10-02 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>
497
498         * MonoMethod.cs: throw a MemberAccessException when
499         trying to invoke a constructor creating an instance of an abstract
500         class. Return null when an instance of an object was passed as a
501         parameter when invoking a .ctor. Fixes bug #324185.
502
503 2008-09-07  Zoltan Varga  <vargaz@gmail.com>
504
505         * MonoField.cs: Add check to GetValue/SetValue () to avoid crashes when it is
506         called on fields of open types. Fixes #424077.
507
508 2008-08-12  Gert Driesen  <drieseng@users.sourceforge.net>
509
510         * ReflectionSerializationHolder.cs: Removed.
511         * common.src: Removed.
512
513 2008-08-04  Atsushi Enomoto  <atsushi@ximian.com>
514
515         * Assembly.cs : return UnmanagedMemoryStream from 
516           GetManifestResourceStream(). Fixed bug #322241.
517
518 2008-07-30  Rodrigo Kumpera  <rkumpera@novell.com>
519
520         * MonoGenericClass.cs (InflateType): Guard against null types.
521         Fixes #412965.
522
523 2008-07-23  Marek Safar  <marek.safar@gmail.com>
524
525         * MethodBase.cs (GetMethodFromHandle): Needed for bootraping.
526
527 2008-07-22  Rodrigo Kumpera  <rkumpera@novell.com>
528
529         * MonoGenericClass.cs (GetMethod): Under compiler mode allow
530         MethodOnTypeBuilderInst to be used..
531
532 2008-07-17  Rodrigo Kumpera  <rkumpera@novell.com>
533
534         * MonoGenericClass.cs (GetMethod): Revert to old code
535         path as the new one broke System.Core.
536
537 2008-07-16  Rodrigo Kumpera  <rkumpera@novell.com>
538
539         * MonoGenericClass.cs (GetMethod): Use the new codepath for compiler
540         context.
541
542         * MonoGenericClass.cs: New InflateType method, used to inflate
543         managed types.
544
545 2008-07-11  Marek Safar  <marek.safar@gmail.com>
546
547         * MonoGenericClass.cs (GetField): Put back removed code.
548
549 2008-07-04  Rodrigo Kumpera  <rkumpera@novell.com>
550
551         * MethodBase.cs (GetMethodFromHandle): Fix a warning in
552         the 1.0 build.
553
554 2008-07-04  Rodrigo Kumpera  <rkumpera@n ovell.com>
555
556         * MethodBase.cs (GetMethodFromHandle): Extract an internal version
557         of this function that doesn't perform the generic class check.
558         This method is required to fix the Delegate regression that fixing
559         #377324 caused.
560
561 2008-06-25  Rodrigo Kumpera  <rkumpera@n ovell.com>
562
563         * MethodBase.cs (GetMethodFromHandle): Check if the icall returns null
564         and fail. This is part of the fix for #377324.
565
566 2008-06-19  Marek Safar  <marek.safar@gmail.com>
567
568         * MonoGenericClass.cs (GetConstructor): Put back removed code due to obscure
569         System.Reflection.MonoGenericCMethod.
570
571 2008-06-19  Kornel Pal  <kornelpal@gmail.com>
572
573         * Module.cs: Add internal GetHINSTANCE.
574
575 2008-06-02  Ivan N. Zlatev  <contact@i-nz.net>
576
577         * Binder.cs, MonoGenericClass.cs: For property reflection we should 
578         strictly match the return type if available.
579
580 2008-05-16  Zoltan Varga  <vargaz@gmail.com>
581
582         * MonoGenericClass.cs (GetConstructor): Remove some old code, as the new code
583         seems to work fine.
584         (GetField): Ditto.
585
586 2008-05-05  Zoltan Varga  <vargaz@gmail.com>
587
588         * FieldInfo.cs (GetFieldFromHandle): Add an argument check for an invalid handle.
589
590         * MethodBase.cs (GetMethodFromHandle): Ditto. Fixes #386641.
591
592 2008-04-30  Gert Driesen  <drieseng@users.sourceforge.net>
593
594         * ParameterInfo.cs: Name must default to null if no ParameterBuilder
595         is supplied.
596
597 2008-04-22  Zoltan Varga  <vargaz@gmail.com>
598
599         * MonoGenericClass.cs (GetMethod): Construct a MethodOnTypeBuilderInst object
600         instead of using GetCorrespondingInflatedMethod. This is needed so this class can
601         reflect the changes made to the builder after initialize () has been called.
602         Fixes #381547 and #354759.
603         (GetConstructor): Ditto.
604
605 2008-04-16  Zoltan Varga  <vargaz@gmail.com>
606
607         * Binder.cs: Applied patch from Yves Bastide (doc.formatique@gmail.com). Add 
608         support for converting integers to enums. Fixes #380361.
609
610 ?2008-04-02  Andreas Nahr  <ClassDevelopment@A-SoftTech.com>
611
612         * IReflect.cs
613         * MethodInfo.cs: Fix parameter names
614
615 2008-03-31  Mark Probst  <mark.probst@gmail.com>
616
617         * MonoMethod.cs: Don't do CAS security checks in Invoke for 2.1
618         profile.
619
620 2008-03-25  Zoltan Varga  <vargaz@gmail.com>
621
622         * MonoCMethod.cs (Invoke): Avoid a crash if this is called on a ctor of an open
623         generic type. Fixes #373459.
624         
625         * MonoMethod.cs (InternalInvoke): Add an out 'exc' argument used to distinguish
626         exceptions thrown by the icall from the exceptions thrown by the wrapped method.
627         Fixes #373448.
628
629 2008-03-17  Marek Safar  <marek.safar@gmail.com>
630
631         * MonoMethod.cs (ToString): Print VarArgs argument.
632
633 2008-03-14  Zoltan Varga  <vargaz@gmail.com>
634
635         * MonoGenericClass.cs (GetField): Construct a FieldOnTypeBuilderInst object
636         instead of using GetCorrespondingInflatedField. This is needed so this class can
637         reflect the changes made to the type builder after initialize () has been called.
638
639         * Binder.cs (ChangeType): Add support for Char->Double/Single conversations. Fixes
640         #367655.
641
642 2008-03-10  Gert Driesen  <drieseng@users.sourceforge.net>
643
644         * Assembly.cs (GetFile): Fixed exception messages and param name.
645
646 2008-03-06  Zoltan Varga  <vargaz@gmail.com>
647
648         * Assembly.cs: Define GetManifestModule () for net 2.0 bootstrap as well.
649
650 2008-02-26  Ivan N. Zlatev  <contact@i-nz.net>
651
652         * MonoProperty.cs: MS ignores the inherit parameter and defaults to false
653         for GetCustomAttributes.
654         [Fixes bugs #324472 and #322464]
655
656 2008-02-20  Zoltan Varga  <vargaz@gmail.com>
657
658         * AssemblyName.cs (ReferenceMatchesDefinition): Add error checking and some 
659         simple cases required by ikvm.
660
661 2008-02-18  Zoltan Varga  <vargaz@gmail.com>
662
663         * CustomAttributeTypedArgument.cs (.ctor): Convert arrays into a collection of
664         CustomAttributeTypedArguments to match MS.
665
666 2008-02-10  Gert Driesen  <drieseng@users.sourceforge.net>
667
668         * Assembly.cs: Use icall for ToString/FullName. Fixes bug #318231.
669
670 2008-02-02  Gert Driesen  <drieseng@users.sourceforge.net>
671
672         * MonoMethod.cs (MakeGenericMethod): Modified argument name to match
673         MS. When one of the types is null, throw ArgumentNullException instead
674         of ArgumentException.
675         * MethodInfo.cs (MakeGenericMethod): Modified argument name to match
676         MS.
677
678 2008-01-29  Zoltan Varga  <vargaz@gmail.com>
679
680         * Assembly.cs: Make GetTypes () virtual so it can be overriden by AssemblyBuilder.
681         
682         * Assembly.cs: Make GetModulesInternal () virtual so it can be overriden by
683         AssemblyBuilder.
684
685 2008-01-22  Zoltan Varga  <vargaz@gmail.com>
686
687         * MonoGenericClass.cs: Make this NET 2.0 only.
688         
689         * MonoGenericClass.cs (Initialize): Simplify this a bit and add comments for this
690         class.
691
692 2008-01-20  Gert Driesen  <drieseng@users.sourceforge.net>
693
694         * AssemblyName.cs: Added support for Retargetable spec in FullName.
695
696 2008-01-17  Zoltan Varga  <vargaz@gmail.com>
697
698         * Assembly.cs AssemblyFlagsAttribute.cs ICustomAttributeProvider.cs
699         MemberInfo.cs FieldInfo.cs DefaultMemberAttribute.cs 
700         CustomAttributeNamedArgument.cs TargetException.cs MethodInfo.cs
701         IReflect.cs CustomAttributeTypedArgument.cs Module.cs: Change some parameter
702         names to match MS.
703
704 2008-01-15  Jb Evain  <jbevain@novell.com>
705
706         * MonoMethod.cs (MakeGenericMethod): check for null values
707         in the types arguments. Fixes #353849.
708
709 2008-01-06  Sebastien Pouliot  <sebastien@ximian.com>
710
711         * Assembly.cs: Fix typo in setter found with Gendarme (was used in a
712         single place, AppDomain, and set to true so it never caused a problem)
713
714 2008-01-04  Gert Driesen  <drieseng@users.sourceforge.net>
715
716         * AssemblyName.cs: Fixed default value for ProcessorArchitecture to
717         match MS. On 2.0 profile, return zero-length in FullName is no name
718         is set, and throw a SecurityException in FullName and GetPublicKeyToken
719         if a public key is set with no corresponding public key token. 
720         Fixed FullName to also include PublicKeyToken spec with "null" value
721         if public key is empty byte array. Fixed corlib part of bug #351057.
722         In SetPublicKey, modify Flags accordingly. On the 2.0 profile, verify
723         the public key when the public key token is computed.
724
725 2007-12-26  Zoltan Varga  <vargaz@gmail.com>
726
727         * Assembly.cs (GetSatelliteAssembly): Search in the assembly directory as well.
728         Fixes ##345627.
729
730 2007-12-03  Zoltan Varga  <vargaz@gmail.com>
731
732         * MonoField.cs: Implement GetRawConstantValue ().
733
734 2007-11-24  Marek Habersack  <mhabersack@novell.com>
735
736         * CustomAttributeTypedArgument.cs: value can be null in ToString.
737
738 2007-11-16  Zoltan Varga  <vargaz@gmail.com>
739
740         * Assembly.cs (GetFiles): Include the assembly itself as the first entry.
741
742 2007-11-13  Atsushi Enomoto  <atsushi@ximian.com>
743
744         * AssemblyName.cs : remove extraneous MonoTODO.
745
746 2007-11-13  Atsushi Enomoto  <atsushi@ximian.com>
747
748         * ExceptionHandlingClause.cs : implemented ToString().
749
750 2007-11-13  Atsushi Enomoto  <atsushi@ximian.com>
751
752         * MethodBase.cs : (Invoke) removed extra interface implementation.
753
754 2007-11-13  Atsushi Enomoto  <atsushi@ximian.com>
755
756         * StrongNameKeyPair.cs : implemented 2.0 runtime serialization stuff.
757
758 2007-11-05  Mark Probst  <mark.probst@gmail.com>
759
760         * Binder.cs: Treat matches with different argument types as
761         ambiguous, too.  Fixes #324998.
762
763 2007-11-01  Zoltan Varga  <vargaz@gmail.com>
764
765         * Binder.cs: Avoid returning a method with a ParamArray attribute when a normal
766         method exists. Fixes #338266.
767
768 2007-10-30  Zoltan Varga  <vargaz@gmail.com>
769
770         * Binder.cs: Applied patch from Mario A Chavez <mario.chavez@gmail.com>. Add
771         support for binding to methods with ParamArray attribute. Fixes #336841.
772
773 2007-10-27  Zoltan Varga  <vargaz@gmail.com>
774
775         * MonoGenericClass.cs: Override GetPropertyImpl too.
776
777 2007-10-24  Atsushi Enomoto  <atsushi@ximian.com>
778
779         * Assembly.cs : include ReflectionOnlyLoad() as part of 2.0
780           bootstrap build.
781
782 2007-09-23  Zoltan Varga  <vargaz@gmail.com>
783
784         * Assembly.cs (GetManifestModule): New virtual method overridden by 
785         AssemblyBuilder.
786
787 2007-09-17  Gert Driesen  <drieseng@users.sourceforge.net>
788
789         * Assembly.cs: In GetManifestResourceStream, throw ANE with type as
790         paramname when both name and type are null. Use String.Length to check
791         for zero-length string.
792
793 2007-09-11  Mark Probst  <mark.probst@gmail.com>
794
795         * MonoMethod.cs: Catch and re-throw MethodAccessException from
796         InternalInvoke for CoreCLR security.
797
798 Thu Sep 6 19:49:34 CEST 2007 Paolo Molaro <lupus@ximian.com>
799
800         * MonoMethod.cs: name is used as a cache: provide an icall to get the
801         name from the runtime.
802
803 2007-08-23  Robert Jordan  <robertj@gmx.net>
804
805         * MemberInfoSerializationHolder.cs: created from
806         ReflectionSerializationHolder to match MS (fixes bug #80761).
807         Add support for fields, events, properties and generic methods.
808
809         * MonoMethod.cs (GetObjectData): handle generic arguments.
810
811         * MonoGenericMethod.cs: mark as [Serializable].
812
813         * MonoProperty.cs (GetObjectData): implemented.
814
815         * MonoField.cs: ditto.
816
817         * MonoEvent.cs: ditto.
818
819 2007-07-19  Atsushi Enomoto  <atsushi@ximian.com>
820
821         * MonoMethod.cs : parameter types should be fixed as well.
822
823 2007-07-19  Atsushi Enomoto  <atsushi@ximian.com>
824
825         * MonoMethod.cs : ToString() did not show correct return type when
826           it is generic.
827
828 2007-07-15  Zoltan Varga  <vargaz@gmail.com>
829
830         * FieldInfo.cs: Implement GetOptional/RequiredCustomModifiers ().
831
832         * MethodInfo.cs: Remove an unneccesary MonoTODO.
833
834         * Module.cs: Implement ResolveSignature.
835
836 2007-07-14  Zoltan Varga  <vargaz@gmail.com>
837
838         * Module.cs: Implement the generic versions of the ResolveXXX methods.
839
840 2007-07-10  Zoltan Varga  <vargaz@gmail.com>
841
842         * Module.cs: Add new internal method GetMDStreamVersion ().
843
844 2007-07-09  Atsushi Enomoto  <atsushi@ximian.com>
845
846         * CustomAttributeNamedArgument.cs, CustomAttributeTypedArgument.cs:
847           added missing operator == and !=.
848
849 2007-07-04  Atsushi Enomoto  <atsushi@ximian.com>
850
851         * CustomAttributeNamedArgument.cs CustomAttributeTypedArgument.cs
852           CustomAttributeData.cs : implemented Equals() and GetHashCode().
853         * Missing.cs : ISerializable.
854         * AssemblyName.cs : ReferenceMatchesDefinition() stub.
855         * Module.cs : missing method stubs with generic type/method args.
856         * ExceptionHandlingClause.cs : ToString() stub.
857         * MethodBase.cs TypeDelegator.cs ModuleResolveEventHandler.cs
858           TypeFilter.cs MemberFilter.cs
859           FieldInfo.cs ParameterInfo.cs MethodInfo.cs :
860           miscellaneous cosmetic API fixes.
861
862 Tue May 8 13:04:35 CEST 2007 Paolo Molaro <lupus@ximian.com>
863
864         * FieldInfo.cs, MethodBase.cs: implemented new GetFieldFromHandle and
865         GetMethodFromHandle overloads (bug #78637).
866
867 2007-05-07  Zoltan Varga  <vargaz@gmail.com>
868
869         * MonoMethod.cs (Invoke): Fix a warning.
870         
871         * MonoMethod.cs (Invoke): Don't wrap ThreadAbortException inside a 
872         TargetInvocationException on the 2.0 profile. Fixes #81538.
873
874 2007-04-09  Alp Toker  <alp@atoker.com>
875
876         * MonoMethod.cs: Use StringBuilder for the entire ToString() methods
877         to reduce allocations and increase performance.
878
879 2007-04-09  Alp Toker  <alp@atoker.com>
880
881         * MonoMethod.cs: Use StringBuilder for parms in ToString() methods.
882
883 2007-04-09  Alp Toker  <alp@atoker.com>
884
885         * MethodBase.cs: IsGenericMethodDefinition() and IsGenericMethod()
886         should return false, not throw NotSupportedException. This matches MS
887         behaviour and introduces simplifications in subclasses.
888         * MonoMethod.cs: MonoCMethod: Remove redundant overrides.
889
890 2007-03-05  Peter Dettman <peter.dettman@iinet.net.au>
891
892         * Binder.cs: The patch changes Binder.Default.GetBetterMethod to
893         prefer methods in subclasses if the arg types can't disambiguate
894         them.
895
896         Also fixes a typo in the CallingConventions comparison.
897
898 2007-03-01  Alp Toker  <alp@atoker.com>
899
900         * FieldInfo.cs:
901         Add GetFieldFromHandle() 2.0 overload stub (NotImplemented).
902
903 2007-03-01  Alp Toker  <alp@atoker.com>
904
905         * MethodBase.cs: Add missing ComVisible attr.
906         Add GetMethodFromHandle() 2.0 overload stub (NotImplemented).
907
908 2006-12-30  Marek Safar  <marek.safar@gmail.com>
909
910         * MonoProperty.cs: Cache frequently used properties.
911
912 Thu Dec 14 13:50:48 CET 2006 Paolo Molaro <lupus@ximian.com>
913
914         * *.cs: added missing Serializable attributes.
915
916 Thu Dec 14 12:52:27 CET 2006 Paolo Molaro <lupus@ximian.com>
917
918         * MonoProperty.cs, ParameterInfo.cs, PropertyInfo.cs:
919         GetRequiredCustomModifiers()/GetOptionalCustomModifiers()
920         implementations.
921
922 Tue Dec 12 20:35:10 CET 2006 Paolo Molaro <lupus@ximian.com>
923
924         * MethodBase.cs: added missing ComVisible attr.
925         * MethodInfo.cs: added a few missing methods that we implement
926         in derived classes.
927
928 Tue Dec 12 19:45:26 CET 2006 Paolo Molaro <lupus@ximian.com>
929
930         * MonoEvent.cs: correctly obey the nonPublic flag in GetOtherMethods ().
931         * EventInfo.cs: remove NotImpl exception from GetOtherMethods ().
932
933 2006-10-19  Gert Driesen  <drieseng@users.sourceforge.net>
934
935         * AssemblyName.cs: Revert change where filename was not converted to
936         absolute path before passing it to Assembly.InternalGetAssemblyName
937         as the CodeBase is not set in that case.
938
939 2006-10-17  Kornel Pal  <kornelpal@gmail.com>
940
941         * FieldInfo.cs: Added GetRawConstantValue (). Note that throwing a
942           NotSupportedException is the proper implementation.
943         * ParameterInfo.cs: Use Attributes in Is... properties on profile 2.0
944           that is expected by subclasses.
945
946 2006-10-14  Gert Driesen  <drieseng@users.sourceforge.net>
947
948         * AssemblyName.cs: No need to convert filename to absolute path before
949         passing it to Assembly.InternalGetAssemblyName. This allows our
950         exception messages to be better match those of MS.
951
952 2006-09-29  Jb Evain  <jbevain@gmail.com>
953
954         * MonoFieldInfo.cs: throw a FieldAccessException when setting a literal field.
955
956 2006-09-02  Zoltan Varga  <vargaz@gmail.com>
957
958         * ParameterInfo.cs MethodInfo.cs MonoMethod.cs: Applied patch from 
959         Peter Dettman (peter.dettman@iinet.net.au). Implement ReturnParameter
960         property.
961
962         * Binder.cs (ReorderParameters): Really fix this.
963         
964         * Binder.cs (ReorderParameters): Fix this method. Fixes #79120.
965
966 2006-09-01  Raja R Harinath  <rharinath@novell.com>
967
968         * MonoMethod.cs (ToString): Update to handle change in byref type names.
969
970 2006-08-08  Gert Driesen  <drieseng@users.sourceforge.net>
971
972         * Assembly.cs: On 2.0 profile, throw FileNotFoundException for
973         linked resources in GetManifestResourceStream when assembly is
974         loaded from byte array.
975
976 2006-07-12  Zoltan Varga  <vargaz@gmail.com>
977
978         * MonoMethod.cs (ContainsGenericParameters): Implement.
979         
980         * MonoMethod.cs (Invoke): Prevent invoking of open generic methods.
981
982 2006-07-09  Gert Driesen  <drieseng@users.sourceforge.net>
983
984         * Assembly.cs: When assembly is loaded from byte array, return null
985         for linked resources in GetManifestResourceStream. Fixes bug #78468.
986
987 2006-07-09  Zoltan Varga  <vargaz@gmail.com>
988
989         * Binder.cs: Add back the support for BindingFlags.ExactBinding. Fixes #78592.
990
991 2006-06-30  Zoltan Varga  <vargaz@gmail.com>
992
993         * Binder.cs: Comment out the ExactBinding stuff for the release as it breaks some 
994         gtk# apps.
995
996 2006-06-07  Zoltan Varga  <vargaz@gmail.com>
997
998         * Binder.cs: Add support for BindingFlags.ExactBinding. Fixes #78592.
999
1000 2006-05-28  Gert Driesen  <drieseng@users.sourceforge.net>
1001
1002         * MethodBase.cs: GetMethodBody should not throw ArgumentException for
1003         a method with no IL body. Fixes bug #78522.
1004
1005 2006-05-10  Zoltan Varga  <vargaz@gmail.com>
1006
1007         * Module.cs (GetMethod): Update after the changes to Type.GetMethod ().
1008
1009 2006-05-08  Atsushi Enomoto  <atsushi@ximian.com>
1010
1011         * Binder.cs : (Default.SelectMethod)
1012           don't throw AmbiguousMatchException when one of conflicting method
1013           matches weakly. Fixed bug #42547.
1014
1015 2006-05-08  Atsushi Enomoto  <atsushi@ximian.com>
1016
1017         * Binder.cs : (Default.BindToMethod) reorder parameters based
1018           on namedParameters. Fixed bug #41691.
1019
1020 2006-05-03  Jb Evain  <jbevain@gmail.com>
1021
1022         * MonoField.cs (GetValue,SetValue): throw a TargetException
1023         when the field is non static and the target is null.
1024
1025 2006-03-12  Zoltan Varga  <vargaz@gmail.com>
1026
1027         * Binder.cs: Applied patch from Ben to fix #74947.
1028
1029 2006-03-01  Miguel de Icaza  <miguel@novell.com>
1030
1031         * Assembly.cs: Cache the AssemblyName, patch from Tambet.  This
1032         reduces the memory usage during remoting.
1033
1034 2006-02-16  Martin Baulig  <martin@ximian.com>
1035
1036         * FieldInfo.cs (FieldInfo.Mono_GetGenericFieldDefinition): Removed.
1037
1038 2006-02-15  Martin Baulig  <martin@ximian.com>
1039
1040         * MethodBase.cs (MethodBase.GetGenericMethodDefinition): Removed.
1041         (MethodBase.Mono_IsInflatedMethod): Removed.
1042         (MethodBase.HasGenericParameters): Removed.
1043
1044         * MethodInfo.cs (MethodInfo.GetGenericMethodDefinition): Moved
1045         here from MethodBase.
1046
1047         * MonoMethod.cs
1048         (MonoMethod.IsGenericMethodDefinition): This is now an icall.
1049         (MonoMethod.IsGenericMethod): Likewise.
1050
1051 2006-02-14  Martin Baulig  <martin@ximian.com>
1052
1053         * MonoMethod.cs
1054         (MonoCMethod.IsGenericMethod): Override this and return false; the
1055         MS runtime doesn't throw an exception here.
1056
1057 2006-02-08  Martin Baulig  <martin@ximian.com>
1058
1059         * MonoGenericClass.cs (MonoGenericClass.IsAssignableFrom):
1060         Override and implement this; fixes #77395.      
1061
1062 2006-02-07  Martin Baulig  <martin@ximian.com>
1063
1064         * MonoMethod.cs
1065         (MonoMethod.IsGenericMethod): Only return true for "real" generic
1066         methods and not for arbitrary instantiated methods.
1067         (MonoMethod.IsGenericMethodDefinition): Only return true for
1068         generic method definitions, but not for instantiated generic
1069         methods.  This is no longer an interncall.  Fixes #77466.
1070
1071 2006-02-03  Zoltan Varga  <vargaz@gmail.com>
1072
1073         * MethodBase.cs MonoMethod.cs: Implement IsGenericMethod property.
1074         Fixes #77460.
1075
1076 2005-12-23  Sebastien Pouliot  <sebastien@ximian.com>
1077
1078         * Assembly.cs: Fixed #75950. The icall has been changed to accept a 
1079         boolean so it can return a non-escaped code base.
1080
1081 2005-11-16  Atsushi Enomoto  <atsushi@ximian.com>
1082
1083         * MonoMethod.cs : made MakeGenericMethod() indirect icall to
1084           MakeGenericMethod_impl() and raise an error when it returns null.
1085
1086 2005-11-15  Zoltan Varga  <vargaz@gmail.com>
1087
1088         * Module.cs: Add MDStreamVersion property.
1089
1090         * Assembly.cs AssemblyNameFlags.cs FieldInfo.cs PropertyInfo.cs 
1091         CustomAttributeData.cs PortableExecutableKinds.cs 
1092         ObfuscateAssemblyAttribute.cs Module.cs ObfuscationAttribute.cs: Net 2.0 RTM
1093         updates.
1094
1095 2005-11-11  Marek Safar  <marek.safar@seznam.cz>
1096
1097         * MethodBase.cs, TypeDelegator.cs: Reflect Type changes.
1098
1099 2005-10-30  Zoltan Varga  <vargaz@freemail.hu>
1100
1101         * FieldInfo.cs: Add an internal UMarshal property which can by
1102         overriden in FieldBuilder.
1103
1104 2005-10-26  Atsushi Enomoto  <atsushi@ximian.com>
1105
1106         * MonoMethod.cs : (ToString) add suffix " ByRef" for byref parameters.
1107           Fixed bug #76541.
1108
1109 2005-10-04  Martin Baulig  <martin@ximian.com>
1110
1111         * MonoGenericClass.cs (MonoGenericClass.GetParentType): Changed
1112         return type from `MonoGenericClass to `Type'.
1113
1114 2005-09-26  Carlos Alberto Cortez <calberto.cortez@gmail.com>
1115
1116         * AssemblyName.cs: Add ParseName internal call, to parse
1117         long format assembly names. 
1118         
1119 2005-09-25  Sebastien Pouliot  <sebastien@ximian.com>
1120
1121         * MonoProperty.cs: Invoke throws a SecurityException but GetValue must
1122         throw TargetInvocationException with the SecurityException as an inner
1123         exception. See CAS unit tests for System.Web.dll.
1124
1125 2005-09-20  Martin Baulig  <martin@ximian.com>
1126
1127         * Assembly.cs: Removed some unused debugger icalls.
1128
1129 2005-09-17  Zoltan Varga  <vargaz@freemail.hu>
1130
1131         * Module.cs: Remove obsolete Mvid property.
1132
1133 2005-09-09  Martin Baulig  <martin@ximian.com>
1134
1135         Reflect latest API changes in the August CTP.
1136
1137         * MethodBase.cs (MethodBase.MakeGenericMethod): Removed.
1138
1139         * MethodInfo.cs (MethodInfo.MakeGenericMethod): Added here.
1140
1141 2005-09-08  Sebastien Pouliot  <sebastien@ximian.com>
1142
1143         * AssemblyName.cs: Apply second half of Chris Micacchi's patch
1144
1145 2005-09-07  Miguel de Icaza  <miguel@novell.com>
1146
1147         * AssemblyName.cs: Apply patch from Chris Micacchi to serialize
1148         the keyToken as "_PublicKeyToken".
1149
1150 2005-09-05  Martin Baulig  <martin@ximian.com>
1151
1152         Reflect latest API changes in the August CTP.
1153
1154         * GenericParameterAttributes.cs: Here.
1155
1156         * MethodBase.cs (MethodBase.BindGenericParameters): Renamed to
1157         MakeGenericMethod().    
1158
1159 2005-09-05  Martin Baulig  <martin@ximian.com>
1160
1161         * Assembly.cs (MonoDebugger_GetMethodToken): Don't take an
1162         `Assembly' argument.
1163
1164 2005-08-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1165
1166         * Assembly.cs: made GetManifestResourceInternal internal. Fixes the
1167         build.
1168
1169 2005-08-05  Gert Driesen <drieseng@users.sourceforge.net>
1170
1171         * Assembly.cs: Added GetType() method in 1.1 to match MS.NET.
1172         * ConstructorInfo.cs: Added GetType() method in 1.1 to match
1173         MS.NET, implemented _ConstructorInfo.
1174         * EventInfo.cs: Added GetType() method in 1.1 to match MS.NET,
1175         implemented _EventInfo.
1176         * FieldInfo.cs: Added GetType() method in 1.1 to match MS.NET,
1177         implemented _FieldInfo.
1178         * MemberInfo.cs: Added GetType() method in 1.1 to match MS.NET,
1179         implemented _MemberInfo.
1180         * MethodBase.cs: Added GetType() method in 1.1 to match MS.NET,
1181         implemented _MethodBase.
1182         * MethodInfo.cs: Added GetType() method in 1.1 to match MS.NET,
1183         implemented _MethodInfo.
1184         * PropertyInfo.cs: Added GetType() method in 1.1 to match MS.NET,
1185         implemented _PropertyInfo.
1186         * TypeAttributes.cs: CustomFormatMask and CustomFormatClass should
1187         only be exposed in 2.0 profile.
1188
1189 2005-07-29  Carlos Alberto Cortez <calberto.cortez@gmail.com>
1190
1191         * CustomAttributeTypedArgument: Return the name of the
1192         enum if the type is an enum in ToString ().
1193         
1194 2005-06-21  Sebastien Pouliot  <sebastien@ximian.com>
1195
1196         * Assembly.cs: Create a copy of the evidences and add an instance of 
1197         PermissionRequestEvidence to it before resolution. This way the PRE
1198         won't be present when asking for evidences later. Removed debugging 
1199         code.
1200
1201 2005-06-13  Michal Moskal <malekith@nemerle.org>
1202         
1203         * MonoGenericClass.cs: Don't use MethodHandle in GetMethod/GetConstructor,
1204         since it now throws on MethodBuilders. Don't use FieldHandle in
1205         GetField (throws on FieldBuilder) - just use the name.
1206
1207 2005-06-15  Sebastien Pouliot  <sebastien@ximian.com>
1208
1209         * Assembly.cs, AssemblyName.cs, ConstructorInfo.cs, EventInfo.cs,
1210         FieldInfo.cs, MemberInfo.cs, MethodBase.cs, MethodInfo.cs, Module.cs,
1211         ParameterInfo.cs, PropertyInfo.cs: Added some missing interfaces and
1212         attributes that were added in 1.1 SP1 or 2.0 beta2.
1213
1214 2005-06-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1215
1216         * Binder.cs: null is ok for a value type. Fixes bug #75241.
1217
1218 2005-06-14  Sebastien Pouliot  <sebastien@ximian.com>
1219
1220         * Assembly.cs: UnprotectedGetName is now virtual to allow for more
1221         initialization in AssemblyBuilder. The [Granted|Refused]PermissionSet
1222         now use the ResolvingPolicyLevel to support the policy 
1223         FullTrustAssemblies during resolution.
1224         * AssemblyName.cs: Return null instead of "new byte [0]" if no public
1225         key is available.
1226
1227 2005-06-09  Kamil Skalski <nazgul@nemerle.org>
1228         * MonoGenericClass.cs: Add overrides of Get{Method,Constructor,Field} 
1229         for obtaining instanciated *Info objects from non-instanciated counterparts
1230
1231
1232 2005-06-09  Zoltan Varga  <vargaz@freemail.hu>
1233
1234         * CustomAttributeData.cs EventInfo.cs Assembly.cs: Updates for net 2.0 beta 2.
1235
1236         * *.cs: Updates for net 2.0 beta 2.
1237
1238 2005-06-07  Zoltan Varga  <vargaz@freemail.hu>
1239
1240         * *.cs: Updates for net 2.0 beta 2.
1241
1242 2005-06-07  Carlos Alberto Cortez <calberto.cortez@gmail.com>
1243
1244         * CustomAttributeData.cs: Implemented.
1245
1246         * CustomAttributeDataNamedArgument.cs: Implemented.
1247
1248         * CustomAttrbuteDataTypedArgument.cs: Implemented.
1249         
1250 2005-06-06  Zoltan Varga  <vargaz@freemail.hu>
1251
1252         * Assembly.cs ExceptionHandlingClause.cs: Fix build.
1253
1254         * ProcessorArchitecture.cs: New file.
1255
1256         * ExceptionHandlingClause.cs: Update after ExceptionHandlingClauseFlags name change.
1257
1258         * *.cs: Updates for net 2.0 beta 2.
1259
1260         * *.cs: Add net 2.0 ComVisibleAttribute.
1261
1262 2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1263
1264         * Assembly.cs: if the assembly is loaded from a byte array, Location
1265         returns "". Fixes bug #74958.
1266
1267 2005-06-03  Carlos Alberto Cortez <calberto.cortez@gmail.com>
1268
1269         * AssemblyName.cs: Changes to support the creation of version
1270         instance from icalls. This change also helps to keep the
1271         AssemblyName tests running fine.
1272         
1273 2005-05-26  Ben Maurer  <bmaurer@ximian.com>
1274
1275         * Binder.cs: Avoid double checked locking and lock on typeof by
1276         doing init of the default binder in the cctor.
1277
1278 2005-05-25  Zoltan Varga  <vargaz@freemail.hu>
1279
1280         * Assembly.cs: Avoid security checks if Assembly.Location is "".
1281
1282 2005-05-20  Zoltan Varga  <vargaz@freemail.hu>
1283
1284         * TypeDelegator.cs: Implement some methods.
1285         
1286         * TypeDelegator.cs: Revert this as it breaks the build.
1287
1288         * TypeDelegator.cs: Implement some methods.
1289
1290 2005-05-19  Satya Sudha K  <ksathyasudha@novell.com>
1291             Raja R Harinath  <rharinath@novell.com>
1292
1293         * Missing.cs (Missing.Value): Initialize.
1294
1295 2005-05-17  Lluis Sanchez Gual  <lluis@novell.com>
1296
1297         * Binder.cs: Use IsInstanceOfType instead of IsAssignableFrom
1298         since GetType() may not return the correct type if the object is
1299         a remoting proxy. This fixes bug #74933.
1300
1301 2005-05-13  Zoltan Varga  <vargaz@freemail.hu>
1302
1303         * MonoField.cs: Applied patch from Opened by Michael Meeks (michael@ximian.com). Improve exception message on binding failures.
1304
1305 2005-05-09  Lluis Sanchez Gual  <lluis@novell.com>
1306
1307         * MonoField.cs: Added a Clone method. This is needed for serialization.
1308
1309 2005-05-07  Ben Maurer  <bmaurer@ximian.com>
1310
1311         * MonoEvent.cs (Get*Method): Handle nonPublic. Fixes #64191.
1312
1313 2005-05-06  Zoltan Varga  <vargaz@freemail.hu>
1314
1315         * Module.cs: Update for beta 2.
1316
1317         * CustomAttributeData.cs MethodBody.cs: Remove CLSCompliant (false) attributes.
1318
1319 2004-05-03  Lluis Sanchez  <lluis@ximian.com>
1320
1321         * Assembly.cs: Don't remove version and culture information from
1322         the name, since it will be used by load_with_partial_name.
1323
1324 2005-04-14  Sebastien Pouliot  <sebastien@ximian.com>
1325
1326         * Assembly.cs: Added some CAS security to avoid returning restricted
1327         information to partially truster callers (e.g. code base). Added new
1328         methods to get the Evidence and AssemblyName so that the security
1329         runtime can bootstrap itself (without calling itself).
1330
1331 2005-04-14  Sebastien Pouliot  <sebastien@ximian.com>
1332
1333         * Assembly.cs: Added missing null check in GetObjectData.
1334
1335 2005-04-04  Sebastien Pouliot  <sebastien@ximian.com>
1336
1337         * AssemblyName.cs: Added a demand for SerializationFormatter on
1338         GetObjectData method.
1339
1340 2005-04-04  Sebastien Pouliot  <sebastien@ximian.com> 
1341  
1342         * AssemblyName.cs: Implemented EscapedCodeBase using the copy of 
1343         System.Uri (System.dll) located in Mono.Security.Uri. Added missing
1344         null check in GetObjectData.
1345         * Module.cs: Added a FileIOPermission for PathDiscovery on 
1346         FullyQualifiedName property (but not on Name property like MS).
1347         Added missing null check in GetObjectData.
1348         * StrongNameKeyPair.cs: Added demands for unmanaged code to all
1349         constructors (as we do not want partially trusted code to create
1350         strongnamed assemblies).
1351
1352 2005-03-30  Zoltan Varga  <vargaz@freemail.hu>
1353
1354         * Binder.cs (check_type): Fix byref support. Fixes #73972.
1355
1356 2005-03-24  Sebastien Pouliot  <sebastien@ximian.com>
1357
1358         * MemberInfo.cs: Add an InheritanceDemand for Unrestricted on class.
1359         * Module.cs: Add a LinkDemand for SerializationFormatter on 
1360         GetObjectData method.
1361
1362 2005-03-16  Sebastien Pouliot  <sebastien@ximian.com>
1363
1364         * Assembly.cs: Implemented EscapedCodeBase using the copy of 
1365         System.Uri (System.dll) located in Mono.Security.Uri. Fix bug #73663.
1366
1367 2005-03-11  Sebastien Pouliot  <sebastien@ximian.com>
1368
1369         * MonoMethod.cs: Promote a LinkDemand (if present) to a full Demand 
1370         (i.e. stack walk) when reflection is being used to invoke a method.
1371
1372 2005-02-24  Carlos Alberto Cortez <calberto.cortez@gmail.com>
1373
1374         * Assembly.cs: LoadFrom: Change signature to support reflection only
1375         methods; ReflectionOnlyLoad, ReflectionOnlyLoadFrom 2.0 methods
1376         implemented; InvalidOperationException's re-thrown by CreateInstance.
1377         Also ReflectionOnly 2.0 property added.
1378
1379         * MonoMethod.cs: InvalidOperationException's are re-thrown when calling 
1380         Invoke method on reflection only assemblies.
1381         
1382 2005-02-22  Raja R Harinath  <rharinath@novell.com>
1383
1384         * FieldInfo.cs (GetFieldOffset): Make 'virtual' rather than
1385         'abstract' so that this class can be derived outside of corlib.
1386
1387 2005-02-16  Miguel de Icaza  <miguel@novell.com>
1388
1389         * MonoEvent.cs: Put new methods here.
1390
1391         * EventInfo.cs: Move the methods GetCustomAttributes, and
1392         IsDefined from EventInfo to MonoEvent.
1393
1394         Remove the methods that were not supposed to be exposed: Name,
1395         ReflectedType, DeclaringType.
1396
1397 2005-02-12  Chris Toshok  <toshok@ximian.com>
1398
1399         * Assembly.cs: Correct the type of MonoDebugger_MakeArrayType.
1400
1401 2005-02-12  Ben Maurer  <bmaurer@ximian.com>
1402
1403         * Binder.cs (SelectProperty): Use -1 as the dummy `I don't know
1404         how many types' value.
1405
1406 2005-02-11  Zoltan Varga  <vargaz@freemail.hu>
1407
1408         * Assembly.cs: Fix warning.
1409
1410 2005-02-10  Martin Baulig  <martin@ximian.com>
1411
1412         * Module.cs (MonoDebugger_ResolveType): New internal method.
1413
1414         * Assembly.cs (MonoDebugger_MakeArrayType): New internal method.
1415         (MonoDebugger_GetTypeToken): New internal method.
1416
1417 2005-02-10  Martin Baulig  <martin@ximian.com>
1418
1419         * Assembly.cs (MonoDebugger_GetMethodIndex): New internal method.
1420
1421 2005-02-10  Marek Safar  <marek.safar@seznam.cz>
1422
1423         * Assembly.cs,
1424         * ConstructorInfo.cs,
1425         * EventInfo.cs,
1426         * FieldInfo.cs,
1427         * MemberInfo.cs,
1428         * MethodBase.cs,
1429         * MethodInfo.cs,
1430         * PropertyInfo.cs: ClassInterfaceType is None.
1431
1432 Thu Feb 3 15:22:55 CET 2005 Paolo Molaro <lupus@ximian.com>
1433
1434         * Module.cs: removed the finalizer and the now unused Close() icall.
1435
1436 2005-01-21  Sebastien Pouliot  <sebastien@ximian.com>
1437
1438         * Assembly.cs: Fixed add for ModuleResolve.
1439
1440 2005-01-19  Zoltan Varga  <vargaz@freemail.hu>
1441
1442         * LocalVariableInfo.cs: Add ToString method.
1443
1444         * ExceptionHandlingClause.cs: Implement this.
1445
1446 2005-01-18  Zoltan Varga  <vargaz@freemail.hu>
1447
1448         * MethodBase.cs MonoMethod.cs: Hopefully fix the build.
1449
1450         * MethodBase.cs MonoMethod.cs: Implement 2.0 GetMethodBody ().
1451
1452 2005-01-03  Martin Baulig  <martin@ximian.com>
1453
1454         * MonoGenericMethod.cs
1455         (MonoGenericMethod.get_reflected_type): Removed.
1456         (MonoGenericMethod.ReflectedType): Make this an icall.
1457         (MonoGenericCMethod.ReflectedType): Likewise.   
1458
1459 2004-12-29  Martin Baulig  <martin@ximian.com>
1460
1461         * MonoGenericMethod.cs: New file.
1462
1463 2004-12-21  Sebastien Pouliot  <sebastien@ximian.com> 
1464
1465         * Assembly.cs: Added private LoadAssemblyPermissions to get the 
1466         declarative security permission sets (minimum, optional and refused)
1467         for the assembly.
1468
1469 2004-12-20  Sebastien Pouliot  <sebastien@ximian.com>
1470
1471         * Assembly.cs: Removed old Demand support (moved in System.Security).
1472
1473 2004-12-16  Zoltan Varga  <vargaz@freemail.hu>
1474
1475         * CustomAttributeData.cs MethodBody.cs: Reenable some 2.0 code now that
1476         the gmcs bugs blocking them are fixed.
1477
1478 2004-12-08  Zoltan Varga  <vargaz@freemail.hu>
1479
1480         * Assembly.cs: Move corlib_internal field to AssemblyBuilder.
1481
1482 2004-12-06  Zoltan Varga  <vargaz@freemail.hu>
1483
1484         * Assembly.cs: Add corlib_internal field.
1485
1486 2004-11-30  Martin Baulig  <martin@ximian.com>
1487
1488         * MonoGenericInst.cs: Renamed to MonoGenericClass.cs and also
1489         renamed the class from `MonoGenericInst' to `MonoGenericClass'.
1490
1491 2004-11-05  Zoltan Varga  <vargaz@freemail.hu>
1492
1493         * AssemblyName.cs (FullName): Omit default values from full name.
1494
1495         * Assembly.cs: Implement GetFiles (bool).
1496
1497         * Binder.cs: Add support for byref types. Fixes #69140.
1498
1499 2004-10-12  Martin Baulig  <martin@ximian.com>
1500
1501         * MonoGenericInst.cs (MonoGenericInst): Call initialize() just
1502         before calling the *_internal() methods.
1503
1504 2004-10-12  Zoltan Varga  <vargaz@freemail.hu>
1505
1506         * MethodBody.cs: Implement this.
1507
1508 2004-10-08  Zoltan Varga  <vargaz@freemail.hu>
1509
1510         * Module.cs: Handle the case when the global type does not exists.
1511
1512 2004-10-03  Zoltan Varga  <vargaz@freemail.hu>
1513
1514         * LocalVariableInfo.cs: Reorganize fields so LocalBuilder can inherit
1515         from this class.
1516
1517 2004-09-28  Zoltan Varga  <vargaz@freemail.hu>
1518
1519         * PropertyInfo.cs (OptionalCustomModifiers): Add [MonoTODO].
1520
1521         * PropertyInfo.cs: Add stub for GetConstantValue ().    
1522
1523         * ParameterInfo.cs (marshalAs): Make this private.
1524
1525         * Module.cs (ModuleHandle): Add [CLSCompliant(false)].
1526
1527         * LocalVariableInfo.cs MethodBody.cs: Disable default constructor.
1528
1529         * ExceptionHandlingClause.cs: Disable default constructor.
1530
1531 2004-09-27  Zoltan Varga  <vargaz@freemail.hu>
1532
1533         * CustomAttributeData.cs CustomAttributeTypedArgument.cs 
1534         CustomAttributeNamedArgument.cs: New files.
1535
1536         * MethodBody.cs LocalVariableInfo.cs ExceptionHandlingClause.cs
1537         ExceptionHandlingClauseFlags.cs: New files.
1538
1539 2004-09-26  Zoltan Varga  <vargaz@freemail.hu>
1540
1541         * FieldInfo.cs: Add support for returning MarshalAsAttribute.
1542
1543         * ParameterInfo.cs: Add marshalAs field, add support for returning
1544         MarshalAsAttribute.
1545
1546 2004-09-25  Zoltan Varga  <vargaz@freemail.hu>
1547
1548         * Module.cs: Add new 2.0 GetMethods and GetFields methods.
1549
1550         * ParameterInfo.cs: Add GetPseudoCustomAttributes () method.
1551
1552 2004-09-24  Zoltan Varga  <vargaz@freemail.hu>
1553
1554         * MonoField.cs: Add GetFieldOffset.
1555
1556         * ObfuscationAttribute.cs: Add ApplyToMembers.
1557
1558         * Assembly.cs: Add stub for ReflectionOnlyLoadFrom.
1559         
1560         * Assembly.cs (LoadWithPartialName): Add [ComVisible] attribute.
1561
1562         * MonoMethod.cs FieldInfo.cs: Add GetPseudoCustomAttributes () method.
1563
1564         * AssemblyNameFlags.cs: Add LongevityUnspecified.
1565
1566 2004-09-23  Zoltan Varga  <vargaz@freemail.hu>
1567
1568         * Module.cs: Remove [MonoTODO] from ResolveMember.
1569
1570         * MemberInfo.cs: Add 'Module' property.
1571
1572         * AssemblyFlagsAttribute.cs: Add 2.0 stuff.
1573
1574         * Assembly.cs: Add stubs for ReflectionOnlyLoad methods. Add [Obsolete]
1575         to LoadWithPartialName on 2.0.
1576
1577         * AssemblyNameFlags.cs: Add new 2.0 members.
1578
1579         * FieldInfo.cs MonoField.cs PropertyInfo.cs ParameterInfo.cs MonoProperty.cs: Add stubs for Optinal/RequiredCustomModifiers.
1580
1581         * ObfuscationAttribute.cs ObfuscateAssemblyAttribute.cs: New files.
1582
1583         * EventInfo.cs: Fix 2.0 build.
1584
1585         * MonoEvent.cs (MonoEventInfo): Add 'other_methods' field.
1586
1587         * EventInfo.cs MonoEvent.cs: Add NET 2.0 GetOtherMethods method.
1588
1589 2004-09-22  Zoltan Varga  <vargaz@freemail.hu>
1590
1591         * Module.cs: Implement net 2.0 ResolveXXX methods.
1592
1593         * Module.cs (resolve_token_exception): Fix type of exception thrown.
1594
1595 2004-09-21  Martin Baulig  <martin@ximian.com>
1596
1597         * Assembly.cs (MonoDebugger_CheckRuntimeVersion): New internal method.
1598
1599 2004-09-20  Zoltan Varga  <vargaz@freemail.hu>
1600
1601         * Assembly.cs: Implement 2.0 reflection properties.
1602
1603         * Module.cs: Implement 2.0 reflection properties. Add 'token' field.
1604
1605 2004-09-19  Zoltan Varga  <vargaz@freemail.hu>
1606
1607         * PortableExecutableKind.cs ImageFileMachine.cs: Make this internal
1608         under 1.0.
1609
1610         * MemberInfo.cs ParameterInfo.cs: Add MetadataToken property.
1611
1612         * Module.cs: Add ModuleHandle property and new icalls.
1613
1614 2004-09-18  Zoltan Varga  <vargaz@freemail.hu>
1615
1616         * Module.cs: Add net 2.0 Mvid property.
1617
1618 2004-08-30  Sebastien Pouliot  <sebastien@ximian.com>
1619
1620         * Assembly.cs: Added internal Demand(PermissionSet) for CAS.
1621
1622 2004-08-30  Zoltan Varga  <vargaz@freemail.hu>
1623
1624         * MethodBase.cs (GetMethodFromHandle): Avoid passing a valuetype to
1625         icalls.
1626
1627 2004-08-29  Zoltan Varga  <vargaz@freemail.hu>
1628
1629         * MethodBase.cs (GetMethodFromHandle): Implement.
1630
1631 2004-08-13  Marek Safar  <marek.safar@seznam.cz>
1632
1633         * Assembly.cs: Made _minimum, _optional, _refuse fields internal.
1634         To be reusable by AssemblyBuilder.
1635
1636 2004-08-09  Sebastien Pouliot  <sebastien@ximian.com>
1637
1638         * Assembly.cs: Fixed some exceptions in NET_1_1 and added some 2.0
1639         properties (required for compiling the new unit tests).
1640         * PortableExecutableKind.cs: New. Flags for NET_2_0.
1641         * ImageFileMachine.cs: New. (Rather limited) enum for NET_2_0.
1642
1643 2004-08-08  Sebastien Pouliot  <sebastien@ximian.com>
1644
1645         * Assembly.cs: Get default evidences when no evidences have been 
1646         supplied. Added internal methods for CAS.
1647         * AssemblyName.cs: New constructor for NET_2_0.
1648
1649 2004-08-05  Sebastien Pouliot  <sebastien@ximian.com>
1650
1651         * Assembly.cs: Added new fields for CAS to match the runtime (v23).
1652
1653 2004-07-29  Martin Baulig  <martin@ximian.com>
1654
1655         * Module.cs (Mono_GetGuid): Make this static.
1656
1657 Sat Jul 10 15:48:34 CEST 2004 Paolo Molaro <lupus@ximian.com>
1658
1659         * Module.cs: return just name in ToString (bug #61287).
1660
1661 2004-07-03  Zoltan Varga  <vargaz@freemail.hu>
1662
1663         * Module.cs: Initialize FilterTypeName[IgnoreCase]. Fixes #61048.
1664
1665 2004-06-17  Gert Driesen <drieseng@users.sourceforge.net>
1666
1667         * Pointer.cs: remove serializable attribute to match MS.NET
1668
1669 2004-06-17  Gert Driesen <drieseng@users.sourceforge.net>
1670         
1671         * ParameterModifier.cs: marked serializable, renamed field to match
1672         MS.NET, throw ArgumentException when parameter count is less than or
1673         equal to zero
1674
1675 2004-06-15  Gert Driesen <drieseng@users.sourceforge.net>
1676
1677         * AssemblyName.cs: added TODO for serialization
1678         * Pointer.cs: fixed Box method to return object instead of 
1679         Pointer
1680
1681 2004-06-15  Sebastien Pouliot  <sebastien@ximian.com>
1682
1683         * MemberInfo.cs: Changed constructor from internal to protected.
1684
1685 2004-06-11  Martin Baulig  <martin@ximian.com>
1686
1687         * FieldInfo.cs (Mono_GetGenericFieldDefinition): New method for NET_2_0.
1688
1689 2004-06-11  Lluis Sanchez  <lluis@ximian.com>
1690
1691         * StrongNameKeyPair.cs: Catch exception when getting PublicKey to match 
1692           MS implementation. Generate the RSA in the constructors.
1693
1694 2004-06-10  Lluis Sanchez  <lluis@ximian.com>
1695
1696         * AssemblyName.cs: Added missing fields to serialization methods.
1697         * StrongNameKeyPair.cs: Made it compatible with MS serialization.
1698
1699 2004-06-08  Jacson Harper  <jackson@ximian.com>
1700
1701         * AssemblyName.cs (GetAssemblyName): Send a fullpath to the
1702         runtime. This way the codebase is set properly. The codebase is
1703         using g_filename_to_uri which expects a full path.
1704         
1705 2004-06-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1706
1707         * Binder.cs: don't crash when we have a 'null' argument Type array.
1708         Allow it for non-value types. Fixed for both, methods and properties.
1709         Closes bug #58846.
1710
1711 2004-06-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1712
1713         * Binder.cs: default score must be lower than fail_score or we'll get
1714         an ambiguous match when no indexers given and one single match is found.
1715
1716 2004-06-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1717
1718         * Binder.cs: removed ^Ms. In case of several properties matching, try
1719         to disambiguate based on the indexer types provider and the conversions
1720         from those into the ones of the property.
1721
1722 2004-05-31  Gert Driesen <drieseng@users.sourceforge.net>
1723
1724         * Assembly.cs: added missing ComVisible attribute on
1725         ImageRuntimeVersion property
1726         * ConstructorInfo.cs: added missing attributes on Invoke
1727         * EventInfo.cs: added missing attributes
1728         * FieldInfo.cs: added missing attributes
1729         * MethodBase.cs: added missing attributes
1730         * PropertyInfo.cs: added missing attributes
1731
1732 2004-05-22  Cesar Lopez Nataren  <cesar@ciencias.unam.mx>
1733
1734         * FieldInfo.cs: changed default constructor from internal to protected, so classes
1735         that inherit from it can get build. 
1736
1737 2004-05-18  Gert Driesen (drieseng@users.sourceforge.net)
1738
1739         * MonoProperty.cs: return correct MethodInfo for 
1740         property with only a get or set method. Fixes
1741         bug #58661.
1742
1743 2004-05-18  Sebastien Pouliot  <sebastien@ximian.com>
1744
1745         * Assembly.cs: Return an empty Evidence collection to avoid 
1746         NullReferenceException from calling code (as this is never
1747         null with MS implementation). See bugzilla #53548.
1748
1749 2004-05-14  Zoltan Varga  <vargaz@freemail.hu>
1750
1751         * Assembly.cs: Add stub for LoadFrom.
1752
1753         * Assembly.cs: Fix build.
1754
1755 2004-05-13  Zoltan Varga  <vargaz@freemail.hu>
1756
1757         * Assembly.cs: Add ModuleResolve event.
1758
1759         * Module.cs (Mono_GetGuid): Make this internal.
1760
1761         * FieldInfo.cs: Add stubs for {Get,Set}ValueDirect.
1762
1763 2004-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1764
1765         * Binder.cs: check for ambiguous matches in SelectMethod and
1766         SelectProperty. Fixes bug #58381.
1767
1768 2004-05-06  Jackson Harper <jackson@ximian.com>
1769
1770         * Assembly.cs: remove TODO, this is done.
1771         
1772 2004-05-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1773
1774         * Assembly.cs: ToString () returns the same as GetName ().ToString ().
1775         Fixes bug #58104.
1776
1777 2004-05-03  Jackson Harper  <jackson@ximian.com>
1778
1779         * Assembly.cs: Implement LoadWithPartialName. The bulk of this
1780         method is done in the runtime.
1781         
1782 2004-04-29  Lluis Sanchez Gual  <lluis@ximian.com>
1783
1784         * MonoProperty.cs: Property.GetGetMethod() does not return the method if it
1785         is private (it did until now because of a bug). Make sure it works as it 
1786         worked before the fix.
1787         
1788 2004-04-27  Lluis Sanchez Gual  <lluis@ximian.com>
1789
1790         * ICustomAttributeProvider.cs, IReflect.cs, MemberInfo.cs, AssemblyName.cs: 
1791           Removed completed     TODOs.
1792         * MonoProperty.cs: In GetAccessors(), GetGetMethod() and GetSetMethod(),
1793           do not return private methods if nonPublic == false.
1794         * ReflectionTypeLoadException.cs: Implemented serialization support.
1795
1796 2004-04-26  Jackson Harper  <jackson@ximian.com>
1797
1798         * Assembly.cs: Add icall to determine if an assembly has been
1799         loaded from the GAC.
1800
1801 2004-04-23  Atsushi Enomoto  <atsushi@ximian.com>
1802
1803         * MethodBase.cs, MonoMethod.cs, TypeDelegator.cs :
1804           The fix should be easier ;)
1805
1806 2004-04-23  Atsushi Enomoto  <atsushi@ximian.com>
1807
1808         * MethodBase.cs, MonoMethod.cs, TypeDelegator.cs :
1809           NET_2_0 related build fix.
1810
1811 2004-04-19  Lluis Sanchez Gual  <lluis@ximian.com>
1812
1813         * Assembly.cs: Removed TODO for CreateQualifiedName.
1814         * AssemblyName.cs: Fixed serialization code.
1815         * AssemblyNameProxy.cs: Implemented.
1816         * Module.cs: Implemented GetMethod() methods, FindTypes() and GetObjectData.
1817
1818 2004-04-07  Martin Baulig  <martin@ximian.com>
1819
1820         * MonoGenericInst.cs (MonoGenericParam): Removed.
1821
1822 2004-04-07  Martin Baulig  <martin@ximian.com>
1823
1824         * MethodBase.cs
1825         (MethodBase.GetGenericParameters): Renamed to GetGenericArguments().
1826
1827         * MonoGenericInst.cs (MonoGenericInst.DeclaringType): Removed.
1828         (MonoGenericInst.GetNestedTypes): Just call
1829         `generic_type.GetNestedTypes (bf)' here.
1830
1831         * MonoMethod.cs (MonoMethod.ToString): If we're a generic method,
1832         include the type arguments.
1833
1834 2004-04-06  Sebastien Pouliot  <sebastien@ximian.com>
1835
1836         * StrongNameKeyPair.cs: Added support for ECMA "key". Now returns a
1837         correct StrongName instance when the ECMA "key" is used.
1838
1839 2004-04-02  Martin Baulig  <martin@ximian.com>
1840
1841         * MonoGenericInst.cs (MonoGenericInst.DeclaringType): Override.
1842
1843 2004-04-01  Martin Baulig  <martin@ximian.com>
1844
1845         * MonoGenericInst.cs (MonoGenericParam.IsValueTypeImpl): Override
1846         this and always return false.
1847
1848 2004-04-01  Martin Baulig  <martin@ximian.com>
1849
1850         * MonoGenericInst.cs (MonoGenericParam.IsSubclassOf): Override this.    
1851
1852 2004-03-30  Martin Baulig  <martin@ximian.com>
1853
1854         * MonoGenericInst.cs
1855         (MonoGenericParam): Added `bool has_ctor_constraint' field.
1856         (MonoGenericParam.SetConstraints): Added `bool
1857         has_ctor_constraint' argument.  
1858
1859 2004-03-29  Martin Baulig  <martin@ximian.com>
1860
1861         * MethodBase.cs (MethodBase.Mono_IsInflatedMethod): New public
1862         virtual property.
1863         (MethodBase.HasGenericParameters): Use the "official" behavior
1864         here, ie. return false if we're not a generic method.
1865
1866 2004-03-29  Martin Baulig  <martin@ximian.com>
1867
1868         * MethodBase.cs: Moved the generics stuff here, made it virtual
1869         where neccessary and use the correct API.
1870
1871 2004-03-24  Sebastien Pouliot  <sebastien@ximian.com>
1872
1873         * StrongNameKeyPair.cs: Added an internal method to return a 
1874         StrongName object (for AssemblyBuilder). Simplified implementation 
1875         using Mono.Security.Cryptography.CryptoConvert class.
1876
1877 2004-03-24  Zoltan Varga  <vargaz@freemail.hu>
1878
1879         * AssemblyFileVersionAttribute.cs (.ctor): Add argument checking.
1880
1881 2004-03-23  Martin Baulig  <martin@ximian.com>
1882
1883         * MonoGenericInst.cs: Added support for events.
1884
1885 2004-03-23  Martin Baulig  <martin@ximian.com>
1886
1887         * MonoMethod.cs (MonoMethod.ToString): Don't include the namespace
1888         if it's the empty string.
1889
1890 2004-03-10  Martin Baulig  <martin@ximian.com>
1891
1892         * MethodBase.cs (MethodBase): Implemented
1893         GetGenericMethodDefinition() and HasGenericParameters.
1894
1895 2004-03-09  Martin Baulig  <martin@ximian.com>
1896
1897         * MonoEvent.cs (MonoEventInfo): Replaced `parent' with
1898         `declaring_type' and `reflected_type'.
1899         (MonoEvent): Distinguish between declaring and reflected type.
1900
1901 2004-02-25  Martin Baulig  <martin@ximian.com>
1902
1903         * MonoGenericInst.cs
1904         (MonoGenericInst.GetNestedTypes): Override this.
1905
1906 2004-02-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1907
1908         * Binder.cs:
1909         (SelectProperty): check the return Type if provided.
1910
1911 2004-02-17  Martin Baulig  <martin@ximian.com>
1912
1913         * MonoGenericInst.cs (MonoGenericInst.GetProperties): Added
1914         support for properties.
1915
1916 2004-02-17  Martin Baulig  <martin@ximian.com>
1917
1918         * MonoGenericInst.cs (MonoGenericInst.GetMethods): Walk up the
1919         class hierarchy and return members from the parent classes.
1920         (GetConstructors, GetFields): Likewise.
1921
1922 2004-02-17  Martin Baulig  <martin@ximian.com>
1923
1924         * MonoGenericInst.cs (MonoGenericInst.initialize): Don't inflate
1925         all the members here; we only do this for members of the current
1926         class and only when they're actually queried for.
1927
1928 2004-02-12  Martin Baulig  <martin@ximian.com>
1929
1930         * MonoGenericInst.cs (MonoInflatedField): Removed.
1931
1932         * MonoGenericInst.cs (MonoInflatedMethod, MonoInflatedCtor): Removed.
1933
1934 2004-02-08  Martin Baulig  <martin@ximian.com>
1935
1936         * MonoGenericInst.cs (MonoGenericInst.inflate): Pass recursive
1937         invocations the `reflected' type as `reflected', not `this'.
1938         (MonoInflatedMethod, MonoInflatedCtor): Reflect latest runtime changes.
1939
1940 2004-02-08  Martin Baulig  <martin@ximian.com>
1941
1942         * MonoGenericInst.cs (MonoGenericInst.GetParentType): New interncall.
1943         (MonoGenericInst.GetInterfaces_internal): New interncall.
1944         (MonoGenericInst): Reflect latest API changes; use GetParentType()
1945         and GetInterfaces_internal() instead of the fields.     
1946
1947 2004-02-06  Martin Baulig  <martin@ximian.com>
1948
1949         * MonoGenericInst.cs (MonoGenericInst.DeclaringType): Override this.
1950
1951 2004-02-03  Martin Baulig  <martin@ximian.com>
1952
1953         * MonoGenericInst.cs (MonoGenericInst.GetInterfaces): Override this.
1954
1955 2004-01-25  Martin Baulig  <martin@ximian.com>
1956
1957         * MonoGenericInst.cs: Honor BindingFlags.DeclaredOnly.
1958
1959 2004-01-19  Zoltan Varga  <vargaz@freemail.hu>
1960
1961         * Assembly.cs (GetManifestResourceStream): Make the IntPtrStream keep
1962         a reference on the Module object which contains the resource.
1963
1964         * Module.cs: Decrease the image reference count when the Module is
1965         garbage collected.
1966
1967 2004-01-16  Martin Baulig  <martin@ximian.com>
1968
1969         * Assembly.cs: Make the `MonoDebugger_' methods static.
1970
1971 2004-01-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1972
1973         * MonoProperty.cs: changed get_property_info so that it only gets the
1974         values needed. Reduces the allocations needed.
1975
1976 2004-01-15  Martin Baulig  <martin@ximian.com>
1977
1978         * Assembly.cs: Make the `MonoDebugger_' methods internal.
1979
1980 2004-01-04  Nick Drochak <ndrochak@gol.com>
1981
1982         * Assembly.cs: Removed unused variable in catch block.Eliminates a build
1983         warning.
1984
1985 2003-12-29 Ben Maurer  <bmaurer@users.sourceforge.net>
1986
1987         * MethodBase.cs: Internal method to get param count (this
1988         way we can get the info for the ilgen without creating
1989         an array, if we override the method).
1990
1991 2003-12-18  Zoltan Varga  <vargaz@freemail.hu>
1992
1993         * Assembly.cs: Implement LoadFrom.
1994
1995 2003-12-17  Zoltan Varga  <vargaz@freemail.hu>
1996
1997         * Assembly.cs: Add stubs for LoadFile.
1998
1999 2003-12-16  Zoltan Varga  <vargaz@freemail.hu>
2000
2001         * Assembly.cs (GetManifestResourceStream): Only load non-embedded
2002         resources from files.
2003
2004 2003-12-15  Zoltan Varga  <vargaz@freemail.hu>
2005
2006         * MonoField.cs (SetValue): Throw an exception if the value cannot be
2007         converted to the field's type. Fixes #52177.
2008
2009 2003-12-11  Lluis Sanchez Gual <lluis@ximian.com>
2010         
2011         * AmbiguousMatchException.cs: Added serialization constructor.
2012         
2013 2003-12-08  Martin Baulig  <martin@ximian.com>
2014
2015         * MonoGenericInst.cs (MonoGenericParam): New internal class;
2016         derives from MonoType.  
2017
2018 2003-12-08  Patrik Torstensson <p@rxc.se>
2019
2020         * Binder.cs: Added internal helpers to get derived level and select the 
2021         most derived methodbase (used in GetMethodImpl)
2022
2023 2003-11-25  Zoltan Varga  <vargaz@freemail.hu>
2024
2025         * Assembly.cs (LoadWithPartialName): Return null instead of throwing
2026         an exception to match MS behavior.
2027
2028 2003-11-24  Zoltan Varga  <vargaz@freemail.hu>
2029
2030         * MonoMethod.cs: Add missing constructor.
2031
2032 2003-11-21  Zoltan Varga  <vargaz@freemail.hu>
2033
2034         * MethodBase.cs (Invoke): Make this virtual under NET 1.2.
2035
2036 2003-11-16  Martin Baulig  <martin@ximian.com>
2037
2038         * MonoGenericInst.cs (MonoGenericInst.inflate): Call
2039         `parent.inflate (parent,...)' instead of
2040         `parent.inflate (reflected,...)'.
2041
2042 2003-11-16  Zoltan Varga  <vargaz@freemail.hu>
2043
2044         * Assembly.cs (InternalGetAssemblyName): New icall.
2045
2046         * AssemblyName.cs (GetAssemblyName): Implement this without loading
2047         the assembly in question. Fixes #51035.
2048
2049 2003-11-14  Martin Baulig  <martin@ximian.com>
2050
2051         * MonoGenericInst.cs (MonoGenericInst): Added
2052         `MonoGenericInst[] interfaces' field.  This is only used for
2053         interface types.
2054         (MonoGenericInst.inflate): If we're an interface type, add the
2055         methods from all interfaces we inherit.
2056
2057 2003-11-14  Zoltan Varga  <vargaz@freemail.hu>
2058
2059         * AssemblyNameFlags.cs MethodAttributes.cs: Add new enumerated values 
2060         from NET 1.1.
2061         
2062         * *.cs: Add missing attributes.
2063
2064 2003-11-11  Todd Berman  <tberman@gentoo.org>
2065
2066         * AssemblyName.cs (FullName): Fixed to include a proper PublicKeyToken.
2067
2068 2003-11-11  Zoltan Varga  <vargaz@freemail.hu>
2069
2070         * MonoMethod.cs: Implement CallingConvention member.
2071
2072 2003-11-10  Zoltan Varga  <vargaz@freemail.hu>
2073
2074         * Assembly.cs (InternalGetType): Add a 'module' argument so this
2075         method can be used from Module as well.
2076
2077         * Module.cs (GetType): Implement.
2078
2079         * Module.cs (GetTypes): Implement.
2080
2081         * Module.cs: Remove some [MonoTODO] attributes from implemented methods.
2082 2003-11-08  Martin Baulig  <martin@ximian.com>
2083
2084         * MonoGenericInst.cs (MonoInflatedMethod, MonoInflatedCtor): Added
2085         a private `IntPtr ginst' field.
2086         (MonoGenericInst.IsValueTypeImpl, inflate): Allow interfaces.
2087
2088 2003-11-02  Martin Baulig  <martin@ximian.com>
2089
2090         * MonoGenericInst.cs (MonoGenericInst.initialize): Include members
2091         from our parent classes in the `methods', `ctors' and `fields'
2092         arrays.  When inflating them, reflection now sets their
2093         `declaring_type' and `reflected_type' fields.
2094         (MonoInflatedMethod, MonoInflatedCtor): Added
2095         `MonoGenericInst declaring_type' and `MonoGenericInst reflected_type'
2096         fields and override the `DeclaringType' and `ReflectedType' properties.
2097
2098 2003-11-02  Martin Baulig  <martin@ximian.com>
2099
2100         * MonoGenericInst.cs (MonoGenericInst.IsValueTypeImpl): Override this.
2101
2102 2003-10-31  Martin Baulig  <martin@ximian.com>
2103
2104         * MonoGenericInst.cs (MonoInflatedField): New internal class.
2105         (MonoGenericInst.GetFields): Override this method and inflate
2106         the fields.
2107
2108         * MonoField.cs: Don't make this class sealed.
2109
2110 2003-10-30  Martin Baulig  <martin@ximian.com>
2111
2112         * MonoGenericInst.cs (MonoInflatedMethod, MonoInflatedCtor): New
2113         internal classes.
2114
2115 2003-10-25  Martin Baulig  <martin@ximian.com>
2116
2117         * MonoGenericInst.cs: New internal class.
2118
2119 2003-10-18  Martin Baulig  <martin@ximian.com>
2120
2121         * MethodInfo.cs (MethodInfo.GetGenericArguments): Make this method
2122         abstract; use an interncall in MonoMethod and a custom
2123         implementation in MethodBuilder.        
2124
2125 2003-10-17  Pedro Martinez Julia  <yoros@wanadoo.es>
2126
2127         * MonoEvent.cs: implement ToString method as in MS.NET.
2128
2129         * MonoMethod.cs: fix some differences between mono and MS.NET
2130         implementation of ToString.
2131
2132 2003-10-17  Zoltan Varga  <vargaz@freemail.hu>
2133
2134         * AssemblyName.cs: Fix Version property when some version fields are
2135         undefined.
2136
2137 2003-10-17  Martin Baulig  <martin@ximian.com>
2138
2139         * MethodInfo.cs (MethodInfo.GetGenericArguments): New method.
2140         (MethodInfo.BindGenericParameters): New method.
2141
2142 2003-10-16  Martin Baulig  <martin@ximian.com>
2143
2144         * MethodInfo.cs (MethodInfo.IsGenericMethodDefinition): New
2145         property.       
2146
2147 2003-08-08  Lluis Sanchez Gual  <lluis@ximian.com>
2148
2149         * ParameterInfo.cs: Modified constructor of ParameterInfo for
2150           the return type of a method. Since parameter positions are
2151           zero-based, the position of the return type must be is -1.
2152
2153 2003-08-06  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2154
2155         * TargetInvocationException.cs: Fixed signature
2156
2157 2003-07-24  Miguel de Icaza  <miguel@ximian.com>
2158
2159         * TypeDelegator.cs: Added generics stubs.
2160
2161 2003-07-21  Lluis Sanchez Gual  <lluis@ximian.com>
2162
2163         * ParameterInfo.cs: Position is zero-based in ParameterInfo.
2164           Set the right position value when getting from ParameterBuilder.
2165
2166 Thu Jul 17 17:26:59 CEST 2003 Paolo Molaro <lupus@ximian.com>
2167
2168         * FieldInfo.cs, MonoField.cs: cleanups. Cache some info and use
2169         finer-grained icalls. Requires a matching runtime.
2170
2171 2003-07-11  Zoltan Varga  <vargaz@freemail.hu>
2172
2173         * AssemblyFlagsAttribute.cs: Added new constructor from NET 1.1.
2174
2175         * AssemblyFlagsAttribute.cs: Added new property from NET 1.1.
2176
2177 2003-07-10  Zoltan Varga  <vargaz@freemail.hu>
2178
2179         * Assembly.cs: Implemented ImageRuntimeVersion property from NET 1.1.
2180
2181 Mon Jun 30 19:12:08 CEST 2003 Paolo Molaro <lupus@ximian.com>
2182
2183         * Pointer.cs: implemented.
2184
2185 2003-06-15  Zoltan Varga  <vargaz@freemail.hu>
2186
2187         * EventInfo.cs: Implement IsSpecialName.
2188
2189 2003-06-10  Zoltan Varga  <vargaz@freemail.hu>
2190
2191         * Module.cs (Mono_GetGuid): New method to return the GUID of the
2192         module.
2193
2194 2003-05-21  Zoltan Varga  <vargaz@freemail.hu>
2195
2196         * Module.cs: Implement GetField and its friends.
2197
2198 2003-05-20  Zoltan Varga  <vargaz@freemail.hu>
2199
2200         * Assembly.cs (GetManifestResourceStream): Moved handling of 
2201         linked resources into managed code using the newly implemented
2202         GetManifestResourceInfo () method.
2203
2204 2003-05-19  Zoltan Varga  <vargaz@freemail.hu>
2205
2206         * Module.cs: Implemented IsResource.
2207
2208         * Assembly.cs: Implemented GetManifestResourceInfo, GetModules,
2209         GetModule, GetLoadedModules methods.
2210         * Assembly.cs (GetManifestResourceStream): Added support for 
2211         resources in extern assemblies.
2212
2213 2003-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2214
2215         * Assembly.cs: fixed bug #42833.
2216
2217 2003-05-11  Miguel de Icaza  <miguel@ximian.com>
2218
2219         * Binder.cs (ChangeType): Very simplistic change.  Am not sure if
2220         it is correct, but it makes RemotingCorba move along a bit more
2221         (Remoting.Corba invokes Binder.ConvertArgs, which calls
2222         Binder.ChangeType with an Attribute [] to Object []).
2223
2224 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2225
2226         * Binder.cs:
2227         (check_type): fixed bug #41655.
2228
2229 2003-05-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2230
2231         * Assembly.cs: implemented GetSatelliteAssembly.
2232
2233 Fri Apr 11 13:06:10 CEST 2003 Paolo Molaro <lupus@ximian.com>
2234
2235         * Assembly.cs: added GetNamespaces() icall.
2236
2237 2003-03-17  Zoltan Varga  <vargaz@freemail.hu>
2238
2239         * FieldInfo.cs (GetFieldFromHandle): Implemented.
2240
2241 2003-03-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2242
2243         * Assembly.cs: added missing stuff. Only ModuleResolve event is left
2244         out to avoid changing MonoReflectionAssembly by now.
2245         * ModuleResolveEventHandler.cs: delegate.
2246
2247 2003-02-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2248
2249         * TargetInvocationException.cs: added serialization ctor.
2250
2251 2003-02-18  Martin Baulig  <martin@ximian.com>
2252
2253         * Assembly.cs (MonoDebugger_GetMethodToken): New method to get a
2254         method's metadata token.
2255
2256 2003-02-04  Sebastien Pouliot  <spouliot@videotron.ca>
2257
2258         * Module.cs: Corrected indentation for class.
2259
2260 2003-02-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2261
2262         * Binder.cs:
2263         (check_type): return true when the target type is object and the source
2264         is a value type.
2265
2266 2003-02-03 Patrik Torstensson
2267
2268         * Binder.cs: minimize locking time in DefaultBinder.
2269
2270 2003-02-01  Sebastien Pouliot  <spouliot@videotron.ca>
2271
2272         * Module.cs: Oups - not implemented. Added MonoTODO to most methods
2273         so it's real status get reflected correctly on the web site.
2274
2275 2003-01-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2276
2277         * MonoMethod.cs: implemented GetBaseDefinition ().
2278
2279 2003-01-28  Patrik Torstensson
2280         * MonoMethod.cs: Added support for serialization for MonoMethod and MonoCMethod
2281         * ReflectionSerializationHolder.cs: Support class for serialization
2282
2283 2003-01-17  Zoltan Varga  <vargaz@freemail.hu>
2284
2285         * ParameterInfo.cs: modified constructor so it allows the 
2286         ParameterBuilder to be null and add a 'position' argument which will
2287         be used when pb is null.
2288
2289 2003-01-16  Lluis Sanchez Gual <lsg@ctv.es>
2290
2291         * Assembly.cs: added serialization support.
2292
2293 Sat Jan 4 18:26:41 CET 2003 Paolo Molaro <lupus@ximian.com>
2294
2295         * MonoMethod.cs: propagate exceptions from the internal invoke
2296         code that need to be propagated.
2297
2298 Sat Jan 4 18:04:07 CET 2003 Paolo Molaro <lupus@ximian.com>
2299
2300         * Binder.cs: throw an exception if the number of arguments 
2301         when invoking a method is incorrect.
2302
2303 Thu Jan 2 19:04:58 CET 2003 Paolo Molaro <lupus@ximian.com>
2304
2305         * Binder.cs: In SelectMethod() look for an exact match first.
2306
2307 2003-01-01  Rachel Hestilow <hestilow@ximian.com>
2308
2309         * MonoField.cs (SetValue): Fix logic typo. Check that obj is
2310         non-null only for the non-static case.
2311
2312 2002-12-30  Sebastien Pouliot <spouliot@videotron.ca>
2313
2314         * AssemblyName.cs: Fixed null cultureinfo in FullName (as reported by 
2315         Zoltan).
2316
2317 2002-12-23  Sebastien Pouliot <spouliot@videotron.ca>
2318
2319         * AssemblyName.cs: GetPublicKey now return an empty array (not null)
2320         when an assembly isn't signed with a StrongName (to match MS 
2321         implementation) and null when no assembly is referenced. Also removed 
2322         commented code (no bug reported so it was probably not used).
2323
2324 Thu Dec 19 16:43:19 CET 2002 Paolo Molaro <lupus@ximian.com>
2325
2326         * MonoMethod.cs, ParameterInfo.cs: return a custom attribute
2327         provider for the return type of a method.
2328
2329 2002-12-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2330
2331         * AssemblyName.cs: little fix in FullName.
2332
2333 2002-12-07  Sebastien Pouliot <spouliot@videotron.ca>
2334
2335         * AssemblyName.cs: Added missing methods/interfaces. Fixed some
2336         code to match the MS Framework.
2337         * StrongNameKeyPair.cs: Completed the "visible" implementation.
2338         There must be some internal methods to allow signing with the key.
2339
2340 2002-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2341
2342         * EventInfo.cs: implemented (Add|Remove)EventHandler.
2343
2344 Mon Nov 18 17:52:56 CET 2002 Paolo Molaro <lupus@ximian.com>
2345
2346         * Assembly.cs: implemented GetManifestResourceStream (Type type,
2347         * String name).
2348
2349 2002-11-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2350
2351         * Assembly.cs: changed name of GetType (string, bool, bool) to
2352         InternalGetType.
2353
2354 2002-10-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2355
2356         * TargetInvocationException.cs: modified default message.
2357
2358 2002-10-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2359
2360         * MonoProperty.cs:
2361         * PropertyInfo.cs: fixed bug #31535.
2362
2363 2002-09-27  Martin Baulig  <martin@gnome.org>
2364
2365         * Assembly.cs (Assembly.GetReferencedAssemblies): Implemented.
2366
2367 2002-09-24  Martin Baulig  <martin@gnome.org>
2368
2369         * Assembly.cs (MonoDebugger_GetType): New method to get a Type
2370         from its metadata token.  This should only be used by the debugger.
2371
2372 2002-09-21  Martin Baulig  <martin@gnome.org>
2373
2374         * Assembly.cs (MonoDebugger_GetLocalTypeFromSignature): New method to
2375         get the type of a local variable from its signature.  This should only
2376         be used by the debugger.
2377
2378 2002-09-20  Martin Baulig  <martin@gnome.org>
2379
2380         * Assembly.cs (MonoDebugger_GetMethod): New method to get a MethodBase
2381         from its metadata token.  This should only be used by the debugger.
2382
2383 Wed Sep 11 12:50:54 CEST 2002 Paolo Molaro <lupus@ximian.com>
2384
2385         * Binder.cs: more default binder implementation.
2386
2387         * FieldInfo.cs, MonoField.cs: fixed SetValue () implementation.
2388         * MonoMethod.cs: use the binder in the Invoke () implementation.
2389         Implemented custom attributes methods and ToString for constructors.
2390
2391 Thu Sep 5 20:36:27 CEST 2002 Paolo Molaro <lupus@ximian.com>
2392
2393         * Binder.cs: finished the Binder class and implemented the default
2394         binder.
2395
2396 2002-09-03  Martin Baulig  <martin@gnome.org>
2397
2398         * Assembly.cs (Assembly.Location): Implemented.
2399
2400 2002-08-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2401
2402         * MonoField.cs:
2403         (GetValue): allow obj to be null (used for static fields).
2404
2405 2002-08-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2406
2407         * MonoField.cs: GetValue renamed to GetValueInternal. Added check for
2408         null.
2409
2410 Wed Aug 21 13:03:25 CEST 2002 Paolo Molaro <lupus@ximian.com>
2411
2412         * Assembly.cs: GetEntryAssembly patch by Tomi Pakarinen 
2413         <tomi.pakarinen@welho.com>.
2414
2415 2002-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2416
2417         * Assembly.cs: FullName now returns a proper string instead of
2418         something like 'file://...'.
2419
2420         * AssemblyName.cs: added missing ToString method.
2421
2422 2002-08-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2423
2424         * FieldInfo.cs: implemented SetValue.
2425
2426 Wed Aug 14 17:37:30 CEST 2002 Paolo Molaro <lupus@ximian.com>
2427
2428         * MonoEvent.cs, MonoMethod.cs: implemented ReflectedType.
2429
2430 2002-08-14  Dick Porter  <dick@ximian.com>
2431
2432         * Assembly.cs: Stub out GetSatelliteAssembly
2433
2434 2002-08-12  Tim Coleman <tim@timcoleman.com>
2435         * MonoProperty.cs:
2436                 Allow multiple parameters for GetValue ()
2437
2438 Thu Aug 8 13:05:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
2439
2440         * Assembly.cs: implemented GetFile() and GetFiles().
2441
2442 Mon Aug 5 21:19:41 CEST 2002 Paolo Molaro <lupus@ximian.com>
2443
2444         * Assembly.cs: implemented EntryPoint and a few 
2445         resource related methods.
2446
2447 Wed Jul 24 13:08:56 CEST 2002 Paolo Molaro <lupus@ximian.com>
2448
2449         * MethodBase.cs: implemented GetCurrentMethod.
2450         * Assembly.cs: implemented GetExecutingAssembly and
2451         GetCallingassembly.
2452
2453 Mon Jul 1 18:01:49 CEST 2002 Paolo Molaro <lupus@ximian.com>
2454
2455         * MonoProperty.cs: handle properties with only a set method.
2456
2457 2002-05-24  Martin Baulig  <martin@gnome.org>
2458
2459         * ParameterInfo.cs: Added internal constructor.
2460
2461 Thu May 23 17:18:46 CEST 2002 Paolo Molaro <lupus@ximian.com>
2462
2463         * Assembly.cs: implemented CreateInstance ().
2464
2465 2002-05-22  Martin Baulig  <martin@gnome.org>
2466
2467         * MethodBase.cs (get_next_table_index): Added `object obj' argument.
2468
2469 Tue May 21 12:07:40 CEST 2002 Paolo Molaro <lupus@ximian.com>
2470
2471         * EventInfo.cs: more implementation.
2472
2473 Mon May 20 17:37:39 CEST 2002 Paolo Molaro <lupus@ximian.com>
2474
2475         * MonoEvent.cs: fill-in the implementation.
2476
2477 Sat May 4 15:00:39 CEST 2002 Paolo Molaro <lupus@ximian.com>
2478
2479         * Assembly.cs, AssemblyName.cs: updates and fixes.
2480
2481 2002-04-24      Patrik Torstensson <patrik.torstensson@labs2.com>
2482
2483         * MonoProperty.cs (GetValue) : basic implementation to support nunit
2484         * PropertyInfo.cs (GetValue) : call MonoProperty::GetValue instead of returning null
2485
2486 Thu Apr 18 16:40:54 CEST 2002 Paolo Molaro <lupus@ximian.com>
2487
2488         * MonoMethod.c: cache the method name.
2489
2490 2002-04-12  Duncan Mak  <duncan@ximian.com>
2491
2492         * AssemblyAlgorithmIdAttribute.cs: Fixed typo in AlgorithmId
2493         property.
2494
2495         * AssemblyDelaySignAttribute.cs: Fixed type in DelaySign
2496         attribute.
2497
2498         * AssemblyFileVersionAttribute.cs: Renamed FileVersion property to
2499         Version.
2500
2501         * BindingFlags.cs: Added missing value "PutRefDispProperty".
2502
2503         * FieldAttributes.cs: Removed value "HasSecurity".
2504
2505         * ManifestResourceInfo.cs: Added missing properties FileName,
2506         ReferencedAssembly and ResourceLocation.
2507
2508         * TargetInvocationException.cs: Added the missing constructors.
2509
2510 Fri Apr 12 18:32:34 CEST 2002 Paolo Molaro <lupus@ximian.com>
2511
2512         * MonoMethod.cs: make Name property an icall.
2513
2514 2002-04-08  Nick Drochak  <ndrochak@gol.com>
2515
2516         * DefaultMemberAttribute.cs: Add AttributeUsage attribute for class,
2517         struct and interface.
2518
2519 Fri Apr 5 15:40:24 CEST 2002 Paolo Molaro <lupus@ximian.com>
2520
2521         * MonoEvent.cs: remove unused code.
2522         * MonoProperty: implement ToString().
2523
2524 Wed Apr 3 17:59:26 CEST 2002 Paolo Molaro <lupus@ximian.com>
2525
2526         * Assembly.cs: implement GetTypes() and GetExportedTypes().
2527
2528 Mon Mar 25 18:54:58 CET 2002 Paolo Molaro <lupus@ximian.com>
2529
2530         * MonoEvent.cs: added the needed fields.
2531
2532 2002-03-20  Martin Baulig  <martin@gnome.org>
2533
2534         * ConstructorInfo.cs (Invoke): Implemented, call the abstract Invoke.
2535
2536         * MonoMethod.cs (MonoCMethod.Invoke): Implemented, call InternalInvoke.
2537
2538 2002-03-14  Dietmar Maurer  <dietmar@ximian.com>
2539
2540         * MonoMethod.cs (Invoke): call InternalInvoke
2541
2542         * MethodBase.cs (Invoke): call virtual invoke function 
2543
2544 Thu Mar 7 17:14:20 CET 2002 Paolo Molaro <lupus@ximian.com>
2545
2546         * EventInfo.cs: add compiler needed methods.
2547         * MonoMethod.cs: make ToString() return the return type name, too.
2548
2549 2002-03-07  Nick Drochak  <ndrochak@gol.com>
2550
2551         * BindingFlags.cs: Add missing enum values.  Thanks CorCompare.
2552
2553 Tue Mar 5 20:33:14 CET 2002 Paolo Molaro <lupus@ximian.com>
2554
2555         * TypeAttributes.cs, MethodImplAttributes.cs: updates to latest spec.
2556
2557 2002-02-26  Duncan Mak  <duncan@ximian.com>
2558
2559         * StrongNameKeyPair.cs: Committed for Kevin Winchester (kwin@ns.sympatico.ca>.
2560
2561 2002-02-24 Nick Drochak  <ndrochak@gol.com>
2562
2563         * AssemblyNameFlags.cs: Use proper member name.  Thanks corcompare!
2564
2565 Fri Feb 22 18:54:13 CET 2002 Paolo Molaro <lupus@ximian.com>
2566
2567         * MonoField.cs: implement GetValue as an internalcall.
2568         Implemented ToString().
2569
2570 Tue Feb 19 20:36:04 CET 2002 Paolo Molaro <lupus@ximian.com>
2571
2572         * Assembly.cs, Module.cs, MonoField.cs, MonoMethod.cs,
2573         MonoProperty.cs, ParameterInfo.cs: Implemented custom attributes
2574         related methods.
2575
2576 Thu Feb 14 18:55:23 CET 2002 Paolo Molaro <lupus@ximian.com>
2577
2578         * TypeAttributes.cs: update to latest spec.
2579
2580 Mon Feb 11 19:50:27 CET 2002 Paolo Molaro <lupus@ximian.com>
2581
2582         * Assembly.cs: handle throwOnError in GetType() call.
2583
2584 2002-02-07  Duncan Mak  <duncan@ximian.com>
2585
2586         * AssemblyName.cs: Implemented ISerializable interface for the
2587         fields that we have.
2588
2589 2002-02-05  Duncan Mak  <duncan@ximian.com>
2590         
2591         * Missing.cs: 
2592         * TargetException.cs: Added in CVS.
2593
2594 2002-01-31  Duncan Mak  <duncan@ximian.com>
2595
2596         * ReflectionTypeLoadException.cs: Added missing bits.
2597
2598 2002-01-23  Duncan Mak  <duncan@ximian.com>
2599
2600         * AssemblyAlgorithmIdAttribute.cs:
2601         * AssemblyCompanyAttribute.cs:
2602         * AssemblyConfigurationAttribute.cs:
2603         * AssemblyCopyrightAttribute.cs:
2604         * AssemblyCultureAttribute.cs:
2605         * AssemblyDefaultAliasAttribute.cs:
2606         * AssemblyDelaySignAttribute.cs:
2607         * AssemblyDescriptionAttribute.cs:
2608         * AssemblyFileVersionAttribute.cs:
2609         * AssemblyFlagsAttribute.cs:
2610         * AssemblyInformationalVersionAttribute.cs:
2611         * AssemblyKeyFileAttribute.cs:
2612         * AssemblyKeyNameAttribute.cs:
2613         * AssemblyNameProxy.cs:
2614         * AssemblyProductAttribute.cs:
2615         * AssemblyTitleAttribute.cs:
2616         * AssemblyTradeMarkAttribute.cs:
2617         * AssemblyVersionAttribute.cs:
2618         * CustomAttributeFormatException.cs:
2619         * InvalidFilterCriteriaException.cs:
2620         * TargetParameterCountException.cs: Added.
2621
2622 2002-01-23  Miguel de Icaza  <miguel@ximian.com>
2623
2624         * Assembly.cs (Assembly.CodeBase): Implement.
2625         (Assembly.FullName): simplistic and broken implementation.  Gets
2626         us where we were yesterday.
2627
2628         Code style fix.
2629
2630 Tue Jan 22 22:54:18 CET 2002 Paolo Molaro <lupus@ximian.com>
2631
2632         * IReflect.cs: corrected GetMember() return type.
2633         * InterfaceMapping.cs, TypeDelegator.cs: implemented.
2634
2635 Wed Jan 9 19:37:14 CET 2002 Paolo Molaro <lupus@ximian.com>
2636
2637         * MonoMethod.cs: ToString () implementation.
2638
2639 2002-01-04  Ravi Pratap  <ravi@ximian.com>
2640
2641         * Assembly.cs : Decorate missing bits with the MonoTODO
2642         attribute.
2643
2644         * ConstructorInfo.cs, MonoMethod.cs, MonoProperty.cs, ParameterInfo.cs,
2645         ReflectionTypeLoadException.cs : Ditto.
2646
2647         * FieldInfo.cs : Ditto.
2648         
2649 Thu Jan 3 23:25:34 CET 2002 Paolo Molaro <lupus@ximian.com>
2650         
2651         * Assembly.cs: trow unimplemented exceptions.
2652
2653 Tue Dec 18 18:46:22 CET 2001 Paolo Molaro <lupus@ximian.com>
2654
2655         * MonoMethod.cs: implemented GetParameters().
2656         * MonoProperty.cs: PropertyInfo implementation.
2657         * ParameterInfo.cs: implemented.
2658         * PropertyInfo.cs: fixes.
2659
2660 Thu Dec 13 20:18:05 CET 2001 Paolo Molaro <lupus@ximian.com>
2661
2662         * FieldInfo.cs: implemented some Is* propeties.
2663         * MethodBase.cs: fixed attribute accessors.
2664         * MonoField.cs: runtime object to represent a field.
2665         * MonoMethod.cs: runtime object to represent a method.
2666         * AssemblyBuilder.cs: GetToken() methods to get tokens for
2667         strings, fields, methods...
2668         * ILGenerator.cs: handle tokens for methods.
2669
2670 Mon Nov 19 13:56:55 CET 2001 Paolo Molaro <lupus@ximian.com>
2671
2672         * MethodBase.cs: add internal get_next_table_index() for use in
2673         Reflection.Emit.
2674
2675 Wed Nov 14 16:53:28 CET 2001 Paolo Molaro <lupus@ximian.com>
2676
2677         * Assembly.cs: implement some of the Load() methods.
2678         * ConstructorInfo.cs: some missing stubs and fields.
2679         * FieldInfo.cs: IsInitOnly property.
2680         * ParameterInfo.cs: stubs for missing properties.
2681         * ParameterModifier.cs: implemented class.
2682
2683 2001-11-10  Sean MacIsaac  <macisaac@ximian.com>
2684
2685         * Assembly.cs: Filled in some stub implementations
2686
2687         * ConstructorInfo.cs: Added some stub functions for NUnit
2688
2689 Fri Nov 2 18:29:36 CET 2001 Paolo Molaro <lupus@ximian.com>
2690
2691         * AmbiguousMatchException.cs, 
2692         * Assembly.cs, Module.cs: updates.
2693         * FieldInfo.cs: better compliance to the spec.
2694         * MethodBase.cs: move call_conv out of the way.
2695         * AssemblyBuilder.cs:  don't use internalcalls, more stuff supported.
2696         * FieldBuilder.cs: implemented.
2697         * ILGenerator.cs: implemented some opcode handling.
2698         * Label.cs: add constructor.
2699         * LocalBuilder.cs: implemented.
2700         * MethodBuilder.cs: don't use internalcalls, more implemented stuff.
2701         * ModuleBuilder.cs: don't use internalcalls, more meat here, too.
2702         * ParameterBuilder.cs: implemented.
2703         * PropertyBuilder.cs: implemented.
2704         * TypeBuilder.cs: don't use internalcalls, more stuff working.
2705
2706 Tue Sep 25 16:48:50 CEST 2001 Paolo Molaro <lupus@ximian.com>
2707
2708         * ConstructorInfo.cs, MemberFilter.cs, Module.cs: added.
2709
2710 Fri Sep 14 16:12:08 CEST 2001 Paolo Molaro <lupus@ximian.com>
2711
2712         * MethodBase.cs, MethodInfo.cs: added.
2713
2714 Thu Sep 13 18:05:16 CEST 2001 Paolo Molaro <lupus@ximian.com>
2715
2716         * Assembly.cs: added stub code.
2717
2718 2001-07-18  Michael Lambert <michaellambert@email.com>
2719
2720         * BindingFlags.cs: Add.