2010-03-07 Rodrigo Kumpera <rkumpera@novell.com>
[mcs.git] / class / corlib / System.Reflection / ChangeLog
blob252f5cbb36fa7bf9d0a9d8af3deadcd2149752f7
1 2010-03-07 Rodrigo Kumpera  <rkumpera@novell.com>
3         * MethodInfo.cs: New v4 stuff.
5 2010-03-07 Rodrigo Kumpera  <rkumpera@novell.com>
7         * ManifestResourceInfo.cs: New v4 .ctor.
9 2010-02-28 Rodrigo Kumpera  <rkumpera@novell.com>
11         * CustomAttributeData.cs:
12         * ExceptionHandlingClause.cs:
13         * LocalVariableInfo.cs: Add some v4 bits.
15 2010-02-26 Rodrigo Kumpera  <rkumpera@novell.com>
17         * PropertyInfo.cs: Small hack to avoid having cor-compare
18         flagging Get(Raw)ConstantValue as not implemented.
20 2010-02-24 Rodrigo Kumpera  <rkumpera@novell.com>
22         * MethodBody.cs: Add v4 bits.
24 2010-02-11 Rodrigo Kumpera  <rkumpera@novell.com>
26         * MethodBody.cs: Add v4 bits.
28 2010-02-11 Rodrigo Kumpera  <rkumpera@novell.com>
30         * MethodBase.cs: Add some v4 bits.
32 2010-02-11 Rodrigo Kumpera  <rkumpera@novell.com>
34         * MemberInfo.cs: Add GetCustomAttributesData.
36         * Assembly.cs:
37         * MemberInfo.cs:
38         * Module.cs:
39         * MonoEvent.cs:
40         * MonoField.cs:
41         * MonoMethod.cs:
42         * MonoProperty.cs:
43         * ParameterInfo.cs: Implement GetCustomAttributesData.
45 2010-02-11 Rodrigo Kumpera  <rkumpera@novell.com>
47         * MemberInfo.cs: Add some v4 bits.
49 2010-02-11 Rodrigo Kumpera  <rkumpera@novell.com>
51         * MethodImplAttributes.cs: Add NoOptimization flag.
53 2010-02-11  Marek Habersack  <mhabersack@novell.com>
55         * ConstructorInfo.cs, EventInfo.cs, FieldInfo.cs: fix 4.0 equality
56         and inequality operators by casting the passed parameters to
57         object. Failing to do so leads to infinite recursion calling the
58         operator.
60 2010-02-10 Rodrigo Kumpera  <rkumpera@novell.com>
62         * FieldInfo.cs: Add some v4 bits.
64 2010-02-10 Rodrigo Kumpera  <rkumpera@novell.com>
66         * EventInfo.cs: Add some v4 bits.
68 2010-02-10 Rodrigo Kumpera  <rkumpera@novell.com>
70         * ConstructorInfo.cs: Add some v4 bits.
72 2010-02-10 Rodrigo Kumpera  <rkumpera@novell.com>
74         * PropertyInfo.cs: Remove a pair of MonoTODO.
76         * MonoProperty.cs: Implement GetConstantValue and GetRawConstantValue.
78 2010-02-05 Rodrigo Kumpera  <rkumpera@novell.com>
80         * MonoMethod.cs (GetParameters): Must return a copy instead of the interned array.
82         * MonoMethod.cs (Invoke): Skip array clone in GetParameters.
84         * MonoProperty.cs (GetIndexParameters): Properly handle write-only indexed properties.
85         Return a ParameterInfo object bound to the properly and not to the method.
87         * ParameterInfo.cs: Add new constructor that copies all fields but Member.
89         * ParameterInfo.cs (MetadataToken): Properly handle tokens of non-method members.
91 2010-01-31  Zoltan Varga  <vargaz@gmail.com>
93         * MonoGenericClass.cs: Fix a warning.
95 2010-01-28  Rolf Bjarne Kvinge  <RKvinge@novell.com>
97         * Assembly.cs: GetSatelliteAssembly: Ask LoadSatellite to not throw
98         exceptions, since we ignore them anyway.
100 2010-01-05 Rodrigo Kumpera  <rkumpera@novell.com>
102         * ParameterInfo.cs (DefaultProperty): Fix small typo.
104 2010-01-05 Rodrigo Kumpera  <rkumpera@novell.com>
106         * ParameterInfo.cs (DefaultProperty): Add support for DateTime defaults.
108         * ParameterInfo.cs: Implements RawDefaultProperty.
110 2009-12-17 Rodrigo Kumpera  <rkumpera@novell.com>
112         * MonoGenericClass.cs (GetMethods): When the GTD is not a typebuilder,
113         calling GetMethods on it will return everything we need so no need to
114         do the crazy loop.
115         The returned methods might contains some that are not from a generic type
116         so we need to guard against this as well.
118         * MonoGenericClass.cs (GetMethodsInternal): Guard against methods that don't
119         belong to a GTD as well.
121 2009-12-14 Rodrigo Kumpera  <rkumpera@novell.com>
123         * MonoGenericClass.cs: Remove IsByRef hack.
125 2009-12-14 Rodrigo Kumpera  <rkumpera@novell.com>
127         * MonoGenericClass.cs (format_name): Avoid calling AssemblyQualifiedName as mcs DynamicObject
128         doesn't implement it.
130 2009-12-12 Rodrigo Kumpera  <rkumpera@novell.com>
132         * MonoGenericClass.cs: Remove useless field.
134 2009-12-12 Rodrigo Kumpera  <rkumpera@novell.com>
136         * MonoGenericClass.cs: Change it to support a non-sre generic type
137         definition.
139 2009-12-10 Rodrigo Kumpera  <rkumpera@novell.com>
141         * MonoGenericClass.cs: Add new register_with_runtime icall to make
142         sure that a managed code instantiated MGC will be returned when
143         the generic instantiation happens in unmanaged code.
144         
145         This is a temporary workaround while Type::MakeGenericType doesn't
146         handle user types properly.
148 2009-12-10 Rodrigo Kumpera  <rkumpera@novell.com>
150         * MonoGenericClass.cs: Make this class inherit from Type instead of
151         MonoType. Implement some missing methods and make sure we can still
152         be used as a byref type.
154 2009-12-08 Rodrigo Kumpera  <rkumpera@novell.com>
156         * MonoMethod.cs (MakeGenericMethod): If any of the arguments is
157         a non system type, inflate to a MethodOnTypeBuilderInst.
159 2009-12-08 Rodrigo Kumpera  <rkumpera@novell.com>
161         * ParameterInfo.cs: Add constructor that takes an array of ParameterInfo
162         objects.
164 2009-12-08 Rodrigo Kumpera  <rkumpera@novell.com>
166         * MonoGenericClass.cs: Implement IsCompilerContext property and replace
167         all checks to use it.
169 2009-12-04 Rodrigo Kumpera  <rkumpera@novell.com>
171         * MonoGenericClass.cs (InflateType): Add a type argument parameter and
172         make this function static. Now it can inflate types using the context
173         of any type.
175 2009-12-02  Jb Evain  <jbevain@novell.com>
177         * Assembly.cs: disable warning about Assembly overriding
178         Equals but not GetHashCode. That's sadly how it's in .net.
180 2009-12-02  Jb Evain  <jbevain@novell.com>
182         * MethodInfo.cs: add an internal virtual GetBaseMethod
183         returning the immediate predecessor in the inheritance chain.
184         * MonoMethod.cs: modify the get_base_definition icall to take
185         a boolean indicating that we want the immediate base method
186         or the original method definition and rename it to
187         get_base_method. Implement GetBaseMethod with it.
189 2009-11-21  Miguel de Icaza  <miguel@novell.com>
191         * Assembly.cs: Implement missing method.
193 2009-11-03  Marek Habersack  <mhabersack@novell.com>
195         * Assembly.cs: GetSatelliteAssembly must catch
196         AppDomain.LoadSatellite FileNotFoundException and attempt to load
197         satellites from subdirectories of current assembly's
198         directory. Fixes bug #548768
200 2009-10-30  Sebastien Pouliot  <sebastien@ximian.com>
202         * MonoMethod.cs: Remove CAS check in MonoCMethod.Invoke (just 
203         like it was done for MonoMethod.Invoke sister method)
205 2009-10-26  Sebastien Pouliot  <sebastien@ximian.com>
207         * Assembly.cs: Share code between GetSatelliteAssembly and 
208         GetSatelliteAssemblyNoThrow. For Moonlight ensure both 
209         GetManifestResourceStream and GetSatelliteAssembly don't load
210         anything "below" the assembly path.
212 2009-10-20  Sebastien Pouliot  <sebastien@ximian.com>
214         * MonoProperty.cs: Reduce code duplication and the number of direct
215         calls to icalls (affecting the number of SecuritySafeCritical in
216         Moonlight)
218 2009-10-19  Sebastien Pouliot  <sebastien@ximian.com>
220         * MonoEvent.cs: Reduce code duplication and the number of direct
221         calls to icalls (affecting the number of SecuritySafeCritical in
222         Moonlight)
224 2009-10-18  Sebastien Pouliot  <sebastien@ximian.com>
226         * MethodBase.cs: Reduce code duplication and the number of direct
227         calls to icalls (affecting the number of SecuritySafeCritical in
228         Moonlight)
230 2009-10-17  Sebastien Pouliot  <sebastien@ximian.com>
232         * MonoMethod.cs: Reduce code duplication and the number of direct
233         calls to icalls (affecting the number of SecuritySafeCritical in
234         Moonlight)
236 2009-09-22  Sebastien Pouliot  <sebastien@ximian.com>
238         * Assembly.cs: Remove Evidence and GlobalAssemblyCache 
239         properties for NET_2_1
241 2009-09-19  Sebastien Pouliot  <sebastien@ximian.com>
243         * TargetException.cs, TargetInvocationException.cs,
244         TargetParameterCountException.cs: Inherit from Exception for 
245         NET_2_1 since ApplicationException does not exists
247 2009-09-18  Sebastien Pouliot  <sebastien@ximian.com>
249         * Assembly.cs, Module.cs: Avoid imperative CAS checks for NET_2_1
251 2009-08-18  Zoltan Varga  <vargaz@gmail.com>
253         * MonoGenericClass.cs: Use StringComparison.Ordinal when calling
254         String.EndsWith ().
256 2009-08-07 Rodrigo Kumpera  <rkumpera@novell.com>
258         * MonoGenericClass.cs: Implement almost all methods required
259         to move to inherit from System.Type. The only missing methods
260         are Is(Array|Pointer|ByRef)Impl and GetElementType since the
261         runtime still generates weird instances for generics instances
262         of non-SRE types with SRE types as generic arguments.
264 2009-08-06 Rodrigo Kumpera  <rkumpera@novell.com>
266         * MonoGenericClass.cs (InflateType): Add support to inflate
267         generic method arguments.
269         * MonoGenericClass.cs (GetMethod): Remove restriction
270         with generic methods.
272 2009-08-05 Rodrigo Kumpera  <rkumpera@novell.com>
274         * MonoGenericClass.cs (FullName): mcs depends that FullName
275         doesn't return null for instantiations over generic params
276         of type builders. We special case this under compiler context.
278 2009-08-05 Rodrigo Kumpera  <rkumpera@novell.com>
280         * MonoGenericClass.cs: Remove Is(Array|Pointer|ByRef)Impl
281         and GetElementType since the runtime still produces instances
282         of MonoGenericClass for those types.
284 2009-08-04 Rodrigo Kumpera  <rkumpera@novell.com>
286         * MonoGenericClass.cs: Implement more methods from MonoType.
287         Done with all type name related properties.
289 2009-08-04 Rodrigo Kumpera  <rkumpera@novell.com>
291         * MonoGenericClass.cs: Implement Is*Impl methods to simply
292         return false.
294 2009-08-04 Rodrigo Kumpera  <rkumpera@novell.com>
296         * MonoGenericClass.cs: Implement Make(Array,ByRef,Pointer) using the
297         new managed types.
299 2009-08-04 Rodrigo Kumpera  <rkumpera@novell.com>
301         * MonoGenericClass.cs (InflateType): Implement it in terms of managed
302         code and kill the corresponding icall.
304 2009-08-04 Rodrigo Kumpera  <rkumpera@novell.com>
306         * MonoGenericClass.cs: Add type_arguments field and constructor
307         that initializes it.
309 2009-08-03 Rodrigo Kumpera  <rkumpera@novell.com>
311         * MonoGenericClass.cs (initialize): Remember the number
312         of events available at initialization time. This is required as
313         mcs expect this behavior under compiler context that new events
314         are not returned for an instance that was inflated before.
316         * MonoGenericClass.cs: Kill GetEvents_internal and implement it
317         in terms of managed code.
319 2009-07-30  Zoltan Varga  <vargaz@gmail.com>
321         * FieldInfo.cs: Throw an exception if internal_from_handle_type ()
322         returns null. Fixes #525733.
324 2009-07-29 Rodrigo Kumpera  <rkumpera@novell.com>
326         * MonoGenericClass.cs (initialize): Call TypeBuilder::GetConstructorsInternal
327         since the public version throws.
329 2008-07-29  Marek Safar  <marek.safar@gmail.com>
331         * MonoGenericClass.cs: Removed one IsCompilerContext hack.
333 2009-07-27 Rodrigo Kumpera  <rkumpera@novell.com>
335         * Assembly.cs (GetType): Throw if name is empty.
337 2009-07-27 Rodrigo Kumpera  <rkumpera@novell.com>
339         * EventInfo (RemoveEventHandler): Throw InvalidOperationException if the
340         event remove method is not visible.
342 2009-07-27 Rodrigo Kumpera  <rkumpera@novell.com>
344         * EventInfo (AddEventHandler): Throw TargetException if target is not cast
345         compatible.
347         * EventInfo (AddEventHandler): Throw InvalidOperationException if the
348         event add method is not visible.
350         * EventInfo (AddEventHandler): Throw TargetException if source is null
351         and the event is not static.
353 2009-07-24 Rodrigo Kumpera  <rkumpera@novell.com>
355         * MonoGenericClass.cs (GetParentType): Implement using managed code.
357 2009-07-24 Rodrigo Kumpera  <rkumpera@novell.com>
359         * MonoGenericClass.cs: Make all icalls private. Kill GetInterfaces_internal.
360         Add a workaround for a GetField under compiler context.
362 2009-07-24 Rodrigo Kumpera  <rkumpera@novell.com>
364         * MonoGenericClass.cs (GetMethod): Use the new code always. Don't
365         accept MethodOnTypeBuilderInst under compiler context.
367         * MonoGenericClass.cs (GetField): Use the new code always.
369         * MonoGenericClass.cs: Make a bunch of methods raise NotSupportedException
370         when not under compiler context. Remove some dead code.
372 2009-07-23 Rodrigo Kumpera  <rkumpera@novell.com>
374         * MonoGenericClass.cs: Kill GetConstructors_internal and implement it
375         all in terms of managed code.
377         * MonoGenericClass.cs: Return instances of ConstructorOnTypeBuilderInst
378         under bootstrap profile.
380 2009-07-23 Rodrigo Kumpera  <rkumpera@novell.com>
382         * MonoGenericClass.cs: Kill GetFields_internal and implement it
383         all in terms of managed code.
385 2009-07-23 Rodrigo Kumpera  <rkumpera@novell.com>
387         * MonoGenericClass.cs: Kill GetMethods_internal and implement it
388         all in terms of managed code.
390 2009-07-22 Rodrigo Kumpera  <rkumpera@novell.com>
392         * MonoGenericClass.cs: Kill GetProperties_internal and implement it
393         all in terms of managed code.
395 2009-07-12  Gert Driesen  <drieseng@users.sourceforge.net>
397         * Binder.cs: Only allow a type to match its byref version for
398         BindToMethod (and not for SelectMethod).
400 2009-07-11  Zoltan Varga  <vargaz@gmail.com>
402         * Binder.cs: Allow conversion of IntPtr to pointer types.
404 2009-07-10  Zoltan Varga  <vargaz@gmail.com>
406         * Binder.cs (check_arguments): Allow a type to match its byref version.
407         Fixes #520690.
409 2009-06-12  Zoltan Varga  <vargaz@gmail.com>
411         * ParameterInfo.cs (DefaultValue): Add support for decimals, their default
412         value is encoded using a custom attribute.
414 2009-05-02  Sebastien Pouliot  <sebastien@ximian.com>
416         * Assembly.cs: Exclude CAS-specific code for NET_2_1
418 2009-04-30  Sebastien Pouliot  <sebastien@ximian.com>
420         * Module.cs: Exclude GetSignerCertificate (Authenticode related) 
421         from NET_2_1
422         * StrongNameKeyPair.cs: Adapt to work with only RSAManaged when 
423         built for NET_2_1, i.e. remove use of RSACryptoServiceProvider
425 2009-03-26  Zoltan Varga  <vargaz@gmail.com>
427         * MonoMethod.cs: Add a 'member' argument to the get_parameter_info () icall.
429 2009-03-03  Matthew Metnetsky  <matthew@cowarthill.com>
431         * MonoMethod.cs: within Invoke only change types if BindingFlags.ExactBinding isn't set
433         * MonoMethod.cs: within Invoke ensure arg types match ParameterInfo types before
434         calling InvokeInternal
436 2009-03-20  Sebastien Pouliot  <sebastien@ximian.com>
438         * EventInfo.cs, MonoProperty.cs: Ensure the delegate optimization 
439         works correctly, i.e. throw the right exception, with Moonlight.
441 2009-03-11  Zoltan Varga  <vargaz@gmail.com>
443         * Binder.cs: Allow conversions from T to T?. Fixes #484294.
445 2008-03-02  Rodrigo Kumpera  <rkumpera@novell.com>
447         * EventInfo.cs: Apply similar trick to the one in MonoProperty to speed up
448         AddEventHandler.
450 2008-02-28  Rodrigo Kumpera  <rkumpera@novell.com>
452         * MonoProperty.cs (GetValue): Don't use the delegate optimization for valuetypes.
454 2008-02-26  Rodrigo Kumpera  <rkumpera@novell.com>
456         * MonoProperty.cs (GetValue): Optimize getters for properties without arguments.
458 2008-02-26  Rodrigo Kumpera  <rkumpera@novell.com>
460         * MonoProperty.cs (GetValue): Optimize getters for properties without arguments.
461         The optimization is to create a pair of chained delegates that duplicate the workings
462         on MethodBase::Invoke without all the aditional overhead and without doing two
463         managed/native transitions.
465         Simple Getter performance is up to 17x faster.
467         This patch reduces contention on domain and domain jit code hash locks, which
468         can be very hot on asp.net applications.
470 2008-02-21  Jb Evain  <jbevain@novell.com>
472         * Module.cs: add a new virtual GetModuleVersionId method,
473         and make the properties .MvId and ModuleVersionId call it.
474         This way, we can override it in ModuleBuilder.
475         Part of the fix for #471302.
477 2008-02-03  Rodrigo Kumpera  <rkumpera@novell.com>
479         * MonoMethod.cs: Fix the 1.1 build.
481 2008-02-02  Rodrigo Kumpera  <rkumpera@novell.com>
483         * MonoMethod.cs (ToString): Fix the representation of non primitive structs.
485 2008-02-02  Rodrigo Kumpera  <rkumpera@novell.com>
487         * MonoMethod.cs (ToString): Fix representation of pointer types.
489         Fixes #409583.
491 2009-01-24  Zoltan Varga  <vargaz@gmail.com>
493         * MonoGenericClass.cs: Fix warnings.
495 2009-01-24 Gonzalo Paniagua Javier <gonzalo@novell.com>
497         * Assembly.cs: add new LoadSatelliteAssemblyNoThrow method and use the
498         new LoadSatellite() in AppDomain.
500 2009-01-09  Zoltan Varga  <vargaz@gmail.com>
502         * CustomAttributeData.cs (ToString): Applied patch from Leszek Ciesielski
503         <skolima@gmail.com>. Use DeclaringType.FullName instead of DeclaringType.Name.
504         Fixes #464830.
506 2008-11-17  Rodrigo Kumpera  <rkumpera@novell.com>
508         * MonoField.cs (GetValue): Don't check for open generic types if the field
509         is a constant.
511 2008-11-11  Rodrigo Kumpera  <rkumpera@novell.com>
513         * Module.cs (ResolveMethod): Use internal method 
514         GetMethodFromHandleNoGenericCheck to avoid the generic type
515         limitation of GetMethodFromHandle.
517         Fixes #443763.
519 2008-10-02 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>
521         * MonoMethod.cs: throw a MemberAccessException when
522         trying to invoke a constructor creating an instance of an abstract
523         class. Return null when an instance of an object was passed as a
524         parameter when invoking a .ctor. Fixes bug #324185.
526 2008-09-07  Zoltan Varga  <vargaz@gmail.com>
528         * MonoField.cs: Add check to GetValue/SetValue () to avoid crashes when it is
529         called on fields of open types. Fixes #424077.
531 2008-08-12  Gert Driesen  <drieseng@users.sourceforge.net>
533         * ReflectionSerializationHolder.cs: Removed.
534         * common.src: Removed.
536 2008-08-04  Atsushi Enomoto  <atsushi@ximian.com>
538         * Assembly.cs : return UnmanagedMemoryStream from 
539           GetManifestResourceStream(). Fixed bug #322241.
541 2008-07-30  Rodrigo Kumpera  <rkumpera@novell.com>
543         * MonoGenericClass.cs (InflateType): Guard against null types.
544         Fixes #412965.
546 2008-07-23  Marek Safar  <marek.safar@gmail.com>
548         * MethodBase.cs (GetMethodFromHandle): Needed for bootraping.
550 2008-07-22  Rodrigo Kumpera  <rkumpera@novell.com>
552         * MonoGenericClass.cs (GetMethod): Under compiler mode allow
553         MethodOnTypeBuilderInst to be used..
555 2008-07-17  Rodrigo Kumpera  <rkumpera@novell.com>
557         * MonoGenericClass.cs (GetMethod): Revert to old code
558         path as the new one broke System.Core.
560 2008-07-16  Rodrigo Kumpera  <rkumpera@novell.com>
562         * MonoGenericClass.cs (GetMethod): Use the new codepath for compiler
563         context.
565         * MonoGenericClass.cs: New InflateType method, used to inflate
566         managed types.
568 2008-07-11  Marek Safar  <marek.safar@gmail.com>
570         * MonoGenericClass.cs (GetField): Put back removed code.
572 2008-07-04  Rodrigo Kumpera  <rkumpera@novell.com>
574         * MethodBase.cs (GetMethodFromHandle): Fix a warning in
575         the 1.0 build.
577 2008-07-04  Rodrigo Kumpera  <rkumpera@n ovell.com>
579         * MethodBase.cs (GetMethodFromHandle): Extract an internal version
580         of this function that doesn't perform the generic class check.
581         This method is required to fix the Delegate regression that fixing
582         #377324 caused.
584 2008-06-25  Rodrigo Kumpera  <rkumpera@n ovell.com>
586         * MethodBase.cs (GetMethodFromHandle): Check if the icall returns null
587         and fail. This is part of the fix for #377324.
589 2008-06-19  Marek Safar  <marek.safar@gmail.com>
591         * MonoGenericClass.cs (GetConstructor): Put back removed code due to obscure
592         System.Reflection.MonoGenericCMethod.
594 2008-06-19  Kornel Pal  <kornelpal@gmail.com>
596         * Module.cs: Add internal GetHINSTANCE.
598 2008-06-02  Ivan N. Zlatev  <contact@i-nz.net>
600         * Binder.cs, MonoGenericClass.cs: For property reflection we should 
601         strictly match the return type if available.
603 2008-05-16  Zoltan Varga  <vargaz@gmail.com>
605         * MonoGenericClass.cs (GetConstructor): Remove some old code, as the new code
606         seems to work fine.
607         (GetField): Ditto.
609 2008-05-05  Zoltan Varga  <vargaz@gmail.com>
611         * FieldInfo.cs (GetFieldFromHandle): Add an argument check for an invalid handle.
613         * MethodBase.cs (GetMethodFromHandle): Ditto. Fixes #386641.
615 2008-04-30  Gert Driesen  <drieseng@users.sourceforge.net>
617         * ParameterInfo.cs: Name must default to null if no ParameterBuilder
618         is supplied.
620 2008-04-22  Zoltan Varga  <vargaz@gmail.com>
622         * MonoGenericClass.cs (GetMethod): Construct a MethodOnTypeBuilderInst object
623         instead of using GetCorrespondingInflatedMethod. This is needed so this class can
624         reflect the changes made to the builder after initialize () has been called.
625         Fixes #381547 and #354759.
626         (GetConstructor): Ditto.
628 2008-04-16  Zoltan Varga  <vargaz@gmail.com>
630         * Binder.cs: Applied patch from Yves Bastide (doc.formatique@gmail.com). Add 
631         support for converting integers to enums. Fixes #380361.
633 ?2008-04-02  Andreas Nahr  <ClassDevelopment@A-SoftTech.com>
635         * IReflect.cs
636         * MethodInfo.cs: Fix parameter names
638 2008-03-31  Mark Probst  <mark.probst@gmail.com>
640         * MonoMethod.cs: Don't do CAS security checks in Invoke for 2.1
641         profile.
643 2008-03-25  Zoltan Varga  <vargaz@gmail.com>
645         * MonoCMethod.cs (Invoke): Avoid a crash if this is called on a ctor of an open
646         generic type. Fixes #373459.
647         
648         * MonoMethod.cs (InternalInvoke): Add an out 'exc' argument used to distinguish
649         exceptions thrown by the icall from the exceptions thrown by the wrapped method.
650         Fixes #373448.
652 2008-03-17  Marek Safar  <marek.safar@gmail.com>
654         * MonoMethod.cs (ToString): Print VarArgs argument.
656 2008-03-14  Zoltan Varga  <vargaz@gmail.com>
658         * MonoGenericClass.cs (GetField): Construct a FieldOnTypeBuilderInst object
659         instead of using GetCorrespondingInflatedField. This is needed so this class can
660         reflect the changes made to the type builder after initialize () has been called.
662         * Binder.cs (ChangeType): Add support for Char->Double/Single conversations. Fixes
663         #367655.
665 2008-03-10  Gert Driesen  <drieseng@users.sourceforge.net>
667         * Assembly.cs (GetFile): Fixed exception messages and param name.
669 2008-03-06  Zoltan Varga  <vargaz@gmail.com>
671         * Assembly.cs: Define GetManifestModule () for net 2.0 bootstrap as well.
673 2008-02-26  Ivan N. Zlatev  <contact@i-nz.net>
675         * MonoProperty.cs: MS ignores the inherit parameter and defaults to false
676         for GetCustomAttributes.
677         [Fixes bugs #324472 and #322464]
679 2008-02-20  Zoltan Varga  <vargaz@gmail.com>
681         * AssemblyName.cs (ReferenceMatchesDefinition): Add error checking and some 
682         simple cases required by ikvm.
684 2008-02-18  Zoltan Varga  <vargaz@gmail.com>
686         * CustomAttributeTypedArgument.cs (.ctor): Convert arrays into a collection of
687         CustomAttributeTypedArguments to match MS.
689 2008-02-10  Gert Driesen  <drieseng@users.sourceforge.net>
691         * Assembly.cs: Use icall for ToString/FullName. Fixes bug #318231.
693 2008-02-02  Gert Driesen  <drieseng@users.sourceforge.net>
695         * MonoMethod.cs (MakeGenericMethod): Modified argument name to match
696         MS. When one of the types is null, throw ArgumentNullException instead
697         of ArgumentException.
698         * MethodInfo.cs (MakeGenericMethod): Modified argument name to match
699         MS.
701 2008-01-29  Zoltan Varga  <vargaz@gmail.com>
703         * Assembly.cs: Make GetTypes () virtual so it can be overriden by AssemblyBuilder.
704         
705         * Assembly.cs: Make GetModulesInternal () virtual so it can be overriden by
706         AssemblyBuilder.
708 2008-01-22  Zoltan Varga  <vargaz@gmail.com>
710         * MonoGenericClass.cs: Make this NET 2.0 only.
711         
712         * MonoGenericClass.cs (Initialize): Simplify this a bit and add comments for this
713         class.
715 2008-01-20  Gert Driesen  <drieseng@users.sourceforge.net>
717         * AssemblyName.cs: Added support for Retargetable spec in FullName.
719 2008-01-17  Zoltan Varga  <vargaz@gmail.com>
721         * Assembly.cs AssemblyFlagsAttribute.cs ICustomAttributeProvider.cs
722         MemberInfo.cs FieldInfo.cs DefaultMemberAttribute.cs 
723         CustomAttributeNamedArgument.cs TargetException.cs MethodInfo.cs
724         IReflect.cs CustomAttributeTypedArgument.cs Module.cs: Change some parameter
725         names to match MS.
727 2008-01-15  Jb Evain  <jbevain@novell.com>
729         * MonoMethod.cs (MakeGenericMethod): check for null values
730         in the types arguments. Fixes #353849.
732 2008-01-06  Sebastien Pouliot  <sebastien@ximian.com>
734         * Assembly.cs: Fix typo in setter found with Gendarme (was used in a
735         single place, AppDomain, and set to true so it never caused a problem)
737 2008-01-04  Gert Driesen  <drieseng@users.sourceforge.net>
739         * AssemblyName.cs: Fixed default value for ProcessorArchitecture to
740         match MS. On 2.0 profile, return zero-length in FullName is no name
741         is set, and throw a SecurityException in FullName and GetPublicKeyToken
742         if a public key is set with no corresponding public key token. 
743         Fixed FullName to also include PublicKeyToken spec with "null" value
744         if public key is empty byte array. Fixed corlib part of bug #351057.
745         In SetPublicKey, modify Flags accordingly. On the 2.0 profile, verify
746         the public key when the public key token is computed.
748 2007-12-26  Zoltan Varga  <vargaz@gmail.com>
750         * Assembly.cs (GetSatelliteAssembly): Search in the assembly directory as well.
751         Fixes ##345627.
753 2007-12-03  Zoltan Varga  <vargaz@gmail.com>
755         * MonoField.cs: Implement GetRawConstantValue ().
757 2007-11-24  Marek Habersack  <mhabersack@novell.com>
759         * CustomAttributeTypedArgument.cs: value can be null in ToString.
761 2007-11-16  Zoltan Varga  <vargaz@gmail.com>
763         * Assembly.cs (GetFiles): Include the assembly itself as the first entry.
765 2007-11-13  Atsushi Enomoto  <atsushi@ximian.com>
767         * AssemblyName.cs : remove extraneous MonoTODO.
769 2007-11-13  Atsushi Enomoto  <atsushi@ximian.com>
771         * ExceptionHandlingClause.cs : implemented ToString().
773 2007-11-13  Atsushi Enomoto  <atsushi@ximian.com>
775         * MethodBase.cs : (Invoke) removed extra interface implementation.
777 2007-11-13  Atsushi Enomoto  <atsushi@ximian.com>
779         * StrongNameKeyPair.cs : implemented 2.0 runtime serialization stuff.
781 2007-11-05  Mark Probst  <mark.probst@gmail.com>
783         * Binder.cs: Treat matches with different argument types as
784         ambiguous, too.  Fixes #324998.
786 2007-11-01  Zoltan Varga  <vargaz@gmail.com>
788         * Binder.cs: Avoid returning a method with a ParamArray attribute when a normal
789         method exists. Fixes #338266.
791 2007-10-30  Zoltan Varga  <vargaz@gmail.com>
793         * Binder.cs: Applied patch from Mario A Chavez <mario.chavez@gmail.com>. Add
794         support for binding to methods with ParamArray attribute. Fixes #336841.
796 2007-10-27  Zoltan Varga  <vargaz@gmail.com>
798         * MonoGenericClass.cs: Override GetPropertyImpl too.
800 2007-10-24  Atsushi Enomoto  <atsushi@ximian.com>
802         * Assembly.cs : include ReflectionOnlyLoad() as part of 2.0
803           bootstrap build.
805 2007-09-23  Zoltan Varga  <vargaz@gmail.com>
807         * Assembly.cs (GetManifestModule): New virtual method overridden by 
808         AssemblyBuilder.
810 2007-09-17  Gert Driesen  <drieseng@users.sourceforge.net>
812         * Assembly.cs: In GetManifestResourceStream, throw ANE with type as
813         paramname when both name and type are null. Use String.Length to check
814         for zero-length string.
816 2007-09-11  Mark Probst  <mark.probst@gmail.com>
818         * MonoMethod.cs: Catch and re-throw MethodAccessException from
819         InternalInvoke for CoreCLR security.
821 Thu Sep 6 19:49:34 CEST 2007 Paolo Molaro <lupus@ximian.com>
823         * MonoMethod.cs: name is used as a cache: provide an icall to get the
824         name from the runtime.
826 2007-08-23  Robert Jordan  <robertj@gmx.net>
828         * MemberInfoSerializationHolder.cs: created from
829         ReflectionSerializationHolder to match MS (fixes bug #80761).
830         Add support for fields, events, properties and generic methods.
832         * MonoMethod.cs (GetObjectData): handle generic arguments.
834         * MonoGenericMethod.cs: mark as [Serializable].
836         * MonoProperty.cs (GetObjectData): implemented.
838         * MonoField.cs: ditto.
840         * MonoEvent.cs: ditto.
842 2007-07-19  Atsushi Enomoto  <atsushi@ximian.com>
844         * MonoMethod.cs : parameter types should be fixed as well.
846 2007-07-19  Atsushi Enomoto  <atsushi@ximian.com>
848         * MonoMethod.cs : ToString() did not show correct return type when
849           it is generic.
851 2007-07-15  Zoltan Varga  <vargaz@gmail.com>
853         * FieldInfo.cs: Implement GetOptional/RequiredCustomModifiers ().
855         * MethodInfo.cs: Remove an unneccesary MonoTODO.
857         * Module.cs: Implement ResolveSignature.
859 2007-07-14  Zoltan Varga  <vargaz@gmail.com>
861         * Module.cs: Implement the generic versions of the ResolveXXX methods.
863 2007-07-10  Zoltan Varga  <vargaz@gmail.com>
865         * Module.cs: Add new internal method GetMDStreamVersion ().
867 2007-07-09  Atsushi Enomoto  <atsushi@ximian.com>
869         * CustomAttributeNamedArgument.cs, CustomAttributeTypedArgument.cs:
870           added missing operator == and !=.
872 2007-07-04  Atsushi Enomoto  <atsushi@ximian.com>
874         * CustomAttributeNamedArgument.cs CustomAttributeTypedArgument.cs
875           CustomAttributeData.cs : implemented Equals() and GetHashCode().
876         * Missing.cs : ISerializable.
877         * AssemblyName.cs : ReferenceMatchesDefinition() stub.
878         * Module.cs : missing method stubs with generic type/method args.
879         * ExceptionHandlingClause.cs : ToString() stub.
880         * MethodBase.cs TypeDelegator.cs ModuleResolveEventHandler.cs
881           TypeFilter.cs MemberFilter.cs
882           FieldInfo.cs ParameterInfo.cs MethodInfo.cs :
883           miscellaneous cosmetic API fixes.
885 Tue May 8 13:04:35 CEST 2007 Paolo Molaro <lupus@ximian.com>
887         * FieldInfo.cs, MethodBase.cs: implemented new GetFieldFromHandle and
888         GetMethodFromHandle overloads (bug #78637).
890 2007-05-07  Zoltan Varga  <vargaz@gmail.com>
892         * MonoMethod.cs (Invoke): Fix a warning.
893         
894         * MonoMethod.cs (Invoke): Don't wrap ThreadAbortException inside a 
895         TargetInvocationException on the 2.0 profile. Fixes #81538.
897 2007-04-09  Alp Toker  <alp@atoker.com>
899         * MonoMethod.cs: Use StringBuilder for the entire ToString() methods
900         to reduce allocations and increase performance.
902 2007-04-09  Alp Toker  <alp@atoker.com>
904         * MonoMethod.cs: Use StringBuilder for parms in ToString() methods.
906 2007-04-09  Alp Toker  <alp@atoker.com>
908         * MethodBase.cs: IsGenericMethodDefinition() and IsGenericMethod()
909         should return false, not throw NotSupportedException. This matches MS
910         behaviour and introduces simplifications in subclasses.
911         * MonoMethod.cs: MonoCMethod: Remove redundant overrides.
913 2007-03-05  Peter Dettman <peter.dettman@iinet.net.au>
915         * Binder.cs: The patch changes Binder.Default.GetBetterMethod to
916         prefer methods in subclasses if the arg types can't disambiguate
917         them.
919         Also fixes a typo in the CallingConventions comparison.
921 2007-03-01  Alp Toker  <alp@atoker.com>
923         * FieldInfo.cs:
924         Add GetFieldFromHandle() 2.0 overload stub (NotImplemented).
926 2007-03-01  Alp Toker  <alp@atoker.com>
928         * MethodBase.cs: Add missing ComVisible attr.
929         Add GetMethodFromHandle() 2.0 overload stub (NotImplemented).
931 2006-12-30  Marek Safar  <marek.safar@gmail.com>
933         * MonoProperty.cs: Cache frequently used properties.
935 Thu Dec 14 13:50:48 CET 2006 Paolo Molaro <lupus@ximian.com>
937         * *.cs: added missing Serializable attributes.
939 Thu Dec 14 12:52:27 CET 2006 Paolo Molaro <lupus@ximian.com>
941         * MonoProperty.cs, ParameterInfo.cs, PropertyInfo.cs:
942         GetRequiredCustomModifiers()/GetOptionalCustomModifiers()
943         implementations.
945 Tue Dec 12 20:35:10 CET 2006 Paolo Molaro <lupus@ximian.com>
947         * MethodBase.cs: added missing ComVisible attr.
948         * MethodInfo.cs: added a few missing methods that we implement
949         in derived classes.
951 Tue Dec 12 19:45:26 CET 2006 Paolo Molaro <lupus@ximian.com>
953         * MonoEvent.cs: correctly obey the nonPublic flag in GetOtherMethods ().
954         * EventInfo.cs: remove NotImpl exception from GetOtherMethods ().
956 2006-10-19  Gert Driesen  <drieseng@users.sourceforge.net>
958         * AssemblyName.cs: Revert change where filename was not converted to
959         absolute path before passing it to Assembly.InternalGetAssemblyName
960         as the CodeBase is not set in that case.
962 2006-10-17  Kornel Pal  <kornelpal@gmail.com>
964         * FieldInfo.cs: Added GetRawConstantValue (). Note that throwing a
965           NotSupportedException is the proper implementation.
966         * ParameterInfo.cs: Use Attributes in Is... properties on profile 2.0
967           that is expected by subclasses.
969 2006-10-14  Gert Driesen  <drieseng@users.sourceforge.net>
971         * AssemblyName.cs: No need to convert filename to absolute path before
972         passing it to Assembly.InternalGetAssemblyName. This allows our
973         exception messages to be better match those of MS.
975 2006-09-29  Jb Evain  <jbevain@gmail.com>
977         * MonoFieldInfo.cs: throw a FieldAccessException when setting a literal field.
979 2006-09-02  Zoltan Varga  <vargaz@gmail.com>
981         * ParameterInfo.cs MethodInfo.cs MonoMethod.cs: Applied patch from 
982         Peter Dettman (peter.dettman@iinet.net.au). Implement ReturnParameter
983         property.
985         * Binder.cs (ReorderParameters): Really fix this.
986         
987         * Binder.cs (ReorderParameters): Fix this method. Fixes #79120.
989 2006-09-01  Raja R Harinath  <rharinath@novell.com>
991         * MonoMethod.cs (ToString): Update to handle change in byref type names.
993 2006-08-08  Gert Driesen  <drieseng@users.sourceforge.net>
995         * Assembly.cs: On 2.0 profile, throw FileNotFoundException for
996         linked resources in GetManifestResourceStream when assembly is
997         loaded from byte array.
999 2006-07-12  Zoltan Varga  <vargaz@gmail.com>
1001         * MonoMethod.cs (ContainsGenericParameters): Implement.
1002         
1003         * MonoMethod.cs (Invoke): Prevent invoking of open generic methods.
1005 2006-07-09  Gert Driesen  <drieseng@users.sourceforge.net>
1007         * Assembly.cs: When assembly is loaded from byte array, return null
1008         for linked resources in GetManifestResourceStream. Fixes bug #78468.
1010 2006-07-09  Zoltan Varga  <vargaz@gmail.com>
1012         * Binder.cs: Add back the support for BindingFlags.ExactBinding. Fixes #78592.
1014 2006-06-30  Zoltan Varga  <vargaz@gmail.com>
1016         * Binder.cs: Comment out the ExactBinding stuff for the release as it breaks some 
1017         gtk# apps.
1019 2006-06-07  Zoltan Varga  <vargaz@gmail.com>
1021         * Binder.cs: Add support for BindingFlags.ExactBinding. Fixes #78592.
1023 2006-05-28  Gert Driesen  <drieseng@users.sourceforge.net>
1025         * MethodBase.cs: GetMethodBody should not throw ArgumentException for
1026         a method with no IL body. Fixes bug #78522.
1028 2006-05-10  Zoltan Varga  <vargaz@gmail.com>
1030         * Module.cs (GetMethod): Update after the changes to Type.GetMethod ().
1032 2006-05-08  Atsushi Enomoto  <atsushi@ximian.com>
1034         * Binder.cs : (Default.SelectMethod)
1035           don't throw AmbiguousMatchException when one of conflicting method
1036           matches weakly. Fixed bug #42547.
1038 2006-05-08  Atsushi Enomoto  <atsushi@ximian.com>
1040         * Binder.cs : (Default.BindToMethod) reorder parameters based
1041           on namedParameters. Fixed bug #41691.
1043 2006-05-03  Jb Evain  <jbevain@gmail.com>
1045         * MonoField.cs (GetValue,SetValue): throw a TargetException
1046         when the field is non static and the target is null.
1048 2006-03-12  Zoltan Varga  <vargaz@gmail.com>
1050         * Binder.cs: Applied patch from Ben to fix #74947.
1052 2006-03-01  Miguel de Icaza  <miguel@novell.com>
1054         * Assembly.cs: Cache the AssemblyName, patch from Tambet.  This
1055         reduces the memory usage during remoting.
1057 2006-02-16  Martin Baulig  <martin@ximian.com>
1059         * FieldInfo.cs (FieldInfo.Mono_GetGenericFieldDefinition): Removed.
1061 2006-02-15  Martin Baulig  <martin@ximian.com>
1063         * MethodBase.cs (MethodBase.GetGenericMethodDefinition): Removed.
1064         (MethodBase.Mono_IsInflatedMethod): Removed.
1065         (MethodBase.HasGenericParameters): Removed.
1067         * MethodInfo.cs (MethodInfo.GetGenericMethodDefinition): Moved
1068         here from MethodBase.
1070         * MonoMethod.cs
1071         (MonoMethod.IsGenericMethodDefinition): This is now an icall.
1072         (MonoMethod.IsGenericMethod): Likewise.
1074 2006-02-14  Martin Baulig  <martin@ximian.com>
1076         * MonoMethod.cs
1077         (MonoCMethod.IsGenericMethod): Override this and return false; the
1078         MS runtime doesn't throw an exception here.
1080 2006-02-08  Martin Baulig  <martin@ximian.com>
1082         * MonoGenericClass.cs (MonoGenericClass.IsAssignableFrom):
1083         Override and implement this; fixes #77395.      
1085 2006-02-07  Martin Baulig  <martin@ximian.com>
1087         * MonoMethod.cs
1088         (MonoMethod.IsGenericMethod): Only return true for "real" generic
1089         methods and not for arbitrary instantiated methods.
1090         (MonoMethod.IsGenericMethodDefinition): Only return true for
1091         generic method definitions, but not for instantiated generic
1092         methods.  This is no longer an interncall.  Fixes #77466.
1094 2006-02-03  Zoltan Varga  <vargaz@gmail.com>
1096         * MethodBase.cs MonoMethod.cs: Implement IsGenericMethod property.
1097         Fixes #77460.
1099 2005-12-23  Sebastien Pouliot  <sebastien@ximian.com>
1101         * Assembly.cs: Fixed #75950. The icall has been changed to accept a 
1102         boolean so it can return a non-escaped code base.
1104 2005-11-16  Atsushi Enomoto  <atsushi@ximian.com>
1106         * MonoMethod.cs : made MakeGenericMethod() indirect icall to
1107           MakeGenericMethod_impl() and raise an error when it returns null.
1109 2005-11-15  Zoltan Varga  <vargaz@gmail.com>
1111         * Module.cs: Add MDStreamVersion property.
1113         * Assembly.cs AssemblyNameFlags.cs FieldInfo.cs PropertyInfo.cs 
1114         CustomAttributeData.cs PortableExecutableKinds.cs 
1115         ObfuscateAssemblyAttribute.cs Module.cs ObfuscationAttribute.cs: Net 2.0 RTM
1116         updates.
1118 2005-11-11  Marek Safar  <marek.safar@seznam.cz>
1120         * MethodBase.cs, TypeDelegator.cs: Reflect Type changes.
1122 2005-10-30  Zoltan Varga  <vargaz@freemail.hu>
1124         * FieldInfo.cs: Add an internal UMarshal property which can by
1125         overriden in FieldBuilder.
1127 2005-10-26  Atsushi Enomoto  <atsushi@ximian.com>
1129         * MonoMethod.cs : (ToString) add suffix " ByRef" for byref parameters.
1130           Fixed bug #76541.
1132 2005-10-04  Martin Baulig  <martin@ximian.com>
1134         * MonoGenericClass.cs (MonoGenericClass.GetParentType): Changed
1135         return type from `MonoGenericClass to `Type'.
1137 2005-09-26  Carlos Alberto Cortez <calberto.cortez@gmail.com>
1139         * AssemblyName.cs: Add ParseName internal call, to parse
1140         long format assembly names. 
1141         
1142 2005-09-25  Sebastien Pouliot  <sebastien@ximian.com>
1144         * MonoProperty.cs: Invoke throws a SecurityException but GetValue must
1145         throw TargetInvocationException with the SecurityException as an inner
1146         exception. See CAS unit tests for System.Web.dll.
1148 2005-09-20  Martin Baulig  <martin@ximian.com>
1150         * Assembly.cs: Removed some unused debugger icalls.
1152 2005-09-17  Zoltan Varga  <vargaz@freemail.hu>
1154         * Module.cs: Remove obsolete Mvid property.
1156 2005-09-09  Martin Baulig  <martin@ximian.com>
1158         Reflect latest API changes in the August CTP.
1160         * MethodBase.cs (MethodBase.MakeGenericMethod): Removed.
1162         * MethodInfo.cs (MethodInfo.MakeGenericMethod): Added here.
1164 2005-09-08  Sebastien Pouliot  <sebastien@ximian.com>
1166         * AssemblyName.cs: Apply second half of Chris Micacchi's patch
1168 2005-09-07  Miguel de Icaza  <miguel@novell.com>
1170         * AssemblyName.cs: Apply patch from Chris Micacchi to serialize
1171         the keyToken as "_PublicKeyToken".
1173 2005-09-05  Martin Baulig  <martin@ximian.com>
1175         Reflect latest API changes in the August CTP.
1177         * GenericParameterAttributes.cs: Here.
1179         * MethodBase.cs (MethodBase.BindGenericParameters): Renamed to
1180         MakeGenericMethod().    
1182 2005-09-05  Martin Baulig  <martin@ximian.com>
1184         * Assembly.cs (MonoDebugger_GetMethodToken): Don't take an
1185         `Assembly' argument.
1187 2005-08-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1189         * Assembly.cs: made GetManifestResourceInternal internal. Fixes the
1190         build.
1192 2005-08-05  Gert Driesen <drieseng@users.sourceforge.net>
1194         * Assembly.cs: Added GetType() method in 1.1 to match MS.NET.
1195         * ConstructorInfo.cs: Added GetType() method in 1.1 to match
1196         MS.NET, implemented _ConstructorInfo.
1197         * EventInfo.cs: Added GetType() method in 1.1 to match MS.NET,
1198         implemented _EventInfo.
1199         * FieldInfo.cs: Added GetType() method in 1.1 to match MS.NET,
1200         implemented _FieldInfo.
1201         * MemberInfo.cs: Added GetType() method in 1.1 to match MS.NET,
1202         implemented _MemberInfo.
1203         * MethodBase.cs: Added GetType() method in 1.1 to match MS.NET,
1204         implemented _MethodBase.
1205         * MethodInfo.cs: Added GetType() method in 1.1 to match MS.NET,
1206         implemented _MethodInfo.
1207         * PropertyInfo.cs: Added GetType() method in 1.1 to match MS.NET,
1208         implemented _PropertyInfo.
1209         * TypeAttributes.cs: CustomFormatMask and CustomFormatClass should
1210         only be exposed in 2.0 profile.
1212 2005-07-29  Carlos Alberto Cortez <calberto.cortez@gmail.com>
1214         * CustomAttributeTypedArgument: Return the name of the
1215         enum if the type is an enum in ToString ().
1216         
1217 2005-06-21  Sebastien Pouliot  <sebastien@ximian.com>
1219         * Assembly.cs: Create a copy of the evidences and add an instance of 
1220         PermissionRequestEvidence to it before resolution. This way the PRE
1221         won't be present when asking for evidences later. Removed debugging 
1222         code.
1224 2005-06-13  Michal Moskal <malekith@nemerle.org>
1225         
1226         * MonoGenericClass.cs: Don't use MethodHandle in GetMethod/GetConstructor,
1227         since it now throws on MethodBuilders. Don't use FieldHandle in
1228         GetField (throws on FieldBuilder) - just use the name.
1230 2005-06-15  Sebastien Pouliot  <sebastien@ximian.com>
1232         * Assembly.cs, AssemblyName.cs, ConstructorInfo.cs, EventInfo.cs,
1233         FieldInfo.cs, MemberInfo.cs, MethodBase.cs, MethodInfo.cs, Module.cs,
1234         ParameterInfo.cs, PropertyInfo.cs: Added some missing interfaces and
1235         attributes that were added in 1.1 SP1 or 2.0 beta2.
1237 2005-06-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1239         * Binder.cs: null is ok for a value type. Fixes bug #75241.
1241 2005-06-14  Sebastien Pouliot  <sebastien@ximian.com>
1243         * Assembly.cs: UnprotectedGetName is now virtual to allow for more
1244         initialization in AssemblyBuilder. The [Granted|Refused]PermissionSet
1245         now use the ResolvingPolicyLevel to support the policy 
1246         FullTrustAssemblies during resolution.
1247         * AssemblyName.cs: Return null instead of "new byte [0]" if no public
1248         key is available.
1250 2005-06-09  Kamil Skalski <nazgul@nemerle.org>
1251         * MonoGenericClass.cs: Add overrides of Get{Method,Constructor,Field} 
1252         for obtaining instanciated *Info objects from non-instanciated counterparts
1255 2005-06-09  Zoltan Varga  <vargaz@freemail.hu>
1257         * CustomAttributeData.cs EventInfo.cs Assembly.cs: Updates for net 2.0 beta 2.
1259         * *.cs: Updates for net 2.0 beta 2.
1261 2005-06-07  Zoltan Varga  <vargaz@freemail.hu>
1263         * *.cs: Updates for net 2.0 beta 2.
1265 2005-06-07  Carlos Alberto Cortez <calberto.cortez@gmail.com>
1267         * CustomAttributeData.cs: Implemented.
1269         * CustomAttributeDataNamedArgument.cs: Implemented.
1271         * CustomAttrbuteDataTypedArgument.cs: Implemented.
1272         
1273 2005-06-06  Zoltan Varga  <vargaz@freemail.hu>
1275         * Assembly.cs ExceptionHandlingClause.cs: Fix build.
1277         * ProcessorArchitecture.cs: New file.
1279         * ExceptionHandlingClause.cs: Update after ExceptionHandlingClauseFlags name change.
1281         * *.cs: Updates for net 2.0 beta 2.
1283         * *.cs: Add net 2.0 ComVisibleAttribute.
1285 2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1287         * Assembly.cs: if the assembly is loaded from a byte array, Location
1288         returns "". Fixes bug #74958.
1290 2005-06-03  Carlos Alberto Cortez <calberto.cortez@gmail.com>
1292         * AssemblyName.cs: Changes to support the creation of version
1293         instance from icalls. This change also helps to keep the
1294         AssemblyName tests running fine.
1295         
1296 2005-05-26  Ben Maurer  <bmaurer@ximian.com>
1298         * Binder.cs: Avoid double checked locking and lock on typeof by
1299         doing init of the default binder in the cctor.
1301 2005-05-25  Zoltan Varga  <vargaz@freemail.hu>
1303         * Assembly.cs: Avoid security checks if Assembly.Location is "".
1305 2005-05-20  Zoltan Varga  <vargaz@freemail.hu>
1307         * TypeDelegator.cs: Implement some methods.
1308         
1309         * TypeDelegator.cs: Revert this as it breaks the build.
1311         * TypeDelegator.cs: Implement some methods.
1313 2005-05-19  Satya Sudha K  <ksathyasudha@novell.com>
1314             Raja R Harinath  <rharinath@novell.com>
1316         * Missing.cs (Missing.Value): Initialize.
1318 2005-05-17  Lluis Sanchez Gual  <lluis@novell.com>
1320         * Binder.cs: Use IsInstanceOfType instead of IsAssignableFrom
1321         since GetType() may not return the correct type if the object is
1322         a remoting proxy. This fixes bug #74933.
1324 2005-05-13  Zoltan Varga  <vargaz@freemail.hu>
1326         * MonoField.cs: Applied patch from Opened by Michael Meeks (michael@ximian.com). Improve exception message on binding failures.
1328 2005-05-09  Lluis Sanchez Gual  <lluis@novell.com>
1330         * MonoField.cs: Added a Clone method. This is needed for serialization.
1332 2005-05-07  Ben Maurer  <bmaurer@ximian.com>
1334         * MonoEvent.cs (Get*Method): Handle nonPublic. Fixes #64191.
1336 2005-05-06  Zoltan Varga  <vargaz@freemail.hu>
1338         * Module.cs: Update for beta 2.
1340         * CustomAttributeData.cs MethodBody.cs: Remove CLSCompliant (false) attributes.
1342 2004-05-03  Lluis Sanchez  <lluis@ximian.com>
1344         * Assembly.cs: Don't remove version and culture information from
1345         the name, since it will be used by load_with_partial_name.
1347 2005-04-14  Sebastien Pouliot  <sebastien@ximian.com>
1349         * Assembly.cs: Added some CAS security to avoid returning restricted
1350         information to partially truster callers (e.g. code base). Added new
1351         methods to get the Evidence and AssemblyName so that the security
1352         runtime can bootstrap itself (without calling itself).
1354 2005-04-14  Sebastien Pouliot  <sebastien@ximian.com>
1356         * Assembly.cs: Added missing null check in GetObjectData.
1358 2005-04-04  Sebastien Pouliot  <sebastien@ximian.com>
1360         * AssemblyName.cs: Added a demand for SerializationFormatter on
1361         GetObjectData method.
1363 2005-04-04  Sebastien Pouliot  <sebastien@ximian.com> 
1365         * AssemblyName.cs: Implemented EscapedCodeBase using the copy of 
1366         System.Uri (System.dll) located in Mono.Security.Uri. Added missing
1367         null check in GetObjectData.
1368         * Module.cs: Added a FileIOPermission for PathDiscovery on 
1369         FullyQualifiedName property (but not on Name property like MS).
1370         Added missing null check in GetObjectData.
1371         * StrongNameKeyPair.cs: Added demands for unmanaged code to all
1372         constructors (as we do not want partially trusted code to create
1373         strongnamed assemblies).
1375 2005-03-30  Zoltan Varga  <vargaz@freemail.hu>
1377         * Binder.cs (check_type): Fix byref support. Fixes #73972.
1379 2005-03-24  Sebastien Pouliot  <sebastien@ximian.com>
1381         * MemberInfo.cs: Add an InheritanceDemand for Unrestricted on class.
1382         * Module.cs: Add a LinkDemand for SerializationFormatter on 
1383         GetObjectData method.
1385 2005-03-16  Sebastien Pouliot  <sebastien@ximian.com>
1387         * Assembly.cs: Implemented EscapedCodeBase using the copy of 
1388         System.Uri (System.dll) located in Mono.Security.Uri. Fix bug #73663.
1390 2005-03-11  Sebastien Pouliot  <sebastien@ximian.com>
1392         * MonoMethod.cs: Promote a LinkDemand (if present) to a full Demand 
1393         (i.e. stack walk) when reflection is being used to invoke a method.
1395 2005-02-24  Carlos Alberto Cortez <calberto.cortez@gmail.com>
1397         * Assembly.cs: LoadFrom: Change signature to support reflection only
1398         methods; ReflectionOnlyLoad, ReflectionOnlyLoadFrom 2.0 methods
1399         implemented; InvalidOperationException's re-thrown by CreateInstance.
1400         Also ReflectionOnly 2.0 property added.
1402         * MonoMethod.cs: InvalidOperationException's are re-thrown when calling 
1403         Invoke method on reflection only assemblies.
1404         
1405 2005-02-22  Raja R Harinath  <rharinath@novell.com>
1407         * FieldInfo.cs (GetFieldOffset): Make 'virtual' rather than
1408         'abstract' so that this class can be derived outside of corlib.
1410 2005-02-16  Miguel de Icaza  <miguel@novell.com>
1412         * MonoEvent.cs: Put new methods here.
1414         * EventInfo.cs: Move the methods GetCustomAttributes, and
1415         IsDefined from EventInfo to MonoEvent.
1417         Remove the methods that were not supposed to be exposed: Name,
1418         ReflectedType, DeclaringType.
1420 2005-02-12  Chris Toshok  <toshok@ximian.com>
1422         * Assembly.cs: Correct the type of MonoDebugger_MakeArrayType.
1424 2005-02-12  Ben Maurer  <bmaurer@ximian.com>
1426         * Binder.cs (SelectProperty): Use -1 as the dummy `I don't know
1427         how many types' value.
1429 2005-02-11  Zoltan Varga  <vargaz@freemail.hu>
1431         * Assembly.cs: Fix warning.
1433 2005-02-10  Martin Baulig  <martin@ximian.com>
1435         * Module.cs (MonoDebugger_ResolveType): New internal method.
1437         * Assembly.cs (MonoDebugger_MakeArrayType): New internal method.
1438         (MonoDebugger_GetTypeToken): New internal method.
1440 2005-02-10  Martin Baulig  <martin@ximian.com>
1442         * Assembly.cs (MonoDebugger_GetMethodIndex): New internal method.
1444 2005-02-10  Marek Safar  <marek.safar@seznam.cz>
1446         * Assembly.cs,
1447         * ConstructorInfo.cs,
1448         * EventInfo.cs,
1449         * FieldInfo.cs,
1450         * MemberInfo.cs,
1451         * MethodBase.cs,
1452         * MethodInfo.cs,
1453         * PropertyInfo.cs: ClassInterfaceType is None.
1455 Thu Feb 3 15:22:55 CET 2005 Paolo Molaro <lupus@ximian.com>
1457         * Module.cs: removed the finalizer and the now unused Close() icall.
1459 2005-01-21  Sebastien Pouliot  <sebastien@ximian.com>
1461         * Assembly.cs: Fixed add for ModuleResolve.
1463 2005-01-19  Zoltan Varga  <vargaz@freemail.hu>
1465         * LocalVariableInfo.cs: Add ToString method.
1467         * ExceptionHandlingClause.cs: Implement this.
1469 2005-01-18  Zoltan Varga  <vargaz@freemail.hu>
1471         * MethodBase.cs MonoMethod.cs: Hopefully fix the build.
1473         * MethodBase.cs MonoMethod.cs: Implement 2.0 GetMethodBody ().
1475 2005-01-03  Martin Baulig  <martin@ximian.com>
1477         * MonoGenericMethod.cs
1478         (MonoGenericMethod.get_reflected_type): Removed.
1479         (MonoGenericMethod.ReflectedType): Make this an icall.
1480         (MonoGenericCMethod.ReflectedType): Likewise.   
1482 2004-12-29  Martin Baulig  <martin@ximian.com>
1484         * MonoGenericMethod.cs: New file.
1486 2004-12-21  Sebastien Pouliot  <sebastien@ximian.com> 
1488         * Assembly.cs: Added private LoadAssemblyPermissions to get the 
1489         declarative security permission sets (minimum, optional and refused)
1490         for the assembly.
1492 2004-12-20  Sebastien Pouliot  <sebastien@ximian.com>
1494         * Assembly.cs: Removed old Demand support (moved in System.Security).
1496 2004-12-16  Zoltan Varga  <vargaz@freemail.hu>
1498         * CustomAttributeData.cs MethodBody.cs: Reenable some 2.0 code now that
1499         the gmcs bugs blocking them are fixed.
1501 2004-12-08  Zoltan Varga  <vargaz@freemail.hu>
1503         * Assembly.cs: Move corlib_internal field to AssemblyBuilder.
1505 2004-12-06  Zoltan Varga  <vargaz@freemail.hu>
1507         * Assembly.cs: Add corlib_internal field.
1509 2004-11-30  Martin Baulig  <martin@ximian.com>
1511         * MonoGenericInst.cs: Renamed to MonoGenericClass.cs and also
1512         renamed the class from `MonoGenericInst' to `MonoGenericClass'.
1514 2004-11-05  Zoltan Varga  <vargaz@freemail.hu>
1516         * AssemblyName.cs (FullName): Omit default values from full name.
1518         * Assembly.cs: Implement GetFiles (bool).
1520         * Binder.cs: Add support for byref types. Fixes #69140.
1522 2004-10-12  Martin Baulig  <martin@ximian.com>
1524         * MonoGenericInst.cs (MonoGenericInst): Call initialize() just
1525         before calling the *_internal() methods.
1527 2004-10-12  Zoltan Varga  <vargaz@freemail.hu>
1529         * MethodBody.cs: Implement this.
1531 2004-10-08  Zoltan Varga  <vargaz@freemail.hu>
1533         * Module.cs: Handle the case when the global type does not exists.
1535 2004-10-03  Zoltan Varga  <vargaz@freemail.hu>
1537         * LocalVariableInfo.cs: Reorganize fields so LocalBuilder can inherit
1538         from this class.
1540 2004-09-28  Zoltan Varga  <vargaz@freemail.hu>
1542         * PropertyInfo.cs (OptionalCustomModifiers): Add [MonoTODO].
1544         * PropertyInfo.cs: Add stub for GetConstantValue ().    
1546         * ParameterInfo.cs (marshalAs): Make this private.
1548         * Module.cs (ModuleHandle): Add [CLSCompliant(false)].
1550         * LocalVariableInfo.cs MethodBody.cs: Disable default constructor.
1552         * ExceptionHandlingClause.cs: Disable default constructor.
1554 2004-09-27  Zoltan Varga  <vargaz@freemail.hu>
1556         * CustomAttributeData.cs CustomAttributeTypedArgument.cs 
1557         CustomAttributeNamedArgument.cs: New files.
1559         * MethodBody.cs LocalVariableInfo.cs ExceptionHandlingClause.cs
1560         ExceptionHandlingClauseFlags.cs: New files.
1562 2004-09-26  Zoltan Varga  <vargaz@freemail.hu>
1564         * FieldInfo.cs: Add support for returning MarshalAsAttribute.
1566         * ParameterInfo.cs: Add marshalAs field, add support for returning
1567         MarshalAsAttribute.
1569 2004-09-25  Zoltan Varga  <vargaz@freemail.hu>
1571         * Module.cs: Add new 2.0 GetMethods and GetFields methods.
1573         * ParameterInfo.cs: Add GetPseudoCustomAttributes () method.
1575 2004-09-24  Zoltan Varga  <vargaz@freemail.hu>
1577         * MonoField.cs: Add GetFieldOffset.
1579         * ObfuscationAttribute.cs: Add ApplyToMembers.
1581         * Assembly.cs: Add stub for ReflectionOnlyLoadFrom.
1582         
1583         * Assembly.cs (LoadWithPartialName): Add [ComVisible] attribute.
1585         * MonoMethod.cs FieldInfo.cs: Add GetPseudoCustomAttributes () method.
1587         * AssemblyNameFlags.cs: Add LongevityUnspecified.
1589 2004-09-23  Zoltan Varga  <vargaz@freemail.hu>
1591         * Module.cs: Remove [MonoTODO] from ResolveMember.
1593         * MemberInfo.cs: Add 'Module' property.
1595         * AssemblyFlagsAttribute.cs: Add 2.0 stuff.
1597         * Assembly.cs: Add stubs for ReflectionOnlyLoad methods. Add [Obsolete]
1598         to LoadWithPartialName on 2.0.
1600         * AssemblyNameFlags.cs: Add new 2.0 members.
1602         * FieldInfo.cs MonoField.cs PropertyInfo.cs ParameterInfo.cs MonoProperty.cs: Add stubs for Optinal/RequiredCustomModifiers.
1604         * ObfuscationAttribute.cs ObfuscateAssemblyAttribute.cs: New files.
1606         * EventInfo.cs: Fix 2.0 build.
1608         * MonoEvent.cs (MonoEventInfo): Add 'other_methods' field.
1610         * EventInfo.cs MonoEvent.cs: Add NET 2.0 GetOtherMethods method.
1612 2004-09-22  Zoltan Varga  <vargaz@freemail.hu>
1614         * Module.cs: Implement net 2.0 ResolveXXX methods.
1616         * Module.cs (resolve_token_exception): Fix type of exception thrown.
1618 2004-09-21  Martin Baulig  <martin@ximian.com>
1620         * Assembly.cs (MonoDebugger_CheckRuntimeVersion): New internal method.
1622 2004-09-20  Zoltan Varga  <vargaz@freemail.hu>
1624         * Assembly.cs: Implement 2.0 reflection properties.
1626         * Module.cs: Implement 2.0 reflection properties. Add 'token' field.
1628 2004-09-19  Zoltan Varga  <vargaz@freemail.hu>
1630         * PortableExecutableKind.cs ImageFileMachine.cs: Make this internal
1631         under 1.0.
1633         * MemberInfo.cs ParameterInfo.cs: Add MetadataToken property.
1635         * Module.cs: Add ModuleHandle property and new icalls.
1637 2004-09-18  Zoltan Varga  <vargaz@freemail.hu>
1639         * Module.cs: Add net 2.0 Mvid property.
1641 2004-08-30  Sebastien Pouliot  <sebastien@ximian.com>
1643         * Assembly.cs: Added internal Demand(PermissionSet) for CAS.
1645 2004-08-30  Zoltan Varga  <vargaz@freemail.hu>
1647         * MethodBase.cs (GetMethodFromHandle): Avoid passing a valuetype to
1648         icalls.
1650 2004-08-29  Zoltan Varga  <vargaz@freemail.hu>
1652         * MethodBase.cs (GetMethodFromHandle): Implement.
1654 2004-08-13  Marek Safar  <marek.safar@seznam.cz>
1656         * Assembly.cs: Made _minimum, _optional, _refuse fields internal.
1657         To be reusable by AssemblyBuilder.
1659 2004-08-09  Sebastien Pouliot  <sebastien@ximian.com>
1661         * Assembly.cs: Fixed some exceptions in NET_1_1 and added some 2.0
1662         properties (required for compiling the new unit tests).
1663         * PortableExecutableKind.cs: New. Flags for NET_2_0.
1664         * ImageFileMachine.cs: New. (Rather limited) enum for NET_2_0.
1666 2004-08-08  Sebastien Pouliot  <sebastien@ximian.com>
1668         * Assembly.cs: Get default evidences when no evidences have been 
1669         supplied. Added internal methods for CAS.
1670         * AssemblyName.cs: New constructor for NET_2_0.
1672 2004-08-05  Sebastien Pouliot  <sebastien@ximian.com>
1674         * Assembly.cs: Added new fields for CAS to match the runtime (v23).
1676 2004-07-29  Martin Baulig  <martin@ximian.com>
1678         * Module.cs (Mono_GetGuid): Make this static.
1680 Sat Jul 10 15:48:34 CEST 2004 Paolo Molaro <lupus@ximian.com>
1682         * Module.cs: return just name in ToString (bug #61287).
1684 2004-07-03  Zoltan Varga  <vargaz@freemail.hu>
1686         * Module.cs: Initialize FilterTypeName[IgnoreCase]. Fixes #61048.
1688 2004-06-17  Gert Driesen <drieseng@users.sourceforge.net>
1690         * Pointer.cs: remove serializable attribute to match MS.NET
1692 2004-06-17  Gert Driesen <drieseng@users.sourceforge.net>
1693         
1694         * ParameterModifier.cs: marked serializable, renamed field to match
1695         MS.NET, throw ArgumentException when parameter count is less than or
1696         equal to zero
1698 2004-06-15  Gert Driesen <drieseng@users.sourceforge.net>
1700         * AssemblyName.cs: added TODO for serialization
1701         * Pointer.cs: fixed Box method to return object instead of 
1702         Pointer
1704 2004-06-15  Sebastien Pouliot  <sebastien@ximian.com>
1706         * MemberInfo.cs: Changed constructor from internal to protected.
1708 2004-06-11  Martin Baulig  <martin@ximian.com>
1710         * FieldInfo.cs (Mono_GetGenericFieldDefinition): New method for NET_2_0.
1712 2004-06-11  Lluis Sanchez  <lluis@ximian.com>
1714         * StrongNameKeyPair.cs: Catch exception when getting PublicKey to match 
1715           MS implementation. Generate the RSA in the constructors.
1717 2004-06-10  Lluis Sanchez  <lluis@ximian.com>
1719         * AssemblyName.cs: Added missing fields to serialization methods.
1720         * StrongNameKeyPair.cs: Made it compatible with MS serialization.
1722 2004-06-08  Jacson Harper  <jackson@ximian.com>
1724         * AssemblyName.cs (GetAssemblyName): Send a fullpath to the
1725         runtime. This way the codebase is set properly. The codebase is
1726         using g_filename_to_uri which expects a full path.
1727         
1728 2004-06-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1730         * Binder.cs: don't crash when we have a 'null' argument Type array.
1731         Allow it for non-value types. Fixed for both, methods and properties.
1732         Closes bug #58846.
1734 2004-06-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1736         * Binder.cs: default score must be lower than fail_score or we'll get
1737         an ambiguous match when no indexers given and one single match is found.
1739 2004-06-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1741         * Binder.cs: removed ^Ms. In case of several properties matching, try
1742         to disambiguate based on the indexer types provider and the conversions
1743         from those into the ones of the property.
1745 2004-05-31  Gert Driesen <drieseng@users.sourceforge.net>
1747         * Assembly.cs: added missing ComVisible attribute on
1748         ImageRuntimeVersion property
1749         * ConstructorInfo.cs: added missing attributes on Invoke
1750         * EventInfo.cs: added missing attributes
1751         * FieldInfo.cs: added missing attributes
1752         * MethodBase.cs: added missing attributes
1753         * PropertyInfo.cs: added missing attributes
1755 2004-05-22  Cesar Lopez Nataren  <cesar@ciencias.unam.mx>
1757         * FieldInfo.cs: changed default constructor from internal to protected, so classes
1758         that inherit from it can get build. 
1760 2004-05-18  Gert Driesen (drieseng@users.sourceforge.net)
1762         * MonoProperty.cs: return correct MethodInfo for 
1763         property with only a get or set method. Fixes
1764         bug #58661.
1766 2004-05-18  Sebastien Pouliot  <sebastien@ximian.com>
1768         * Assembly.cs: Return an empty Evidence collection to avoid 
1769         NullReferenceException from calling code (as this is never
1770         null with MS implementation). See bugzilla #53548.
1772 2004-05-14  Zoltan Varga  <vargaz@freemail.hu>
1774         * Assembly.cs: Add stub for LoadFrom.
1776         * Assembly.cs: Fix build.
1778 2004-05-13  Zoltan Varga  <vargaz@freemail.hu>
1780         * Assembly.cs: Add ModuleResolve event.
1782         * Module.cs (Mono_GetGuid): Make this internal.
1784         * FieldInfo.cs: Add stubs for {Get,Set}ValueDirect.
1786 2004-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1788         * Binder.cs: check for ambiguous matches in SelectMethod and
1789         SelectProperty. Fixes bug #58381.
1791 2004-05-06  Jackson Harper <jackson@ximian.com>
1793         * Assembly.cs: remove TODO, this is done.
1794         
1795 2004-05-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1797         * Assembly.cs: ToString () returns the same as GetName ().ToString ().
1798         Fixes bug #58104.
1800 2004-05-03  Jackson Harper  <jackson@ximian.com>
1802         * Assembly.cs: Implement LoadWithPartialName. The bulk of this
1803         method is done in the runtime.
1804         
1805 2004-04-29  Lluis Sanchez Gual  <lluis@ximian.com>
1807         * MonoProperty.cs: Property.GetGetMethod() does not return the method if it
1808         is private (it did until now because of a bug). Make sure it works as it 
1809         worked before the fix.
1810         
1811 2004-04-27  Lluis Sanchez Gual  <lluis@ximian.com>
1813         * ICustomAttributeProvider.cs, IReflect.cs, MemberInfo.cs, AssemblyName.cs: 
1814           Removed completed     TODOs.
1815         * MonoProperty.cs: In GetAccessors(), GetGetMethod() and GetSetMethod(),
1816           do not return private methods if nonPublic == false.
1817         * ReflectionTypeLoadException.cs: Implemented serialization support.
1819 2004-04-26  Jackson Harper  <jackson@ximian.com>
1821         * Assembly.cs: Add icall to determine if an assembly has been
1822         loaded from the GAC.
1824 2004-04-23  Atsushi Enomoto  <atsushi@ximian.com>
1826         * MethodBase.cs, MonoMethod.cs, TypeDelegator.cs :
1827           The fix should be easier ;)
1829 2004-04-23  Atsushi Enomoto  <atsushi@ximian.com>
1831         * MethodBase.cs, MonoMethod.cs, TypeDelegator.cs :
1832           NET_2_0 related build fix.
1834 2004-04-19  Lluis Sanchez Gual  <lluis@ximian.com>
1836         * Assembly.cs: Removed TODO for CreateQualifiedName.
1837         * AssemblyName.cs: Fixed serialization code.
1838         * AssemblyNameProxy.cs: Implemented.
1839         * Module.cs: Implemented GetMethod() methods, FindTypes() and GetObjectData.
1841 2004-04-07  Martin Baulig  <martin@ximian.com>
1843         * MonoGenericInst.cs (MonoGenericParam): Removed.
1845 2004-04-07  Martin Baulig  <martin@ximian.com>
1847         * MethodBase.cs
1848         (MethodBase.GetGenericParameters): Renamed to GetGenericArguments().
1850         * MonoGenericInst.cs (MonoGenericInst.DeclaringType): Removed.
1851         (MonoGenericInst.GetNestedTypes): Just call
1852         `generic_type.GetNestedTypes (bf)' here.
1854         * MonoMethod.cs (MonoMethod.ToString): If we're a generic method,
1855         include the type arguments.
1857 2004-04-06  Sebastien Pouliot  <sebastien@ximian.com>
1859         * StrongNameKeyPair.cs: Added support for ECMA "key". Now returns a
1860         correct StrongName instance when the ECMA "key" is used.
1862 2004-04-02  Martin Baulig  <martin@ximian.com>
1864         * MonoGenericInst.cs (MonoGenericInst.DeclaringType): Override.
1866 2004-04-01  Martin Baulig  <martin@ximian.com>
1868         * MonoGenericInst.cs (MonoGenericParam.IsValueTypeImpl): Override
1869         this and always return false.
1871 2004-04-01  Martin Baulig  <martin@ximian.com>
1873         * MonoGenericInst.cs (MonoGenericParam.IsSubclassOf): Override this.    
1875 2004-03-30  Martin Baulig  <martin@ximian.com>
1877         * MonoGenericInst.cs
1878         (MonoGenericParam): Added `bool has_ctor_constraint' field.
1879         (MonoGenericParam.SetConstraints): Added `bool
1880         has_ctor_constraint' argument.  
1882 2004-03-29  Martin Baulig  <martin@ximian.com>
1884         * MethodBase.cs (MethodBase.Mono_IsInflatedMethod): New public
1885         virtual property.
1886         (MethodBase.HasGenericParameters): Use the "official" behavior
1887         here, ie. return false if we're not a generic method.
1889 2004-03-29  Martin Baulig  <martin@ximian.com>
1891         * MethodBase.cs: Moved the generics stuff here, made it virtual
1892         where neccessary and use the correct API.
1894 2004-03-24  Sebastien Pouliot  <sebastien@ximian.com>
1896         * StrongNameKeyPair.cs: Added an internal method to return a 
1897         StrongName object (for AssemblyBuilder). Simplified implementation 
1898         using Mono.Security.Cryptography.CryptoConvert class.
1900 2004-03-24  Zoltan Varga  <vargaz@freemail.hu>
1902         * AssemblyFileVersionAttribute.cs (.ctor): Add argument checking.
1904 2004-03-23  Martin Baulig  <martin@ximian.com>
1906         * MonoGenericInst.cs: Added support for events.
1908 2004-03-23  Martin Baulig  <martin@ximian.com>
1910         * MonoMethod.cs (MonoMethod.ToString): Don't include the namespace
1911         if it's the empty string.
1913 2004-03-10  Martin Baulig  <martin@ximian.com>
1915         * MethodBase.cs (MethodBase): Implemented
1916         GetGenericMethodDefinition() and HasGenericParameters.
1918 2004-03-09  Martin Baulig  <martin@ximian.com>
1920         * MonoEvent.cs (MonoEventInfo): Replaced `parent' with
1921         `declaring_type' and `reflected_type'.
1922         (MonoEvent): Distinguish between declaring and reflected type.
1924 2004-02-25  Martin Baulig  <martin@ximian.com>
1926         * MonoGenericInst.cs
1927         (MonoGenericInst.GetNestedTypes): Override this.
1929 2004-02-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1931         * Binder.cs:
1932         (SelectProperty): check the return Type if provided.
1934 2004-02-17  Martin Baulig  <martin@ximian.com>
1936         * MonoGenericInst.cs (MonoGenericInst.GetProperties): Added
1937         support for properties.
1939 2004-02-17  Martin Baulig  <martin@ximian.com>
1941         * MonoGenericInst.cs (MonoGenericInst.GetMethods): Walk up the
1942         class hierarchy and return members from the parent classes.
1943         (GetConstructors, GetFields): Likewise.
1945 2004-02-17  Martin Baulig  <martin@ximian.com>
1947         * MonoGenericInst.cs (MonoGenericInst.initialize): Don't inflate
1948         all the members here; we only do this for members of the current
1949         class and only when they're actually queried for.
1951 2004-02-12  Martin Baulig  <martin@ximian.com>
1953         * MonoGenericInst.cs (MonoInflatedField): Removed.
1955         * MonoGenericInst.cs (MonoInflatedMethod, MonoInflatedCtor): Removed.
1957 2004-02-08  Martin Baulig  <martin@ximian.com>
1959         * MonoGenericInst.cs (MonoGenericInst.inflate): Pass recursive
1960         invocations the `reflected' type as `reflected', not `this'.
1961         (MonoInflatedMethod, MonoInflatedCtor): Reflect latest runtime changes.
1963 2004-02-08  Martin Baulig  <martin@ximian.com>
1965         * MonoGenericInst.cs (MonoGenericInst.GetParentType): New interncall.
1966         (MonoGenericInst.GetInterfaces_internal): New interncall.
1967         (MonoGenericInst): Reflect latest API changes; use GetParentType()
1968         and GetInterfaces_internal() instead of the fields.     
1970 2004-02-06  Martin Baulig  <martin@ximian.com>
1972         * MonoGenericInst.cs (MonoGenericInst.DeclaringType): Override this.
1974 2004-02-03  Martin Baulig  <martin@ximian.com>
1976         * MonoGenericInst.cs (MonoGenericInst.GetInterfaces): Override this.
1978 2004-01-25  Martin Baulig  <martin@ximian.com>
1980         * MonoGenericInst.cs: Honor BindingFlags.DeclaredOnly.
1982 2004-01-19  Zoltan Varga  <vargaz@freemail.hu>
1984         * Assembly.cs (GetManifestResourceStream): Make the IntPtrStream keep
1985         a reference on the Module object which contains the resource.
1987         * Module.cs: Decrease the image reference count when the Module is
1988         garbage collected.
1990 2004-01-16  Martin Baulig  <martin@ximian.com>
1992         * Assembly.cs: Make the `MonoDebugger_' methods static.
1994 2004-01-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1996         * MonoProperty.cs: changed get_property_info so that it only gets the
1997         values needed. Reduces the allocations needed.
1999 2004-01-15  Martin Baulig  <martin@ximian.com>
2001         * Assembly.cs: Make the `MonoDebugger_' methods internal.
2003 2004-01-04  Nick Drochak <ndrochak@gol.com>
2005         * Assembly.cs: Removed unused variable in catch block.Eliminates a build
2006         warning.
2008 2003-12-29 Ben Maurer  <bmaurer@users.sourceforge.net>
2010         * MethodBase.cs: Internal method to get param count (this
2011         way we can get the info for the ilgen without creating
2012         an array, if we override the method).
2014 2003-12-18  Zoltan Varga  <vargaz@freemail.hu>
2016         * Assembly.cs: Implement LoadFrom.
2018 2003-12-17  Zoltan Varga  <vargaz@freemail.hu>
2020         * Assembly.cs: Add stubs for LoadFile.
2022 2003-12-16  Zoltan Varga  <vargaz@freemail.hu>
2024         * Assembly.cs (GetManifestResourceStream): Only load non-embedded
2025         resources from files.
2027 2003-12-15  Zoltan Varga  <vargaz@freemail.hu>
2029         * MonoField.cs (SetValue): Throw an exception if the value cannot be
2030         converted to the field's type. Fixes #52177.
2032 2003-12-11  Lluis Sanchez Gual <lluis@ximian.com>
2033         
2034         * AmbiguousMatchException.cs: Added serialization constructor.
2035         
2036 2003-12-08  Martin Baulig  <martin@ximian.com>
2038         * MonoGenericInst.cs (MonoGenericParam): New internal class;
2039         derives from MonoType.  
2041 2003-12-08  Patrik Torstensson <p@rxc.se>
2043         * Binder.cs: Added internal helpers to get derived level and select the 
2044         most derived methodbase (used in GetMethodImpl)
2046 2003-11-25  Zoltan Varga  <vargaz@freemail.hu>
2048         * Assembly.cs (LoadWithPartialName): Return null instead of throwing
2049         an exception to match MS behavior.
2051 2003-11-24  Zoltan Varga  <vargaz@freemail.hu>
2053         * MonoMethod.cs: Add missing constructor.
2055 2003-11-21  Zoltan Varga  <vargaz@freemail.hu>
2057         * MethodBase.cs (Invoke): Make this virtual under NET 1.2.
2059 2003-11-16  Martin Baulig  <martin@ximian.com>
2061         * MonoGenericInst.cs (MonoGenericInst.inflate): Call
2062         `parent.inflate (parent,...)' instead of
2063         `parent.inflate (reflected,...)'.
2065 2003-11-16  Zoltan Varga  <vargaz@freemail.hu>
2067         * Assembly.cs (InternalGetAssemblyName): New icall.
2069         * AssemblyName.cs (GetAssemblyName): Implement this without loading
2070         the assembly in question. Fixes #51035.
2072 2003-11-14  Martin Baulig  <martin@ximian.com>
2074         * MonoGenericInst.cs (MonoGenericInst): Added
2075         `MonoGenericInst[] interfaces' field.  This is only used for
2076         interface types.
2077         (MonoGenericInst.inflate): If we're an interface type, add the
2078         methods from all interfaces we inherit.
2080 2003-11-14  Zoltan Varga  <vargaz@freemail.hu>
2082         * AssemblyNameFlags.cs MethodAttributes.cs: Add new enumerated values 
2083         from NET 1.1.
2084         
2085         * *.cs: Add missing attributes.
2087 2003-11-11  Todd Berman  <tberman@gentoo.org>
2089         * AssemblyName.cs (FullName): Fixed to include a proper PublicKeyToken.
2091 2003-11-11  Zoltan Varga  <vargaz@freemail.hu>
2093         * MonoMethod.cs: Implement CallingConvention member.
2095 2003-11-10  Zoltan Varga  <vargaz@freemail.hu>
2097         * Assembly.cs (InternalGetType): Add a 'module' argument so this
2098         method can be used from Module as well.
2100         * Module.cs (GetType): Implement.
2102         * Module.cs (GetTypes): Implement.
2104         * Module.cs: Remove some [MonoTODO] attributes from implemented methods.
2105 2003-11-08  Martin Baulig  <martin@ximian.com>
2107         * MonoGenericInst.cs (MonoInflatedMethod, MonoInflatedCtor): Added
2108         a private `IntPtr ginst' field.
2109         (MonoGenericInst.IsValueTypeImpl, inflate): Allow interfaces.
2111 2003-11-02  Martin Baulig  <martin@ximian.com>
2113         * MonoGenericInst.cs (MonoGenericInst.initialize): Include members
2114         from our parent classes in the `methods', `ctors' and `fields'
2115         arrays.  When inflating them, reflection now sets their
2116         `declaring_type' and `reflected_type' fields.
2117         (MonoInflatedMethod, MonoInflatedCtor): Added
2118         `MonoGenericInst declaring_type' and `MonoGenericInst reflected_type'
2119         fields and override the `DeclaringType' and `ReflectedType' properties.
2121 2003-11-02  Martin Baulig  <martin@ximian.com>
2123         * MonoGenericInst.cs (MonoGenericInst.IsValueTypeImpl): Override this.
2125 2003-10-31  Martin Baulig  <martin@ximian.com>
2127         * MonoGenericInst.cs (MonoInflatedField): New internal class.
2128         (MonoGenericInst.GetFields): Override this method and inflate
2129         the fields.
2131         * MonoField.cs: Don't make this class sealed.
2133 2003-10-30  Martin Baulig  <martin@ximian.com>
2135         * MonoGenericInst.cs (MonoInflatedMethod, MonoInflatedCtor): New
2136         internal classes.
2138 2003-10-25  Martin Baulig  <martin@ximian.com>
2140         * MonoGenericInst.cs: New internal class.
2142 2003-10-18  Martin Baulig  <martin@ximian.com>
2144         * MethodInfo.cs (MethodInfo.GetGenericArguments): Make this method
2145         abstract; use an interncall in MonoMethod and a custom
2146         implementation in MethodBuilder.        
2148 2003-10-17  Pedro Martinez Julia  <yoros@wanadoo.es>
2150         * MonoEvent.cs: implement ToString method as in MS.NET.
2152         * MonoMethod.cs: fix some differences between mono and MS.NET
2153         implementation of ToString.
2155 2003-10-17  Zoltan Varga  <vargaz@freemail.hu>
2157         * AssemblyName.cs: Fix Version property when some version fields are
2158         undefined.
2160 2003-10-17  Martin Baulig  <martin@ximian.com>
2162         * MethodInfo.cs (MethodInfo.GetGenericArguments): New method.
2163         (MethodInfo.BindGenericParameters): New method.
2165 2003-10-16  Martin Baulig  <martin@ximian.com>
2167         * MethodInfo.cs (MethodInfo.IsGenericMethodDefinition): New
2168         property.       
2170 2003-08-08  Lluis Sanchez Gual  <lluis@ximian.com>
2172         * ParameterInfo.cs: Modified constructor of ParameterInfo for
2173           the return type of a method. Since parameter positions are
2174           zero-based, the position of the return type must be is -1.
2176 2003-08-06  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2178         * TargetInvocationException.cs: Fixed signature
2180 2003-07-24  Miguel de Icaza  <miguel@ximian.com>
2182         * TypeDelegator.cs: Added generics stubs.
2184 2003-07-21  Lluis Sanchez Gual  <lluis@ximian.com>
2186         * ParameterInfo.cs: Position is zero-based in ParameterInfo.
2187           Set the right position value when getting from ParameterBuilder.
2189 Thu Jul 17 17:26:59 CEST 2003 Paolo Molaro <lupus@ximian.com>
2191         * FieldInfo.cs, MonoField.cs: cleanups. Cache some info and use
2192         finer-grained icalls. Requires a matching runtime.
2194 2003-07-11  Zoltan Varga  <vargaz@freemail.hu>
2196         * AssemblyFlagsAttribute.cs: Added new constructor from NET 1.1.
2198         * AssemblyFlagsAttribute.cs: Added new property from NET 1.1.
2200 2003-07-10  Zoltan Varga  <vargaz@freemail.hu>
2202         * Assembly.cs: Implemented ImageRuntimeVersion property from NET 1.1.
2204 Mon Jun 30 19:12:08 CEST 2003 Paolo Molaro <lupus@ximian.com>
2206         * Pointer.cs: implemented.
2208 2003-06-15  Zoltan Varga  <vargaz@freemail.hu>
2210         * EventInfo.cs: Implement IsSpecialName.
2212 2003-06-10  Zoltan Varga  <vargaz@freemail.hu>
2214         * Module.cs (Mono_GetGuid): New method to return the GUID of the
2215         module.
2217 2003-05-21  Zoltan Varga  <vargaz@freemail.hu>
2219         * Module.cs: Implement GetField and its friends.
2221 2003-05-20  Zoltan Varga  <vargaz@freemail.hu>
2223         * Assembly.cs (GetManifestResourceStream): Moved handling of 
2224         linked resources into managed code using the newly implemented
2225         GetManifestResourceInfo () method.
2227 2003-05-19  Zoltan Varga  <vargaz@freemail.hu>
2229         * Module.cs: Implemented IsResource.
2231         * Assembly.cs: Implemented GetManifestResourceInfo, GetModules,
2232         GetModule, GetLoadedModules methods.
2233         * Assembly.cs (GetManifestResourceStream): Added support for 
2234         resources in extern assemblies.
2236 2003-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2238         * Assembly.cs: fixed bug #42833.
2240 2003-05-11  Miguel de Icaza  <miguel@ximian.com>
2242         * Binder.cs (ChangeType): Very simplistic change.  Am not sure if
2243         it is correct, but it makes RemotingCorba move along a bit more
2244         (Remoting.Corba invokes Binder.ConvertArgs, which calls
2245         Binder.ChangeType with an Attribute [] to Object []).
2247 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2249         * Binder.cs:
2250         (check_type): fixed bug #41655.
2252 2003-05-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2254         * Assembly.cs: implemented GetSatelliteAssembly.
2256 Fri Apr 11 13:06:10 CEST 2003 Paolo Molaro <lupus@ximian.com>
2258         * Assembly.cs: added GetNamespaces() icall.
2260 2003-03-17  Zoltan Varga  <vargaz@freemail.hu>
2262         * FieldInfo.cs (GetFieldFromHandle): Implemented.
2264 2003-03-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2266         * Assembly.cs: added missing stuff. Only ModuleResolve event is left
2267         out to avoid changing MonoReflectionAssembly by now.
2268         * ModuleResolveEventHandler.cs: delegate.
2270 2003-02-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2272         * TargetInvocationException.cs: added serialization ctor.
2274 2003-02-18  Martin Baulig  <martin@ximian.com>
2276         * Assembly.cs (MonoDebugger_GetMethodToken): New method to get a
2277         method's metadata token.
2279 2003-02-04  Sebastien Pouliot  <spouliot@videotron.ca>
2281         * Module.cs: Corrected indentation for class.
2283 2003-02-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2285         * Binder.cs:
2286         (check_type): return true when the target type is object and the source
2287         is a value type.
2289 2003-02-03 Patrik Torstensson
2291         * Binder.cs: minimize locking time in DefaultBinder.
2293 2003-02-01  Sebastien Pouliot  <spouliot@videotron.ca>
2295         * Module.cs: Oups - not implemented. Added MonoTODO to most methods
2296         so it's real status get reflected correctly on the web site.
2298 2003-01-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2300         * MonoMethod.cs: implemented GetBaseDefinition ().
2302 2003-01-28  Patrik Torstensson
2303         * MonoMethod.cs: Added support for serialization for MonoMethod and MonoCMethod
2304         * ReflectionSerializationHolder.cs: Support class for serialization
2306 2003-01-17  Zoltan Varga  <vargaz@freemail.hu>
2308         * ParameterInfo.cs: modified constructor so it allows the 
2309         ParameterBuilder to be null and add a 'position' argument which will
2310         be used when pb is null.
2312 2003-01-16  Lluis Sanchez Gual <lsg@ctv.es>
2314         * Assembly.cs: added serialization support.
2316 Sat Jan 4 18:26:41 CET 2003 Paolo Molaro <lupus@ximian.com>
2318         * MonoMethod.cs: propagate exceptions from the internal invoke
2319         code that need to be propagated.
2321 Sat Jan 4 18:04:07 CET 2003 Paolo Molaro <lupus@ximian.com>
2323         * Binder.cs: throw an exception if the number of arguments 
2324         when invoking a method is incorrect.
2326 Thu Jan 2 19:04:58 CET 2003 Paolo Molaro <lupus@ximian.com>
2328         * Binder.cs: In SelectMethod() look for an exact match first.
2330 2003-01-01  Rachel Hestilow <hestilow@ximian.com>
2332         * MonoField.cs (SetValue): Fix logic typo. Check that obj is
2333         non-null only for the non-static case.
2335 2002-12-30  Sebastien Pouliot <spouliot@videotron.ca>
2337         * AssemblyName.cs: Fixed null cultureinfo in FullName (as reported by 
2338         Zoltan).
2340 2002-12-23  Sebastien Pouliot <spouliot@videotron.ca>
2342         * AssemblyName.cs: GetPublicKey now return an empty array (not null)
2343         when an assembly isn't signed with a StrongName (to match MS 
2344         implementation) and null when no assembly is referenced. Also removed 
2345         commented code (no bug reported so it was probably not used).
2347 Thu Dec 19 16:43:19 CET 2002 Paolo Molaro <lupus@ximian.com>
2349         * MonoMethod.cs, ParameterInfo.cs: return a custom attribute
2350         provider for the return type of a method.
2352 2002-12-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2354         * AssemblyName.cs: little fix in FullName.
2356 2002-12-07  Sebastien Pouliot <spouliot@videotron.ca>
2358         * AssemblyName.cs: Added missing methods/interfaces. Fixed some
2359         code to match the MS Framework.
2360         * StrongNameKeyPair.cs: Completed the "visible" implementation.
2361         There must be some internal methods to allow signing with the key.
2363 2002-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2365         * EventInfo.cs: implemented (Add|Remove)EventHandler.
2367 Mon Nov 18 17:52:56 CET 2002 Paolo Molaro <lupus@ximian.com>
2369         * Assembly.cs: implemented GetManifestResourceStream (Type type,
2370         * String name).
2372 2002-11-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2374         * Assembly.cs: changed name of GetType (string, bool, bool) to
2375         InternalGetType.
2377 2002-10-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2379         * TargetInvocationException.cs: modified default message.
2381 2002-10-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2383         * MonoProperty.cs:
2384         * PropertyInfo.cs: fixed bug #31535.
2386 2002-09-27  Martin Baulig  <martin@gnome.org>
2388         * Assembly.cs (Assembly.GetReferencedAssemblies): Implemented.
2390 2002-09-24  Martin Baulig  <martin@gnome.org>
2392         * Assembly.cs (MonoDebugger_GetType): New method to get a Type
2393         from its metadata token.  This should only be used by the debugger.
2395 2002-09-21  Martin Baulig  <martin@gnome.org>
2397         * Assembly.cs (MonoDebugger_GetLocalTypeFromSignature): New method to
2398         get the type of a local variable from its signature.  This should only
2399         be used by the debugger.
2401 2002-09-20  Martin Baulig  <martin@gnome.org>
2403         * Assembly.cs (MonoDebugger_GetMethod): New method to get a MethodBase
2404         from its metadata token.  This should only be used by the debugger.
2406 Wed Sep 11 12:50:54 CEST 2002 Paolo Molaro <lupus@ximian.com>
2408         * Binder.cs: more default binder implementation.
2410         * FieldInfo.cs, MonoField.cs: fixed SetValue () implementation.
2411         * MonoMethod.cs: use the binder in the Invoke () implementation.
2412         Implemented custom attributes methods and ToString for constructors.
2414 Thu Sep 5 20:36:27 CEST 2002 Paolo Molaro <lupus@ximian.com>
2416         * Binder.cs: finished the Binder class and implemented the default
2417         binder.
2419 2002-09-03  Martin Baulig  <martin@gnome.org>
2421         * Assembly.cs (Assembly.Location): Implemented.
2423 2002-08-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2425         * MonoField.cs:
2426         (GetValue): allow obj to be null (used for static fields).
2428 2002-08-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2430         * MonoField.cs: GetValue renamed to GetValueInternal. Added check for
2431         null.
2433 Wed Aug 21 13:03:25 CEST 2002 Paolo Molaro <lupus@ximian.com>
2435         * Assembly.cs: GetEntryAssembly patch by Tomi Pakarinen 
2436         <tomi.pakarinen@welho.com>.
2438 2002-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2440         * Assembly.cs: FullName now returns a proper string instead of
2441         something like 'file://...'.
2443         * AssemblyName.cs: added missing ToString method.
2445 2002-08-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2447         * FieldInfo.cs: implemented SetValue.
2449 Wed Aug 14 17:37:30 CEST 2002 Paolo Molaro <lupus@ximian.com>
2451         * MonoEvent.cs, MonoMethod.cs: implemented ReflectedType.
2453 2002-08-14  Dick Porter  <dick@ximian.com>
2455         * Assembly.cs: Stub out GetSatelliteAssembly
2457 2002-08-12  Tim Coleman <tim@timcoleman.com>
2458         * MonoProperty.cs:
2459                 Allow multiple parameters for GetValue ()
2461 Thu Aug 8 13:05:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
2463         * Assembly.cs: implemented GetFile() and GetFiles().
2465 Mon Aug 5 21:19:41 CEST 2002 Paolo Molaro <lupus@ximian.com>
2467         * Assembly.cs: implemented EntryPoint and a few 
2468         resource related methods.
2470 Wed Jul 24 13:08:56 CEST 2002 Paolo Molaro <lupus@ximian.com>
2472         * MethodBase.cs: implemented GetCurrentMethod.
2473         * Assembly.cs: implemented GetExecutingAssembly and
2474         GetCallingassembly.
2476 Mon Jul 1 18:01:49 CEST 2002 Paolo Molaro <lupus@ximian.com>
2478         * MonoProperty.cs: handle properties with only a set method.
2480 2002-05-24  Martin Baulig  <martin@gnome.org>
2482         * ParameterInfo.cs: Added internal constructor.
2484 Thu May 23 17:18:46 CEST 2002 Paolo Molaro <lupus@ximian.com>
2486         * Assembly.cs: implemented CreateInstance ().
2488 2002-05-22  Martin Baulig  <martin@gnome.org>
2490         * MethodBase.cs (get_next_table_index): Added `object obj' argument.
2492 Tue May 21 12:07:40 CEST 2002 Paolo Molaro <lupus@ximian.com>
2494         * EventInfo.cs: more implementation.
2496 Mon May 20 17:37:39 CEST 2002 Paolo Molaro <lupus@ximian.com>
2498         * MonoEvent.cs: fill-in the implementation.
2500 Sat May 4 15:00:39 CEST 2002 Paolo Molaro <lupus@ximian.com>
2502         * Assembly.cs, AssemblyName.cs: updates and fixes.
2504 2002-04-24      Patrik Torstensson <patrik.torstensson@labs2.com>
2506         * MonoProperty.cs (GetValue) : basic implementation to support nunit
2507         * PropertyInfo.cs (GetValue) : call MonoProperty::GetValue instead of returning null
2509 Thu Apr 18 16:40:54 CEST 2002 Paolo Molaro <lupus@ximian.com>
2511         * MonoMethod.c: cache the method name.
2513 2002-04-12  Duncan Mak  <duncan@ximian.com>
2515         * AssemblyAlgorithmIdAttribute.cs: Fixed typo in AlgorithmId
2516         property.
2518         * AssemblyDelaySignAttribute.cs: Fixed type in DelaySign
2519         attribute.
2521         * AssemblyFileVersionAttribute.cs: Renamed FileVersion property to
2522         Version.
2524         * BindingFlags.cs: Added missing value "PutRefDispProperty".
2526         * FieldAttributes.cs: Removed value "HasSecurity".
2528         * ManifestResourceInfo.cs: Added missing properties FileName,
2529         ReferencedAssembly and ResourceLocation.
2531         * TargetInvocationException.cs: Added the missing constructors.
2533 Fri Apr 12 18:32:34 CEST 2002 Paolo Molaro <lupus@ximian.com>
2535         * MonoMethod.cs: make Name property an icall.
2537 2002-04-08  Nick Drochak  <ndrochak@gol.com>
2539         * DefaultMemberAttribute.cs: Add AttributeUsage attribute for class,
2540         struct and interface.
2542 Fri Apr 5 15:40:24 CEST 2002 Paolo Molaro <lupus@ximian.com>
2544         * MonoEvent.cs: remove unused code.
2545         * MonoProperty: implement ToString().
2547 Wed Apr 3 17:59:26 CEST 2002 Paolo Molaro <lupus@ximian.com>
2549         * Assembly.cs: implement GetTypes() and GetExportedTypes().
2551 Mon Mar 25 18:54:58 CET 2002 Paolo Molaro <lupus@ximian.com>
2553         * MonoEvent.cs: added the needed fields.
2555 2002-03-20  Martin Baulig  <martin@gnome.org>
2557         * ConstructorInfo.cs (Invoke): Implemented, call the abstract Invoke.
2559         * MonoMethod.cs (MonoCMethod.Invoke): Implemented, call InternalInvoke.
2561 2002-03-14  Dietmar Maurer  <dietmar@ximian.com>
2563         * MonoMethod.cs (Invoke): call InternalInvoke
2565         * MethodBase.cs (Invoke): call virtual invoke function 
2567 Thu Mar 7 17:14:20 CET 2002 Paolo Molaro <lupus@ximian.com>
2569         * EventInfo.cs: add compiler needed methods.
2570         * MonoMethod.cs: make ToString() return the return type name, too.
2572 2002-03-07  Nick Drochak  <ndrochak@gol.com>
2574         * BindingFlags.cs: Add missing enum values.  Thanks CorCompare.
2576 Tue Mar 5 20:33:14 CET 2002 Paolo Molaro <lupus@ximian.com>
2578         * TypeAttributes.cs, MethodImplAttributes.cs: updates to latest spec.
2580 2002-02-26  Duncan Mak  <duncan@ximian.com>
2582         * StrongNameKeyPair.cs: Committed for Kevin Winchester (kwin@ns.sympatico.ca>.
2584 2002-02-24 Nick Drochak  <ndrochak@gol.com>
2586         * AssemblyNameFlags.cs: Use proper member name.  Thanks corcompare!
2588 Fri Feb 22 18:54:13 CET 2002 Paolo Molaro <lupus@ximian.com>
2590         * MonoField.cs: implement GetValue as an internalcall.
2591         Implemented ToString().
2593 Tue Feb 19 20:36:04 CET 2002 Paolo Molaro <lupus@ximian.com>
2595         * Assembly.cs, Module.cs, MonoField.cs, MonoMethod.cs,
2596         MonoProperty.cs, ParameterInfo.cs: Implemented custom attributes
2597         related methods.
2599 Thu Feb 14 18:55:23 CET 2002 Paolo Molaro <lupus@ximian.com>
2601         * TypeAttributes.cs: update to latest spec.
2603 Mon Feb 11 19:50:27 CET 2002 Paolo Molaro <lupus@ximian.com>
2605         * Assembly.cs: handle throwOnError in GetType() call.
2607 2002-02-07  Duncan Mak  <duncan@ximian.com>
2609         * AssemblyName.cs: Implemented ISerializable interface for the
2610         fields that we have.
2612 2002-02-05  Duncan Mak  <duncan@ximian.com>
2613         
2614         * Missing.cs: 
2615         * TargetException.cs: Added in CVS.
2617 2002-01-31  Duncan Mak  <duncan@ximian.com>
2619         * ReflectionTypeLoadException.cs: Added missing bits.
2621 2002-01-23  Duncan Mak  <duncan@ximian.com>
2623         * AssemblyAlgorithmIdAttribute.cs:
2624         * AssemblyCompanyAttribute.cs:
2625         * AssemblyConfigurationAttribute.cs:
2626         * AssemblyCopyrightAttribute.cs:
2627         * AssemblyCultureAttribute.cs:
2628         * AssemblyDefaultAliasAttribute.cs:
2629         * AssemblyDelaySignAttribute.cs:
2630         * AssemblyDescriptionAttribute.cs:
2631         * AssemblyFileVersionAttribute.cs:
2632         * AssemblyFlagsAttribute.cs:
2633         * AssemblyInformationalVersionAttribute.cs:
2634         * AssemblyKeyFileAttribute.cs:
2635         * AssemblyKeyNameAttribute.cs:
2636         * AssemblyNameProxy.cs:
2637         * AssemblyProductAttribute.cs:
2638         * AssemblyTitleAttribute.cs:
2639         * AssemblyTradeMarkAttribute.cs:
2640         * AssemblyVersionAttribute.cs:
2641         * CustomAttributeFormatException.cs:
2642         * InvalidFilterCriteriaException.cs:
2643         * TargetParameterCountException.cs: Added.
2645 2002-01-23  Miguel de Icaza  <miguel@ximian.com>
2647         * Assembly.cs (Assembly.CodeBase): Implement.
2648         (Assembly.FullName): simplistic and broken implementation.  Gets
2649         us where we were yesterday.
2651         Code style fix.
2653 Tue Jan 22 22:54:18 CET 2002 Paolo Molaro <lupus@ximian.com>
2655         * IReflect.cs: corrected GetMember() return type.
2656         * InterfaceMapping.cs, TypeDelegator.cs: implemented.
2658 Wed Jan 9 19:37:14 CET 2002 Paolo Molaro <lupus@ximian.com>
2660         * MonoMethod.cs: ToString () implementation.
2662 2002-01-04  Ravi Pratap  <ravi@ximian.com>
2664         * Assembly.cs : Decorate missing bits with the MonoTODO
2665         attribute.
2667         * ConstructorInfo.cs, MonoMethod.cs, MonoProperty.cs, ParameterInfo.cs,
2668         ReflectionTypeLoadException.cs : Ditto.
2670         * FieldInfo.cs : Ditto.
2671         
2672 Thu Jan 3 23:25:34 CET 2002 Paolo Molaro <lupus@ximian.com>
2673         
2674         * Assembly.cs: trow unimplemented exceptions.
2676 Tue Dec 18 18:46:22 CET 2001 Paolo Molaro <lupus@ximian.com>
2678         * MonoMethod.cs: implemented GetParameters().
2679         * MonoProperty.cs: PropertyInfo implementation.
2680         * ParameterInfo.cs: implemented.
2681         * PropertyInfo.cs: fixes.
2683 Thu Dec 13 20:18:05 CET 2001 Paolo Molaro <lupus@ximian.com>
2685         * FieldInfo.cs: implemented some Is* propeties.
2686         * MethodBase.cs: fixed attribute accessors.
2687         * MonoField.cs: runtime object to represent a field.
2688         * MonoMethod.cs: runtime object to represent a method.
2689         * AssemblyBuilder.cs: GetToken() methods to get tokens for
2690         strings, fields, methods...
2691         * ILGenerator.cs: handle tokens for methods.
2693 Mon Nov 19 13:56:55 CET 2001 Paolo Molaro <lupus@ximian.com>
2695         * MethodBase.cs: add internal get_next_table_index() for use in
2696         Reflection.Emit.
2698 Wed Nov 14 16:53:28 CET 2001 Paolo Molaro <lupus@ximian.com>
2700         * Assembly.cs: implement some of the Load() methods.
2701         * ConstructorInfo.cs: some missing stubs and fields.
2702         * FieldInfo.cs: IsInitOnly property.
2703         * ParameterInfo.cs: stubs for missing properties.
2704         * ParameterModifier.cs: implemented class.
2706 2001-11-10  Sean MacIsaac  <macisaac@ximian.com>
2708         * Assembly.cs: Filled in some stub implementations
2710         * ConstructorInfo.cs: Added some stub functions for NUnit
2712 Fri Nov 2 18:29:36 CET 2001 Paolo Molaro <lupus@ximian.com>
2714         * AmbiguousMatchException.cs, 
2715         * Assembly.cs, Module.cs: updates.
2716         * FieldInfo.cs: better compliance to the spec.
2717         * MethodBase.cs: move call_conv out of the way.
2718         * AssemblyBuilder.cs:  don't use internalcalls, more stuff supported.
2719         * FieldBuilder.cs: implemented.
2720         * ILGenerator.cs: implemented some opcode handling.
2721         * Label.cs: add constructor.
2722         * LocalBuilder.cs: implemented.
2723         * MethodBuilder.cs: don't use internalcalls, more implemented stuff.
2724         * ModuleBuilder.cs: don't use internalcalls, more meat here, too.
2725         * ParameterBuilder.cs: implemented.
2726         * PropertyBuilder.cs: implemented.
2727         * TypeBuilder.cs: don't use internalcalls, more stuff working.
2729 Tue Sep 25 16:48:50 CEST 2001 Paolo Molaro <lupus@ximian.com>
2731         * ConstructorInfo.cs, MemberFilter.cs, Module.cs: added.
2733 Fri Sep 14 16:12:08 CEST 2001 Paolo Molaro <lupus@ximian.com>
2735         * MethodBase.cs, MethodInfo.cs: added.
2737 Thu Sep 13 18:05:16 CEST 2001 Paolo Molaro <lupus@ximian.com>
2739         * Assembly.cs: added stub code.
2741 2001-07-18  Michael Lambert <michaellambert@email.com>
2743         * BindingFlags.cs: Add.