In class/corlib/System.Reflection/
[mcs.git] / class / corlib / System.Reflection / ChangeLog
blob9af9ef6b63d2c903f53fcfe1dbb2a7cdabba52c9
1 2009-03-26  Zoltan Varga  <vargaz@gmail.com>
3         * MonoMethod.cs: Add a 'member' argument to the get_parameter_info () icall.
5 2009-03-03  Matthew Metnetsky  <matthew@cowarthill.com>
7         * MonoMethod.cs: within Invoke only change types if BindingFlags.ExactBinding isn't set
9         * MonoMethod.cs: within Invoke ensure arg types match ParameterInfo types before
10         calling InvokeInternal
12 2009-03-20  Sebastien Pouliot  <sebastien@ximian.com>
14         * EventInfo.cs, MonoProperty.cs: Ensure the delegate optimization 
15         works correctly, i.e. throw the right exception, with Moonlight.
17 2009-03-11  Zoltan Varga  <vargaz@gmail.com>
19         * Binder.cs: Allow conversions from T to T?. Fixes #484294.
21 2008-03-02  Rodrigo Kumpera  <rkumpera@novell.com>
23         * EventInfo.cs: Apply similar trick to the one in MonoProperty to speed up
24         AddEventHandler.
26 2008-02-28  Rodrigo Kumpera  <rkumpera@novell.com>
28         * MonoProperty.cs (GetValue): Don't use the delegate optimization for valuetypes.
30 2008-02-26  Rodrigo Kumpera  <rkumpera@novell.com>
32         * MonoProperty.cs (GetValue): Optimize getters for properties without arguments.
34 2008-02-26  Rodrigo Kumpera  <rkumpera@novell.com>
36         * MonoProperty.cs (GetValue): Optimize getters for properties without arguments.
37         The optimization is to create a pair of chained delegates that duplicate the workings
38         on MethodBase::Invoke without all the aditional overhead and without doing two
39         managed/native transitions.
41         Simple Getter performance is up to 17x faster.
43         This patch reduces contention on domain and domain jit code hash locks, which
44         can be very hot on asp.net applications.
46 2008-02-21  Jb Evain  <jbevain@novell.com>
48         * Module.cs: add a new virtual GetModuleVersionId method,
49         and make the properties .MvId and ModuleVersionId call it.
50         This way, we can override it in ModuleBuilder.
51         Part of the fix for #471302.
53 2008-02-03  Rodrigo Kumpera  <rkumpera@novell.com>
55         * MonoMethod.cs: Fix the 1.1 build.
57 2008-02-02  Rodrigo Kumpera  <rkumpera@novell.com>
59         * MonoMethod.cs (ToString): Fix the representation of non primitive structs.
61 2008-02-02  Rodrigo Kumpera  <rkumpera@novell.com>
63         * MonoMethod.cs (ToString): Fix representation of pointer types.
65         Fixes #409583.
67 2009-01-24  Zoltan Varga  <vargaz@gmail.com>
69         * MonoGenericClass.cs: Fix warnings.
71 2009-01-24 Gonzalo Paniagua Javier <gonzalo@novell.com>
73         * Assembly.cs: add new LoadSatelliteAssemblyNoThrow method and use the
74         new LoadSatellite() in AppDomain.
76 2009-01-09  Zoltan Varga  <vargaz@gmail.com>
78         * CustomAttributeData.cs (ToString): Applied patch from Leszek Ciesielski
79         <skolima@gmail.com>. Use DeclaringType.FullName instead of DeclaringType.Name.
80         Fixes #464830.
82 2008-11-17  Rodrigo Kumpera  <rkumpera@novell.com>
84         * MonoField.cs (GetValue): Don't check for open generic types if the field
85         is a constant.
87 2008-11-11  Rodrigo Kumpera  <rkumpera@novell.com>
89         * Module.cs (ResolveMethod): Use internal method 
90         GetMethodFromHandleNoGenericCheck to avoid the generic type
91         limitation of GetMethodFromHandle.
93         Fixes #443763.
95 2008-10-02 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>
97         * MonoMethod.cs: throw a MemberAccessException when
98         trying to invoke a constructor creating an instance of an abstract
99         class. Return null when an instance of an object was passed as a
100         parameter when invoking a .ctor. Fixes bug #324185.
102 2008-09-07  Zoltan Varga  <vargaz@gmail.com>
104         * MonoField.cs: Add check to GetValue/SetValue () to avoid crashes when it is
105         called on fields of open types. Fixes #424077.
107 2008-08-12  Gert Driesen  <drieseng@users.sourceforge.net>
109         * ReflectionSerializationHolder.cs: Removed.
110         * common.src: Removed.
112 2008-08-04  Atsushi Enomoto  <atsushi@ximian.com>
114         * Assembly.cs : return UnmanagedMemoryStream from 
115           GetManifestResourceStream(). Fixed bug #322241.
117 2008-07-30  Rodrigo Kumpera  <rkumpera@novell.com>
119         * MonoGenericClass.cs (InflateType): Guard against null types.
120         Fixes #412965.
122 2008-07-23  Marek Safar  <marek.safar@gmail.com>
124         * MethodBase.cs (GetMethodFromHandle): Needed for bootraping.
126 2008-07-22  Rodrigo Kumpera  <rkumpera@novell.com>
128         * MonoGenericClass.cs (GetMethod): Under compiler mode allow
129         MethodOnTypeBuilderInst to be used..
131 2008-07-17  Rodrigo Kumpera  <rkumpera@novell.com>
133         * MonoGenericClass.cs (GetMethod): Revert to old code
134         path as the new one broke System.Core.
136 2008-07-16  Rodrigo Kumpera  <rkumpera@novell.com>
138         * MonoGenericClass.cs (GetMethod): Use the new codepath for compiler
139         context.
141         * MonoGenericClass.cs: New InflateType method, used to inflate
142         managed types.
144 2008-07-11  Marek Safar  <marek.safar@gmail.com>
146         * MonoGenericClass.cs (GetField): Put back removed code.
148 2008-07-04  Rodrigo Kumpera  <rkumpera@novell.com>
150         * MethodBase.cs (GetMethodFromHandle): Fix a warning in
151         the 1.0 build.
153 2008-07-04  Rodrigo Kumpera  <rkumpera@n ovell.com>
155         * MethodBase.cs (GetMethodFromHandle): Extract an internal version
156         of this function that doesn't perform the generic class check.
157         This method is required to fix the Delegate regression that fixing
158         #377324 caused.
160 2008-06-25  Rodrigo Kumpera  <rkumpera@n ovell.com>
162         * MethodBase.cs (GetMethodFromHandle): Check if the icall returns null
163         and fail. This is part of the fix for #377324.
165 2008-06-19  Marek Safar  <marek.safar@gmail.com>
167         * MonoGenericClass.cs (GetConstructor): Put back removed code due to obscure
168         System.Reflection.MonoGenericCMethod.
170 2008-06-19  Kornel Pal  <kornelpal@gmail.com>
172         * Module.cs: Add internal GetHINSTANCE.
174 2008-06-02  Ivan N. Zlatev  <contact@i-nz.net>
176         * Binder.cs, MonoGenericClass.cs: For property reflection we should 
177         strictly match the return type if available.
179 2008-05-16  Zoltan Varga  <vargaz@gmail.com>
181         * MonoGenericClass.cs (GetConstructor): Remove some old code, as the new code
182         seems to work fine.
183         (GetField): Ditto.
185 2008-05-05  Zoltan Varga  <vargaz@gmail.com>
187         * FieldInfo.cs (GetFieldFromHandle): Add an argument check for an invalid handle.
189         * MethodBase.cs (GetMethodFromHandle): Ditto. Fixes #386641.
191 2008-04-30  Gert Driesen  <drieseng@users.sourceforge.net>
193         * ParameterInfo.cs: Name must default to null if no ParameterBuilder
194         is supplied.
196 2008-04-22  Zoltan Varga  <vargaz@gmail.com>
198         * MonoGenericClass.cs (GetMethod): Construct a MethodOnTypeBuilderInst object
199         instead of using GetCorrespondingInflatedMethod. This is needed so this class can
200         reflect the changes made to the builder after initialize () has been called.
201         Fixes #381547 and #354759.
202         (GetConstructor): Ditto.
204 2008-04-16  Zoltan Varga  <vargaz@gmail.com>
206         * Binder.cs: Applied patch from Yves Bastide (doc.formatique@gmail.com). Add 
207         support for converting integers to enums. Fixes #380361.
209 ?2008-04-02  Andreas Nahr  <ClassDevelopment@A-SoftTech.com>
211         * IReflect.cs
212         * MethodInfo.cs: Fix parameter names
214 2008-03-31  Mark Probst  <mark.probst@gmail.com>
216         * MonoMethod.cs: Don't do CAS security checks in Invoke for 2.1
217         profile.
219 2008-03-25  Zoltan Varga  <vargaz@gmail.com>
221         * MonoCMethod.cs (Invoke): Avoid a crash if this is called on a ctor of an open
222         generic type. Fixes #373459.
223         
224         * MonoMethod.cs (InternalInvoke): Add an out 'exc' argument used to distinguish
225         exceptions thrown by the icall from the exceptions thrown by the wrapped method.
226         Fixes #373448.
228 2008-03-17  Marek Safar  <marek.safar@gmail.com>
230         * MonoMethod.cs (ToString): Print VarArgs argument.
232 2008-03-14  Zoltan Varga  <vargaz@gmail.com>
234         * MonoGenericClass.cs (GetField): Construct a FieldOnTypeBuilderInst object
235         instead of using GetCorrespondingInflatedField. This is needed so this class can
236         reflect the changes made to the type builder after initialize () has been called.
238         * Binder.cs (ChangeType): Add support for Char->Double/Single conversations. Fixes
239         #367655.
241 2008-03-10  Gert Driesen  <drieseng@users.sourceforge.net>
243         * Assembly.cs (GetFile): Fixed exception messages and param name.
245 2008-03-06  Zoltan Varga  <vargaz@gmail.com>
247         * Assembly.cs: Define GetManifestModule () for net 2.0 bootstrap as well.
249 2008-02-26  Ivan N. Zlatev  <contact@i-nz.net>
251         * MonoProperty.cs: MS ignores the inherit parameter and defaults to false
252         for GetCustomAttributes.
253         [Fixes bugs #324472 and #322464]
255 2008-02-20  Zoltan Varga  <vargaz@gmail.com>
257         * AssemblyName.cs (ReferenceMatchesDefinition): Add error checking and some 
258         simple cases required by ikvm.
260 2008-02-18  Zoltan Varga  <vargaz@gmail.com>
262         * CustomAttributeTypedArgument.cs (.ctor): Convert arrays into a collection of
263         CustomAttributeTypedArguments to match MS.
265 2008-02-10  Gert Driesen  <drieseng@users.sourceforge.net>
267         * Assembly.cs: Use icall for ToString/FullName. Fixes bug #318231.
269 2008-02-02  Gert Driesen  <drieseng@users.sourceforge.net>
271         * MonoMethod.cs (MakeGenericMethod): Modified argument name to match
272         MS. When one of the types is null, throw ArgumentNullException instead
273         of ArgumentException.
274         * MethodInfo.cs (MakeGenericMethod): Modified argument name to match
275         MS.
277 2008-01-29  Zoltan Varga  <vargaz@gmail.com>
279         * Assembly.cs: Make GetTypes () virtual so it can be overriden by AssemblyBuilder.
280         
281         * Assembly.cs: Make GetModulesInternal () virtual so it can be overriden by
282         AssemblyBuilder.
284 2008-01-22  Zoltan Varga  <vargaz@gmail.com>
286         * MonoGenericClass.cs: Make this NET 2.0 only.
287         
288         * MonoGenericClass.cs (Initialize): Simplify this a bit and add comments for this
289         class.
291 2008-01-20  Gert Driesen  <drieseng@users.sourceforge.net>
293         * AssemblyName.cs: Added support for Retargetable spec in FullName.
295 2008-01-17  Zoltan Varga  <vargaz@gmail.com>
297         * Assembly.cs AssemblyFlagsAttribute.cs ICustomAttributeProvider.cs
298         MemberInfo.cs FieldInfo.cs DefaultMemberAttribute.cs 
299         CustomAttributeNamedArgument.cs TargetException.cs MethodInfo.cs
300         IReflect.cs CustomAttributeTypedArgument.cs Module.cs: Change some parameter
301         names to match MS.
303 2008-01-15  Jb Evain  <jbevain@novell.com>
305         * MonoMethod.cs (MakeGenericMethod): check for null values
306         in the types arguments. Fixes #353849.
308 2008-01-06  Sebastien Pouliot  <sebastien@ximian.com>
310         * Assembly.cs: Fix typo in setter found with Gendarme (was used in a
311         single place, AppDomain, and set to true so it never caused a problem)
313 2008-01-04  Gert Driesen  <drieseng@users.sourceforge.net>
315         * AssemblyName.cs: Fixed default value for ProcessorArchitecture to
316         match MS. On 2.0 profile, return zero-length in FullName is no name
317         is set, and throw a SecurityException in FullName and GetPublicKeyToken
318         if a public key is set with no corresponding public key token. 
319         Fixed FullName to also include PublicKeyToken spec with "null" value
320         if public key is empty byte array. Fixed corlib part of bug #351057.
321         In SetPublicKey, modify Flags accordingly. On the 2.0 profile, verify
322         the public key when the public key token is computed.
324 2007-12-26  Zoltan Varga  <vargaz@gmail.com>
326         * Assembly.cs (GetSatelliteAssembly): Search in the assembly directory as well.
327         Fixes ##345627.
329 2007-12-03  Zoltan Varga  <vargaz@gmail.com>
331         * MonoField.cs: Implement GetRawConstantValue ().
333 2007-11-24  Marek Habersack  <mhabersack@novell.com>
335         * CustomAttributeTypedArgument.cs: value can be null in ToString.
337 2007-11-16  Zoltan Varga  <vargaz@gmail.com>
339         * Assembly.cs (GetFiles): Include the assembly itself as the first entry.
341 2007-11-13  Atsushi Enomoto  <atsushi@ximian.com>
343         * AssemblyName.cs : remove extraneous MonoTODO.
345 2007-11-13  Atsushi Enomoto  <atsushi@ximian.com>
347         * ExceptionHandlingClause.cs : implemented ToString().
349 2007-11-13  Atsushi Enomoto  <atsushi@ximian.com>
351         * MethodBase.cs : (Invoke) removed extra interface implementation.
353 2007-11-13  Atsushi Enomoto  <atsushi@ximian.com>
355         * StrongNameKeyPair.cs : implemented 2.0 runtime serialization stuff.
357 2007-11-05  Mark Probst  <mark.probst@gmail.com>
359         * Binder.cs: Treat matches with different argument types as
360         ambiguous, too.  Fixes #324998.
362 2007-11-01  Zoltan Varga  <vargaz@gmail.com>
364         * Binder.cs: Avoid returning a method with a ParamArray attribute when a normal
365         method exists. Fixes #338266.
367 2007-10-30  Zoltan Varga  <vargaz@gmail.com>
369         * Binder.cs: Applied patch from Mario A Chavez <mario.chavez@gmail.com>. Add
370         support for binding to methods with ParamArray attribute. Fixes #336841.
372 2007-10-27  Zoltan Varga  <vargaz@gmail.com>
374         * MonoGenericClass.cs: Override GetPropertyImpl too.
376 2007-10-24  Atsushi Enomoto  <atsushi@ximian.com>
378         * Assembly.cs : include ReflectionOnlyLoad() as part of 2.0
379           bootstrap build.
381 2007-09-23  Zoltan Varga  <vargaz@gmail.com>
383         * Assembly.cs (GetManifestModule): New virtual method overridden by 
384         AssemblyBuilder.
386 2007-09-17  Gert Driesen  <drieseng@users.sourceforge.net>
388         * Assembly.cs: In GetManifestResourceStream, throw ANE with type as
389         paramname when both name and type are null. Use String.Length to check
390         for zero-length string.
392 2007-09-11  Mark Probst  <mark.probst@gmail.com>
394         * MonoMethod.cs: Catch and re-throw MethodAccessException from
395         InternalInvoke for CoreCLR security.
397 Thu Sep 6 19:49:34 CEST 2007 Paolo Molaro <lupus@ximian.com>
399         * MonoMethod.cs: name is used as a cache: provide an icall to get the
400         name from the runtime.
402 2007-08-23  Robert Jordan  <robertj@gmx.net>
404         * MemberInfoSerializationHolder.cs: created from
405         ReflectionSerializationHolder to match MS (fixes bug #80761).
406         Add support for fields, events, properties and generic methods.
408         * MonoMethod.cs (GetObjectData): handle generic arguments.
410         * MonoGenericMethod.cs: mark as [Serializable].
412         * MonoProperty.cs (GetObjectData): implemented.
414         * MonoField.cs: ditto.
416         * MonoEvent.cs: ditto.
418 2007-07-19  Atsushi Enomoto  <atsushi@ximian.com>
420         * MonoMethod.cs : parameter types should be fixed as well.
422 2007-07-19  Atsushi Enomoto  <atsushi@ximian.com>
424         * MonoMethod.cs : ToString() did not show correct return type when
425           it is generic.
427 2007-07-15  Zoltan Varga  <vargaz@gmail.com>
429         * FieldInfo.cs: Implement GetOptional/RequiredCustomModifiers ().
431         * MethodInfo.cs: Remove an unneccesary MonoTODO.
433         * Module.cs: Implement ResolveSignature.
435 2007-07-14  Zoltan Varga  <vargaz@gmail.com>
437         * Module.cs: Implement the generic versions of the ResolveXXX methods.
439 2007-07-10  Zoltan Varga  <vargaz@gmail.com>
441         * Module.cs: Add new internal method GetMDStreamVersion ().
443 2007-07-09  Atsushi Enomoto  <atsushi@ximian.com>
445         * CustomAttributeNamedArgument.cs, CustomAttributeTypedArgument.cs:
446           added missing operator == and !=.
448 2007-07-04  Atsushi Enomoto  <atsushi@ximian.com>
450         * CustomAttributeNamedArgument.cs CustomAttributeTypedArgument.cs
451           CustomAttributeData.cs : implemented Equals() and GetHashCode().
452         * Missing.cs : ISerializable.
453         * AssemblyName.cs : ReferenceMatchesDefinition() stub.
454         * Module.cs : missing method stubs with generic type/method args.
455         * ExceptionHandlingClause.cs : ToString() stub.
456         * MethodBase.cs TypeDelegator.cs ModuleResolveEventHandler.cs
457           TypeFilter.cs MemberFilter.cs
458           FieldInfo.cs ParameterInfo.cs MethodInfo.cs :
459           miscellaneous cosmetic API fixes.
461 Tue May 8 13:04:35 CEST 2007 Paolo Molaro <lupus@ximian.com>
463         * FieldInfo.cs, MethodBase.cs: implemented new GetFieldFromHandle and
464         GetMethodFromHandle overloads (bug #78637).
466 2007-05-07  Zoltan Varga  <vargaz@gmail.com>
468         * MonoMethod.cs (Invoke): Fix a warning.
469         
470         * MonoMethod.cs (Invoke): Don't wrap ThreadAbortException inside a 
471         TargetInvocationException on the 2.0 profile. Fixes #81538.
473 2007-04-09  Alp Toker  <alp@atoker.com>
475         * MonoMethod.cs: Use StringBuilder for the entire ToString() methods
476         to reduce allocations and increase performance.
478 2007-04-09  Alp Toker  <alp@atoker.com>
480         * MonoMethod.cs: Use StringBuilder for parms in ToString() methods.
482 2007-04-09  Alp Toker  <alp@atoker.com>
484         * MethodBase.cs: IsGenericMethodDefinition() and IsGenericMethod()
485         should return false, not throw NotSupportedException. This matches MS
486         behaviour and introduces simplifications in subclasses.
487         * MonoMethod.cs: MonoCMethod: Remove redundant overrides.
489 2007-03-05  Peter Dettman <peter.dettman@iinet.net.au>
491         * Binder.cs: The patch changes Binder.Default.GetBetterMethod to
492         prefer methods in subclasses if the arg types can't disambiguate
493         them.
495         Also fixes a typo in the CallingConventions comparison.
497 2007-03-01  Alp Toker  <alp@atoker.com>
499         * FieldInfo.cs:
500         Add GetFieldFromHandle() 2.0 overload stub (NotImplemented).
502 2007-03-01  Alp Toker  <alp@atoker.com>
504         * MethodBase.cs: Add missing ComVisible attr.
505         Add GetMethodFromHandle() 2.0 overload stub (NotImplemented).
507 2006-12-30  Marek Safar  <marek.safar@gmail.com>
509         * MonoProperty.cs: Cache frequently used properties.
511 Thu Dec 14 13:50:48 CET 2006 Paolo Molaro <lupus@ximian.com>
513         * *.cs: added missing Serializable attributes.
515 Thu Dec 14 12:52:27 CET 2006 Paolo Molaro <lupus@ximian.com>
517         * MonoProperty.cs, ParameterInfo.cs, PropertyInfo.cs:
518         GetRequiredCustomModifiers()/GetOptionalCustomModifiers()
519         implementations.
521 Tue Dec 12 20:35:10 CET 2006 Paolo Molaro <lupus@ximian.com>
523         * MethodBase.cs: added missing ComVisible attr.
524         * MethodInfo.cs: added a few missing methods that we implement
525         in derived classes.
527 Tue Dec 12 19:45:26 CET 2006 Paolo Molaro <lupus@ximian.com>
529         * MonoEvent.cs: correctly obey the nonPublic flag in GetOtherMethods ().
530         * EventInfo.cs: remove NotImpl exception from GetOtherMethods ().
532 2006-10-19  Gert Driesen  <drieseng@users.sourceforge.net>
534         * AssemblyName.cs: Revert change where filename was not converted to
535         absolute path before passing it to Assembly.InternalGetAssemblyName
536         as the CodeBase is not set in that case.
538 2006-10-17  Kornel Pal  <kornelpal@gmail.com>
540         * FieldInfo.cs: Added GetRawConstantValue (). Note that throwing a
541           NotSupportedException is the proper implementation.
542         * ParameterInfo.cs: Use Attributes in Is... properties on profile 2.0
543           that is expected by subclasses.
545 2006-10-14  Gert Driesen  <drieseng@users.sourceforge.net>
547         * AssemblyName.cs: No need to convert filename to absolute path before
548         passing it to Assembly.InternalGetAssemblyName. This allows our
549         exception messages to be better match those of MS.
551 2006-09-29  Jb Evain  <jbevain@gmail.com>
553         * MonoFieldInfo.cs: throw a FieldAccessException when setting a literal field.
555 2006-09-02  Zoltan Varga  <vargaz@gmail.com>
557         * ParameterInfo.cs MethodInfo.cs MonoMethod.cs: Applied patch from 
558         Peter Dettman (peter.dettman@iinet.net.au). Implement ReturnParameter
559         property.
561         * Binder.cs (ReorderParameters): Really fix this.
562         
563         * Binder.cs (ReorderParameters): Fix this method. Fixes #79120.
565 2006-09-01  Raja R Harinath  <rharinath@novell.com>
567         * MonoMethod.cs (ToString): Update to handle change in byref type names.
569 2006-08-08  Gert Driesen  <drieseng@users.sourceforge.net>
571         * Assembly.cs: On 2.0 profile, throw FileNotFoundException for
572         linked resources in GetManifestResourceStream when assembly is
573         loaded from byte array.
575 2006-07-12  Zoltan Varga  <vargaz@gmail.com>
577         * MonoMethod.cs (ContainsGenericParameters): Implement.
578         
579         * MonoMethod.cs (Invoke): Prevent invoking of open generic methods.
581 2006-07-09  Gert Driesen  <drieseng@users.sourceforge.net>
583         * Assembly.cs: When assembly is loaded from byte array, return null
584         for linked resources in GetManifestResourceStream. Fixes bug #78468.
586 2006-07-09  Zoltan Varga  <vargaz@gmail.com>
588         * Binder.cs: Add back the support for BindingFlags.ExactBinding. Fixes #78592.
590 2006-06-30  Zoltan Varga  <vargaz@gmail.com>
592         * Binder.cs: Comment out the ExactBinding stuff for the release as it breaks some 
593         gtk# apps.
595 2006-06-07  Zoltan Varga  <vargaz@gmail.com>
597         * Binder.cs: Add support for BindingFlags.ExactBinding. Fixes #78592.
599 2006-05-28  Gert Driesen  <drieseng@users.sourceforge.net>
601         * MethodBase.cs: GetMethodBody should not throw ArgumentException for
602         a method with no IL body. Fixes bug #78522.
604 2006-05-10  Zoltan Varga  <vargaz@gmail.com>
606         * Module.cs (GetMethod): Update after the changes to Type.GetMethod ().
608 2006-05-08  Atsushi Enomoto  <atsushi@ximian.com>
610         * Binder.cs : (Default.SelectMethod)
611           don't throw AmbiguousMatchException when one of conflicting method
612           matches weakly. Fixed bug #42547.
614 2006-05-08  Atsushi Enomoto  <atsushi@ximian.com>
616         * Binder.cs : (Default.BindToMethod) reorder parameters based
617           on namedParameters. Fixed bug #41691.
619 2006-05-03  Jb Evain  <jbevain@gmail.com>
621         * MonoField.cs (GetValue,SetValue): throw a TargetException
622         when the field is non static and the target is null.
624 2006-03-12  Zoltan Varga  <vargaz@gmail.com>
626         * Binder.cs: Applied patch from Ben to fix #74947.
628 2006-03-01  Miguel de Icaza  <miguel@novell.com>
630         * Assembly.cs: Cache the AssemblyName, patch from Tambet.  This
631         reduces the memory usage during remoting.
633 2006-02-16  Martin Baulig  <martin@ximian.com>
635         * FieldInfo.cs (FieldInfo.Mono_GetGenericFieldDefinition): Removed.
637 2006-02-15  Martin Baulig  <martin@ximian.com>
639         * MethodBase.cs (MethodBase.GetGenericMethodDefinition): Removed.
640         (MethodBase.Mono_IsInflatedMethod): Removed.
641         (MethodBase.HasGenericParameters): Removed.
643         * MethodInfo.cs (MethodInfo.GetGenericMethodDefinition): Moved
644         here from MethodBase.
646         * MonoMethod.cs
647         (MonoMethod.IsGenericMethodDefinition): This is now an icall.
648         (MonoMethod.IsGenericMethod): Likewise.
650 2006-02-14  Martin Baulig  <martin@ximian.com>
652         * MonoMethod.cs
653         (MonoCMethod.IsGenericMethod): Override this and return false; the
654         MS runtime doesn't throw an exception here.
656 2006-02-08  Martin Baulig  <martin@ximian.com>
658         * MonoGenericClass.cs (MonoGenericClass.IsAssignableFrom):
659         Override and implement this; fixes #77395.      
661 2006-02-07  Martin Baulig  <martin@ximian.com>
663         * MonoMethod.cs
664         (MonoMethod.IsGenericMethod): Only return true for "real" generic
665         methods and not for arbitrary instantiated methods.
666         (MonoMethod.IsGenericMethodDefinition): Only return true for
667         generic method definitions, but not for instantiated generic
668         methods.  This is no longer an interncall.  Fixes #77466.
670 2006-02-03  Zoltan Varga  <vargaz@gmail.com>
672         * MethodBase.cs MonoMethod.cs: Implement IsGenericMethod property.
673         Fixes #77460.
675 2005-12-23  Sebastien Pouliot  <sebastien@ximian.com>
677         * Assembly.cs: Fixed #75950. The icall has been changed to accept a 
678         boolean so it can return a non-escaped code base.
680 2005-11-16  Atsushi Enomoto  <atsushi@ximian.com>
682         * MonoMethod.cs : made MakeGenericMethod() indirect icall to
683           MakeGenericMethod_impl() and raise an error when it returns null.
685 2005-11-15  Zoltan Varga  <vargaz@gmail.com>
687         * Module.cs: Add MDStreamVersion property.
689         * Assembly.cs AssemblyNameFlags.cs FieldInfo.cs PropertyInfo.cs 
690         CustomAttributeData.cs PortableExecutableKinds.cs 
691         ObfuscateAssemblyAttribute.cs Module.cs ObfuscationAttribute.cs: Net 2.0 RTM
692         updates.
694 2005-11-11  Marek Safar  <marek.safar@seznam.cz>
696         * MethodBase.cs, TypeDelegator.cs: Reflect Type changes.
698 2005-10-30  Zoltan Varga  <vargaz@freemail.hu>
700         * FieldInfo.cs: Add an internal UMarshal property which can by
701         overriden in FieldBuilder.
703 2005-10-26  Atsushi Enomoto  <atsushi@ximian.com>
705         * MonoMethod.cs : (ToString) add suffix " ByRef" for byref parameters.
706           Fixed bug #76541.
708 2005-10-04  Martin Baulig  <martin@ximian.com>
710         * MonoGenericClass.cs (MonoGenericClass.GetParentType): Changed
711         return type from `MonoGenericClass to `Type'.
713 2005-09-26  Carlos Alberto Cortez <calberto.cortez@gmail.com>
715         * AssemblyName.cs: Add ParseName internal call, to parse
716         long format assembly names. 
717         
718 2005-09-25  Sebastien Pouliot  <sebastien@ximian.com>
720         * MonoProperty.cs: Invoke throws a SecurityException but GetValue must
721         throw TargetInvocationException with the SecurityException as an inner
722         exception. See CAS unit tests for System.Web.dll.
724 2005-09-20  Martin Baulig  <martin@ximian.com>
726         * Assembly.cs: Removed some unused debugger icalls.
728 2005-09-17  Zoltan Varga  <vargaz@freemail.hu>
730         * Module.cs: Remove obsolete Mvid property.
732 2005-09-09  Martin Baulig  <martin@ximian.com>
734         Reflect latest API changes in the August CTP.
736         * MethodBase.cs (MethodBase.MakeGenericMethod): Removed.
738         * MethodInfo.cs (MethodInfo.MakeGenericMethod): Added here.
740 2005-09-08  Sebastien Pouliot  <sebastien@ximian.com>
742         * AssemblyName.cs: Apply second half of Chris Micacchi's patch
744 2005-09-07  Miguel de Icaza  <miguel@novell.com>
746         * AssemblyName.cs: Apply patch from Chris Micacchi to serialize
747         the keyToken as "_PublicKeyToken".
749 2005-09-05  Martin Baulig  <martin@ximian.com>
751         Reflect latest API changes in the August CTP.
753         * GenericParameterAttributes.cs: Here.
755         * MethodBase.cs (MethodBase.BindGenericParameters): Renamed to
756         MakeGenericMethod().    
758 2005-09-05  Martin Baulig  <martin@ximian.com>
760         * Assembly.cs (MonoDebugger_GetMethodToken): Don't take an
761         `Assembly' argument.
763 2005-08-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
765         * Assembly.cs: made GetManifestResourceInternal internal. Fixes the
766         build.
768 2005-08-05  Gert Driesen <drieseng@users.sourceforge.net>
770         * Assembly.cs: Added GetType() method in 1.1 to match MS.NET.
771         * ConstructorInfo.cs: Added GetType() method in 1.1 to match
772         MS.NET, implemented _ConstructorInfo.
773         * EventInfo.cs: Added GetType() method in 1.1 to match MS.NET,
774         implemented _EventInfo.
775         * FieldInfo.cs: Added GetType() method in 1.1 to match MS.NET,
776         implemented _FieldInfo.
777         * MemberInfo.cs: Added GetType() method in 1.1 to match MS.NET,
778         implemented _MemberInfo.
779         * MethodBase.cs: Added GetType() method in 1.1 to match MS.NET,
780         implemented _MethodBase.
781         * MethodInfo.cs: Added GetType() method in 1.1 to match MS.NET,
782         implemented _MethodInfo.
783         * PropertyInfo.cs: Added GetType() method in 1.1 to match MS.NET,
784         implemented _PropertyInfo.
785         * TypeAttributes.cs: CustomFormatMask and CustomFormatClass should
786         only be exposed in 2.0 profile.
788 2005-07-29  Carlos Alberto Cortez <calberto.cortez@gmail.com>
790         * CustomAttributeTypedArgument: Return the name of the
791         enum if the type is an enum in ToString ().
792         
793 2005-06-21  Sebastien Pouliot  <sebastien@ximian.com>
795         * Assembly.cs: Create a copy of the evidences and add an instance of 
796         PermissionRequestEvidence to it before resolution. This way the PRE
797         won't be present when asking for evidences later. Removed debugging 
798         code.
800 2005-06-13  Michal Moskal <malekith@nemerle.org>
801         
802         * MonoGenericClass.cs: Don't use MethodHandle in GetMethod/GetConstructor,
803         since it now throws on MethodBuilders. Don't use FieldHandle in
804         GetField (throws on FieldBuilder) - just use the name.
806 2005-06-15  Sebastien Pouliot  <sebastien@ximian.com>
808         * Assembly.cs, AssemblyName.cs, ConstructorInfo.cs, EventInfo.cs,
809         FieldInfo.cs, MemberInfo.cs, MethodBase.cs, MethodInfo.cs, Module.cs,
810         ParameterInfo.cs, PropertyInfo.cs: Added some missing interfaces and
811         attributes that were added in 1.1 SP1 or 2.0 beta2.
813 2005-06-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
815         * Binder.cs: null is ok for a value type. Fixes bug #75241.
817 2005-06-14  Sebastien Pouliot  <sebastien@ximian.com>
819         * Assembly.cs: UnprotectedGetName is now virtual to allow for more
820         initialization in AssemblyBuilder. The [Granted|Refused]PermissionSet
821         now use the ResolvingPolicyLevel to support the policy 
822         FullTrustAssemblies during resolution.
823         * AssemblyName.cs: Return null instead of "new byte [0]" if no public
824         key is available.
826 2005-06-09  Kamil Skalski <nazgul@nemerle.org>
827         * MonoGenericClass.cs: Add overrides of Get{Method,Constructor,Field} 
828         for obtaining instanciated *Info objects from non-instanciated counterparts
831 2005-06-09  Zoltan Varga  <vargaz@freemail.hu>
833         * CustomAttributeData.cs EventInfo.cs Assembly.cs: Updates for net 2.0 beta 2.
835         * *.cs: Updates for net 2.0 beta 2.
837 2005-06-07  Zoltan Varga  <vargaz@freemail.hu>
839         * *.cs: Updates for net 2.0 beta 2.
841 2005-06-07  Carlos Alberto Cortez <calberto.cortez@gmail.com>
843         * CustomAttributeData.cs: Implemented.
845         * CustomAttributeDataNamedArgument.cs: Implemented.
847         * CustomAttrbuteDataTypedArgument.cs: Implemented.
848         
849 2005-06-06  Zoltan Varga  <vargaz@freemail.hu>
851         * Assembly.cs ExceptionHandlingClause.cs: Fix build.
853         * ProcessorArchitecture.cs: New file.
855         * ExceptionHandlingClause.cs: Update after ExceptionHandlingClauseFlags name change.
857         * *.cs: Updates for net 2.0 beta 2.
859         * *.cs: Add net 2.0 ComVisibleAttribute.
861 2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
863         * Assembly.cs: if the assembly is loaded from a byte array, Location
864         returns "". Fixes bug #74958.
866 2005-06-03  Carlos Alberto Cortez <calberto.cortez@gmail.com>
868         * AssemblyName.cs: Changes to support the creation of version
869         instance from icalls. This change also helps to keep the
870         AssemblyName tests running fine.
871         
872 2005-05-26  Ben Maurer  <bmaurer@ximian.com>
874         * Binder.cs: Avoid double checked locking and lock on typeof by
875         doing init of the default binder in the cctor.
877 2005-05-25  Zoltan Varga  <vargaz@freemail.hu>
879         * Assembly.cs: Avoid security checks if Assembly.Location is "".
881 2005-05-20  Zoltan Varga  <vargaz@freemail.hu>
883         * TypeDelegator.cs: Implement some methods.
884         
885         * TypeDelegator.cs: Revert this as it breaks the build.
887         * TypeDelegator.cs: Implement some methods.
889 2005-05-19  Satya Sudha K  <ksathyasudha@novell.com>
890             Raja R Harinath  <rharinath@novell.com>
892         * Missing.cs (Missing.Value): Initialize.
894 2005-05-17  Lluis Sanchez Gual  <lluis@novell.com>
896         * Binder.cs: Use IsInstanceOfType instead of IsAssignableFrom
897         since GetType() may not return the correct type if the object is
898         a remoting proxy. This fixes bug #74933.
900 2005-05-13  Zoltan Varga  <vargaz@freemail.hu>
902         * MonoField.cs: Applied patch from Opened by Michael Meeks (michael@ximian.com). Improve exception message on binding failures.
904 2005-05-09  Lluis Sanchez Gual  <lluis@novell.com>
906         * MonoField.cs: Added a Clone method. This is needed for serialization.
908 2005-05-07  Ben Maurer  <bmaurer@ximian.com>
910         * MonoEvent.cs (Get*Method): Handle nonPublic. Fixes #64191.
912 2005-05-06  Zoltan Varga  <vargaz@freemail.hu>
914         * Module.cs: Update for beta 2.
916         * CustomAttributeData.cs MethodBody.cs: Remove CLSCompliant (false) attributes.
918 2004-05-03  Lluis Sanchez  <lluis@ximian.com>
920         * Assembly.cs: Don't remove version and culture information from
921         the name, since it will be used by load_with_partial_name.
923 2005-04-14  Sebastien Pouliot  <sebastien@ximian.com>
925         * Assembly.cs: Added some CAS security to avoid returning restricted
926         information to partially truster callers (e.g. code base). Added new
927         methods to get the Evidence and AssemblyName so that the security
928         runtime can bootstrap itself (without calling itself).
930 2005-04-14  Sebastien Pouliot  <sebastien@ximian.com>
932         * Assembly.cs: Added missing null check in GetObjectData.
934 2005-04-04  Sebastien Pouliot  <sebastien@ximian.com>
936         * AssemblyName.cs: Added a demand for SerializationFormatter on
937         GetObjectData method.
939 2005-04-04  Sebastien Pouliot  <sebastien@ximian.com> 
941         * AssemblyName.cs: Implemented EscapedCodeBase using the copy of 
942         System.Uri (System.dll) located in Mono.Security.Uri. Added missing
943         null check in GetObjectData.
944         * Module.cs: Added a FileIOPermission for PathDiscovery on 
945         FullyQualifiedName property (but not on Name property like MS).
946         Added missing null check in GetObjectData.
947         * StrongNameKeyPair.cs: Added demands for unmanaged code to all
948         constructors (as we do not want partially trusted code to create
949         strongnamed assemblies).
951 2005-03-30  Zoltan Varga  <vargaz@freemail.hu>
953         * Binder.cs (check_type): Fix byref support. Fixes #73972.
955 2005-03-24  Sebastien Pouliot  <sebastien@ximian.com>
957         * MemberInfo.cs: Add an InheritanceDemand for Unrestricted on class.
958         * Module.cs: Add a LinkDemand for SerializationFormatter on 
959         GetObjectData method.
961 2005-03-16  Sebastien Pouliot  <sebastien@ximian.com>
963         * Assembly.cs: Implemented EscapedCodeBase using the copy of 
964         System.Uri (System.dll) located in Mono.Security.Uri. Fix bug #73663.
966 2005-03-11  Sebastien Pouliot  <sebastien@ximian.com>
968         * MonoMethod.cs: Promote a LinkDemand (if present) to a full Demand 
969         (i.e. stack walk) when reflection is being used to invoke a method.
971 2005-02-24  Carlos Alberto Cortez <calberto.cortez@gmail.com>
973         * Assembly.cs: LoadFrom: Change signature to support reflection only
974         methods; ReflectionOnlyLoad, ReflectionOnlyLoadFrom 2.0 methods
975         implemented; InvalidOperationException's re-thrown by CreateInstance.
976         Also ReflectionOnly 2.0 property added.
978         * MonoMethod.cs: InvalidOperationException's are re-thrown when calling 
979         Invoke method on reflection only assemblies.
980         
981 2005-02-22  Raja R Harinath  <rharinath@novell.com>
983         * FieldInfo.cs (GetFieldOffset): Make 'virtual' rather than
984         'abstract' so that this class can be derived outside of corlib.
986 2005-02-16  Miguel de Icaza  <miguel@novell.com>
988         * MonoEvent.cs: Put new methods here.
990         * EventInfo.cs: Move the methods GetCustomAttributes, and
991         IsDefined from EventInfo to MonoEvent.
993         Remove the methods that were not supposed to be exposed: Name,
994         ReflectedType, DeclaringType.
996 2005-02-12  Chris Toshok  <toshok@ximian.com>
998         * Assembly.cs: Correct the type of MonoDebugger_MakeArrayType.
1000 2005-02-12  Ben Maurer  <bmaurer@ximian.com>
1002         * Binder.cs (SelectProperty): Use -1 as the dummy `I don't know
1003         how many types' value.
1005 2005-02-11  Zoltan Varga  <vargaz@freemail.hu>
1007         * Assembly.cs: Fix warning.
1009 2005-02-10  Martin Baulig  <martin@ximian.com>
1011         * Module.cs (MonoDebugger_ResolveType): New internal method.
1013         * Assembly.cs (MonoDebugger_MakeArrayType): New internal method.
1014         (MonoDebugger_GetTypeToken): New internal method.
1016 2005-02-10  Martin Baulig  <martin@ximian.com>
1018         * Assembly.cs (MonoDebugger_GetMethodIndex): New internal method.
1020 2005-02-10  Marek Safar  <marek.safar@seznam.cz>
1022         * Assembly.cs,
1023         * ConstructorInfo.cs,
1024         * EventInfo.cs,
1025         * FieldInfo.cs,
1026         * MemberInfo.cs,
1027         * MethodBase.cs,
1028         * MethodInfo.cs,
1029         * PropertyInfo.cs: ClassInterfaceType is None.
1031 Thu Feb 3 15:22:55 CET 2005 Paolo Molaro <lupus@ximian.com>
1033         * Module.cs: removed the finalizer and the now unused Close() icall.
1035 2005-01-21  Sebastien Pouliot  <sebastien@ximian.com>
1037         * Assembly.cs: Fixed add for ModuleResolve.
1039 2005-01-19  Zoltan Varga  <vargaz@freemail.hu>
1041         * LocalVariableInfo.cs: Add ToString method.
1043         * ExceptionHandlingClause.cs: Implement this.
1045 2005-01-18  Zoltan Varga  <vargaz@freemail.hu>
1047         * MethodBase.cs MonoMethod.cs: Hopefully fix the build.
1049         * MethodBase.cs MonoMethod.cs: Implement 2.0 GetMethodBody ().
1051 2005-01-03  Martin Baulig  <martin@ximian.com>
1053         * MonoGenericMethod.cs
1054         (MonoGenericMethod.get_reflected_type): Removed.
1055         (MonoGenericMethod.ReflectedType): Make this an icall.
1056         (MonoGenericCMethod.ReflectedType): Likewise.   
1058 2004-12-29  Martin Baulig  <martin@ximian.com>
1060         * MonoGenericMethod.cs: New file.
1062 2004-12-21  Sebastien Pouliot  <sebastien@ximian.com> 
1064         * Assembly.cs: Added private LoadAssemblyPermissions to get the 
1065         declarative security permission sets (minimum, optional and refused)
1066         for the assembly.
1068 2004-12-20  Sebastien Pouliot  <sebastien@ximian.com>
1070         * Assembly.cs: Removed old Demand support (moved in System.Security).
1072 2004-12-16  Zoltan Varga  <vargaz@freemail.hu>
1074         * CustomAttributeData.cs MethodBody.cs: Reenable some 2.0 code now that
1075         the gmcs bugs blocking them are fixed.
1077 2004-12-08  Zoltan Varga  <vargaz@freemail.hu>
1079         * Assembly.cs: Move corlib_internal field to AssemblyBuilder.
1081 2004-12-06  Zoltan Varga  <vargaz@freemail.hu>
1083         * Assembly.cs: Add corlib_internal field.
1085 2004-11-30  Martin Baulig  <martin@ximian.com>
1087         * MonoGenericInst.cs: Renamed to MonoGenericClass.cs and also
1088         renamed the class from `MonoGenericInst' to `MonoGenericClass'.
1090 2004-11-05  Zoltan Varga  <vargaz@freemail.hu>
1092         * AssemblyName.cs (FullName): Omit default values from full name.
1094         * Assembly.cs: Implement GetFiles (bool).
1096         * Binder.cs: Add support for byref types. Fixes #69140.
1098 2004-10-12  Martin Baulig  <martin@ximian.com>
1100         * MonoGenericInst.cs (MonoGenericInst): Call initialize() just
1101         before calling the *_internal() methods.
1103 2004-10-12  Zoltan Varga  <vargaz@freemail.hu>
1105         * MethodBody.cs: Implement this.
1107 2004-10-08  Zoltan Varga  <vargaz@freemail.hu>
1109         * Module.cs: Handle the case when the global type does not exists.
1111 2004-10-03  Zoltan Varga  <vargaz@freemail.hu>
1113         * LocalVariableInfo.cs: Reorganize fields so LocalBuilder can inherit
1114         from this class.
1116 2004-09-28  Zoltan Varga  <vargaz@freemail.hu>
1118         * PropertyInfo.cs (OptionalCustomModifiers): Add [MonoTODO].
1120         * PropertyInfo.cs: Add stub for GetConstantValue ().    
1122         * ParameterInfo.cs (marshalAs): Make this private.
1124         * Module.cs (ModuleHandle): Add [CLSCompliant(false)].
1126         * LocalVariableInfo.cs MethodBody.cs: Disable default constructor.
1128         * ExceptionHandlingClause.cs: Disable default constructor.
1130 2004-09-27  Zoltan Varga  <vargaz@freemail.hu>
1132         * CustomAttributeData.cs CustomAttributeTypedArgument.cs 
1133         CustomAttributeNamedArgument.cs: New files.
1135         * MethodBody.cs LocalVariableInfo.cs ExceptionHandlingClause.cs
1136         ExceptionHandlingClauseFlags.cs: New files.
1138 2004-09-26  Zoltan Varga  <vargaz@freemail.hu>
1140         * FieldInfo.cs: Add support for returning MarshalAsAttribute.
1142         * ParameterInfo.cs: Add marshalAs field, add support for returning
1143         MarshalAsAttribute.
1145 2004-09-25  Zoltan Varga  <vargaz@freemail.hu>
1147         * Module.cs: Add new 2.0 GetMethods and GetFields methods.
1149         * ParameterInfo.cs: Add GetPseudoCustomAttributes () method.
1151 2004-09-24  Zoltan Varga  <vargaz@freemail.hu>
1153         * MonoField.cs: Add GetFieldOffset.
1155         * ObfuscationAttribute.cs: Add ApplyToMembers.
1157         * Assembly.cs: Add stub for ReflectionOnlyLoadFrom.
1158         
1159         * Assembly.cs (LoadWithPartialName): Add [ComVisible] attribute.
1161         * MonoMethod.cs FieldInfo.cs: Add GetPseudoCustomAttributes () method.
1163         * AssemblyNameFlags.cs: Add LongevityUnspecified.
1165 2004-09-23  Zoltan Varga  <vargaz@freemail.hu>
1167         * Module.cs: Remove [MonoTODO] from ResolveMember.
1169         * MemberInfo.cs: Add 'Module' property.
1171         * AssemblyFlagsAttribute.cs: Add 2.0 stuff.
1173         * Assembly.cs: Add stubs for ReflectionOnlyLoad methods. Add [Obsolete]
1174         to LoadWithPartialName on 2.0.
1176         * AssemblyNameFlags.cs: Add new 2.0 members.
1178         * FieldInfo.cs MonoField.cs PropertyInfo.cs ParameterInfo.cs MonoProperty.cs: Add stubs for Optinal/RequiredCustomModifiers.
1180         * ObfuscationAttribute.cs ObfuscateAssemblyAttribute.cs: New files.
1182         * EventInfo.cs: Fix 2.0 build.
1184         * MonoEvent.cs (MonoEventInfo): Add 'other_methods' field.
1186         * EventInfo.cs MonoEvent.cs: Add NET 2.0 GetOtherMethods method.
1188 2004-09-22  Zoltan Varga  <vargaz@freemail.hu>
1190         * Module.cs: Implement net 2.0 ResolveXXX methods.
1192         * Module.cs (resolve_token_exception): Fix type of exception thrown.
1194 2004-09-21  Martin Baulig  <martin@ximian.com>
1196         * Assembly.cs (MonoDebugger_CheckRuntimeVersion): New internal method.
1198 2004-09-20  Zoltan Varga  <vargaz@freemail.hu>
1200         * Assembly.cs: Implement 2.0 reflection properties.
1202         * Module.cs: Implement 2.0 reflection properties. Add 'token' field.
1204 2004-09-19  Zoltan Varga  <vargaz@freemail.hu>
1206         * PortableExecutableKind.cs ImageFileMachine.cs: Make this internal
1207         under 1.0.
1209         * MemberInfo.cs ParameterInfo.cs: Add MetadataToken property.
1211         * Module.cs: Add ModuleHandle property and new icalls.
1213 2004-09-18  Zoltan Varga  <vargaz@freemail.hu>
1215         * Module.cs: Add net 2.0 Mvid property.
1217 2004-08-30  Sebastien Pouliot  <sebastien@ximian.com>
1219         * Assembly.cs: Added internal Demand(PermissionSet) for CAS.
1221 2004-08-30  Zoltan Varga  <vargaz@freemail.hu>
1223         * MethodBase.cs (GetMethodFromHandle): Avoid passing a valuetype to
1224         icalls.
1226 2004-08-29  Zoltan Varga  <vargaz@freemail.hu>
1228         * MethodBase.cs (GetMethodFromHandle): Implement.
1230 2004-08-13  Marek Safar  <marek.safar@seznam.cz>
1232         * Assembly.cs: Made _minimum, _optional, _refuse fields internal.
1233         To be reusable by AssemblyBuilder.
1235 2004-08-09  Sebastien Pouliot  <sebastien@ximian.com>
1237         * Assembly.cs: Fixed some exceptions in NET_1_1 and added some 2.0
1238         properties (required for compiling the new unit tests).
1239         * PortableExecutableKind.cs: New. Flags for NET_2_0.
1240         * ImageFileMachine.cs: New. (Rather limited) enum for NET_2_0.
1242 2004-08-08  Sebastien Pouliot  <sebastien@ximian.com>
1244         * Assembly.cs: Get default evidences when no evidences have been 
1245         supplied. Added internal methods for CAS.
1246         * AssemblyName.cs: New constructor for NET_2_0.
1248 2004-08-05  Sebastien Pouliot  <sebastien@ximian.com>
1250         * Assembly.cs: Added new fields for CAS to match the runtime (v23).
1252 2004-07-29  Martin Baulig  <martin@ximian.com>
1254         * Module.cs (Mono_GetGuid): Make this static.
1256 Sat Jul 10 15:48:34 CEST 2004 Paolo Molaro <lupus@ximian.com>
1258         * Module.cs: return just name in ToString (bug #61287).
1260 2004-07-03  Zoltan Varga  <vargaz@freemail.hu>
1262         * Module.cs: Initialize FilterTypeName[IgnoreCase]. Fixes #61048.
1264 2004-06-17  Gert Driesen <drieseng@users.sourceforge.net>
1266         * Pointer.cs: remove serializable attribute to match MS.NET
1268 2004-06-17  Gert Driesen <drieseng@users.sourceforge.net>
1269         
1270         * ParameterModifier.cs: marked serializable, renamed field to match
1271         MS.NET, throw ArgumentException when parameter count is less than or
1272         equal to zero
1274 2004-06-15  Gert Driesen <drieseng@users.sourceforge.net>
1276         * AssemblyName.cs: added TODO for serialization
1277         * Pointer.cs: fixed Box method to return object instead of 
1278         Pointer
1280 2004-06-15  Sebastien Pouliot  <sebastien@ximian.com>
1282         * MemberInfo.cs: Changed constructor from internal to protected.
1284 2004-06-11  Martin Baulig  <martin@ximian.com>
1286         * FieldInfo.cs (Mono_GetGenericFieldDefinition): New method for NET_2_0.
1288 2004-06-11  Lluis Sanchez  <lluis@ximian.com>
1290         * StrongNameKeyPair.cs: Catch exception when getting PublicKey to match 
1291           MS implementation. Generate the RSA in the constructors.
1293 2004-06-10  Lluis Sanchez  <lluis@ximian.com>
1295         * AssemblyName.cs: Added missing fields to serialization methods.
1296         * StrongNameKeyPair.cs: Made it compatible with MS serialization.
1298 2004-06-08  Jacson Harper  <jackson@ximian.com>
1300         * AssemblyName.cs (GetAssemblyName): Send a fullpath to the
1301         runtime. This way the codebase is set properly. The codebase is
1302         using g_filename_to_uri which expects a full path.
1303         
1304 2004-06-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1306         * Binder.cs: don't crash when we have a 'null' argument Type array.
1307         Allow it for non-value types. Fixed for both, methods and properties.
1308         Closes bug #58846.
1310 2004-06-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1312         * Binder.cs: default score must be lower than fail_score or we'll get
1313         an ambiguous match when no indexers given and one single match is found.
1315 2004-06-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1317         * Binder.cs: removed ^Ms. In case of several properties matching, try
1318         to disambiguate based on the indexer types provider and the conversions
1319         from those into the ones of the property.
1321 2004-05-31  Gert Driesen <drieseng@users.sourceforge.net>
1323         * Assembly.cs: added missing ComVisible attribute on
1324         ImageRuntimeVersion property
1325         * ConstructorInfo.cs: added missing attributes on Invoke
1326         * EventInfo.cs: added missing attributes
1327         * FieldInfo.cs: added missing attributes
1328         * MethodBase.cs: added missing attributes
1329         * PropertyInfo.cs: added missing attributes
1331 2004-05-22  Cesar Lopez Nataren  <cesar@ciencias.unam.mx>
1333         * FieldInfo.cs: changed default constructor from internal to protected, so classes
1334         that inherit from it can get build. 
1336 2004-05-18  Gert Driesen (drieseng@users.sourceforge.net)
1338         * MonoProperty.cs: return correct MethodInfo for 
1339         property with only a get or set method. Fixes
1340         bug #58661.
1342 2004-05-18  Sebastien Pouliot  <sebastien@ximian.com>
1344         * Assembly.cs: Return an empty Evidence collection to avoid 
1345         NullReferenceException from calling code (as this is never
1346         null with MS implementation). See bugzilla #53548.
1348 2004-05-14  Zoltan Varga  <vargaz@freemail.hu>
1350         * Assembly.cs: Add stub for LoadFrom.
1352         * Assembly.cs: Fix build.
1354 2004-05-13  Zoltan Varga  <vargaz@freemail.hu>
1356         * Assembly.cs: Add ModuleResolve event.
1358         * Module.cs (Mono_GetGuid): Make this internal.
1360         * FieldInfo.cs: Add stubs for {Get,Set}ValueDirect.
1362 2004-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1364         * Binder.cs: check for ambiguous matches in SelectMethod and
1365         SelectProperty. Fixes bug #58381.
1367 2004-05-06  Jackson Harper <jackson@ximian.com>
1369         * Assembly.cs: remove TODO, this is done.
1370         
1371 2004-05-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1373         * Assembly.cs: ToString () returns the same as GetName ().ToString ().
1374         Fixes bug #58104.
1376 2004-05-03  Jackson Harper  <jackson@ximian.com>
1378         * Assembly.cs: Implement LoadWithPartialName. The bulk of this
1379         method is done in the runtime.
1380         
1381 2004-04-29  Lluis Sanchez Gual  <lluis@ximian.com>
1383         * MonoProperty.cs: Property.GetGetMethod() does not return the method if it
1384         is private (it did until now because of a bug). Make sure it works as it 
1385         worked before the fix.
1386         
1387 2004-04-27  Lluis Sanchez Gual  <lluis@ximian.com>
1389         * ICustomAttributeProvider.cs, IReflect.cs, MemberInfo.cs, AssemblyName.cs: 
1390           Removed completed     TODOs.
1391         * MonoProperty.cs: In GetAccessors(), GetGetMethod() and GetSetMethod(),
1392           do not return private methods if nonPublic == false.
1393         * ReflectionTypeLoadException.cs: Implemented serialization support.
1395 2004-04-26  Jackson Harper  <jackson@ximian.com>
1397         * Assembly.cs: Add icall to determine if an assembly has been
1398         loaded from the GAC.
1400 2004-04-23  Atsushi Enomoto  <atsushi@ximian.com>
1402         * MethodBase.cs, MonoMethod.cs, TypeDelegator.cs :
1403           The fix should be easier ;)
1405 2004-04-23  Atsushi Enomoto  <atsushi@ximian.com>
1407         * MethodBase.cs, MonoMethod.cs, TypeDelegator.cs :
1408           NET_2_0 related build fix.
1410 2004-04-19  Lluis Sanchez Gual  <lluis@ximian.com>
1412         * Assembly.cs: Removed TODO for CreateQualifiedName.
1413         * AssemblyName.cs: Fixed serialization code.
1414         * AssemblyNameProxy.cs: Implemented.
1415         * Module.cs: Implemented GetMethod() methods, FindTypes() and GetObjectData.
1417 2004-04-07  Martin Baulig  <martin@ximian.com>
1419         * MonoGenericInst.cs (MonoGenericParam): Removed.
1421 2004-04-07  Martin Baulig  <martin@ximian.com>
1423         * MethodBase.cs
1424         (MethodBase.GetGenericParameters): Renamed to GetGenericArguments().
1426         * MonoGenericInst.cs (MonoGenericInst.DeclaringType): Removed.
1427         (MonoGenericInst.GetNestedTypes): Just call
1428         `generic_type.GetNestedTypes (bf)' here.
1430         * MonoMethod.cs (MonoMethod.ToString): If we're a generic method,
1431         include the type arguments.
1433 2004-04-06  Sebastien Pouliot  <sebastien@ximian.com>
1435         * StrongNameKeyPair.cs: Added support for ECMA "key". Now returns a
1436         correct StrongName instance when the ECMA "key" is used.
1438 2004-04-02  Martin Baulig  <martin@ximian.com>
1440         * MonoGenericInst.cs (MonoGenericInst.DeclaringType): Override.
1442 2004-04-01  Martin Baulig  <martin@ximian.com>
1444         * MonoGenericInst.cs (MonoGenericParam.IsValueTypeImpl): Override
1445         this and always return false.
1447 2004-04-01  Martin Baulig  <martin@ximian.com>
1449         * MonoGenericInst.cs (MonoGenericParam.IsSubclassOf): Override this.    
1451 2004-03-30  Martin Baulig  <martin@ximian.com>
1453         * MonoGenericInst.cs
1454         (MonoGenericParam): Added `bool has_ctor_constraint' field.
1455         (MonoGenericParam.SetConstraints): Added `bool
1456         has_ctor_constraint' argument.  
1458 2004-03-29  Martin Baulig  <martin@ximian.com>
1460         * MethodBase.cs (MethodBase.Mono_IsInflatedMethod): New public
1461         virtual property.
1462         (MethodBase.HasGenericParameters): Use the "official" behavior
1463         here, ie. return false if we're not a generic method.
1465 2004-03-29  Martin Baulig  <martin@ximian.com>
1467         * MethodBase.cs: Moved the generics stuff here, made it virtual
1468         where neccessary and use the correct API.
1470 2004-03-24  Sebastien Pouliot  <sebastien@ximian.com>
1472         * StrongNameKeyPair.cs: Added an internal method to return a 
1473         StrongName object (for AssemblyBuilder). Simplified implementation 
1474         using Mono.Security.Cryptography.CryptoConvert class.
1476 2004-03-24  Zoltan Varga  <vargaz@freemail.hu>
1478         * AssemblyFileVersionAttribute.cs (.ctor): Add argument checking.
1480 2004-03-23  Martin Baulig  <martin@ximian.com>
1482         * MonoGenericInst.cs: Added support for events.
1484 2004-03-23  Martin Baulig  <martin@ximian.com>
1486         * MonoMethod.cs (MonoMethod.ToString): Don't include the namespace
1487         if it's the empty string.
1489 2004-03-10  Martin Baulig  <martin@ximian.com>
1491         * MethodBase.cs (MethodBase): Implemented
1492         GetGenericMethodDefinition() and HasGenericParameters.
1494 2004-03-09  Martin Baulig  <martin@ximian.com>
1496         * MonoEvent.cs (MonoEventInfo): Replaced `parent' with
1497         `declaring_type' and `reflected_type'.
1498         (MonoEvent): Distinguish between declaring and reflected type.
1500 2004-02-25  Martin Baulig  <martin@ximian.com>
1502         * MonoGenericInst.cs
1503         (MonoGenericInst.GetNestedTypes): Override this.
1505 2004-02-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1507         * Binder.cs:
1508         (SelectProperty): check the return Type if provided.
1510 2004-02-17  Martin Baulig  <martin@ximian.com>
1512         * MonoGenericInst.cs (MonoGenericInst.GetProperties): Added
1513         support for properties.
1515 2004-02-17  Martin Baulig  <martin@ximian.com>
1517         * MonoGenericInst.cs (MonoGenericInst.GetMethods): Walk up the
1518         class hierarchy and return members from the parent classes.
1519         (GetConstructors, GetFields): Likewise.
1521 2004-02-17  Martin Baulig  <martin@ximian.com>
1523         * MonoGenericInst.cs (MonoGenericInst.initialize): Don't inflate
1524         all the members here; we only do this for members of the current
1525         class and only when they're actually queried for.
1527 2004-02-12  Martin Baulig  <martin@ximian.com>
1529         * MonoGenericInst.cs (MonoInflatedField): Removed.
1531         * MonoGenericInst.cs (MonoInflatedMethod, MonoInflatedCtor): Removed.
1533 2004-02-08  Martin Baulig  <martin@ximian.com>
1535         * MonoGenericInst.cs (MonoGenericInst.inflate): Pass recursive
1536         invocations the `reflected' type as `reflected', not `this'.
1537         (MonoInflatedMethod, MonoInflatedCtor): Reflect latest runtime changes.
1539 2004-02-08  Martin Baulig  <martin@ximian.com>
1541         * MonoGenericInst.cs (MonoGenericInst.GetParentType): New interncall.
1542         (MonoGenericInst.GetInterfaces_internal): New interncall.
1543         (MonoGenericInst): Reflect latest API changes; use GetParentType()
1544         and GetInterfaces_internal() instead of the fields.     
1546 2004-02-06  Martin Baulig  <martin@ximian.com>
1548         * MonoGenericInst.cs (MonoGenericInst.DeclaringType): Override this.
1550 2004-02-03  Martin Baulig  <martin@ximian.com>
1552         * MonoGenericInst.cs (MonoGenericInst.GetInterfaces): Override this.
1554 2004-01-25  Martin Baulig  <martin@ximian.com>
1556         * MonoGenericInst.cs: Honor BindingFlags.DeclaredOnly.
1558 2004-01-19  Zoltan Varga  <vargaz@freemail.hu>
1560         * Assembly.cs (GetManifestResourceStream): Make the IntPtrStream keep
1561         a reference on the Module object which contains the resource.
1563         * Module.cs: Decrease the image reference count when the Module is
1564         garbage collected.
1566 2004-01-16  Martin Baulig  <martin@ximian.com>
1568         * Assembly.cs: Make the `MonoDebugger_' methods static.
1570 2004-01-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1572         * MonoProperty.cs: changed get_property_info so that it only gets the
1573         values needed. Reduces the allocations needed.
1575 2004-01-15  Martin Baulig  <martin@ximian.com>
1577         * Assembly.cs: Make the `MonoDebugger_' methods internal.
1579 2004-01-04  Nick Drochak <ndrochak@gol.com>
1581         * Assembly.cs: Removed unused variable in catch block.Eliminates a build
1582         warning.
1584 2003-12-29 Ben Maurer  <bmaurer@users.sourceforge.net>
1586         * MethodBase.cs: Internal method to get param count (this
1587         way we can get the info for the ilgen without creating
1588         an array, if we override the method).
1590 2003-12-18  Zoltan Varga  <vargaz@freemail.hu>
1592         * Assembly.cs: Implement LoadFrom.
1594 2003-12-17  Zoltan Varga  <vargaz@freemail.hu>
1596         * Assembly.cs: Add stubs for LoadFile.
1598 2003-12-16  Zoltan Varga  <vargaz@freemail.hu>
1600         * Assembly.cs (GetManifestResourceStream): Only load non-embedded
1601         resources from files.
1603 2003-12-15  Zoltan Varga  <vargaz@freemail.hu>
1605         * MonoField.cs (SetValue): Throw an exception if the value cannot be
1606         converted to the field's type. Fixes #52177.
1608 2003-12-11  Lluis Sanchez Gual <lluis@ximian.com>
1609         
1610         * AmbiguousMatchException.cs: Added serialization constructor.
1611         
1612 2003-12-08  Martin Baulig  <martin@ximian.com>
1614         * MonoGenericInst.cs (MonoGenericParam): New internal class;
1615         derives from MonoType.  
1617 2003-12-08  Patrik Torstensson <p@rxc.se>
1619         * Binder.cs: Added internal helpers to get derived level and select the 
1620         most derived methodbase (used in GetMethodImpl)
1622 2003-11-25  Zoltan Varga  <vargaz@freemail.hu>
1624         * Assembly.cs (LoadWithPartialName): Return null instead of throwing
1625         an exception to match MS behavior.
1627 2003-11-24  Zoltan Varga  <vargaz@freemail.hu>
1629         * MonoMethod.cs: Add missing constructor.
1631 2003-11-21  Zoltan Varga  <vargaz@freemail.hu>
1633         * MethodBase.cs (Invoke): Make this virtual under NET 1.2.
1635 2003-11-16  Martin Baulig  <martin@ximian.com>
1637         * MonoGenericInst.cs (MonoGenericInst.inflate): Call
1638         `parent.inflate (parent,...)' instead of
1639         `parent.inflate (reflected,...)'.
1641 2003-11-16  Zoltan Varga  <vargaz@freemail.hu>
1643         * Assembly.cs (InternalGetAssemblyName): New icall.
1645         * AssemblyName.cs (GetAssemblyName): Implement this without loading
1646         the assembly in question. Fixes #51035.
1648 2003-11-14  Martin Baulig  <martin@ximian.com>
1650         * MonoGenericInst.cs (MonoGenericInst): Added
1651         `MonoGenericInst[] interfaces' field.  This is only used for
1652         interface types.
1653         (MonoGenericInst.inflate): If we're an interface type, add the
1654         methods from all interfaces we inherit.
1656 2003-11-14  Zoltan Varga  <vargaz@freemail.hu>
1658         * AssemblyNameFlags.cs MethodAttributes.cs: Add new enumerated values 
1659         from NET 1.1.
1660         
1661         * *.cs: Add missing attributes.
1663 2003-11-11  Todd Berman  <tberman@gentoo.org>
1665         * AssemblyName.cs (FullName): Fixed to include a proper PublicKeyToken.
1667 2003-11-11  Zoltan Varga  <vargaz@freemail.hu>
1669         * MonoMethod.cs: Implement CallingConvention member.
1671 2003-11-10  Zoltan Varga  <vargaz@freemail.hu>
1673         * Assembly.cs (InternalGetType): Add a 'module' argument so this
1674         method can be used from Module as well.
1676         * Module.cs (GetType): Implement.
1678         * Module.cs (GetTypes): Implement.
1680         * Module.cs: Remove some [MonoTODO] attributes from implemented methods.
1681 2003-11-08  Martin Baulig  <martin@ximian.com>
1683         * MonoGenericInst.cs (MonoInflatedMethod, MonoInflatedCtor): Added
1684         a private `IntPtr ginst' field.
1685         (MonoGenericInst.IsValueTypeImpl, inflate): Allow interfaces.
1687 2003-11-02  Martin Baulig  <martin@ximian.com>
1689         * MonoGenericInst.cs (MonoGenericInst.initialize): Include members
1690         from our parent classes in the `methods', `ctors' and `fields'
1691         arrays.  When inflating them, reflection now sets their
1692         `declaring_type' and `reflected_type' fields.
1693         (MonoInflatedMethod, MonoInflatedCtor): Added
1694         `MonoGenericInst declaring_type' and `MonoGenericInst reflected_type'
1695         fields and override the `DeclaringType' and `ReflectedType' properties.
1697 2003-11-02  Martin Baulig  <martin@ximian.com>
1699         * MonoGenericInst.cs (MonoGenericInst.IsValueTypeImpl): Override this.
1701 2003-10-31  Martin Baulig  <martin@ximian.com>
1703         * MonoGenericInst.cs (MonoInflatedField): New internal class.
1704         (MonoGenericInst.GetFields): Override this method and inflate
1705         the fields.
1707         * MonoField.cs: Don't make this class sealed.
1709 2003-10-30  Martin Baulig  <martin@ximian.com>
1711         * MonoGenericInst.cs (MonoInflatedMethod, MonoInflatedCtor): New
1712         internal classes.
1714 2003-10-25  Martin Baulig  <martin@ximian.com>
1716         * MonoGenericInst.cs: New internal class.
1718 2003-10-18  Martin Baulig  <martin@ximian.com>
1720         * MethodInfo.cs (MethodInfo.GetGenericArguments): Make this method
1721         abstract; use an interncall in MonoMethod and a custom
1722         implementation in MethodBuilder.        
1724 2003-10-17  Pedro Martinez Julia  <yoros@wanadoo.es>
1726         * MonoEvent.cs: implement ToString method as in MS.NET.
1728         * MonoMethod.cs: fix some differences between mono and MS.NET
1729         implementation of ToString.
1731 2003-10-17  Zoltan Varga  <vargaz@freemail.hu>
1733         * AssemblyName.cs: Fix Version property when some version fields are
1734         undefined.
1736 2003-10-17  Martin Baulig  <martin@ximian.com>
1738         * MethodInfo.cs (MethodInfo.GetGenericArguments): New method.
1739         (MethodInfo.BindGenericParameters): New method.
1741 2003-10-16  Martin Baulig  <martin@ximian.com>
1743         * MethodInfo.cs (MethodInfo.IsGenericMethodDefinition): New
1744         property.       
1746 2003-08-08  Lluis Sanchez Gual  <lluis@ximian.com>
1748         * ParameterInfo.cs: Modified constructor of ParameterInfo for
1749           the return type of a method. Since parameter positions are
1750           zero-based, the position of the return type must be is -1.
1752 2003-08-06  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1754         * TargetInvocationException.cs: Fixed signature
1756 2003-07-24  Miguel de Icaza  <miguel@ximian.com>
1758         * TypeDelegator.cs: Added generics stubs.
1760 2003-07-21  Lluis Sanchez Gual  <lluis@ximian.com>
1762         * ParameterInfo.cs: Position is zero-based in ParameterInfo.
1763           Set the right position value when getting from ParameterBuilder.
1765 Thu Jul 17 17:26:59 CEST 2003 Paolo Molaro <lupus@ximian.com>
1767         * FieldInfo.cs, MonoField.cs: cleanups. Cache some info and use
1768         finer-grained icalls. Requires a matching runtime.
1770 2003-07-11  Zoltan Varga  <vargaz@freemail.hu>
1772         * AssemblyFlagsAttribute.cs: Added new constructor from NET 1.1.
1774         * AssemblyFlagsAttribute.cs: Added new property from NET 1.1.
1776 2003-07-10  Zoltan Varga  <vargaz@freemail.hu>
1778         * Assembly.cs: Implemented ImageRuntimeVersion property from NET 1.1.
1780 Mon Jun 30 19:12:08 CEST 2003 Paolo Molaro <lupus@ximian.com>
1782         * Pointer.cs: implemented.
1784 2003-06-15  Zoltan Varga  <vargaz@freemail.hu>
1786         * EventInfo.cs: Implement IsSpecialName.
1788 2003-06-10  Zoltan Varga  <vargaz@freemail.hu>
1790         * Module.cs (Mono_GetGuid): New method to return the GUID of the
1791         module.
1793 2003-05-21  Zoltan Varga  <vargaz@freemail.hu>
1795         * Module.cs: Implement GetField and its friends.
1797 2003-05-20  Zoltan Varga  <vargaz@freemail.hu>
1799         * Assembly.cs (GetManifestResourceStream): Moved handling of 
1800         linked resources into managed code using the newly implemented
1801         GetManifestResourceInfo () method.
1803 2003-05-19  Zoltan Varga  <vargaz@freemail.hu>
1805         * Module.cs: Implemented IsResource.
1807         * Assembly.cs: Implemented GetManifestResourceInfo, GetModules,
1808         GetModule, GetLoadedModules methods.
1809         * Assembly.cs (GetManifestResourceStream): Added support for 
1810         resources in extern assemblies.
1812 2003-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1814         * Assembly.cs: fixed bug #42833.
1816 2003-05-11  Miguel de Icaza  <miguel@ximian.com>
1818         * Binder.cs (ChangeType): Very simplistic change.  Am not sure if
1819         it is correct, but it makes RemotingCorba move along a bit more
1820         (Remoting.Corba invokes Binder.ConvertArgs, which calls
1821         Binder.ChangeType with an Attribute [] to Object []).
1823 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1825         * Binder.cs:
1826         (check_type): fixed bug #41655.
1828 2003-05-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1830         * Assembly.cs: implemented GetSatelliteAssembly.
1832 Fri Apr 11 13:06:10 CEST 2003 Paolo Molaro <lupus@ximian.com>
1834         * Assembly.cs: added GetNamespaces() icall.
1836 2003-03-17  Zoltan Varga  <vargaz@freemail.hu>
1838         * FieldInfo.cs (GetFieldFromHandle): Implemented.
1840 2003-03-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1842         * Assembly.cs: added missing stuff. Only ModuleResolve event is left
1843         out to avoid changing MonoReflectionAssembly by now.
1844         * ModuleResolveEventHandler.cs: delegate.
1846 2003-02-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1848         * TargetInvocationException.cs: added serialization ctor.
1850 2003-02-18  Martin Baulig  <martin@ximian.com>
1852         * Assembly.cs (MonoDebugger_GetMethodToken): New method to get a
1853         method's metadata token.
1855 2003-02-04  Sebastien Pouliot  <spouliot@videotron.ca>
1857         * Module.cs: Corrected indentation for class.
1859 2003-02-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1861         * Binder.cs:
1862         (check_type): return true when the target type is object and the source
1863         is a value type.
1865 2003-02-03 Patrik Torstensson
1867         * Binder.cs: minimize locking time in DefaultBinder.
1869 2003-02-01  Sebastien Pouliot  <spouliot@videotron.ca>
1871         * Module.cs: Oups - not implemented. Added MonoTODO to most methods
1872         so it's real status get reflected correctly on the web site.
1874 2003-01-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1876         * MonoMethod.cs: implemented GetBaseDefinition ().
1878 2003-01-28  Patrik Torstensson
1879         * MonoMethod.cs: Added support for serialization for MonoMethod and MonoCMethod
1880         * ReflectionSerializationHolder.cs: Support class for serialization
1882 2003-01-17  Zoltan Varga  <vargaz@freemail.hu>
1884         * ParameterInfo.cs: modified constructor so it allows the 
1885         ParameterBuilder to be null and add a 'position' argument which will
1886         be used when pb is null.
1888 2003-01-16  Lluis Sanchez Gual <lsg@ctv.es>
1890         * Assembly.cs: added serialization support.
1892 Sat Jan 4 18:26:41 CET 2003 Paolo Molaro <lupus@ximian.com>
1894         * MonoMethod.cs: propagate exceptions from the internal invoke
1895         code that need to be propagated.
1897 Sat Jan 4 18:04:07 CET 2003 Paolo Molaro <lupus@ximian.com>
1899         * Binder.cs: throw an exception if the number of arguments 
1900         when invoking a method is incorrect.
1902 Thu Jan 2 19:04:58 CET 2003 Paolo Molaro <lupus@ximian.com>
1904         * Binder.cs: In SelectMethod() look for an exact match first.
1906 2003-01-01  Rachel Hestilow <hestilow@ximian.com>
1908         * MonoField.cs (SetValue): Fix logic typo. Check that obj is
1909         non-null only for the non-static case.
1911 2002-12-30  Sebastien Pouliot <spouliot@videotron.ca>
1913         * AssemblyName.cs: Fixed null cultureinfo in FullName (as reported by 
1914         Zoltan).
1916 2002-12-23  Sebastien Pouliot <spouliot@videotron.ca>
1918         * AssemblyName.cs: GetPublicKey now return an empty array (not null)
1919         when an assembly isn't signed with a StrongName (to match MS 
1920         implementation) and null when no assembly is referenced. Also removed 
1921         commented code (no bug reported so it was probably not used).
1923 Thu Dec 19 16:43:19 CET 2002 Paolo Molaro <lupus@ximian.com>
1925         * MonoMethod.cs, ParameterInfo.cs: return a custom attribute
1926         provider for the return type of a method.
1928 2002-12-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1930         * AssemblyName.cs: little fix in FullName.
1932 2002-12-07  Sebastien Pouliot <spouliot@videotron.ca>
1934         * AssemblyName.cs: Added missing methods/interfaces. Fixed some
1935         code to match the MS Framework.
1936         * StrongNameKeyPair.cs: Completed the "visible" implementation.
1937         There must be some internal methods to allow signing with the key.
1939 2002-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1941         * EventInfo.cs: implemented (Add|Remove)EventHandler.
1943 Mon Nov 18 17:52:56 CET 2002 Paolo Molaro <lupus@ximian.com>
1945         * Assembly.cs: implemented GetManifestResourceStream (Type type,
1946         * String name).
1948 2002-11-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1950         * Assembly.cs: changed name of GetType (string, bool, bool) to
1951         InternalGetType.
1953 2002-10-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1955         * TargetInvocationException.cs: modified default message.
1957 2002-10-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1959         * MonoProperty.cs:
1960         * PropertyInfo.cs: fixed bug #31535.
1962 2002-09-27  Martin Baulig  <martin@gnome.org>
1964         * Assembly.cs (Assembly.GetReferencedAssemblies): Implemented.
1966 2002-09-24  Martin Baulig  <martin@gnome.org>
1968         * Assembly.cs (MonoDebugger_GetType): New method to get a Type
1969         from its metadata token.  This should only be used by the debugger.
1971 2002-09-21  Martin Baulig  <martin@gnome.org>
1973         * Assembly.cs (MonoDebugger_GetLocalTypeFromSignature): New method to
1974         get the type of a local variable from its signature.  This should only
1975         be used by the debugger.
1977 2002-09-20  Martin Baulig  <martin@gnome.org>
1979         * Assembly.cs (MonoDebugger_GetMethod): New method to get a MethodBase
1980         from its metadata token.  This should only be used by the debugger.
1982 Wed Sep 11 12:50:54 CEST 2002 Paolo Molaro <lupus@ximian.com>
1984         * Binder.cs: more default binder implementation.
1986         * FieldInfo.cs, MonoField.cs: fixed SetValue () implementation.
1987         * MonoMethod.cs: use the binder in the Invoke () implementation.
1988         Implemented custom attributes methods and ToString for constructors.
1990 Thu Sep 5 20:36:27 CEST 2002 Paolo Molaro <lupus@ximian.com>
1992         * Binder.cs: finished the Binder class and implemented the default
1993         binder.
1995 2002-09-03  Martin Baulig  <martin@gnome.org>
1997         * Assembly.cs (Assembly.Location): Implemented.
1999 2002-08-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2001         * MonoField.cs:
2002         (GetValue): allow obj to be null (used for static fields).
2004 2002-08-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2006         * MonoField.cs: GetValue renamed to GetValueInternal. Added check for
2007         null.
2009 Wed Aug 21 13:03:25 CEST 2002 Paolo Molaro <lupus@ximian.com>
2011         * Assembly.cs: GetEntryAssembly patch by Tomi Pakarinen 
2012         <tomi.pakarinen@welho.com>.
2014 2002-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2016         * Assembly.cs: FullName now returns a proper string instead of
2017         something like 'file://...'.
2019         * AssemblyName.cs: added missing ToString method.
2021 2002-08-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2023         * FieldInfo.cs: implemented SetValue.
2025 Wed Aug 14 17:37:30 CEST 2002 Paolo Molaro <lupus@ximian.com>
2027         * MonoEvent.cs, MonoMethod.cs: implemented ReflectedType.
2029 2002-08-14  Dick Porter  <dick@ximian.com>
2031         * Assembly.cs: Stub out GetSatelliteAssembly
2033 2002-08-12  Tim Coleman <tim@timcoleman.com>
2034         * MonoProperty.cs:
2035                 Allow multiple parameters for GetValue ()
2037 Thu Aug 8 13:05:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
2039         * Assembly.cs: implemented GetFile() and GetFiles().
2041 Mon Aug 5 21:19:41 CEST 2002 Paolo Molaro <lupus@ximian.com>
2043         * Assembly.cs: implemented EntryPoint and a few 
2044         resource related methods.
2046 Wed Jul 24 13:08:56 CEST 2002 Paolo Molaro <lupus@ximian.com>
2048         * MethodBase.cs: implemented GetCurrentMethod.
2049         * Assembly.cs: implemented GetExecutingAssembly and
2050         GetCallingassembly.
2052 Mon Jul 1 18:01:49 CEST 2002 Paolo Molaro <lupus@ximian.com>
2054         * MonoProperty.cs: handle properties with only a set method.
2056 2002-05-24  Martin Baulig  <martin@gnome.org>
2058         * ParameterInfo.cs: Added internal constructor.
2060 Thu May 23 17:18:46 CEST 2002 Paolo Molaro <lupus@ximian.com>
2062         * Assembly.cs: implemented CreateInstance ().
2064 2002-05-22  Martin Baulig  <martin@gnome.org>
2066         * MethodBase.cs (get_next_table_index): Added `object obj' argument.
2068 Tue May 21 12:07:40 CEST 2002 Paolo Molaro <lupus@ximian.com>
2070         * EventInfo.cs: more implementation.
2072 Mon May 20 17:37:39 CEST 2002 Paolo Molaro <lupus@ximian.com>
2074         * MonoEvent.cs: fill-in the implementation.
2076 Sat May 4 15:00:39 CEST 2002 Paolo Molaro <lupus@ximian.com>
2078         * Assembly.cs, AssemblyName.cs: updates and fixes.
2080 2002-04-24      Patrik Torstensson <patrik.torstensson@labs2.com>
2082         * MonoProperty.cs (GetValue) : basic implementation to support nunit
2083         * PropertyInfo.cs (GetValue) : call MonoProperty::GetValue instead of returning null
2085 Thu Apr 18 16:40:54 CEST 2002 Paolo Molaro <lupus@ximian.com>
2087         * MonoMethod.c: cache the method name.
2089 2002-04-12  Duncan Mak  <duncan@ximian.com>
2091         * AssemblyAlgorithmIdAttribute.cs: Fixed typo in AlgorithmId
2092         property.
2094         * AssemblyDelaySignAttribute.cs: Fixed type in DelaySign
2095         attribute.
2097         * AssemblyFileVersionAttribute.cs: Renamed FileVersion property to
2098         Version.
2100         * BindingFlags.cs: Added missing value "PutRefDispProperty".
2102         * FieldAttributes.cs: Removed value "HasSecurity".
2104         * ManifestResourceInfo.cs: Added missing properties FileName,
2105         ReferencedAssembly and ResourceLocation.
2107         * TargetInvocationException.cs: Added the missing constructors.
2109 Fri Apr 12 18:32:34 CEST 2002 Paolo Molaro <lupus@ximian.com>
2111         * MonoMethod.cs: make Name property an icall.
2113 2002-04-08  Nick Drochak  <ndrochak@gol.com>
2115         * DefaultMemberAttribute.cs: Add AttributeUsage attribute for class,
2116         struct and interface.
2118 Fri Apr 5 15:40:24 CEST 2002 Paolo Molaro <lupus@ximian.com>
2120         * MonoEvent.cs: remove unused code.
2121         * MonoProperty: implement ToString().
2123 Wed Apr 3 17:59:26 CEST 2002 Paolo Molaro <lupus@ximian.com>
2125         * Assembly.cs: implement GetTypes() and GetExportedTypes().
2127 Mon Mar 25 18:54:58 CET 2002 Paolo Molaro <lupus@ximian.com>
2129         * MonoEvent.cs: added the needed fields.
2131 2002-03-20  Martin Baulig  <martin@gnome.org>
2133         * ConstructorInfo.cs (Invoke): Implemented, call the abstract Invoke.
2135         * MonoMethod.cs (MonoCMethod.Invoke): Implemented, call InternalInvoke.
2137 2002-03-14  Dietmar Maurer  <dietmar@ximian.com>
2139         * MonoMethod.cs (Invoke): call InternalInvoke
2141         * MethodBase.cs (Invoke): call virtual invoke function 
2143 Thu Mar 7 17:14:20 CET 2002 Paolo Molaro <lupus@ximian.com>
2145         * EventInfo.cs: add compiler needed methods.
2146         * MonoMethod.cs: make ToString() return the return type name, too.
2148 2002-03-07  Nick Drochak  <ndrochak@gol.com>
2150         * BindingFlags.cs: Add missing enum values.  Thanks CorCompare.
2152 Tue Mar 5 20:33:14 CET 2002 Paolo Molaro <lupus@ximian.com>
2154         * TypeAttributes.cs, MethodImplAttributes.cs: updates to latest spec.
2156 2002-02-26  Duncan Mak  <duncan@ximian.com>
2158         * StrongNameKeyPair.cs: Committed for Kevin Winchester (kwin@ns.sympatico.ca>.
2160 2002-02-24 Nick Drochak  <ndrochak@gol.com>
2162         * AssemblyNameFlags.cs: Use proper member name.  Thanks corcompare!
2164 Fri Feb 22 18:54:13 CET 2002 Paolo Molaro <lupus@ximian.com>
2166         * MonoField.cs: implement GetValue as an internalcall.
2167         Implemented ToString().
2169 Tue Feb 19 20:36:04 CET 2002 Paolo Molaro <lupus@ximian.com>
2171         * Assembly.cs, Module.cs, MonoField.cs, MonoMethod.cs,
2172         MonoProperty.cs, ParameterInfo.cs: Implemented custom attributes
2173         related methods.
2175 Thu Feb 14 18:55:23 CET 2002 Paolo Molaro <lupus@ximian.com>
2177         * TypeAttributes.cs: update to latest spec.
2179 Mon Feb 11 19:50:27 CET 2002 Paolo Molaro <lupus@ximian.com>
2181         * Assembly.cs: handle throwOnError in GetType() call.
2183 2002-02-07  Duncan Mak  <duncan@ximian.com>
2185         * AssemblyName.cs: Implemented ISerializable interface for the
2186         fields that we have.
2188 2002-02-05  Duncan Mak  <duncan@ximian.com>
2189         
2190         * Missing.cs: 
2191         * TargetException.cs: Added in CVS.
2193 2002-01-31  Duncan Mak  <duncan@ximian.com>
2195         * ReflectionTypeLoadException.cs: Added missing bits.
2197 2002-01-23  Duncan Mak  <duncan@ximian.com>
2199         * AssemblyAlgorithmIdAttribute.cs:
2200         * AssemblyCompanyAttribute.cs:
2201         * AssemblyConfigurationAttribute.cs:
2202         * AssemblyCopyrightAttribute.cs:
2203         * AssemblyCultureAttribute.cs:
2204         * AssemblyDefaultAliasAttribute.cs:
2205         * AssemblyDelaySignAttribute.cs:
2206         * AssemblyDescriptionAttribute.cs:
2207         * AssemblyFileVersionAttribute.cs:
2208         * AssemblyFlagsAttribute.cs:
2209         * AssemblyInformationalVersionAttribute.cs:
2210         * AssemblyKeyFileAttribute.cs:
2211         * AssemblyKeyNameAttribute.cs:
2212         * AssemblyNameProxy.cs:
2213         * AssemblyProductAttribute.cs:
2214         * AssemblyTitleAttribute.cs:
2215         * AssemblyTradeMarkAttribute.cs:
2216         * AssemblyVersionAttribute.cs:
2217         * CustomAttributeFormatException.cs:
2218         * InvalidFilterCriteriaException.cs:
2219         * TargetParameterCountException.cs: Added.
2221 2002-01-23  Miguel de Icaza  <miguel@ximian.com>
2223         * Assembly.cs (Assembly.CodeBase): Implement.
2224         (Assembly.FullName): simplistic and broken implementation.  Gets
2225         us where we were yesterday.
2227         Code style fix.
2229 Tue Jan 22 22:54:18 CET 2002 Paolo Molaro <lupus@ximian.com>
2231         * IReflect.cs: corrected GetMember() return type.
2232         * InterfaceMapping.cs, TypeDelegator.cs: implemented.
2234 Wed Jan 9 19:37:14 CET 2002 Paolo Molaro <lupus@ximian.com>
2236         * MonoMethod.cs: ToString () implementation.
2238 2002-01-04  Ravi Pratap  <ravi@ximian.com>
2240         * Assembly.cs : Decorate missing bits with the MonoTODO
2241         attribute.
2243         * ConstructorInfo.cs, MonoMethod.cs, MonoProperty.cs, ParameterInfo.cs,
2244         ReflectionTypeLoadException.cs : Ditto.
2246         * FieldInfo.cs : Ditto.
2247         
2248 Thu Jan 3 23:25:34 CET 2002 Paolo Molaro <lupus@ximian.com>
2249         
2250         * Assembly.cs: trow unimplemented exceptions.
2252 Tue Dec 18 18:46:22 CET 2001 Paolo Molaro <lupus@ximian.com>
2254         * MonoMethod.cs: implemented GetParameters().
2255         * MonoProperty.cs: PropertyInfo implementation.
2256         * ParameterInfo.cs: implemented.
2257         * PropertyInfo.cs: fixes.
2259 Thu Dec 13 20:18:05 CET 2001 Paolo Molaro <lupus@ximian.com>
2261         * FieldInfo.cs: implemented some Is* propeties.
2262         * MethodBase.cs: fixed attribute accessors.
2263         * MonoField.cs: runtime object to represent a field.
2264         * MonoMethod.cs: runtime object to represent a method.
2265         * AssemblyBuilder.cs: GetToken() methods to get tokens for
2266         strings, fields, methods...
2267         * ILGenerator.cs: handle tokens for methods.
2269 Mon Nov 19 13:56:55 CET 2001 Paolo Molaro <lupus@ximian.com>
2271         * MethodBase.cs: add internal get_next_table_index() for use in
2272         Reflection.Emit.
2274 Wed Nov 14 16:53:28 CET 2001 Paolo Molaro <lupus@ximian.com>
2276         * Assembly.cs: implement some of the Load() methods.
2277         * ConstructorInfo.cs: some missing stubs and fields.
2278         * FieldInfo.cs: IsInitOnly property.
2279         * ParameterInfo.cs: stubs for missing properties.
2280         * ParameterModifier.cs: implemented class.
2282 2001-11-10  Sean MacIsaac  <macisaac@ximian.com>
2284         * Assembly.cs: Filled in some stub implementations
2286         * ConstructorInfo.cs: Added some stub functions for NUnit
2288 Fri Nov 2 18:29:36 CET 2001 Paolo Molaro <lupus@ximian.com>
2290         * AmbiguousMatchException.cs, 
2291         * Assembly.cs, Module.cs: updates.
2292         * FieldInfo.cs: better compliance to the spec.
2293         * MethodBase.cs: move call_conv out of the way.
2294         * AssemblyBuilder.cs:  don't use internalcalls, more stuff supported.
2295         * FieldBuilder.cs: implemented.
2296         * ILGenerator.cs: implemented some opcode handling.
2297         * Label.cs: add constructor.
2298         * LocalBuilder.cs: implemented.
2299         * MethodBuilder.cs: don't use internalcalls, more implemented stuff.
2300         * ModuleBuilder.cs: don't use internalcalls, more meat here, too.
2301         * ParameterBuilder.cs: implemented.
2302         * PropertyBuilder.cs: implemented.
2303         * TypeBuilder.cs: don't use internalcalls, more stuff working.
2305 Tue Sep 25 16:48:50 CEST 2001 Paolo Molaro <lupus@ximian.com>
2307         * ConstructorInfo.cs, MemberFilter.cs, Module.cs: added.
2309 Fri Sep 14 16:12:08 CEST 2001 Paolo Molaro <lupus@ximian.com>
2311         * MethodBase.cs, MethodInfo.cs: added.
2313 Thu Sep 13 18:05:16 CEST 2001 Paolo Molaro <lupus@ximian.com>
2315         * Assembly.cs: added stub code.
2317 2001-07-18  Michael Lambert <michaellambert@email.com>
2319         * BindingFlags.cs: Add.