* Version.cs (CompareTo, Equals): Make sure the versions for
[mono-project.git] / mcs / class / corlib / System / ChangeLog
blob0a5517c2d9188c321e98f29fbb7a02492886f04d
1 2005-02-12  Ben Maurer  <bmaurer@ximian.com>
3         * Version.cs (CompareTo, Equals): Make sure the versions for
4         generics handle `null'. The non-generics versions now just call
5         the regular versions, to reduce code duplication.
7         * Boolean.cs (CompareTo): make this really work for generics 
9         * Type.cs (GetProperty): Passing new Type [0] is different than
10         null. null means `I don't care how many types this has,' while new
11         Type [0] means `this must have 0 types.'
13 2005-02-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
15         * corlib.dll.sources: added WindowsConsoleDriver.cs
17         * System/ConsoleDriver.cs: use WindowsConsoleDriver on windows and
18         implemented the few missing properties/methods.
20         * System/IConsoleDriver.cs: uncommented all methods/properties.
21         * System/TermInfoDriver.cs: implement changes from IConsoleDriver.
22         * System/WindowsConsoleDriver.cs: implemented IConsoleDriver for
23         windows. Only missing MoveBufferArea by now.
25 2005-02-11  Zoltan Varga  <vargaz@freemail.hu>
27         * Type.cs (IsAssignableFrom): Add support for TypeBuilders.
29         * Int32.cs AppDomain.cs: Fix warnings.
31 2005-02-10  Marek Safar  <marek.safar@seznam.cz>
33         * IServiceProvider.cs: Is not ComVisible.
35         * NonSerializedAttribute.cs: Fix AttributeUsage flags.
37         * Type.cs: Fix ClassInterface attribute.
39 Tue Feb 8 19:26:47 CET 2005 Paolo Molaro <lupus@ximian.com>
41         * Delegate.cs: remove the finalizer from Delegate: this
42         is handled internally by the runtime now.
44 2005-02-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
46         * Activator.cs: provide the Type name when throwing an exception.
48 2005-02-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
50         * TimeZone.cs: lock on the static Hashtable instead of 'this'. Fixes
51         bug #72238.
53 Fri Feb 4 15:46:04 CET 2005 Paolo Molaro <lupus@ximian.com>
55         * Array.cs: provide specialized versions of some methods.
57 Thu Feb 3 15:15:25 CET 2005 Paolo Molaro <lupus@ximian.com>
59         * String.cs: provide a managed memcpy and memset method
60         for use both in corlib and from the JIT. Implement
61         some methods with the managed helpers and remove some icalls.
63 2005-01-31  Sebastien Pouliot  <sebastien@ximian.com>
65         * Exception.cs: Added Data property for NET_2_0 (required for new
66         unit tests).
68 2005-01-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
70         * ConsoleDriver.cs:
71         * TermInfoDriver.cs:
72         * IConsoleDriver.cs:
73         * Console.cs: added BufferWidth and BufferHeight.
75 2005-01-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
77         * ConsoleDriver.cs:
78         * Console.cs:
79         * TermInfoDriver.cs:
80         * IConsoleDriver.cs: added a few more properties and fixed cursor
81         addressing.
83 2005-01-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
85         * ConsoleDriver.cs: static class that forwards the Console 2.0 class
86         calls to the proper driver.
87         * TermInfoDriver.cs: terminfo based console driver.
88         * IConsoleDriver.cs: interface implemented by console drivers.
90         * ConsoleCancelEventArgs.cs:
91         * ConsoleCancelEventHandler.cs:
93         * ConsoleModifiers.cs: 
94         * ConsoleSpecialKey.cs:
95         * ConsoleColor.cs:
96         * ConsoleKey.cs: new enumerations.
98         * ConsoleKeyInfo.cs: New file.
100         * TermInfoReader.cs: reader for terminfo capabilities files.
102         * TermInfoNumbers.cs:
103         * TermInfoBooleans.cs:
104         * TermInfoStrings.cs: enumations for terminfo property names.
106         * KnownTerminals.cs: byte arrays for selected terminals.
108         * Console.cs: added more 2.0 methods and implemented some of them.
111 2005-01-30  Atsushi Enomoto  <atsushi@ximian.com>
113         * Int32.cs : (FindSign) IndexOf() is better than creating substring.
115 2005-01-27  Sebastien Pouliot  <sebastien@ximian.com>
117         * BadImageFormatException.cs: Protect the fusion (GAC) log from being
118         disclosed unless code has ControlPolicy and ControlEvidence.
120 2005-01-27  Zoltan Varga  <vargaz@freemail.hu>
122         * Exception.cs: Compute stack trace on demand.
124 2005-01-26  Sebastien Pouliot  <sebastien@ximian.com>
126         * Environment.cs: Removed hack for static class (NET_2_0). Added 
127         proper security for FailFast (documented in FDBK20543). Added new
128         method IsRunningOnWindows to replace (Platform == 128) as the logic is
129         gonna change in the future (Unix is id #4 in NET_2_0).
131 2005-01-24  Sebastien Pouliot  <sebastien@ximian.com>
133         * Environment.cs: Added CAS security (both declarative and imperative)
134         as a test. This shouldn't affect execution unless --security is 
135         specified.
137 2005-01-19  Rafael Teixeira  <rafaelteixeirabr@hotmail.com>
138         * Type.cs: Corrected implementation for the Type.FilterNameIgnoreCase
139         and Type.FilterName delegates They weren't dealing with the optional '*'
140         at the end of the filter mask
142 2005-01-19  Zoltan Varga  <vargaz@freemail.hu>
144         * Array.cs: Fix a typo in the previous patch.
145         
146         * Array.cs: Fix some test failures in the generic methods.
148         * Array.cs: Implement AsReadOnly.
150 2005-01-13  Geoff Norton  <gnorton@customerdna.com>
152         * Guid.cs: Fix endian issues (use Mono.Security.BitConverterLE).  Fixes
153         #71242
155 2005-01-11  Sebastien Pouliot  <sebastien@ximian.com>
157         * AppDomain.cs: Removed Activate and ActivateNewProcess methods. They
158         have been removed from 2.0.
160 2005-01-11  Zoltan Varga  <vargaz@freemail.hu>
162         * Boolean.cs Char.cs Single.cs Double.cs: Implement IComparable<T> in
163         NET 2.0.
165 2005-01-10  Sebastien Pouliot  <sebastien@ximian.com>
167         * ApplicationIdentity.cs: Throw ArgumentNullException if name is null.
168         Add default culture (neutral) to the name when none is specified.
169         * AppDomain.cs: Changed IsDefaultAppDomain (2.0). Is seems that we 
170         can't trust Id ?
172 2005-01-09  Sebastien Pouliot  <sebastien@ximian.com>
174         * DateTime.cs: Reverted last patch for utc as it broke all certificate
175         handling and another unit test in DateTime.
177 2005-01-09  Miguel de Icaza  <miguel@ximian.com>
179         * DateTime.cs: Return immediately if useutc is set to true, there
180         is no need to do the extra computation (which also happened to
181         create a new DateTime using the `use_localtime' constructor, which
182         lead to the erroneous date returns when using 'u' or `U'
183         formats).   
185         Fixes another bug in the regression test suite.
187 2005-01-08  Sebastien Pouliot  <sebastien@ximian.com> 
189         * AppDomain.cs: Fix the DefaultDomain property to return the root 
190         domain (as it seems that the root's Id isn't always 0).
191         * BitConverter.cs: The "special support" for ToString(new byte[0]) is
192         only for NET_2_0 - previously this was an ArgumentOutOfRangeException.
194 2005-01-08  Miguel de Icaza  <miguel@ximian.com>
196         * IntegerFormatter.cs: The - sign inside the "negative" section in
197         a multi-format string means `show the sign' only if it is the
198         first token, not `copy verbatim'.  In the other sections it means
199         `copy-verbatim'.
201         This makes things like:  (-34).ToString ("#;-#") show up as "-34"
202         instead of "--34".
204         The bad news is that this code needs to be rewritten to handle all
205         the formatting cases, see bug #71112 for details.
207         * Convert.cs (Convert.ToType): Throw an InvalidCastException if
208         the conversion is invalid, not ArgumentException, this fixes
209         another regression in our test suite.
211 2005-01-08  Sebastien Pouliot  <sebastien@ximian.com>
213         * AppDomain.cs: Add ApplicationIdentity property for 2.0;
214         * AppDomainManager.cs: Remove HostRefusedSet support (it does not 
215         exists anymore).
217 2005-01-08  Zoltan Varga  <vargaz@freemail.hu>
219         * DateTime.cs: Create MaxValue and MinValue using a different constructor to avoid static 
220         initialization problems.
222 2005-01-02  Ben Maurer  <bmaurer@ximian.com>
224         * Int32.cs: NumberStyles.AllowExponent was supported by the
225         Int32.Parse function. From Akira <mei@work.email.ne.jp>. Fixes bug
226         70469.
228 2005-01-01  Atsushi Enomoto  <atsushi@ximian.com>
230         * Base64FormattingOptions.cs : it was not in System namespace.
232 2004-12-21  Atsushi Enomoto  <atsushi@ximian.com>
234         * DateTime.cs : If no progress on value string, don't regard as
235           matched. This fixes bug #70707.
237 2004-12-20  Sebastien Pouliot  <sebastien@ximian.com>
239         * Environment.cs: Bump corlib version.
241 2004-12-16  Zoltan Varga  <vargaz@freemail.hu>
243         * Array.cs (DoBinarySearch): Fix a warning.
245 2004-12-08  Zoltan Varga  <vargaz@freemail.hu>
247         * Environment.cs: Bump corlib version.
249         * AppDomain.cs: Add new DefineInternalDynamicAssembly () method.
251 2004-12-06  Ben Maurer  <bmaurer@ximian.com>
253         * Exception.cs: Prevent stringifying the type name on the
254         ctor. this gets called a few times on every execution to create a
255         nullref exception.
257 2004-12-06  Martin Baulig  <martin@ximian.com>
259         * Decimal.cs: Decimal constant support has been merged into GMCS,
260         removed the FIXME.
262 2004-12-06  Zoltan Varga  <vargaz@freemail.hu>
264         * Environment.cs: Bump corlib version.
265         
266         * Environment.cs: Bump corlib version.
268 2004-11-30  Zoltan Varga  <vargaz@freemail.hu>
270         * MonoType.cs (UnderlyingSystemType): Make this return this as in
271         MS.NET. Fixes #56245.
273 2004-11-29  Atsushi Enomoto  <atsushi@ximian.com>
275         * GC.cs : Collect(generation) actually does not throw an exception
276           even if generation > MaxGeneration (MS document bug).
278 2004-11-28  Zoltan Varga  <vargaz@freemail.hu>
280         * Exception.cs: Implement _Exception under NET_2_0.
282         * Byte.cs SByte.cs UInt16.cs Int16.cs: Make these compile under csc 2.0.
284         * AccessViolationException.cs DataMisalignedException.cs OperationCanceledException.cs
285         NotCancelableException.cs TimeoutException.cs: New files.
287 2004-11-23  Raja R Harinath  <rharinath@novell.com>
289         * Decimal.cs [NET_2_0]: Use old code till GMCS imports decimal
290         constant support.
292 2004-11-23  Raja R Harinath  <rharinath@novell.com>
294         * Decimal.cs [BOOTSTRAP_WITH_OLDLIB]: Use old code for compilers
295         without decimal constant support.
297 2004-11-23  Marek Safar  <marek.safar@seznam.cz>
299         * Decimal.cs: Updated to use compiler decimal constant support.
301 2004-11-20  Zoltan Varga  <vargaz@freemail.hu>
303         * MonoType.cs: Revert last change since it breaks remoting.
305 2004-11-18  Zoltan Varga  <vargaz@freemail.hu>
307         * MonoType.cs (UnderlyingSystemType): Make this return this as in
308         MS.NET. Fixes #56245.
310 2004-11-17  Carlos Alberto Cortez <carlos@unixmexico.org>
312         * INullable.cs: New interface added.
313         * Nullable.cs: Methods added. Also a static Nullable class
314         containing static methods.
315         
316 2004-11-15  Sebastien Pouliot  <sebastien@ximian.com>
318         * BitConverter.cs: Added support for special case when ToString is 
319         called with (new byte [0]).
321 2004-11-10  Lluis Sanchez  <lluis@novell.com>
323         * Exception.cs: Added setter for StackTrace.
325 2004-11-07  Ben Maurer  <bmaurer@ximian.com>
327         * IntegerFormatter.cs: Avoid .ToCharArray
329 2004-11-06  Ben Maurer  <bmaurer@ximian.com>
331         * Single.cs, Double.cs (GetHashCode): Better hashcode impl
333 2004-11-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
335         * InvalidOperationException.cs: make the message more meaningful and
336         real. Fixes bug #69055.
338 2004-10-28  Ben Maurer  <bmaurer@ximian.com>
340         * String.cs: Rather than == String.Empty, use .Length == 0. It
341         is a bit faster (avoids a method call, and the code is less complex).
343 2004-10-24  Fawad Halim  <fawad@fawad.net>
344         * Environment.cs: If an Environment variable value isn't found, leave the trailing % of the reference for further matches.
345         Add text between end of current lookup window and next % match if we just got a match, or add all text to the end if there are no further % matches.
346         This fixes bug #64995.
348 2004-10-19  Lluis Sanchez  <lluis@novell.com>
350         * MarshalByRefObject.cs: Field _identity is not serializable.
351         This fixes bug #68567.
353 2004-10-17  Ben Maurer  <bmaurer@ximian.com>
355         * DateTime.cs (ZeroPad): Use unsafe code to speed this up. We
356         avoid entering slow integer formatting code.
358         (_ToString): Use ZeroPad here when possible, as it is faster.
360 2004-10-11  Martin Baulig  <martin@ximian.com>
362         * Environment.cs: Bump corlib version to 28.
364 2004-10-08  Zoltan Varga  <vargaz@freemail.hu>
366         * Convert.cs (ToType): Throw an exception when converting null to a
367         valuetype. Fixes #67780.
369 2004-10-08  Atsushi Enomoto  <atsushi@ximian.com>
371         * DateTime.cs : Performance fix. ParseExact() implementation should
372           avoid s = s.Substring(1).
374 2004-10-08  Atsushi Enomoto  <atsushi@ximian.com>
376         * DateTime.cs : When it it not exact parse, 'Z' is allowed as a suffix
377           of m/s/t/z. This fixes bug 66723.
379 Wed Oct 6 12:37:54 CEST 2004 Paolo Molaro <lupus@ximian.com>
381         * String.cs: make GetHashCode() managed.
383 2004-10-04  Zoltan Varga  <vargaz@freemail.hu>
385         * AppDomain.cs: Make ThreadStatic variables static. Fixes #56614.
387         * Runtime*Handle.cs ModuleHandle.cs: Add Equals + GetHashCode.
389         * ModuleHandle.cs: Add missing methods.
391         * RuntimeTypeHandle.cs: Add GetModuleHandle () method.
393 2004-10-03  Zoltan Varga  <vargaz@freemail.hu>
395         * AttributeTargets.cs: Add 2.0 GenericParameter value.
397         * Environment.cs: Bump corlib version.
399 2004-10-02  Zoltan Varga  <vargaz@freemail.hu>
401         * Int32.cs UInt32.cs Byte.cs SByte.cs Int16.cs UInt16.cs Int64.cs UInt64.cs: Implement 2.0 TryParse methods.
403 2004-09-30  Geoff Norton  <gnorton@customerdna.com>
405         * Convert.cs: ConvertToBase* was not endian aware.  Implemented EndianSwap
406         and swapping of all values before going into the BitConverter so that values
407         are returned with proper endianess.
409 2004-09-23  Martin Garton  <martin@wrasse.demon.co.uk>
411         * Convert.cs: ToType was returning unconverted object when it should
412         fail with an ArgumentException.
414 2004-09-27  Zoltan Varga  <vargaz@freemail.hu>
416         * Array.cs: Add stub for AsReadOnly<T>.
417         
418 2004-09-25  Zoltan Varga  <vargaz@freemail.hu>
420         * Type.cs: Add MakePointerType && stub for ReflectionOnlyGetType.
422         * MonoCustomAttrs.cs (GetCustomAttributesBase): Add support for
423         parameters.
425 2004-09-24  Zoltan Varga  <vargaz@freemail.hu>
427         * MonoCustomAttrs.cs (GetCustomAttributesBase): Add support for
428         methods and fields.
429         
430         * MonoCustomAttrs.cs: Beginnings of support for returning 2.0 pseudo
431         custom attributes.
433         * MonoCustomAttrs.cs (RetrieveAttributeUsage): Avoid infinite recursion.
435         * MonoCustomAttrs.cs (GetCustomAttributes): Fix the 'attributeType is 
436         sealed' optimization.
438         * Type.cs: Implement 2.0 StructLayoutAttribute property. 
440         * Type.cs Add GetPseudoCustomAttributes () method.
442 2004-09-24  Martin Baulig  <martin@ximian.com>
444         * Type.cs (Type.GetGenericParameterConstraints): New public method.
446 2004-09-23  Zoltan Varga  <vargaz@freemail.hu>
448         * MonoCustomAttrs.cs (GetCustomAttributes): Rename the icall to
449         GetCustomAttributesInternal and add a 'pseudoAttrs' argument.
451         * Type.cs: Tweak Module property in 2.0 build.
453 2004-09-23  Martin Baulig  <martin@ximian.com>
455         * Type.cs (Type.GenericParameterAttributes): New public property.
457 2004-09-23  Martin Baulig  <martin@ximian.com>
459         * GenericParameterAttributes.cs: New file.
461 2004-09-22  Zoltan Varga  <vargaz@freemail.hu>
463         * ModuleHandle.cs: Updated after changes to Module class.
465 2004-09-21  Geoff Norton <gnorton@customerdna.com>
467         * Type.cs: BindingFlags.IgnoreCase was being ignored, this reimplements
468         this filter. Fixes bug #65778.
470 2004-09-20  Zoltan Varga  <vargaz@freemail.hu>
472         * Environment.cs: Bump corlib version.
474 2004-09-19  Zoltan Varga  <vargaz@freemail.hu>
476         * ModuleHandle.cs: New file.
478         * RuntimeFieldHandle.cs: Add an internal ctor.
480 2004-09-19  Dick Porter  <dick@ximian.com>
482         * Console.cs: Use the internal wrappers for StreamReader and
483         StreamWriter that catch IOException.
485 2004-09-16  Sebastien Pouliot  <sebastien@ximian.com>
487         * Environment.cs: Bumped mono_corlib_version to 25.
489 2004-09-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
491         * AppDomain.cs: added SetupInformationNoCopy property, since
492         SetupInformation creates a copy now, all updates to it should use the
493         actual data. Fixes bug #61991 take 2.
495 2004-09-09  Tim Coleman <tim@timcoleman.com>
496         * Base64FormattingOptions.cs: New enum
497         * Convert.cs: Add new ToBase64String methods for Fx 2.0
499 2004-09-08  Marek Safar  <marek.safar@seznam.cz>
501         * Console.cs,
502         * GC.cs: Class is static for NET_2_0.
504 2004-09-07 Ben Maurer  <bmaurer@users.sourceforge.net>
506         * Activator.cs: Make sure not to call .GetType on a
507         null argument. fixes 63852
509 2004-09-06 Ben Maurer  <bmaurer@users.sourceforge.net>
511         * Array.cs (Clear): make this an icall.
513 2004-09-05 Ben Maurer  <bmaurer@users.sourceforge.net>
515         * MonoCustomAttribute.cs: Avoid the call to GetBase when possible.
517 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
519         * Environment.cs: (ExpandEnvironmentVariables) don't nullify the case
520         insensitive enironment variables hashtable once we create it.
522 2004-09-04  Sebastien Pouliot  <sebastien@ximian.com>
524         * AppDomain.cs: Changed 2 imperative security demands to declarative
525         (unsupported) so it doesn't (for now) call the security runtime.
527 2004-09-02  Zoltan Varga  <vargaz@freemail.hu>
529         * Delegate.cs: Free the delegate trampoline in the finalizer.
531 2004-08-26  Sebastien Pouliot  <sebastien@ximian.com>
533         * ApplicationId.cs: Completed GetHashCode using information from MS
534         (FDBK13339).
536 2004-08-23  Sebastien Pouliot  <sebastien@ximian.com>
538         * Boolean.cs: Added TryParse static method for NET_2_0 profile.
540 2004-08-19  Atsushi Enomoto  <atsushi@ximian.com>
542         * DateTime.cs : When hour format is "hh", MS.NET (maybe incorrectly)
543           allows 12, that should not be accepted (13 is rejected) and
544           interpreted as 0. This fixes bug 63376.
546 2004-08-17  Sebastien Pouliot  <sebastien@ximian.com>
548         * Version.cs: Fixed Clone so we can use it on versions with only
549         major/minor or major/minor/build.
551 2004-08-17  Martin Baulig  <martin@ximian.com>
553         * MonoType.cs (MonoType.getFullName): Added `bool full_name'
554         argument specifying whether or not to include the type arguments.
555         (MonoType.FullName): Don't include the type arguments.
556         (MonoType.ToString): Include them here.
558         * Environment.cs: Bumped mono_corlib_version to 24.
560 2004-08-16  Duncan Mak  <duncan@ximian.com>
562         * AttributeUsageAttribute.cs: Change the AttributeUsage to
563         AttributeTargets.Class, from AttributeTargets.All, fixes Zoltan's
564         bug #62895.
566 2004-08-11  Marek Safar  <marek.safar@seznam.cz>
568         * AppDomain.cs: Fixed typo of DefineDynamicAssembly argument.
569         Added call to AddPermissionRequests to pass permissions
570         arguments.
571         * Environment.cs: Added a few Fx 2.0 methods
573 2004-08-09  Sebastien Pouliot  <sebastien@ximian.com>
575         * ApplicationId.cs: Fixed typo to fix NET_2_0 compilation.
576         * AppDomain.cs: Fixed use of Evidence and AppDomainSetup (copies, not
577         references). Added (non-obsolete) Fx 2.0 properties and methods.
578         * AppDomainSetup.cs: Added internal copy constructor.
579         * DomainManagerInitializationFlags.cs: Fixed values.
581 2004-08-08  Sebastien Pouliot  <sebastien@ximian.com>
583         * AppDomainInitializer.cs: New Fx 2.0 class for AppDomain.
584         * AppDomainManager.cs: New Fx 2.0 class for AppDomain.
585         * ApplicationActivator.cs: New Fx 2.0 class for AppDomain.
586         * ApplicationId.cs: New Fx 2.0 class.
587         * ApplicationIdentity.cs: Fixed ToString.
588         * DomainManagerInitializationFlags.cs: New Fx 2.0 flags for AppDomain.
590 2004-08-05  Sebastien Pouliot  <sebastien@ximian.com>
592         * AppDomain.cs: Added a new icall, getDomainByID, to get the an 
593         AppDomain using it's Id. Completed SetAppDomainPolicy.
594         * Environment.cs: Bumped mono_corlib_version to 23.
596 2004-08-02  Martin Baulig  <martin@ximian.com>
598         * DateTime.cs, TimeSpan.cs, Guid.cs, Version.cs: Implement IComparable<T>.
600 2004-07-29  Atsushi Enomoto  <atsushi@ximian.com>
602         * Environment.cs : GacPath on windows is based on mscorlib.dll, and
603           now its location is changed.
605 2004-07-21  Lluis Sanchez Gual  <lluis@novell.com>
607         * Environment.cs: Return the MS.NET 2.0 beta1 runtime version for the
608           NET_2_0 profile.
609         
610 2004-07-18  Martin Baulig  <martin@ximian.com>
612         * Array.cs: Ben Maurer implemented all the new generic methods
613         here :-)
615 2004-07-17  Martin Baulig  <martin@ximian.com>
617         * Decimal.cs: Implement IComparable<Decimal>.
619 2004-07-17  Martin Baulig  <martin@ximian.com>
621         * Byte.cs, Int16.cs, Int32.cs, Int64.cs, SByte.cs, String.cs,
622         UInt16.cs, UInt32.cs, UInt64.cs: Implement IComparable<T>.      
624 2004-07-13  Sebastien Pouliot  <sebastien@ximian.com>
626         * ActivationContext.cs: New class in Fx 2.0. Required for 
627         System.Security.Policy.
628         * ApplicationIdentity.cs: New class in Fx 2.0. Required for 
629         System.Security.Policy.
630         * IApplicationDescription.cs: New interface in Fx 2.0. Required for 
631         System.Security.Policy.
632         * IHostContext.cs: New interface in Fx 2.0. Required for 
633         System.Security.Policy.
635 2004-07-12  Geoff Norton <gnorton@customerdna.com>
637         * DateTime.cs: Patch for bug #61112.  Our DateTime wasn't roundtripping over timezone
638           boundaries properly.  This patch checkes ToLocalTime() to see if we're tripping over a boundary
639           and will add/subtract the hour if needed
641 2004-07-07  Geoff Norton <gnorton@customerdna.com>
643         * Monotype.cs: Patch for bug #58844.  Dont throw exceptions right away;
644           pass through all the possibly BindingInfo's and keep a bool value as to the type
645           of exception we might need to throw;
647 2004-07-07  Geoff Norton <gnorton@customerdna.com>
649         * Patch to fix bug #58973
651 2004-07-02  Jackson Harper  <jackson@ximian.com>
653         * PlatformID.cs: New 2.0 values.
654         
655 2004-06-25  Ben Maurer <bmaurer@ximian.com>
656         
657         * Environment.cs: GetFolderPath has new behavior. r=miguel
659 2004-06-23  Sebastien Pouliot  <sebastien@ximian.com>
661         * DateTime.cs: Throw ArgumentOutOfRangeException if the year is
662         bigger than 9999. Fix bug #41845.
663         * FloatingPointFormatter.cs: Applied correction from Jon Skeet on
664         the "R"eversible format for negative numbers.
666 2004-06-21  Jackson Harper  <jackson@ximian.com>
668         * Decimal.cs: Make sure to use invariant culture when parsing
669         floats stringified with the invariant culture. Patch by Rodrigo
670         B. de Oliveira.
671         
672 2004-06-19  Atsushi Enomoto  <atsushi@ximian.com>
674         * FloatingPointFormatter.cs : Literal string should be kept in the
675           output.
677 2004-06-18  Atsushi Enomoto  <atsushi@ximian.com>
679         * DateTime.cs : Concatenating whitespace removal was not working fine.
680           Modified FormatException message (1 cent kindness).
682 2004-06-18  Ben Maurer  <bmaurer@ximian.com>
683         
684         * Action.cs, ArraySegment.cs, Comparison.cs, Converter.cs, Predicate.cs:
685         new generics classes
686         * IComparable.cs: add the new <T> version.
687         * EventHandler.cs: new <T> version.
688         
689 2004-06-18  Dick Porter  <dick@ximian.com>
691         * String.cs: The icall can cope with embedded \0 now.
693 2004-06-18  Atsushi Enomoto  <atsushi@ximian.com>
695         * DateTime.cs :
696           - Added new common pattern "yyyy/M/dZ"
697           - empty string should not be compared in _ParseEnum()
698           - Use culture independent string comparison in _ParseString()
699           - Whitespace removal should be checked after '..' token check (some
700             pattern such like es-ES LongDatePattern contains spaces in '..').
701           - formats null check should be done (to throw ArgumentNullException)
702             in ParseExact().
703           - When specified one character format, dates are incorrectly regarded
704             as to use invariant culture.
706 2004-06-18  Gert Driesen <drieseng@users.sourceforge.net>
708         * ArgIterator.cs: changed layout to Auto
709         * DateTime.cs: changed layout to Auto
711 2004-06-18  Gert Driesen <drieseng@users.sourceforge.net>
713         * DateTime.cs: CRLF to LF
715 2004-06-17  Sebastien Pouliot  <sebastien@ximian.com>
717         * Decimal.cs: Fixed regression in System.Data caused by the recent 
718         changes. Adapted (and moved) the code to correct the scale from 
719         SqlMoney. Removed unused (and unusable) IsOne and fixed IsZero (where
720         scale has no importance).
722 2004-06-17  Lluis Sanchez Gual  <lluis@ximian.com>
724         * Activator.cs: In CreateInstance(), use Public|Instance if access binding
725           attributes are omitted.
727 2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>
729         * DateTime.cs : GetDateTimeFormats(char, IFormatProvider) should also
730           check if the format character is valid.
732 2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>
734         * DateTime.cs : AddDays(double) rounds the input.
736 2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>
738         * DateTime.cs : Incorrect maxvalue comparison in ToUniversalTime().
739           Fixed ToLocalTime() as well, but it does check range for MinValue.
741 2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>
743         * DateTime.cs : Added overflow check in ToUniversalTime() and
744           ToLocalTime(). Fixed bug #60253.
746 2004-06-16  Sebastien Pouliot  <sebastien@ximian.com>
748         * FloatingPointFormatter.cs: Implemented "R" format using Jon Skeet
749         source code (with permission). Fix (biggest) part of bug #60110.
750         http://www.yoda.arachsys.com/csharp/floatingpoint.html
752 2004-06-15  Sebastien Pouliot  <sebastien@ximian.com>
754         * Decimal.cs: Fixed scale after Round (a different scale is correct 
755         from a math point of view but affect the string representation of the
756         value). Note: other operations also have scale problems!
757         * DecimalFormatter.cs: Fixed FormatGeneral to match Fx 1.1 output.
758         * FloatingPointFormatter.cs: Fixed ToString which doesn't use banker's
759         rounding (which is the rounding provided by Math.Round). This fix bug
760         #60111. The code (new Round methods) should be moved elsewhere (as it
761         may also be required elsewhere) post Mono 1.0.
763 2004-06-15  Gert Driesen <drieseng@users.sourceforge.net>
765         * AppDomainSetup.cs: added TODO for serialization
766         * ExecutionEngineException.cs: added missing serialization ctor
767         * InvalidProgramException.cs: added missing serialization ctor
768         * MulticastNotSupportedException.cs: added missing serialization ctor
769         * ObsoleteAttribute.cs: fixed serialization compatibility with MS.NET
770         * Random.cs: fixed serialization compatibility with MS.NET
772 2004-06-15  Paolo Molaro <lupus@ximian.com>
774         * Type.cs: removed unused (and non-existing) icall type_is_instance.
776 2004-06-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
778         * Environment.cs: use internalGetHome instead of getting "HOME" as
779         that variable may not be defined.
781 2004-06-14  Sebastien Pouliot  <sebastien@ximian.com>
783         * TimeSpan.cs: Fixed timespan with large values for hours or minutes
784         (overflow is only checked for days but can also occurs in hours and
785         minutes which uses Int32 when multiplying). The new results match MS
786         implementation.
788 2004-06-14  Atsushi Enomoto  <atsushi@ximian.com>
790         * FloatingPointFormatter.cs : Recognize '%' and '\u2030' and replace
791           them with matching NumberFormatInfo properties.
793 2004-06-14  Atsushi Enomoto  <atsushi@ximian.com>
795         * Double.cs : Use IFormatProvider.GetFormat() instead of literal '-'.
796         * FloatingPointFormatter.cs :
797           Use NumberFormatInfo.NegativeSign. This change saves many XSLT test
798           failures.
799           Format Permille pattern (It is undocumented but actually available,
800           and used in xsl:format-number).
802 2004-06-14  Raja R Harinath  <rharinath@novell.com>
804         * Console.cs (Console.Write, Console.WriteLine): Disable __arglist
805         version with BOOTSTRAP_WITH_OLDLIB.
806         * String.cs (STring.Concat): Likewise.
808 2004-06-13  Atsushi Enomoto  <atsushi@ximian.com>
810         * FloatingPointFormatter.cs :
811           - Don't format more than 15 fraction digits. Don't report to Pedro
812             directly (removing the error message with his concent).
813           - When format string starts with '.', it means integral part format 
814             is not specified. Ignore '.' characters after the first
815             appearance. Fixed bug #59890.
816           - 0.0 is formatted only before the third ';' appearance.
818 2004-06-11  Sebastien Pouliot  <sebastien@ximian.com>
820         * DateTime.cs: Added a AddRoundedMilliseconds which use the "old Mono"
821         rounding logic which worked for FromOADate (while the newer didn't).
822         * TimeSpan.cs: Now throw an OverflowException when the timespan is
823         over MaxValue or under MinValue.
825 2004-06-11  Martin Baulig  <martin@ximian.com>
827         * Console.cs (Write, WriteLine): Implemented the varargs versions.
829 2004-06-11  Martin Baulig  <martin@ximian.com>
831         * String.cs (Concat): Implemented the varargs version.
833 2004-06-10  Sebastien Pouliot  <sebastien@ximian.com>
835         * Decimal.cs: Hacked the Parse method to allow the runtime C code to
836         decode it properly (i.e. matching MS results). Fixed the Round method
837         for negative decimal numbers (moved code from Math.cs).
838         * Math.cs: Now use Decimal class for Round(Decimal,int). Required to
839         fix a bug when rounding a negative decimal.
841 2004-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
843         * AppDomain.cs: set the _principal to null when changing the policy.
844         * Console.cs: remove ClsCompliant attribute from a method marked as
845         internal and added comment.
847 2004-06-10  Gert Driesen <drieseng@users.sourceforge.net>
849         * Delegate.cs: marked protected fields private to match public
850         API of MS.NET, marked DynamicInvokeImpl and GetMethodImpl
851         protected to fix public API
852         * Enum.cs: marked ctor protected to match public API of MS.NET
853         * MulticastDelegate.cs: marked DynamicInvokeImpl protected to
854         match public API of MS.NET
856 2004-06-10  Atsushi Enomoto  <atsushi@ximian.com>
858         * DateTime.cs : Added more common patterns.
860 2004-06-09  Sebastien Pouliot  <sebastien@ximian.com>
862         * Decimal.cs: Fixed banker rounding by calling Math.Round. This won't
863         be a performance winner (the actual Math code has a note to wait a
864         better Decimal implementation) but it returns the correct results
865         (without adding new code in corlib or the runtime). Fix #37744.
867 2004-06-09  Atsushi Enomoto  <atsushi@ximian.com>
869         * DateTime.cs :
870           - A bunch of fixes (patch by Steven Brown). Fraction seconds are 
871             now represented as double. Strict token check for 'Z'.
872           - Pattern validity check in GetDateTimeFormats(char).
873           - Fixed pattern "yyyy/M/d HH:mm:ss".
875 2004-06-09  Sebastien Pouliot  <sebastien@ximian.com>
877         * Decimal.cs: Fixed remainder (and optimized some cases not to call 
878         unmanaged code). Simplified divide. Removed workaround for bug #59793.
879         Fixed GetHashCode to return different result for X and -X.
881 2004-06-08  Atsushi Enomoto  <atsushi@ximian.com>
883         * DateTime.cs :
884           - Now re-checked all common format patterns. They should be tried
885             with both current culture and invariant culture. Since '/' covers
886             '-', removed extraneous patterns. Added more common patterns
887             such as "yyyy-MM-dd" and X509Certificate pattern (it is valid
888             only after NET_1_1). Commented out 1 character format patterns.
889           - The format patterns we should try should not be obtained by
890             GetAllDateTimePatterns(). Just use 'd', 'D', 't', 'T', ... (one
891             character patterns), to handle UTC correctly. Examined patterns
892             are changed, to 1) common patterns with specified (or current)
893             culture, 2) common patterns with invariant, 3) The above "one
894             character patterns" with specified (or current) culture.
895           - When trying to parse some kind of patterns such as RFC1123, 
896             always use invariant DateTimeFormatInfo so that they can avoid
897             parsing with culture-dependent calendar.
898           - Check "GMT" only when doing Parse(). Don't it when ParseExact().
899           - Removed extraneous '-' case. It is not special one.
900           - When ParseExact(), allow only '/' for '/' pattern character.
901           - When Parse(), allow any non-letter & non-number characters.
902           - When pattern is not fully parsed, reject that format.
903           - Added "exact" parameter to some ParseExact().
904           - RFC1123 pattern is (again) now parsed in local time. I regressed
905             some problems in previous fix.
907 2004-06-08  Sebastien Pouliot  <sebastien@ximian.com>
909         * Decimal.cs: Fixed cast to integer types to truncate (not round) the
910         value.
912 2004-06-07  Duncan Mak  <duncan@ximian.com>
914         * Exception.cs (Source): This can return null.
916 2004-06-07  Sebastien Pouliot  <sebastien@ximian.com>
918         * DateTime.cs: Fixed FromFileTime for negative values. Fixed 
919         constructor to limit range of milliseconds from 0,999. Fixed
920         ToType method to work for object, string and DateTime.
922 2004-06-07  Sebastien Pouliot  <sebastien@ximian.com>
924         * DateTime.cs: Fixed OLE Automation date conversions: timezone 
925         insensitive, wrong exception in FromOADate, handling of Min/Max 
926         values, negative doubles where integer part is negative but 
927         decimals are positive! Charming format ;-)
929 2004-06-06  Sebastien Pouliot  <sebastien@ximian.com>
931         * String.cs: Fixed Join in case separator parameter is null.
932         * TimeSpan.cs: Cache format errors during parsing and throw 
933         FormatException only if there was no overflow.
935 2004-06-06  Gert Driesen <drieseng@users.sourceforge.net>
937         * MonoCustomAttrs.cs: fixed issue where an empty array was 
938         returned when GetCustomAttributes was invoked with null
939         attribute type and there was only one result
941 2004-06-06  Sebastien Pouliot  <sebastien@ximian.com>
943         * Decimal.cs: Fixed ToString(String.Empty) to default ("G").
944         * Int16.cs: Fixed ToString(String.Empty) to default ("G").
945         * Int32.cs: Fixed ToString(String.Empty) to default ("G").
946         * Int64.cs: Fixed ToString(String.Empty) to default ("G").
947         * SByte.cs: Fixed ToString(String.Empty) to default ("G").
948         * UInt16.cs: Fixed ToString(String.Empty) to default ("G").
949         * UInt32.cs: Fixed ToString(String.Empty) to default ("G").
950         * UInt64.cs: Fixed ToString(String.Empty) to default ("G").
952 2004-06-05  Sebastien Pouliot  <sebastien@ximian.com>
954         * Convert.cs: Fixed the convertion of negative integers (byte, short, 
955         int and long) into string in a specific base (2, 8, 10 or 16).
957 2004-06-04  Sebastien Pouliot  <sebastien@ximian.com>
959         * Math.cs: Fixed IEEERemainder to return -0 (0x8000000000000000) when
960         the dividend is negative and the result is 0 (remainder).
962 2004-06-03  Sebastien Pouliot  <sebastien@ximian.com>
964         * Delegate.cs: Fix the NullReferenceException in Combine(Delegate[]).
966 2004-06-02  Sebastien Pouliot  <sebastien@ximian.com>
968         * TimeSpan.cs: Fixed overflow issues when delaing with big (days) time
969         spans. Fixed parsing when only days are presents in the string (which
970         should be illegal according to the documentation but is supported).
972 2004-06-01  Sebastien Pouliot  <sebastien@ximian.com>
974         * TimeSpan.cs: Fixed exceptions in FromXXX methods as they are 
975         somewhat different from the documentation.
977 2004-06-01  Gert Driesen <drieseng@users.sourceforge.net>
979         * Type.cs: added missing attributes on InvokeMember
981 2004-06-01  Miguel de Icaza  <miguel@ximian.com>
983         * String.cs: Flag concat with four arguments internal. 
985 2004-05-31  Sebastien Pouliot  <sebastien@ximian.com>
987         * Array.cs: Fixed legal case where value is null.
988         * Byte.cs: Fixed ToString when format is an empty string (use "G").
989         * Guid.cs: Renamed private fields (and changed some to signed) to 
990         match MS implementation and allow serialization to work. Fix 
991         bug #59113.
993 2004-05-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
995         * DateTime.cs: adjust milliseconds for fraction specifier ('f').
997 2004-05-30  Miguel de Icaza  <miguel@ximian.com>
999         * Console.cs: Remove *again* the version of WriteLine with four
1000         arguments;  That should *not* be added.  
1002         Flag it as internal as people migrate their code.
1004 2004-05-29  Sebastien Pouliot  <sebastien@ximian.com>
1006         * Convert.cs: Fixed ToSByte(string,IFormatProvider) to throw 
1007         ArgumentNullException (only case, all other returns 0). Fixed exception
1008         reporting for hex prefix only strings. Fixed ChangeTo where null could
1009         be misinterpreted between null and Empty.
1011 2004-05-28  Sebastien Pouliot  <sebastien@ximian.com>
1013         * Convert.cs: Fixed integer parsing for special cases (0x, 0X for base
1014         16), non-base 10 negative numbers ... see new unit tests. Fixed the 
1015         case when we parse Int64.MinValue (positive doesn't fit a signed long).
1017 2004-05-28  Jackson Harper  <jackson@ximian.com>
1019         * Environment.cs: Increment version number.
1020         
1021 2004-05-28  Zoltan Varga  <vargaz@freemail.hu>
1023         * AppDomain.cs (Load): Try loading from assemblyRef.CodeBase if exists.
1024         Fixes #59189.
1026 2004-05-28  Atsushi Enomoto <atsushi@ximian.com>
1028         * DateTime.cs : I reverted my fix by accident :(
1030 2004-05-28  Atsushi Enomoto <atsushi@ximian.com>
1032         * DateTime.cs :
1033           - In ToString(), Don't use culture-dependent daynames to format
1034             Universal/RFC1123 date/time. Also, use FullDateTimePattern for 'U'.
1035           - Fixed GetDateTimeFormats () that generated incorrect 'U' value 
1036             (since the format string is the same as 'F').
1038 2004-05-28  Atsushi Enomoto <atsushi@ximian.com>
1040         * DateTime.cs : don't adjust utc value in ToString(). It must output
1041           the same time value, just adding 'Z' for UTC.
1043 2004-05-28  Atsushi Enomoto <atsushi@ximian.com>
1045         * DateTime.cs : in 'Z' case, remove the 'Z' char from input before
1046           proceeding.
1048 2004-05-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1050         * AppDomainSetup.cs: InitAppDomainSetup is not needed now.
1052 2004-05-27  Sebastien Pouliot  <sebastien@ximian.com>
1054         * Byte.cs: Fixed parsing for "-0" which is valid for unsigned types.
1055         * Convert.cs: Convert with a base parameter cannot parse negative 
1056         string numbers, even "-0".
1057         * UInt16.cs: Fixed parsing for "-0" which is valid for unsigned types.
1058         * UInt32.cs: Fixed parsing for "-0" which is valid for unsigned types.
1059         * UInt64.cs: Fixed parsing for "-0" which is valid for unsigned types.
1061 2004-05-27  Atsushi Enomoto <atsushi@ximian.com>
1063         * DateTime.cs : 
1064           - Added "yyyy/MM/dd HH:mm:ss 'GMT'" and "yyyy-MM-dd HH:mm:ss 'GMT'"
1065             to common formats (yes, I know it is nothing more than hack)
1066           - Fixed some GetDateTimeFormats() that just returned patterns.
1067           - For InvariantCulture, now try both supported formats and our
1068             predefined formats.
1069           - It was accepting incorrectly extraneous characters. That caused
1070             some UTC/non-UTC bug.
1071           - RFC1123 string should return universal time. Uncomment again (the
1072             problem should went away because of the extra characters fix above.
1074             With some of the changes above, fixed bug #47720.
1076 2004-05-27  Atsushi Enomoto <atsushi@ximian.com>
1078         * DateTime.cs : quick revert 'Z' support for certificate verifications.
1080 2004-05-26  Sebastien Pouliot  <sebastien@ximian.com>
1082         * Array.cs: Removed duplicate condition if LastIndexOf.
1084 2004-05-26  Atsushi Enomoto <atsushi@ximian.com>
1086         * DateTime.cs :
1087           - Added "yyyy-MM-dd HH:mm:ss" to "compatible patterns".
1088             (Fixed bug #58938.)
1089           - As a quick remedy to accept more patterns, Parse() now also tries
1090             InvariantInfo patterns (this is because we have no more than one
1091             pattern for each pattern component.)
1092           - In _DoParse(), 'Z' should not be read as timezone specifier. Some
1093             culture uses 'Z' as AM/PM designer, and it should be recognized as
1094             part of the UTCpattern (if it actually UTC pattern for the culture
1095             contains 'Z').
1097 2004-05-26  Gert Driesen (drieseng@users.sourceforge.net)
1099         * MonoCustomAttrs.cs: Fixed issue with AllowMultiple, as MS
1100         seems to allow multiple attributes with AllowMultiple at
1101         runtime.
1103 2004-05-26  Sebastien Pouliot  <sebastien@ximian.com>
1105         * Byte.cs: Throw an OverflowException for negative numbers.
1106         * Convert.cs: Accept 0x and 0X as prefix when parsing base16 strings.
1107         * Environment.cs: Bumped mono_corlib_version to 20 (rng interface).
1109 2004-05-25  Sebastien Pouliot  <sebastien@ximian.com>
1111         * Array.cs: Fixed possible integer overflow.
1112         * BitConverter.cs: Fixed a possible integer overflow in ToString.
1113         * Guid.cs: Added an internal method to create a random Guid without
1114         using CryptoConfig (which is heavy on first use). This is only used
1115         in S.R.E.ModuleBuilder to speedup MCS compilation.
1116         * String.cs: Fixed reported exception for PadLeft|Right. Fixed 
1117         possible integer overflow in methods that takes index and count
1118         as parameters.
1120 2004-05-25  Zoltan Varga  <vargaz@freemail.hu>
1122         * String.cs: Add new Strcpy icalls which take a char array as 
1123         parameter.
1125 2004-05-25  Atsushi Enomoto <atsushi@ximian.com>
1127         * DateTime.cs : added more invariant format patterns. This should
1128           really fix bug #57656.
1130 2004-05-25 14:14 CET Patrik Torstensson <totte@hiddenpeaks.com>
1132         * BitConverter.cs (ToBoolean): Return true or false instead
1133         of unsafe returing byte as bool. Fixes bug #58874.
1135 2004-05-25  Atsushi Enomoto <atsushi@ximian.com>
1137         * DateTime.cs : In ToString(string, IFormatProvider), use "G" if
1138           string format argument is null.
1140 2004-05-25  Lluis Sanchez Gual  <lluis@ximian.com>
1142         * Version.cs: Rename of data fields to match those in Microsoft.NET.
1143           Patch by PAF@design.ru.
1145 2004-05-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1147         * DateTime.cs: allow double quotes in the formats. Don't set
1148         next_not_digit to true in presence of single or double quotes. Patch by
1149         Martin Probst.
1151 2004-05-24  Zoltan Varga  <vargaz@freemail.hu>
1153         * AppDomainSetup.cs (InitAppDomainSetup): This one returns void.
1155 2004-05-23  Sebastien Pouliot  <sebastien@ximian.com>
1157         * Array.cs: Fixed exception when we try to Clear outside bounds.
1158         * Boolean.cs: Fixed Equals for True!=True (see bugzilla #58874).
1159         * BitConverter.cs: Fixed negative index and integer overflow in
1160         To... methods.
1161         * Buffer.cs: Fixed integer overflow in BlockCopy.
1163 2004-05-22  Sebastien Pouliot  <sebastien@ximian.com>
1165         * Array.cs: Clear can now work on multidimentional arrays.
1166         * IntPtr.cs: We now only accept 32bits values in the long constructor
1167         unless we're on a 64 bits machine.
1168         * UIntPtr.cs: We now only accept 32bits unsigned values in the ulong 
1169         constructor unless we're on a 64 bits machine.
1171 2004-05-22  Duncan Mak  <duncan@ximian.com>
1173         * Convert.cs: The file was mostly in DOS endings already, for the
1174         sake of consistency, converted it all to DOS endings.
1175         (ToType): When value is null, immediately return null and don't
1176         ever throw a NullReferenceException. When conversionType is null,
1177         throw an InvalidCastException. Give a better error message when
1178         attempting to convert to a DBNull as well.
1180 2004-05-21  Sebastien Pouliot  <sebastien@ximian.com>
1182         * Decimal.cs: Fixed To... methods that needs to trunk the integer part
1183         of Decimal (and not use the banker's rounding like Convert.To...).
1184         * Single.cs: Fixed CompareTo and Equals (copied fix from Double) wrt
1185         to NaN compares (see new unit tests).
1187 2004-05-20  Sebastien Pouliot  <sebastien@ximian.com>
1189         * Convert.cs: Added checks for integer overflow for From|ToBase64Char.
1190         Also fixed the case where wide (16 bits) characters were converted to 
1191         bytes.
1193 2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)
1195         * ThreadStaticAttribute.cs
1196         * ContextStaticAttribute.cs
1197         * FlagsAttribute.cs
1198         * ObsoleteAttribute.cs : now that Inherited is false by
1199         default on AttributeUsageAttribute (as it should be) we
1200         need to explicitly set Inherited to false for those
1201         attributes should it be be false.
1203 2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)
1205         * AttributeUsageAttribute.cs: Inherited property should be
1206         true by defaultrs.cs: respect Inherited property, and
1208 2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)
1210         * MonoCustomAttrs.cs: respect Inherited property, and
1211         AllowMultiple property of a CustomAttribute. This fixes
1212         a major issue we had with respect to custom attributes.
1214 2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)
1216         * MonoType.cs: throw ArgumentNullException when type parameter in
1217         GetCustomAttributes(Type, bool) is null
1219 2004-05-18  Sebastien Pouliot  <sebastien@ximian.com>
1221         * Buffer.cs: Added checks for null source and destination. Fix failing
1222         CryptoStream unit test.
1223         * Guid.cs: Fixed thread-safety issue. Simplified implementation to use
1224         pseudo-random numbers to generate GUIDs (as per section 3.4 of the 
1225         spec). This removes the TODO to get the computer MAC address and
1226         the chances to get a duplicate GUID (across different machines).
1228 2004-05-17  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1230         * TimeSpan.cs: Only catch expected exceptions, if we get other exceptions
1231           than OverflowExceptions then something went wrong internally
1233 2004-05-17  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1235         * Char.cs: Fix long standing bug with ToLower/ToUpper not being
1236           culture - sensitive
1238 2004-05-14  Zoltan Varga  <vargaz@freemail.hu>
1240         * Buffer.cs: Optimize BlockCopy.
1242         * Environment.cs: Bump corlib version.
1244 2004-05-14  Atsushi Enomoto <atsushi@ximian.com>
1246         * __ComObject.cs : This class is not regarded as CLSCompliant by csc.
1247           See also bug #58478.
1249 2004-05-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1251         * AppDomainSetup.cs: don't throw an exception if dynamic_base has not
1252         been set. Just return null as MS. Fixes bug #58120.
1254 2004-05-14  Marek Safar  <marek.safar@seznam.cz>
1256         * Boolean.cs, Byte.cs, Char.cs, DBNull.cs, DateTime.cs,
1257           Decimal.cs, Double.cs, Enum.cs, Int16.cs, Int32.cs,
1258           Int64.cs, IntegerFormatter.cs, SByte.cs, Single.cs,
1259           String.cs, UInt16.cs, UInt32.cs, UInt64.cs: Removed
1260           useless [CLSCompliant (false)]
1263 2004-05-13  Sebastien Pouliot  <sebastien@ximian.com>
1265         * __ComObject.cs: To please corcompare (no implementation).
1267 2004-05-13  Zoltan Varga  <vargaz@freemail.hu>
1269         * Environment.cs: Bump corlib version.
1271 2004-05-13  Sebastien Pouliot  <sebastien@ximian.com>
1273         * Environement.cs: Removed two security attributes for CurrentDirectory
1274         that weren't documented (and anyway we don't support them).
1276 2004-05-11  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1278         * Char.cs: Fix exceptions
1280 2004-05-11  Lluis Sanchez Gual  <lluis@ximian.com>
1282         * MissingMemberException.cs: Fix in serialization constructor.
1284 2004-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1286         * Environment.cs: GetGacPath return value is resolved at runtime on
1287         windows.
1289 2004-05-07  Sebastien Pouliot  <sebastien@ximian.com>
1291         * Convert.cs: ToBase64CharArray method was depending on a bug in 
1292         S.S.C.ToBase64Transform class to work. Added an internal method to 
1293         provide the same functionality (multiple block processing).
1295 2004-05-06  Jackson Harper  <jackson@ximian.com>
1297         * Environment.cs: Make $HOME the personal directory.
1299 2004-05-06  Sebastien Pouliot  <sebastien@ximian.com>
1301         * Convert.cs: ToBase64String method was depending on a bug in 
1302         S.S.C.ToBase64Transform class to work. Added an internal method to 
1303         provide the same functionality (multiple block processing).
1305 2004-05-05  Sebastien Pouliot  <sebastien@ximian.com>
1307         * Environment.cs: Completed OSVersion property.
1308         * Version.cs: Added internal CreateFromString() to "try" to build the
1309         best version number form the specified string.
1311 2004-05-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1313         * TimeSpan.cs: Redid a lot of stuff in TimeSpan from scratch.
1314           Fixes several potential bugs and makes things way faster.
1316 2004-05-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1318         * TimeSpan.cs: Formatting changes
1320 2004-04-29 Ben Maurer  <bmaurer@users.sourceforge.net>
1322         * Activator.cs: change _flags to a const.
1323         * IntegerFormatter.cs: make tables readonly.
1324         * Convert.cs: tables readonly
1325         * DateTime.cs: ditto.
1326         * IntPtr.cs: avoid a cctor.
1328 2004-04-29  Jackson Harper  <jackson@ximian.com>
1330         * MonoType.cs: 
1331         * Type.cs: NET_2_0 now instead of 1_2. 
1332         
1333 2004-04-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1335         * Environment.cs: implemented GetLogicalDrives.
1337 2004-04-28  Miguel de Icaza  <miguel@ximian.com>
1339         * Applied patch from Atsushi Enomoto that allows Synchronized
1340         writers to have a `dont close' flag, this fixes 52094
1342 2004-04-29  Lluis Sanchez Gual  <lluis@ximian.com>
1344         * MonoCustomAttrs.cs, MonoType.cs: Property.GetGetMethod() does not
1345         return the method if it is private (it did until now because of a
1346         bug). Make sure it works as it worked before the fix.
1347         * Type.cs: Implemented FilterAttribute delegate.
1349 2004-04-28  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1351         * IntegerFormatter.cs: Prevent the use of the explicit static constuctor
1353 2004-04-27  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1355         * IntegerFormatter.cs: Made functions internal (needed by other patches)
1357 2004-04-27  Lluis Sanchez Gual  <lluis@ximian.com>
1359         * DateTime.cs: TODO cleaning.
1360         * Delegate.cs: GetObjectData should be virtual.
1361         * IntegerFormatter.cs: Method factorization. I don't want to fix bugs in
1362           30 methods almost identical.
1363         * MulticastDelegate.cs: Implemented GetObjectData.
1364         
1365 2004-04-26  Jackson Harper  <jackson@ximian.com>
1367         * Environment.cs: Things going bump in the night.
1369 2004-04-25  Miguel de Icaza  <miguel@ximian.com>
1371         * Convert.cs (toBase64Transform): Make private.
1373 2004-04-25  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1375         * Convert.cs:
1376         * Decimal.cs:
1377         * DecimalFormatter.cs:
1378         * FloatingPointFormatter.cs: Call invariant Char functions
1379         * Guid.cs: Call invariant Char and String functions
1380         * String.cs: Call invariant Char functions
1382 2004-04-25  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1384         * String.cs: Refactored the Invariant ToXXX into its own internal methods
1385           so they are directly callable within corlib (can prevent early
1386           construction of CultureInfo, InvariantCulture and related classes)
1388 2004-04-24  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1390         * String.cs: Managed impl. of Invariant parts of ToLower, ToUpper
1391         * Char.cs: Managed impl. of Invariant parts of ToLower, ToUpper
1393 2004-04-24  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1395         * String.cs: Check for null values
1397 2004-04-23  Peter Bartok <pbartok@novell.com>
1399         * Environment.cs: GetLogicalDrives now returns "/" instead of null. Gonzalo
1400           will do a better fix in the future, but this way apps can at least use it.
1402 2004-04-23  Sebastien Pouliot  <sebastien@ximian.com>
1404         * Environment.cs: Better support for GetFolderPath (same results as MS 
1405           on Windows).
1407 2004-04-22  Lluis Sanchez Gual  <lluis@ximian.com>
1409         * Activator.cs: Removed TODOs for finished methods.
1410         * AppDomainSetup.cs: When setting a relative path to ApplicationBase, it
1411           must be relative to the current directory, not the temp directory.
1412           Implemented DynamicBase.
1413         * Convert.cs: No need to create a ToBase64Transform instance at every call
1414           to ToBase64CharArray.
1415         * DateTime.cs: Implemented missing methods FromFileTimeUtc and 
1416           ToFileTimeUtc.
1417         * Decimal.cs: Implemented FromOACurrency and ToOACurrency.
1418         * Delegate.cs: Removed class TODO.
1419         * IntegerFormatter.cs: Use Char.IsLetter and Char.IsDigit instead of ad-hoc
1420           methods.
1421         * Type.cs: Removed TODOs for things already implemented.
1422         
1423 2004-04-21  Lluis Sanchez Gual  <lluis@ximian.com>
1425         * Char.cs: Implemented culture-dependent ToLower and ToUpper methods.
1426         * MulticastDelegate.cs: Removed unused code.
1428 2004-04-19  Lluis Sanchez Gual  <lluis@ximian.com>
1430         * AppDomain.cs: Implemented DynamicDirectory and SetDynamicBase.
1431         * Array.cs: Removed some TODOs in CreateInstance and IndexOf.
1432         * BadImageFormatException.cs: TODO reformat.
1433         * DateTime.cs: Implemented GetDateTimeFormats and GetDateTimeFormats.
1434         * DelegateSerializationHolder.cs: Made class internal.
1435         * Enum.cs: Removed TODO for localization, since this is something that has
1436           to be done for all classes.
1437         * Environment.cs: Removed TODO.
1438         * Exception.cs: Changed ToString to use StringBuilder.
1439         * MonoDummy.cs: Made class internal.
1440         * UnitySerializationHolder.cs: Added support for modules.
1442 2004-04-16  David Sheldon <dave-mono@earth.li>
1444         * DecimalFormatter.cs: Don't append a decimal point after the
1445           end of a number. ((decimal)1).ToString("P0") should be "100 %", not
1446           "100. %"
1448 2004-04-09  Miguel de Icaza  <miguel@ximian.com>
1450         * OutOfMemoryException.cs: Removed the call to Locale.GetText from
1451           this.
1453 2004-04-10  Gert Driesen (drieseng@users.sourceforge.net)
1455         * MonoDummy.cs: added MonoTODO to make sure we remove this class
1456           when its no longer needed
1458 2004-04-09  David Sheldon <dave-mono@earth.li>
1460         * Convert.cs: Allow + signs in strings for ToInt32, and
1461           - if it is base 10.
1463 2004-04-08  Atsushi Enomoto  <atsushi@ximian.com>
1465         * Nullable.cs : usingdecl should also be conditional.
1467 2004-04-07  Martin Baulig  <martin@ximian.com>
1469         * Nullable.cs: New file.
1471 2004-04-07  Martin Baulig  <martin@ximian.com>
1473         * Type.cs (Type.GetGenericArguments): Make this abstract.
1475 2004-04-07  Jackson Harper  <jackson@ximian.com>
1477         * Environment.cs: Increase corlib version number.
1478         
1479 2004-04-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1481         * Environment.cs:
1482         (ExpandEnvironmentVariables): on windows, env. vars. are case
1483         insensitive.
1485 2004-04-06  Sebastien Pouliot  <sebastien@ximian.com>
1487         * AppDomain.cs: Added static to [ThreadStatic] _principal field. 
1488         Removed [ThreadStatic] for _principalPolicy (not required).
1490 2004-04-06  Miguel de Icaza  <miguel@ximian.com>
1492         * Guid.cs: Flag as Sequential.
1494 2004-04-02  Dick Porter  <dick@ximian.com>
1496         * String.cs: More sanity checks in Replace().  Fixes bug 55822.
1498 2004-04-02  Sebastien Pouliot  <sebastien@ximian.com>
1500         * Environment.cs: Implement ExpandEnvironmentVariables static method.
1501         Now call the runtime to get the username (fix #56144).
1503 2004-04-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1505         * MonoType.cs: AssemblyQualifiedName now displays culture, version...
1506         Fixes bug #56341.
1508 2004-03-29  Miguel de Icaza  <miguel@ximian.com>
1510         * Console.cs: If we fail to open stdin/stdout/stderr, create
1511         readers with a NullStream.  This can happen if our caller does not
1512         setup stdin/stoud/stderr file handles.  #56158 exposed this, but
1513         it will happen elsewhere.
1515 2004-03-29  Lluis Sanchez Gual <lluis@ximian.com>
1517         * Convert.cs: In ToSingle(double), removed checks for Single.MaxValue
1518         and Single.MinValue. MS.NET don't do it. This fixes bug #56005.
1519         * Guid.cs: Added support for guid strings in the "N" and "P" formats in
1520           the constructor. This fixes bug #54019.
1522 2004-03-23  Lluis Sanchez Gual <lluis@ximian.com>
1524         * FloatingPointFormatter.cs: Made the class thread safe. Had to move some
1525           internal variables to structures that are moved around methods.
1526           Factorized some common formatting code into FormatNumberInternal.
1527           
1528 2004-03-23  Dick Porter  <dick@ximian.com>
1530         * DateTime.cs: Allow any character for DateSeparator when parsing,
1531         except TimeSeparator, a digit or a letter.  Fixes bug 54047.  Also
1532         deleted the previous fix for 54721, because this covers it too.
1533         
1534 2004-03-23  Dick Porter  <dick@ximian.com>
1536         * DateTime.cs: Check the date string for too many digits when
1537         parsing.  Fixes bugs 53023 and 53025.
1539 2004-03-22  Dick Porter  <dick@ximian.com>
1541         * String.cs: Use the provider when converting strings to other
1542         types.
1544         * DateTime.cs: Add MM-dd-yyyy to the list of standard date parsing
1545         formats.  Fixes bug 54721.
1547 2004-03-22  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1549         * Console.cs: Styled, optimized calls
1550         * CrossAppDomainDelegate.cs: Small header fix
1551         * Buffer.cs: Style, improve errors
1552         * BitConverter.cs: Style, improve errors, remove obsolete comment
1553         * Attribute.cs: Style, improve errors, small fix
1554         * Array.cs: Style, improve errors, small fix, added TODOs
1555         * Activator.cs: Style, localized errors, added error checks
1556         * Byte.cs: Style, localized errors, fixed wrong exception parameters
1557         * Char.cs: Style
1558         * Boolean.cs: Style
1559         * AppDomainSetup.cs: Style
1560         * AppDomain.cs: Style, implemented two methods (redirect)
1562 2004-03-21  Jackson Harper  <jackson@ximian.com>
1564         * FloatingPointFormatter.cs: Set precision from number format info
1565         when it is not specified. This fixes bug #54983.
1566         
1567 2004-03-18  Nick Drochak <ndrochak@ieee.org>
1569         * Math.cs: Use IsNaN() method not "x == NaN".
1571 2004-03-16  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1573         * EntryPointNotFoundException.cs
1574         * DuplicateWaitObjectException.cs
1575         * DllNotFoundException.cs
1576         * DivideByZeroException.cs
1577         * ContextMarshalException.cs
1578         * CannotUnloadAppDomainException.cs
1579         * BadImageFormatException.cs
1580         * ArrayTypeMismatchException.cs
1581         * ArithmeticException.cs
1582         * ArgumentOutOfRangeException.cs
1583         * ArgumentNullException.cs
1584         * ArgumentException.cs
1585         * ApplicationException.cs
1586         * AppDomainUnloadedException.cs: Added missing HResult overrides
1588         * BadImageFormatException.cs: Improved/ Fixed implementation
1590 2004-03-15  Sebastien Pouliot  <sebastien@ximian.com>
1592         * Random.cs: Corrected random value when Next is called with a 
1593         negative value. Testing indictae that our results aren't exactly the 
1594         same as MS, we have a +/- 1 (probably rounding errors due to 
1595         different implementation).
1597 2004-03-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1599         * Environment.cs: updated corlib version.
1601 2004-03-15  Lluis Sanchez Gual <lluis@ximian.com>
1603         * Boolean.cs, Byte.cs, Char.cs, Double.cs, Int16.cs, Int32.cs, Int64.cs,
1604           SByte.cs, Single.cs, UInt16.cs, UInt32.cs, UInt64.cs: Renamed internal
1605           field "value" to "m_value", so it is interoperable with MS.NET when 
1606           serializing and deserializing data. Based on the patch from Daniel
1607           Keep.
1609 2004-03-14  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1611         * TypeInitializationException.cs
1612         * SystemException.cs
1613         * StackOverflowException.cs
1614         * RankException.cs
1615         * OverflowExceptionException.cs
1616         * OutOfMemoryException.cs
1617         * NullReferenceException.cs
1618         * NotSupportedException.cs
1619         * NotFiniteNumberException.cs
1620         * InvalidOperationException.cs
1621         * InvalidCastException.cs
1622         * IndexOutOfRangeException.cs
1623         * FormatException.cs
1624         * ExecutionEngineException.cs: improved parameter names
1626 2004-03-13  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1628         * Enum.cs
1629         * EntryPointNotFoundException.cs
1630         * DuplicateWaitObjectException.cs
1631         * DoubleFormatter.cs
1632         * DllNotFoundException.cs
1633         * DivideByZeroException.cs
1634         * DelegateSerializationHolder.cs
1635         * Delegate.cs
1636         * DBNull.cs
1637         * ContextStaticAttribute.cs
1638         * ContextMarshalException.cs
1639         * ContextBoundObject.cs
1640         * CLSCompliantAttribute.cs
1641         * CharEnumerator.cs
1642         * CannotUnloadAppDomainException.cs
1643         * BadImageFormatException.cs
1644         * AttributeUsageAttribute.cs
1645         * AttributeTargets.cs
1646         * AsyncCallback.cs
1647         * AssemblyLoadEventHandler.cs
1648         * AssemblyLoadEventArgs.cs
1649         * ArrayTypeMismatchException.cs
1650         * ArithmeticException.cs
1651         * ArgumentOutOfRangeException.cs
1652         * ArgumentNullException.cs
1653         * ArgumentException.cs
1654         * ArgIterator.cs
1655         * ApplicationException.cs
1656         * AppDomainUnloadedException.cs
1657         * AppDomain.cs: Mono styled, fixed exceptions/ locales
1658           removed excess usings
1660 2004-03-10  Sebastien Pouliot  <sebastien@ximian.com>
1662         * Convert.cs: FromBase64 now ignore some characters (tab, LF, CR and
1663         spaces) which fixed #54939. Changed the way that the length is 
1664         validated (multiple of 4) because the ignored characters must not be
1665         included in the count.
1667 2004-03-10  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1669         * String.cs: Monostyled
1671 2004-03-09  Jackson Harper  <jackson@ximian.com>
1673         * Char.cs: Only use a byte for numeric data.
1674         
1675 2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1677         * TypedReference.cs: Added missing Attributes
1678         * ParamArrayAttribute.cs: Small style fix
1679         * OperatingSystem.cs: Added .Net 1.1 member
1681 2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1683         * FieldAccessException.cs
1684         * FormatException.cs
1685         * InvalidCastException.cs
1686         * InvalidOperationException.cs
1687         * MemberAccessException.cs
1688         * MethodAccessException.cs
1689         * MissingFieldException.cs: Locale strings
1690         * MissingMemberException.cs: Locale strings
1691         * MissingMethodException.cs: Locale strings
1692         * NotFiniteNumberException.cs
1693         * NotImplementedException.cs
1694         * NotSupportedException.cs
1695         * NullReferenceException.cs
1696         * ObjectDisposedException.cs
1697         * OutOfMemoryException.cs
1698         * OverflowExceptionException.cs
1699         * PlatformNotSupportedException.cs
1700         * RankException.cs: Added missing HResult overrides
1702 2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1704         * RuntimeTypeHandle.cs
1705         * RuntimeMethodHandle.cs
1706         * RuntimeFieldHandle.cs: Implemented serialization (partially untested)
1708 2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1710         * EventArgs.cs
1711         * Exception.cs
1712         * ExecutionEngineException.cs
1713         * FieldAccessException.cs
1714         * FormatException.cs
1715         * GC.cs
1716         * Guid.cs
1717         * IndexOutOfRangeException.cs
1718         * IntPtr.cs
1719         * InvalidCastException.cs
1720         * InvalidOperationException.cs
1721         * InvalidProgramException.cs
1722         * IServiceProvider.cs
1723         * LoaderOptimization.cs
1724         * LoaderOptimizationAttribute.cs
1725         * MarshalByRefObject.cs
1726         * Math.cs
1727         * MemberAccessException.cs
1728         * MethodAccessException.cs
1729         * MissingFieldException.cs
1730         * MissingMemberException.cs
1731         * MissingMethodException.cs
1732         * MultiCastDelegate.cs
1733         * MulticastNotSupportedException.cs
1734         * NonSerializedAttribute.cs
1735         * NotFiniteNumberException.cs
1736         * NotImplementedException.cs
1737         * NotSupportedException.cs
1738         * NullReferenceException.cs
1739         * ObjectDisposedException.cs
1740         * ObsoleteAttribute.cs
1741         * OperatingSystem.cs
1742         * OutOfMemoryException.cs
1743         * OverflowExceptionException.cs
1744         * PlatformID.cs
1745         * PlatformNotSupportedException.cs
1746         * Random.cs
1747         * RankException.cs
1748         * ResolveEventArgs.cs
1749         * ResolveEventHandler.cs
1750         * RuntimeFieldHandle.cs
1751         * RuntimeMethodHandle.cs
1752         * RuntimeTypeHandle.cs: Mono styled, fixed exceptions/ locales
1753           removed excess usings
1755 2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1757         * SystemException.cs: Exceptions set the HResult
1758         * TypeLoadException.cs: Exceptions set the HResult, fixed wrong exception usage
1759         * SByte.cs: Implemented two missing methods, fix wrong parameters for ArgumentNullException
1761 2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1763         * TypedReference.cs
1764         * TypeLoadException.cs
1765         * TypeInitializationException.cs
1766         * TypeCode.cs
1767         * TimeZone.cs
1768         * ThreadStaticAttribute.cs
1769         * SystemException.cs
1770         * STAThreadAttribute.cs
1771         * StackOverflowException.cs
1772         * SingleFormatter.cs
1773         * Single.cs
1774         * SerializableAttribute.cs: Mono styled, fixed exceptions/ locales
1775           removed excess usings
1777 2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1779         * UnauthorizedAccessException.cs: Exceptions set the HResult
1780         * UInt64.cs: Implemented two missing methods
1781         * UInt32.cs: Fix wrong parameters for ArgumentNullException, simpler convert
1782         * UInt16.cs: Fix wrong parameters for ArgumentNullException, simpler convert
1784 2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1786         * WeakReference.cs
1787         * Void.cs
1788         * Version.cs
1789         * ValueType.cs
1790         * UnitySerializationHolder.cs
1791         * UnhandledExceptionEventHandler.cs
1792         * UnauthorizedAccessException.cs
1793         * UIntPtr.cs
1794         * UInt64.cs
1795         * UInt32.cs
1796         * UInt16.cs: Mono styled, Locale.GetText fixes, msg fixes
1798 2004-03-04  Lluis Sanchez Gual <lluis@ximian.com>
1800         * Environment.cs: Bump corlib version.
1802 2004-03-04  Jackson Harper  <jackson@ximian.com>
1804         * Char.cs: New managed implementation. Modified patch by Andreas Nahr.
1805         
1806 2004-02-27  Lluis Sanchez Gual <lluis@ximian.com>
1808         * String.cs: Concat() fixed crash when one of the arguments is an object
1809           whose ToString() method returns null.
1810         * TypeLoadException.cs: Added some serialization fiels, needed for
1811           compatibility with MS.NET.
1813 2004-02-23 Ben Maurer  <bmaurer@users.sourceforge.net>
1815         * String.cs (Equals): Speed up this method by avoiding Array
1816          Bounds Checks and by comparing by 32 bit words rather than 16 bit chars.
1818         This gives between 0x (for 1 char) and >2x (for large strings)
1819         factor of improvement.
1821         A big thanks to Miguel, who suggested the integer compares.
1823 2004-02-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1825         * MonoType.cs: use the binder in GetPropertyImpl.
1827 2004-02-22  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1829         * Math.cs: MonoStyled, replaced space with tabs,
1830           speedup of some methods by avoiding method calls
1832 2004-02-18  Atsushi Enomoto  <atsushi@ximian.com>
1834         * Char.cs : optimized IsSeparator(), IsWhiteSpace() and IsDigit().
1835           (Moved from InternalCall to Managed code).
1837 2004-02-17  Martin Baulig  <martin@ximian.com>
1839         * MonoType.cs (GetConstructors): Renamed the interncall to
1840         GetConstructors_internal(), made it internal and added a `Type
1841         reflected_type' argument to it.
1842         (GetEvents, GetFields): Likewise.
1843         (GetMethodsByName): Added `Type reflected_type' argument.
1844         (GetPropertiesByName): Likewise.
1846 2004-02-16  Jackson Harper  <jackson@ximian.com>
1848         * FloatingPointFormater.cs: Allow precision to be up to the number
1849         of decimals without rounding.
1850         
1851 2004-02-14  Zoltan Varga  <vargaz@freemail.hu>
1853         * Delegate.cs (Equals): Do not compare method_ptr, since it might
1854         point to a trampoline.
1856 2004-02-12  Jackson Harper  <jackson@ximian.com>
1858         * AppDomainSetup.cs: If relative paths are used they should be
1859         rooted in the temp directory.
1860         
1861 2004-02-11  Marek Safar  <marek.safar@seznam.cz>
1863         * Type.cs (FilterNameIgnoreCase_impl): Added extra check for speedup.
1865 2004-02-10  Zoltan Varga  <vargaz@freemail.hu>
1867         * AppDomain.cs (Load): Check that assemblyRef.Name is not empty, to
1868         avoid an assert in the runtime.
1870 2004-02-08  Duncan Mak  <duncan@ximian.com>
1872         * Convert.cs (ToType): Always let a Convert.ChangeType call
1873         succeed if the source object is already of the destination type.
1875         Patch by Ian MacLean (ianm@activestate.com).
1877 2004-02-05  Sebastien Pouliot  <sebastien@ximian.com>
1879         * AppDomain.cs: Implemented SetPrincipalPolicy and SetThreadPrincipal.
1881 2004-02-02  Zoltan Varga  <vargaz@freemail.hu>
1883         * Environment.cs: Bump corlib version.
1885 2004-02-02  Sebastien Pouliot  <sebastien@ximian.ca>
1887         * DateTime.cs: Corrected support for "Z" in the mask (Parse). This
1888         fix bug #53461.
1890 2004-01-27  Sebastien Pouliot  <spouliot@videotron.ca>
1892         * Exception.cs: Changed ToString to remove the \n when no stack trace
1893         is present (which fixed a unit test for SecurityException). Changed
1894         all \n to Environment.NewLine.
1896 2004-01-27  Lluis Sanchez Gual <lluis@ximian.com>
1898         * ContextBoundObject.cs: Removed TODO.
1900 2004-01-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1902         * TimeSpan.cs: fixed bug #52075. Days (int) don't rely on TotalDays
1903         (double), which might round up.
1905 2004-01-19  Jackson Harper <jackson@ximian.com>
1907         * FloatingPointFormatter.cs: Use the default decimal digits count
1908         if they are not specified. This fixes bug #52927.
1909         
1910 2004-01-19  Zoltan Varga  <vargaz@freemail.hu>
1912         * Environment.cs: Bump version number.
1914 2004-01-19  Lluis Sanchez Gual  <lluis@ximian.com>
1916         * Type.cs: Added internal call for IsInstanceOfType. The old implementation
1917         uses IsAssignableFrom(o.GetType()), which is not always valid for 
1918         transparent proxies (because GetType will not return the type of the remote
1919         object if its assembly is not present).
1921 2004-01-18  David Sheldon <dave-mono@earth.li>
1923   * FloatingPointFormatter.cs: Skip the decimal point if we have an 
1924     integer mantassa. So: 1E+15, rather than 1.E+15.
1926 2004-01-18  David Sheldon <dave-mono@earth.li>
1928         * Array.cs (GetValue/SetValue): Throw NullRef exception like .NET 1.1, 
1929         even though docs say it should be an ArgumentNull. Two test cases now
1930   pass. See also nickd's commit of 2003-12-24.
1932 2004-01-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1934         * Environment.cs: increased corlib version.
1936 2004-01-14  Lluis Sanchez Gual <lluis@ximian.com>
1938         * MonoCustomAttrs.cs: Removed attribute cache. Attribute instances can't
1939         be reused because they could be modified. This fixes bug #52655.
1941 2004-01-12  Patrik Torstensson
1943         * Environment.cs: Bump corlib version number due to new StringBuilder
1944         
1945         * String.cs: New internal method to support the new StringBuilder that
1946         uses the string as a buffer (until ToString is called)
1948 2004-01-12  Zoltan Varga  <vargaz@freemail.hu>
1950         * Environment.cs: Bump corlib version number for real this time.
1951         
1952         * AppDomain.cs (LoadAssembly): Pass the assembly name as a string to
1953         the runtime, so it can take into account the Culture etc.
1955         * Environment.cs: Bump corlib version number.
1956         
1957 2004-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1959         * MonoType.cs: GetMethods renamed to GetMethodsByName. It takes a
1960         new parameter with the method name and a boolean for ignoring case.
1961         Removed some string comparisons no longer needed.
1963 2004-01-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1965         * MonoType.cs: GetProperties renamed to GetPropetiesByName. It takes a
1966         new parameter with the property name and a boolean for ignoring case.
1967         Fixes bug #52753.
1969 2004-01-11  David Sheldon <dave-mono@earth.li>
1971         * DateTime.cs: Correct processing of formats with multiple '-'s, fixing
1972         bug 52274.
1974 2004-01-10  Zoltan Varga  <vargaz@freemail.hu>
1976         * AppDomain.cs: Keep track of type resolve and assembly resolve 
1977         events in progress to prevent infinite recursion.
1979 2004-01-06  Miguel de Icaza  <miguel@ximian.com>
1981         * Console.cs: Test for UTF-8 being present anywhere on the
1982         string, also do ToUpper instead of ToLower, which will work even
1983         around the ICU bug with different locales (#52065), and addresses #52101
1985 2004-01-05  Zoltan Varga  <vargaz@freemail.hu>
1987         * Environment.cs: Bump version.
1989 2003-12-24 Ben Maurer  <bmaurer@users.sourceforge.net>
1991         * Type.cs (IsNotPublic): One would normally assume that
1992         IsNotPublic == !IsPublic, but this is not the case (note to MS,
1993         make better names ;-). Fixes #52547, `Type.IsNotPublic not 
1994         correct for Nested types'
1996 2003-12-24  Nick Drochak  <ndrochak@ieee.org>
1998         * Array.cs (CreateInstance): Throw NullRef exception like .NET 1.1, 
1999         even though docs say it should be an ArgumentNull. Sent email to MS
2000         about this "bug".
2002 2003-12-23  Lluis Sanchez Gual  <lluis@ximian.com>
2004         * Exception.cs: Several changes to make it compatible with MS.NET (needed
2005         for remoting interoperability): set a default value for hresult, added 
2006         initialization of class_name, serialization field RemoteStackTrace must
2007         be RemoteStackTraceString, added ser. field ExceptionMethod.
2009         * IndexOutOfRangeException.cs: Added serialization constructor.
2011 2003-12-22  Bernie Solomon  <bernard@ugsolutions.com>
2013         * Int32 (Parse):
2014           Int64 (Parse): Fix overflow checking for AllowHexSpecifier
2016 2003-12-20  Zoltan Varga  <vargaz@freemail.hu>
2018         * MonoType.cs (GetMethodImpl): Only call FindMostDerivedMatch if the
2019         user supplied no parameter info, but not when the user supplied an
2020         empty parameter list. This fixes IKVM.
2022         * Environment.cs: Bump corlib version.
2024 2003-12-19  Dick Porter  <dick@ximian.com>
2026         * String.cs: Added Compare shortcut for length==0.
2028 2003-12-17  Zoltan Varga  <vargaz@freemail.hu>
2030         * Environment.cs: Bump corlib version.
2032 2003-12-17  Dick Porter  <dick@ximian.com>
2034         * String.cs: Fix StartsWith and EndsWith when the argument is the
2035         empty string.  Fixes bug 52283.
2037 2003-12-16  Zoltan Varga  <vargaz@freemail.hu>
2039         * Environment.cs (HasShutdownStarted): Implement.
2041 2003-12-15  Zoltan Varga  <vargaz@freemail.hu>
2043         * Environment.cs (HasShutdownStarted): Make this static under NET 1.1.
2044         
2045         * Environment.cs: Bump version number.
2047 2003-12-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2049         * DateTime.cs: don't bail out with that year out of range error on
2050         stuff like "MM/dd/yyyy HH:MM:ss".
2052 2003-12-13  Zoltan Varga  <vargaz@freemail.hu>
2054         * Environment.cs: Make it a const instead.
2055         
2056         * Environment.cs: Make version field static.
2058 2003-12-10  Zoltan Varga  <vargaz@freemail.hu>
2060         * Type.cs: Make DefaultBindingFlags protected.
2062         * Environment.cs: Applied patch from Todd Berman (tbermann@gentoo.org).
2063         Add new GacPath property + its associated icall.
2065 2003-12-09 Anirban Bhattacharjee <banirban@novell.com>
2067         * DateTime.cs : Bugs fixed (41845, 51422)
2068         * MonoType.cs : Exception message changed 
2070 2003-12-08  Martin Baulig  <martin@ximian.com>
2072         * Type.cs (MakeByRefType): New public method.
2074 2003-12-08  Zoltan Varga  <vargaz@freemail.hu>
2076         * Environment.cs: Add a version number for the corlib-runtime interface
2077         to make it easier to diagnose problems resulting from a mismatch 
2078         between the two.
2080 2003-12-08  Patrik Torstensson   <p@rxc.se>
2082         * Type.cs (GetMethod): Check type arguments within array
2083         * MonoType.cs (GetMethodImpl): Handle methods with a new slot
2084         (same signature but different classes (derived level)
2086 2003-12-07  Zoltan Varga  <vargaz@freemail.hu>
2088         * Type.cs (MakeArrayType): Add argument checking.
2090 2003-12-06  Dick Porter  <dick@ximian.com>
2092         * String.cs: Don't use CompareInfo for non-culture-sensitive
2093         IndexOf and LastIndexOf methods.
2095 2003-12-06  Ravindra  <rkumar@novell.com>
2097         * DateTime.cs: Made Parse(string, IFormatProvider) method to
2098         use second argument. Fixed bug #51464.
2100 2003-12-04  Martin Baulig  <martin@ximian.com>
2102         * Type.cs (Type.MakeArrayType): New public method.
2104 2003-12-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2106         * Buffer.cs:
2107         (BlockCopy): make the exception thrown helpful.
2109 2003-12-03  Dick Porter  <dick@ximian.com>
2111         * String.cs: Calling Replace on an empty string returns itself.
2113 2003-12-03  Zoltan Varga  <vargaz@freemail.hu>
2115         * MonoType.cs: Get rid of get_type_info, use a separate icall for
2116         each property instead.
2118 2003-12-02  Dick Porter  <dick@ximian.com>
2120         * Decimal.cs: Fix NumberFormatInfo lookup.  Patch by
2121         Mohammad DAMT (mdamt@cdl2000.com), fixes bug 51443.
2123 2003-12-01  Dick Porter  <dick@ximian.com>
2125         * String.cs: Make Compare, IndexOf, LastIndexOf, StartsWith,
2126         Replace, ToLower, ToUpper and Equals use the correct CultureInfo.
2128 2003-11-28  Dick Porter  <dick@ximian.com>
2130         * Type.cs: 
2131         * MonoType.cs: 
2132         * Enum.cs: 
2133         * Boolean.cs: Do string compares with the Invariant culture.
2135 2003-11-27 Ben Maurer  <bmaurer@users.sourceforge.net>
2137         * Array.cs: make the enumerator ICloneable
2139 2003-11-27 Ben Maurer  <bmaurer@users.sourceforge.net>
2141         * Decimal.cs (ToXXX): Call Convert.ToXXX.
2143 2003-11-26  Zoltan Varga  <vargaz@freemail.hu>
2145         * AppDomain.cs: Applied patch from ztashev@openlinksw.co.uk (Zdravko Tashev). 
2146         Implement Load(byte[]) methods.
2148         * BadImageFormatException.cs: Fix ToString.
2150 2003-11-24  Zoltan Varga  <vargaz@freemail.hu>
2152         * MonoType.cs: Make Standard|HasThis match Standard in GetMethod and
2153         GetConstructor, as done by MS.
2155 2003-11-19  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2157         * FloatingPointFormatter.cs: Removed some unused variables to prevent csc compiler warnings
2159 2003-11-18  Lluis Sanchez Gual  <lluis@ximian.com>
2161         * TypeInitializationException.cs: Added missing serialization constructor.
2163 2003-11-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2165         * AppDomainSetup.cs: Don't add an extra '/' at the end of 
2166         ApplicationBase. The tests pass now with mono.
2168 2003-11-18  Zoltan Varga  <vargaz@freemail.hu>
2170         * ValueType.cs: New optimized implementation for Equals and GetHashCode.
2172 2003-11-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2174         * Environment.cs: use Directory in CurrentDirectory property.
2175         We were not throwing any exception when setting the directory to an
2176         invalid path.
2178 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2180         * Array.cs:
2181         * Delegate.cs: implemented 1.1 stuff.
2183         * Enum.cs:
2184         * IntPtr.cs: removed extra attribute.
2185         * PlatformID.cs: added WinCE.
2187 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2189         * ValueType.cs:
2190         (Equals): compare the fields of structs too.
2191         (GetHashCode): combine the hash code of all the fields.
2192         Fixes bug #50901 (will remove the icall in a couple of days).
2194 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2196         * Array.cs: fixed Clear for non-zero bounded arrays. Fixes bug #50968.
2198 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2200         * DateTime.cs: handle century when we try to parse 4-digit years and
2201         only 2 digits are present. Fixes bug #49394.
2203 2003-11-13  Miguel de Icaza  <miguel@ximian.com>
2205         * Console.cs: On utf-8 consoles, use unmarked output.
2207 2003-11-13  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2209         * IAppDomainSetup.cs:
2210         * _AppDomain.cs: 
2211         * Object.cs:
2212         * Type.cs: Added missing attribute
2214 2003-11-12 Lluis Sanchez Gual <lluis@ximian.com>
2216         * Environment.cs: Added internal method for getting the path to 
2217         machine.config.
2218         
2219 2003-11-12 Jackson Harper <jackson@ximian.com>
2221         * Environment.cs: Add MyMusic and MyPictures to the SpecialFolder
2222         enum. This fixes the SWF build.
2223         
2224 2003-11-12  Miguel de Icaza  <miguel@ximian.com>
2226         * PlatformID.cs: Remove Unix platform, we cant expose constants
2227         that are not in the framework.
2229         * OperatingSystem.cs: Adjust for the breakage.
2231         * RuntimeMethodHandle.cs: Fix signature.
2233         * Double.cs: Fix signature of TryParse.
2235         * String.cs (Concat (object, object, object, object)): Add missing method.
2237         * OperatingSystem.cs: Removed Equals, GetHashCode, they were not
2238         in the .NET Framework.
2240         * Enum.cs: Hide constructor.  
2242         Fix ToUint16 to be explicitly implemented.
2244         * Console.cs: Add couple of extra missing methods (Write and
2245         WriteLine overloaded)
2247 2003-11-11  Miguel de Icaza  <miguel@ximian.com>
2249         * AppDomain.cs, Activator.cs: New unimplmented entry points from
2250         1.1 (Com activation related).
2251         
2252         * Exception.cs: Formatting.
2253         
2254         * IServiceProvider.cs: Add ComVisible (true).
2256         * AppDomainSetup.cs: Add a couple more properties from .NET 1.1 
2258 2003-11-03  Lluis Sanchez Gual <lluis@ximian.com>
2260         * AppDomain.cs: Added some null checks in Load methods. This fixes bug
2261           #50356.
2263 2003-11-01  Zoltan Varga  <vargaz@freemail.hu>
2265         * AppDomain.cs: Make the SetDomain icalls private + call InternalInvoke
2266         on MonoMethod instead of Invoke.
2268 2003-11-01  Pedro Martínez Juliá  <yoros@wanadoo.es>
2270         * DateTime.cs: Fixed Add* methods handling. Now it works properly
2271         with extreme values (there is a bug with Overflow and Underflow in
2272         long type).
2274 2003-10-31  Pedro Martínez Juliá  <yoros@wanadoo.es>
2276         * DateTime.cs: Fixed a few format bugs.
2278 2003-10-31  Zoltan Varga  <vargaz@freemail.hu>
2280         * AppDomain.cs (InternalPushDomainRef): New icalls.
2282         * AppDomain.cs (InvokeInDomain): New method to execute code in a 
2283         different appdomain.
2285 2003-10-27  Zoltan Varga  <vargaz@freemail.hu>
2287         * AppDomain.cs: Fix prototype of InternalIsFinalizingForUnload.
2289 2003-10-25  Zoltan Varga  <vargaz@freemail.hu>
2291         * AppDomain.cs (IsFinalizingForUnload): Implement.
2293         * AppDomain.cs (Unload): Move the notification of OnUnload listeners
2294         to unmanaged code.
2296 2003-10-25  Martin Baulig  <martin@ximian.com>
2298         * MonoType.cs: Don't make this sealed.
2300 2003-10-24  Zoltan Varga  <vargaz@freemail.hu>
2302         * AppDomain.cs: Add InternalInvokeInDomain[ByID] icalls.
2304 2003-10-24  Pedro Martínez Juliá  <yoros@wanadoo.es>
2306         * DateTime.cs: When handling '-' as a date separator, MS.NET uses
2307         the same symbol in the parse (not DateTimeFormatInfo.DateSeparator).
2309 2003-10-22  Dick Porter  <dick@ximian.com>
2311         * DateTime.cs: Handle '-' as a date separator when parsing formats.
2313 2003-10-20  Duncan Mak  <duncan@ximian.com>
2315         * Delegate.cs (CreateDelegate): Avoid creating an extra Type array
2316         and merge the two iterations into one.
2318 2003-10-15  Zoltan Varga  <vargaz@freemail.hu>
2320         * TypedReference.cs: Add new field used by the runtime.
2322 2003-10-15  Martin Baulig  <martin@ximian.com>
2324         * Type.cs (Type.DeclaringMethod): For a generic method's type
2325         parameter, return this method - otherwise, return null.
2327 2003-10-14  Martin Baulig  <martin@ximian.com>
2329         The generics API has changed in the spec since it was added here;
2330         these modifications make it match the spec again.
2332         * Type.cs
2333         (GetGenericParameters): Renamed to `GetGenericArguments'.
2334         (HasGenericParameters): Renamed to `HasGenericArguments'.
2335         (HasUnboundGenericParameters): Renamed to `ContainsGenericParameters'.
2336         (IsGenericTypeDefinition): New property.
2337         (IsUnboundGenericParameter): Renamed to `IsGenericParameter'.
2339         * MonoType.cs (ContainsGenericParameters): Implement this here;
2340         this is no interncall anymore.
2342 2003-10-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2344         * Delegate.cs: add the method name to the exception when it cannot be
2345         bound.
2346         * Exception.cs: fix nullref in Source.
2348 2003-10-10  Zoltan Varga  <vargaz@freemail.hu>
2350         * Array.cs: Add argument checking to GetValue and SetValue.
2352 2003-10-09  Miguel de Icaza  <miguel@ximian.com>
2354         * DateTime.cs: Patch from Chris Turchin: the DateTime.MaxValue
2355         should not be TimeSpan.MaxValue, because it overflow.  Set this to
2356         be MAX_VALUE_TICKS
2358 2003-10-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2360         * MonoCustomAttrs.cs: from_cache is now thread-safe. Yeah, I got a
2361         duplicate entry exception.
2363 2003-10-08 Ben Maurer  <bmaurer@users.sourceforge.net>
2365         * DateTime.cs (ToString): Total rewrite, fixes #49358.
2367 2003-10-03  Zoltan Varga  <vargaz@freemail.hu>
2369         * AppDomain.cs: Change accessibility of DoTypeResolve to fix build.
2371 2003-10-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2373         * Enum.cs:
2374         (Equals): check that the object is an Enum before comparing the types.
2376 2003-09-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2378         * Array.cs: reduced xsp allocated memory by 1/2.
2380 2003-09-25  Martin Baulig  <martin@ximian.com>
2382         * Type.cs (Type.IsGenericTypeDefinition): Removed this method
2383         since it was identical to GetGenericTypeDefinition().
2384         (Type.IsGenericInstance): New property.
2386 2003-09-24  Duncan Mak  <duncan@ximian.com>
2388         * Math.cs (Abs): Fix double Locale.GetText bug reported by
2389         davejp@volny.cz. This fixes #48788.
2391 2003-09-14  Pedro Martínez Juliá  <yoros@wanadoo.es>
2393         * FloatingPointFormatter.cs: Add the necessary castings to char
2394         conversions.
2396 2003-09-13  Pedro Martínez Juliá  <yoros@wanadoo.es>
2398         * FloatingPointFormatter.cs: Make the method calls more functional
2399         for protecting the values from different threads (make it more
2400         thread safe).
2402 2003-09-13  Pedro Martínez Juliá  <yoros@wanadoo.es>
2404         * FloatingPointFormatter.cs: Fix a bug with the negative value of
2405         count parameter.
2407 2003-09-12  Pedro Martínez Juliá  <yoros@wanadoo.es>
2409         * FloatingPointFormatter.cs: Applied a lot of improvements in string
2410         construction, make use of Append/Insert with the "count" parameter.
2411     Thanks to Ben Maurer.
2413 2003-09-10  Pedro Martínez Juliá  <yoros@wanadoo.es>
2415         * FloatingPointFormatter.cs: Fix a bug with Custm Format.
2417         * FloatingPointFormatter.cs: Fix a little bug I've introduced the
2418         last change.
2420 2003-09-10  Pedro Martínez Juliá  <yoros@wanadoo.es>
2422         * DoubleFormatter.cs: A few optimizations. Now, only one object
2423         is created to convert all double numbers.
2425         * SingleFormatter.cs: A few optimizations. Now, only one object
2426         is created to convert all float numbers.
2428         * FloatingPointFormatter.cs: Split the "number type parameters" from
2429         the "numver value and format parameters". The first ones are in the
2430         constructor and the others are in a method.
2432 2003-09-09  Zoltan Varga  <vargaz@freemail.hu>
2434         * Array.cs: Added argument checking to some NET_1_1 methods.
2436 2003-09-04  Martin Baulig  <martin@ximian.com>
2438         * Type.cs (GetGenericTypeDefinition): Make this method virtual.
2440 2003-08-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2442         * Array.cs: added the new overloaded CreateInstance, GetValue, SetValue
2443         taking 'longs'. All tests pass.
2445 2003-08-26 Ben Maurer  <bmaurer@users.sourceforge.net>
2447         * Exception.cs: Add ClassInterface attr. Implement TargetSite and
2448         Source. Remove MonoTODO attributes (class is 100% done). Also
2449         passes all Rotor tests for Exception!
2451 2003-08-26 Ben Maurer  <bmaurer@users.sourceforge.net>
2453         * Enum.cs: Remove [MonoTODO]'s that had been completed.
2455 2003-08-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2457         * String.cs: fixed bug #47802.
2459 2003-08-21 Ben Maurer  <bmaurer@users.sourceforge.net>
2461         * String.cs: Created method FormatHelper that does formatting,
2462         using a StringBuilder.
2464 2003-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2466         * Array.cs: patch by lb@lb.ods.org that fixes bug #47707.
2468 2003-08-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2470         * Delegate.cs: CreteDelegate (Type, MethodInfo) only supports static
2471         methods under MS.
2473 2003-08-11  Duncan Mak  <duncan@ximian.com>
2475         * Environment.cs (Version): Return the same numbers as the MS
2476         implementation.
2478 2003-08-10  Miguel de Icaza  <miguel@ximian.com>
2480         * Array.cs: Applied patch from Thong (Tum) Nguyen;  Removed
2481         replicated tests, and have a routine that does the heavy lifting.
2483 2003-08-08  Lluis Sanchez Gual <lluis@ximian.com>
2485         * DateTime.cs: Fixed DoParse. It was calling the wrong constructor
2486           of DateTime.
2487         * Environment.cs: return $HOME for ApplicationData folder.
2489 2003-08-04  Duncan Mak  <duncan@ximian.com>
2491         * FloatingPointFormatter.cs (Normalize): Apply a patch from Aleksey
2492         Demakov <avd@openlinksw.com> to fix formatting for Big power of 10
2493         floating point values. This fixes bug #46175.
2495         * Convert.cs (ToUInt16): Throw an OverflowException correctly, as
2496         noted by c5n4kh6u02@sneakemail.com in
2497         http://bugzilla.ximian.com/show_bug.cgi?id=43098.
2499 Sat Aug  2 13:01:46 BST 2003 Malte Hildingson <malte@amy.udd.htu.se>
2501         * Double.cs: added icall Double.AssertEndianity.
2503 Fri Aug 1 16:47:17 CEST 2003 Paolo Molaro <lupus@ximian.com>
2505         * Type.cs, MonoType.cs: implemented generic-specific methods.
2507 2003-07-29  Miguel de Icaza  <miguel@ximian.com>
2509         * Buffer.cs: Add new internal MemCopy call.
2511         Removed the above.
2513 Tue Jul 29 12:13:16 CEST 2003 Paolo Molaro <lupus@ximian.com>
2515         * Type.cs, MonoType.cs, ArgIterator.cs: pass the handles values
2516         to icalls, to avoid special cases in some call conventions.
2518 2003-07-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2520         * Enum.cs: added Serializable attribute.
2522 2003-07-25  Duncan Mak  <duncan@ximian.com>
2524         * AppDomain.cs (Equals):
2525         (GetHashCode): Removed because they do not need to be defined
2526         here.
2528 2003-07-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2530         * TypeLoadException.cs: removed unused fields. TypeName returns "" if
2531         cannot even get the type.
2533 2003-07-24  Miguel de Icaza  <miguel@ximian.com>
2535         * Type.cs: Added generics stubs.
2537 2003-07-23  Duncan Mak  <duncan@ximian.com>
2539         * Environment.cs (SpecialFolder): Added 'Desktop' and 'MyComputer'
2540         as values for NET_1_1.
2541         (GetFolderPath): Return the empty string ("") for values of
2542         SpecialFolder that have no corresponding equivalents in
2543         Linux. Return "$HOME/Desktop" for SpecialFolder.DesktopDirectory
2544         and "$HOME" for SpecialFolder.Personal.
2546         * IntPtr.cs (GetObjectData): Mark it as an interface
2547         implementation, instead of a public method.
2549         * Guid.cs (NewGuid): Remove MonoTODOAttribute.
2551         * TypeLoadException.cs (GetObjectData):
2552         Create stubs for the fields that are being serialized.
2554         * UIntPtr.cs: Removed erroneous CLSCompliantAttributes.
2556 2003-07-23  Lluis Sanchez Gual <lluis@ximian.com>
2557         
2558         * Enum.cs: Fixed enum formatting. For flag enums, if one of
2559           the flags is unnamed, ToString() returns the integer value.
2561 2003-07-22  Jerome Laban <jlaban@wanadoo.fr>
2563         * Guid.cs: Fixed ToString (), was producing incorrect string.
2565 2003-07-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2567         * AppDomainSetup.cs: fixed bug #46609.
2569 Thu Jul 17 17:28:27 CEST 2003 Paolo Molaro <lupus@ximian.com>
2571         * MonoType.cs: use an icall for IsPrimitiveImpl ().
2573 Thu Jul 17 15:23:17 CEST 2003 Paolo Molaro <lupus@ximian.com>
2575         * Guid.cs: faster ToString ().
2577 2003-07-15  Pedro Martínez Juliá  <yoros@wanadoo.es>
2579         * FloatingPointFormatter.cs: Few changes for get working Rotor
2580         tests.
2582 2003-07-13  Zoltan Varga  <vargaz@freemail.hu>
2584         * Type.cs (IsAssignableFrom): Implement this as an icall since the
2585         runtime already includes the neccessary logic.
2587 2003-07-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2589         * AppDomainSetup.cs: remove the "file://" prefix from ApplicationBase
2590         if it's present and get the full path for non-Uri paths.
2592 2003-07-2  Lluis Sanchez Gual <lluis@ximian.com>
2594         * DateTime.cs: Fixed formatting of fractions of second.
2596 2003-06-30  Zoltan Varga  <vargaz@freemail.hu>
2598         * Console.cs: Turn off buffering for the streams returned by
2599         OpenStandardOutput () and OpenStandardError () if the buffer size is 0.
2601 2003-06-28  Lluis Sanchez Gual <lluis@ximian.com>
2603         * Random.cs: Changed behavior of Random to match MS.NET. When Next is
2604           called with maxvalue==0 or minvalue==maxvalue, MS.NET internally generates
2605           a new random number (although it is not needed), while mono did not. 
2606           As a result, the sequence of random numbers could be different for the
2607           same seed.
2609 Thu Jun 26 16:06:35 CEST 2003 Paolo Molaro <lupus@ximian.com>
2611         * FloatingPointFormatter.cs: use dec_len2 as default precision.
2613 2003-06-26  Lluis Sanchez Gual <lluis@ximian.com>
2615         * DateTime.cs: Modified constructor. Check for valid value of TimeSpan must
2616           be done after the correspondig UTC offset has been applied.
2618 2003-06-26  Lluis Sanchez Gual <lluis@ximian.com>
2620         * Object.cs: Object must have the Serializable attribute.
2621         * DateTime.cs: Fixed _DoParse() so it correctly applies the utc offset
2622           to the resulting date. Also fixed _ToString so now correctly formates the
2623           UTC offset.
2625 Wed Jun 18 19:22:22 CEST 2003 Paolo Molaro <lupus@ximian.com>
2627         * Enum.cs: fix race in cache (bug#41841).
2629 Wed Jun 18 18:52:11 CEST 2003 Paolo Molaro <lupus@ximian.com>
2631         * FloatingPointFormatter.cs: if the precision is not specified, use
2632         the default precision for the data type.
2634 Wed Jun 18 18:11:30 CEST 2003 Paolo Molaro <lupus@ximian.com>
2636         * Array.cs: throw ArgumentOutOfRangeException in Copy if needed
2637         (patch by tum@veridicus.com (Thong (Tum) Nguyen)).
2639 2003-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2641         * MonoType.cs: don't throw nullref when the return type for a property
2642         is specified and the property doesn't have a get accessor.
2644 2003-06-10  Duncan Mak  <duncan@ximian.com>
2646         * Array.cs (CreateInstance): Fixed a typo. It should throw
2647         ArgumentNullException instead of ArgumentException.
2649 2003-06-09  Duncan Mak  <duncan@ximian.com>
2651         * Array.cs: Revert the last revert. I fixed it.
2652         (Sort): Put a try-catch block around qsort, and wrap whatever
2653         Exception we get into a InvalidOperationException.
2655 2003-06-08 Jackson Harper <jackson@latitudegeo.com>
2657         * Array.cs: Revert last patch, it broke some other functionality.
2658                 
2659 2003-06-08  Duncan Mak  <duncan@ximian.com>
2661         * Array.cs: Throw more exceptions. This fixes the errors we see
2662         from the Rotor testsuite.
2664         (CreateInstance): Throw ArgumentNullException when the input are
2665         null. Throw ArgumentOutOfRangeException when bounds + length is
2666         greater than Int32.MaxValue.
2667         (LastIndexOf): Throw ArgumentOutOfRangeException if index is outside
2668         the valid range of indices of array.
2669         (Sort): Throw InvalidOperationException when comparer is null and
2670         none of the elements in keys implements IComparable.
2672 2003-06-08  Duncan Mak  <duncan@ximian.com>
2674         * Array.cs (CreateInstance): Throw a TypeLoadException if the
2675         Length of the input array 'lengths' is greater than 255 so that we
2676         won't see the g_assert that is in mono_array_class_get in class.c.
2678         This fixes bug #44304.
2680 2003-06-05  Nick Drochak  <ndrochak@gol.com>
2682         * UnitySerializataionHolder.cs: Cleanups according to class status page
2684 Wed Jun 4 16:59:39 CEST 2003 Paolo Molaro <lupus@ximian.com>
2686         * ArgIterator.cs, TypedReference.cs, RuntimeArgumentHandle.cs,
2687         RuntimeTypeHandle.cs: implemented the needed stuff to handle
2688         vararg calls.
2690 2003-06-02  Sebastien Pouliot  <spouliot@videotron.ca>
2692         * Random.cs: New implementation based on Knuth ran3 to fix #43597.
2693         See http://www.library.cornell.edu/nr/bookcpdf/c7-1.pdf. Commited
2694         for Ben Maurer after review and testing.
2696 2003-05-28  Ben Maurer <bmaurer@users.sourceforge.net>
2697         
2698         * Array.cs: Added better argument checking to Array.Sort ()
2699         * DBNull.cs: Made the conversions throw like they do in MS.
2701 2003-05-24  Philip Van Hoof  <me@freax.org>
2703         * Math.cs: Add the MS.NET 1.1 methods (BigMul, DivRem, DivRem).
2705 2003-05-21  Pedro Martínez Juliá  <yoros@wanadoo.es>
2707         * FloatingPointFormatter.cs: Take care with the explicit precision
2708         and round the number to that precision.
2710         * DoubleFormatter.cs: Adapt to the two level precision (15 - 17).
2712         * SingleFormatter.cs: Adapt to the two level precision (7 - 8).
2714 2003-05-20  Philip Van Hoof <me@freax.org>
2716         * DateTime.cs (FromOADate, GetDateTimeFormats, ToOADate):
2717         Implemented.
2719 2003-05-20  Zoltan Varga  <vargaz@freemail.hu>
2721         * AppDomainSetup.cs: Added new field which is used to notify the
2722         runtime that the search path has changed.
2724 2003-05-18  Pedro Martínez Juliá  <yoros@wanadoo.es>
2726         * FloatingPointFormatter.cs: Fixed NullReferenceException bug I've
2727         introduced the last change I've done.
2729 2003-05-17  Ben Maurer  <bmaurer@users.sourceforge.net>
2731         * Array.cs: Fixed SyncRoot to behave like MS (return this). Removed 
2732         MonoTODO from SyncRoot (because fixed) and IsSynchronized (it was
2733         behaving correctly).
2734         
2735 2003-05-17  Pedro Martínez Juliá  <yoros@wanadoo.es>
2737         * FloatingPointFormatter.cs: Fixed little format mismatches.
2739 2003-05-16  Pedro Martínez Juliá  <yoros@wanadoo.es>
2741         * FloatingPointFormatter.cs: Fixed "-0" result emited.
2743 2003-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2745         * AppDomain.cs: Added null argument check in Load().
2746         * Activator.cs: fixed bug #39926.
2748 2003-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2750         * Enum.cs: fixed bugs #41522 and #42879.
2752 2003-05-12  Zoltan Varga  <vargaz@freemail.hu>
2754         * String.cs: Tweak IndexOf and LastIndexOf to match specification and
2755         undocumented MS behaviour.
2757 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2759         * Activator.cs: applied patch for bug #39926. Thanks to Jean Marc and
2760         Jaime.
2762 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2764         * String.cs: fixed bug #41411 and another similar problem in
2765         LastIndexOf (string).
2767 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2769         * String.cs: patch by Jean Marc <jean-marc.andre@polymtl.ca> that fixes
2770         bug #42695.
2772 2003-05-09  Zoltan Varga  <vargaz@freemail.hu>
2774         * MulticastDelegate.cs (GetInvocationList): Avoid ArrayList 
2775         construction if the delegate list only has one element.
2777 2003-05-01  Pedro Martínez Juliá  <yoros@wanadoo.es>
2779         * Environment.cs: Changed the method GetFolderPath because it must
2780         return at least a directory name (not null).
2782         * Convert.cs: In ToType, if the destination type is unknown, try to
2783         cast the value to object (then, the calling method will downcast it
2784         to the type it wants).
2786 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2788         * Enum.cs: fixed bug #41522.
2790 Tue Apr 29 13:58:16 CEST 2003 Paolo Molaro <lupus@ximian.com>
2792         * Enum.cs: protect with the lock also the lookup (bug #41841).
2794 Tue Apr 29 13:24:32 CEST 2003 Paolo Molaro <lupus@ximian.com>
2796         * MonoType.cs: allow a null name if InvokeMember is called with
2797         BindingFlags.CreateInstance set.
2799 2003-04-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2801         * Enum.cs: reverted my previous patch.
2803 2003-04-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2805         * Enum.cs: fixed bug #41841.
2807 2003-04-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2809         * MonoType.cs:
2810         (GetPropertyImpl): handle BindingFlags.IgnoreCase.
2812 2003-04-22  Pedro Martínez Juliá  <yoros@wanadoo.es>
2814         * FloatingPointFormatter.cs: Little fixes for get the same results
2815         as MS.NET and show a message when something goes wrong with the
2816         parser of Custom Formats.
2818 2003-04-22  Nick Drochak  <ndrochak@gol.com>
2820         * Double.cs (ToString):
2821         * Single.cs (ToString): Handle case where param is a CultureInfo.
2823 2003-04-18  Zoltan Varga  <vargaz@freemail.hu>
2825         * Object.cs ValueType.cs: Make the Object::GetHashCode() and 
2826         ValueType::Equals() icalls static non-virtual, so they can be called
2827         by the code in RuntimeHelpers.
2829 2003-04-18  Miguel de Icaza  <miguel@ximian.com>
2831         * Delegate.cs (operator ==): Do not crash if the second argument
2832         is null.  Bug fix submitted by Juan Cri.
2834 2003-04-18  Eduardo Garcia Cebollero <kiwnix@yahoo.es>
2836         * Array.cs: Deleted the exception in Array.Initialize(), it looks
2837         like the method do nothing for C#, is still a MonoTODO until
2838         we find a compiler that uses that.
2840 2003-04-14  Miguel de Icaza  <miguel@ximian.com>
2842         * Delegate.cs (Delegate): Seems like a typo, we were checking the
2843         a field rather than the argument 
2845         * MonoType.cs: Make GetNestedType an external method implementation.
2847 2003-04-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2849         * Enum.cs: fixed bug #41294.
2851 2003-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2853         * DateTime.cs: fixes bug #40910, part 2.
2855 2003-04-11  Dietmar Maurer  <dietmar@ximian.com>
2857         * String.cs (Equals): avoid the internal call, code cleanups
2859 2003-04-11  Alan Tam <Tam@SiuLung.com>
2861         * Convert.cs: fixed bug #41085.
2863 2003-04-10  Lluis Sanchez Gual <lluis@ideary.com>
2865         * AppDomain.cs: Added internal method for getting process guid.
2867 2003-04-09  Ville Palo <vi64pa@kolumbus.fi>
2869         * Array.cs: Little fix to compare () method.
2870         
2871 2003-04-09  Zoltan Varga  <vargaz@freemail.hu>
2873         * String.cs (Equals): Add trivial optimization.
2875 2003-04-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2877         * DateTime.cs: fixed bug #40910.
2879 2003-04-05  Miguel de Icaza  <miguel@ximian.com>
2881         * Console.cs: Make stderr, stdout and stdin use synchronized
2882         versions of the their readers/writers.
2884 2003-04-04  Dick Porter  <dick@ximian.com>
2886         * Version.cs: Make operator== and operator!= cope with null
2887         objects.  Didn't change operator<, operator<=, operator> or
2888         operator>= because its not meaningful to use those to compare
2889         against null, and throwing a NullReferenceException is probably
2890         the best thing to do there anyway.
2892         Fixes bug 40720.
2894 2003-04-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2896         * AppDomain.cs: fixed InvalidCastException.
2898 2003-03-30  Zoltan Varga  <vargaz@freemail.hu>
2900         * Array.cs (Copy): Call FastCopy() earlier to avoid the expensive
2901         type checks and let it decide whenever a fast copy is possible.
2903 2003-03-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2905         * MonoType.cs:
2906         (GetMethodImpl): support BindingFlags.IgnoreCase flag. Fixes bug #40322.
2908 2003-03-25  Zoltan Varga  <vargaz@freemail.hu>
2910         * Activator.cs (CreateInstance): Call GetConstructor with the right
2911         arguments so the nonPublic argument is handled correctly.
2913 2003-03-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2915         * Type.cs: fixed bug #40123.
2917 2003-03-22  Pedro Martínez Juliá  <yoros@wanadoo.es>
2919         * FloatingPointFormatter.cs: Fixed some bugs for get the same
2920         results than MS.NET. Added simple error recovering, now ToString
2921         will return a general format if there is any exception in the
2922         process of formatting. This make the library more robust while the
2923         formatters are refined.
2925 2003-03-16  Pedro Martínez Juliá  <yoros@wanadoo.es>
2927         * FloatingPointFormatter.cs: Added support for group separators.
2929 2003-03-16  Pedro Martínez Juliá  <yoros@wanadoo.es>
2931         * Single.cs:
2932         * Double.cs: Apply changes of .ToString methods.
2933         * SingleFormatter.cs:
2934         * DoubleFormatter.cs: Simple wrappers to FloatingPointFormatter.
2935         * FloatingPointFormatter.cs: New class. Implementation of double and
2936         single formatters. It is unified now and parametrized with precission
2937         values.
2939 2003-03-15  Lluis Sanchez Gual <lluis@ideary.com>
2941         * AppDomain.cs: fixes bugs #39380 and #39331.
2943 2003-03-06  Nick Drochak  <ndrochak@gol.com>
2945         * TimeSpan.cs (Negate): Throw exception when value is MinValue.
2947 2003-03-04  Dick Porter  <dick@ximian.com>
2949         * Single.cs:
2950         * Double.cs: Temporarily reverted the Double and Single ToString()
2951         change, because it broke nunit.
2954 2003-03-04  Pedro Martínez Juliá  <yoros@wanadoo.es>
2956         * Double.cs: Changed ToString method. Added NumberFormatInfo support
2957         with DoubleFormatter class.
2958         * Single.cs: Changed ToString method. Added NumberFormatInfo support
2959         with SingleFormatter class.
2960         * DoubleFormatter.cs: New class with Double formatting functions.
2961         * SingleFormatter.cs: New class with Single formatting functions.
2963 2003-03-03  Lluis Sanchez Gual <lluis@ideary.com>
2965         * Activator.cs: Added support for activation using activation attributes.
2966         * AppDomain.cs: Added internal method to get the default context from the runtime.
2968 2003-02-28  Elan Feingold  <efeingold@mn.rr.com>
2970         * DateTime.cs: FileTime is expressed in Universal time, and as such must
2971         be converted before subtracting the magic offset.
2972         * DateTime.cs: Strings in the format "2003-02-27T10:05:03-11:00" (note
2973         the timezone at the end) *must* be parsed by DateTime.Parse() for
2974         compatibility with Microsoft.
2976 2003-02-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2978         * Attribute.cs:
2979         * MonoCustomAttrs.cs: fix for the regression test failure (see bug
2980         #38238).
2982         * IntPtr.cs: added serialization .ctor
2984 2003-02-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2986         * AppDomain.cs: check for null in Unload and changed method name.
2988 2003-02-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2990         * MonoCustomAttrs.cs: fixed bug #38238.
2992 2003-02-17  Martin Baulig  <martin@ximian.com>
2994         * Exception.cs (Exception.ToString): Print a newline between the
2995         exception message and the stack trace.
2997 2003-02-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2999         * AppDomain.cs: implemented GetCurrentThreadId ().
3001 2003-02-14  Patrik Torstensson
3003         * Exception.cs: Fixed message output formating
3005 2003-02-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3007         * Int32.cs:
3008         (Parse): ignore everything after a \0 (MS parses: "512\0hola" as 512).
3010 2003-02-12  Miguel de Icaza  <miguel@ximian.com>
3012         * Type.cs: IsClass should return false for Enumerations
3014 2003-02-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3016         * MonoCustomAttrs.cs: return the correct array type in the short case.
3017         Fixes bug #37818.
3019 2003-02-08  Pedro Martíenz Juliá  <yoros@wanadoo.es>
3021         * Math.cs: Fix a few methods (like Round) and add with comments the
3022         new methods: BigMul and DivRem that were in ECMA specs.
3024 2003-02-07  Patrik Torstensson
3026         * Exception.cs: Fixed formating
3028 2003-02-05  Patrik Torstensson
3030         * AppDomain.cs: Partly fixed the unload method 
3031         
3032 2003-02-04  Patrik Torstensson
3034         * AppDomain.cs: Fixed lease issue with appdomain
3036 2003-02-04  Lluis Sanchez Gual <lluis@ideary.com>
3038         * MarshalByRefObject.cs: Implemented GetLifetimeService() and 
3039           InitializeLifetimeService().
3041 2003-02-03  Patrik Torstensson
3043         * AppDomain.cs: New internalcalls for handling domain/context switches
3044         * AppDomain.cs (CreateDomain): Return transparant proxy for appdomain object
3046 2003-02-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3048         * AppDomain.cs: implemented AppendPrivatePath, ClearPrivatePath
3049         and ClearShadowCopyPath and fixed GetType ().
3051         * Attribute.cs: clean up.
3053         * Console.cs: removed UnixConsoleEncoding. Use Default.
3055 2003-02-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3057         * Attribute.cs: fixed all IsDefined overloads. Gotta fix
3058         GetCustomAttributes later.
3060 2003-01-31  Patrik Torstensson
3062         * Buffer.cs: Changed access level of BlockCopyInternal
3064 Thu Jan 30 19:54:30 CET 2003 Paolo Molaro <lupus@ximian.com>
3066         * String.cs, IntegerFormatter.cs: use const where appropriate.
3068 2003-01-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3070         * MonoCustomAttrs.cs: fixed GetBase () for Type. Thanks to Zoltan for
3071         reporting.
3073 2003-01-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3075         * MonoCustomAttrs.cs: fixed shortcut in GetCustomAttributes.
3076         The argument ICustomAttributeProvider can be of other types different
3077         from Type. Handle it.
3079 2003-01-28  Zoltan Varga  <vargaz@freemail.hu>
3081         * DateTime.cs: fix FromFileTime so the time returned by 
3082         File::GetLastModificationTime etc. is in the correct timezone.
3084 2003-01-28  Patrik Torstensson
3085         * Exception.cs: reverted formating/endline changes (sorry guys)
3087 2003-01-28  Patrik Torstensson
3089         * MarshalByRefObject.cs: implemented GetObjectIdentity
3090         * Exception.cs: added support for remote exceptions
3092 2003-01-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3094         * DateTime.cs: fixed bug #37225.
3096 2003-01-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3098         * Enum.cs: Clone the arrays in GetNames and GetValues. Thanks lupus!
3100 2003-01-27  Zoltan Varga  <vargaz@freemail.hu>
3102         * AppDomain.cs: Added DoTypeResolve method which will be called by
3103         the runtime to raise TypeResolve events.
3105 2003-01-27  Duncan Mak  <duncan@ximian.com>
3107         * Enum.cs (ToType): Implement this using Convert.ToType.
3109 2003-01-21  Miguel de Icaza  <miguel@ximian.com>
3111         * Math.cs: Remove Pow's implementation body as it was wrong.  The
3112         C code does the right thing.  The code was trying to handle a
3113         number of cases, and that was incorrect.
3115 2003-01-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3117         * CharEnumerator.cs: fix to Current by crainaj@hotmail.com. Closes
3118         bug #37113.
3120 2003-01-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3122         * Enum.cs: added caching to GetInfo.
3124 2003-01-23  Dick Porter  <dick@ximian.com>
3126         * Environment.cs (System): Implemented ExitCode
3128 2003-01-23  Zoltan Varga  <vargaz@freemail.hu>
3130         * Type.cs (IsInstanceOfType): fixed regression caused by the change
3131         to IsSubclassOf().
3133 2003-01-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3135         * MonoType.cs: re-added lines that were removed in the previous commit.
3137 2003-01-16  Lluis Sanchez Gual <lsg@ctv.es>
3139         * Type.cs: corrected property IsSerializable. It should always return
3140         true for enums and delegates
3141         * MonoType.cs: added serialization support.
3142         * Delegate.cs: added serialization support.
3143         * DBNull.cs: added serialization support.
3144         * UnitySerializationHolder.cs: supports serialization of Assembly,
3145         MonoType and DBNull.
3146         * DelegateSerializationHolder.cs: added.
3148 2003-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3150         * Exception.cs: changed default message to match MS one.
3152 2003-01-12  Patrik Torstensson <totte@race-x-change.com>
3154         * String.cs: Fixed bug with CompareOrdinal
3156 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3158         * Enum.cs: implements IFormattable.
3160 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3162         * AppDomain.cs: implemented DoCallBack method.
3163         * MonoType.cs:
3164         (GetConstructorImpl): when the flag is BindingFlags.Default, set it to
3165         Public, Instance.
3167         NUnit2 tests start moving.
3169 2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3171         * Activator.cs: fixed bug #36052. Also added checks to avoid trying to
3172         instantiate an abstract class.
3174 2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3176         * Type.cs:
3177         (IsSubclassOf): return false when null. Use != instead of Equals.
3179 2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3181         * Type.cs: fixed IsSubclassOf. Patch from Zoltan Varga.
3183 Fri Jan 3 20:18:51 CET 2003 Paolo Molaro <lupus@ximian.com>
3185         * MonoType.cs: fixed Namespace property for nested types.
3187 Fri Jan 3 16:18:27 CET 2003 Paolo Molaro <lupus@ximian.com>
3189         * MonoCustomAttrs.cs: create properly typed arrays when returning
3190         arrays of attributes of a given type.
3192 Fri Jan 3 11:10:14 CET 2003 Paolo Molaro <lupus@ximian.com>
3194         * MonoType.cs: fixed MemberType property for nested types.
3196 2003-01-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3198         * String.cs: fixed bug #36209.
3200 2002-12-20 Lluis Sanchez Gual <lsg@ctv.es>
3202         * Activator.cs: implemented method GetObject.
3204 2002-12-28  Marcus Urban <mathpup@mylinuxisp.com>
3206         * Activator.cs: Since the documentation indicates the method
3207         either succeeds or throws one of the listed exceptions, we weren't
3208         expecting that CreateInstance might be returning null.
3210         For more information on the bug, see http://bugs.ximian.com/show_bug.cgi?id=36109
3212 2002-12-20 Lluis Sanchez Gual <lsg@ctv.es>
3214         * MarshalByRefObject.cs: implemented CreateObjRef.
3216 2002-12-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3218         * DateTime.cs: fixed bug #30076.
3219         * TimeZone.cs: provide the parameter name in a exception.
3221 2002-12-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3223         * DecimalFormatter.cs: fixed bug #35560.
3225 Wed Dec 4 16:04:28 CET 2002 Paolo Molaro <lupus@ximian.com>
3227         * Type.cs: implemented GetInterfaceMap (needs an updated runtime).
3229 2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3231         * Array.cs: use Object.Equals (obj, obj) to compare objects to avoid
3232         nulls. Fixes #34909.
3234 2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3236         * AppDomain.cs: DoAssemblyResolve now returns when one of the handlers
3237         returns a non-null assembly.
3239 2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3241         * MulticastDelegate.cs: make GetInvocationList work for more than 1
3242         delegate.
3244 2002-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3246         * MulticastDelegate.cs: implemented GetInvocationList. I'll check later
3247         if this is the correct order of invocation.
3249 2002-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3251         * Type.cs: changed the signature of internal_from_name. Modified
3252         the overloads of GetType to use it and check the typeName argument.
3253         Implemented FindInterfaces.
3255 2002-11-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3257         * MarshalByRefObject.cs: undo latest changes. It breaks the build by
3258         some obscure reasons (try make -f makefile.gnu using a corlib which has
3259         the modified version).
3261 2002-11-26  Miguel de Icaza  <miguel@ximian.com>
3263         * String.cs (Concat): Reduce the number of compares required. 
3265 Mon Nov 18 17:54:22 CET 2002 Paolo Molaro <lupus@ximian.com>
3267         * Activator.cs: throw a MissingMethodException if the default
3268         constructor is not found in CreateInstance.
3270 2002-11-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3272         * String.cs:
3273         (Equals (str, str)): use 'as' instead of casting to object.
3274         (Equals (obj)): check the length of the strings (until now,
3275         "Hello".Equals ((object) "Hellow World!) was true!).
3277 2002-11-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3279         * MonoType.cs: implemented GetEvent (name, flags).
3281 2002-11-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3283         * AppDomain.cs: implemented a couple of methods called from the runtime
3284         to fire AssemblyLoad and AssemblyResolve events.
3286 2002-10-31  Dick Porter  <dick@ximian.com>
3288         * Environment.cs: MonoIO methods now have an error parameter
3290 2002-10-29  Zoltan Varga  <vargaz@freemail.hu>
3292         * Enum.cs: Added support for whitespaces in Enum:Parse().
3294 2002-10-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3296         * Type.cs: fixed GetProperty (string, Type []) and removed get_property
3297         internal call. Closes bug #32992.
3299 2002-10-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3301         * Exception.cs: display the inner exception, if any, in ToString ().
3303 2002-10-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3305         * Environment.cs: fixed StackTrace property.
3307 2002-10-16  Nick Drochak  <ndrochak@gol.com>
3309         * Enum.cs (Parse): Then fix the code so that it works too.
3311 2002-10-15  Nick Drochak  <ndrochak@gol.com>
3313         * Enum.cs (Parse): Use unsigned casts to avoid compiler warnings.
3315 2002-10-12  Nick Drochak  <ndrochak@gol.com>
3317         * IntegerFormatter.cs: Fix compiler warnings.
3319 2002-10-11  Tim Haynes <thaynes@openlinksw.com>
3321         * Type.cs (GetConstructors): Use the correct flags.
3323 2002-10-09  Nick Drochak  <ndrochak@gol.com>
3325         * IntegerFormatter.cs: Suppress insignificant leading zeros
3327 Fri Sep 27 15:06:29 CEST 2002 Paolo Molaro <lupus@ximian.com>
3329         * MonoCustomAttrs.cs: applied patch by "Si Jingnan"
3330         <stonewell@21cn.com> to return also derived types.
3332 2002-09-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3334         * Activator.cs: little fix in CreateInstance (Type, bool).
3336 2002-09-19  Duncan Mak  <duncan@ximian.com>
3338         * Array.cs (CopyTo): Revert back to 1.40, this is stopping
3339         I18N/Common from building right now.
3341 2002-09-19  Nick Drochak  <ndrochak@gol.com>
3343         * Array.cs (CopyTo): Account for Object type and base (primitive) types
3344         * Type.cs (IsAssignableFrom): return false for a null parameter
3346 2002-09-19  Nick Drochak <ndrochak@gol.com>
3348         * Array.cs (CopyTo): Check that source type can be cast automatically
3349         to the destination type.
3351 2002-09-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3353         * Type.cs: implemented IsAssignableFrom, DefaultBinder and
3354         GetDefaultMembers.
3356 2002-09-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3358         * Char.cs: implemented ToString (char)
3359         * IntegerFormatter.cs: made it internal.
3361 2002-09-13  Nick Drochak  <ndrochak@gol.com>
3363         * Enum.cs (Format): handle the "d" format for both signed and unsigned
3364         underlying types.
3366 2002-09-12  Dick Porter  <dick@ximian.com>
3368         * UIntPtr.cs: Remove the [StructLayout(LayoutKind.Auto)]
3369         attribute, as there doesn't appear to be any struct
3370         layout-depending code here (and corcompare says it should be
3371         LayoutKind.Sequential)
3373         * Decimal.cs: Stub out missing methods, add
3374         [DecimalConstantAttribute] to the constant fields (as shown by
3375         corcompare).
3377         * LocalDataStoreSlot.cs: 
3378         * Environment.cs: 
3379         * Char.cs: 
3380         * Array.cs: Stub out missing methods.
3382         * TypedReference.cs: 
3383         * ArgIterator.cs: Stub out
3385         * AppDomainSetup.cs: 
3386         * AppDomain.cs: Stub out missing methods, add missing
3387         ClassInterface(ClassInterfaceType.None) attribute.
3389 2002-09-12  Nick Drochak  <ndrochak@gol.com>
3391         * Double.cs (ToString): Throw exception when "X" format is passed in.
3393 Wed Sep 11 15:26:34 CEST 2002 Paolo Molaro <lupus@ximian.com>
3395         * MonoType.cs: implemented Module property.
3397 Wed Sep 11 12:49:51 CEST 2002 Paolo Molaro <lupus@ximian.com>
3399         * MonoType.cs, Type.cs: implemented InvokeMember.
3401 Wed Sep 11 11:06:43 CEST 2002 Paolo Molaro <lupus@ximian.com>
3403         * Delegate.cs: check the type passed to CreateDelegate is a Delegate
3404         type. Check the method signature matches.
3406 Sat Sep 7 10:16:52 CEST 2002 Paolo Molaro <lupus@ximian.com>
3408         * RuntimeMethodHandle.cs: implemented GetFunctionPointer().
3410 2002-09-06  Miguel de Icaza  <miguel@ximian.com>
3412         * Console.cs: Specify an encoder, otherwise we will get the UTF8
3413         encoder that by default emits the byte markers.
3415 Fri Sep 6 20:14:04 CEST 2002 Paolo Molaro <lupus@ximian.com>
3417         * Delegate.cs: look also for non-public methods until we have the
3418         security checks in place.
3420 Fri Sep 6 12:20:06 CEST 2002 Paolo Molaro <lupus@ximian.com>
3422         * MonoType.cs: consider also the full name in GetInterface.
3424 Fri Sep 6 12:11:28 CEST 2002 Paolo Molaro <lupus@ximian.com>
3426         * MonoType.cs: implemented GetMembers, GetConstructorImpl and
3427         GetMethodImpl using the binder.
3428         * Type.cs: GetConstructorImpl/GetConstructor fixes.
3430 2002-09-03  Jonathan Pryor <jonpryor@vt.edu>
3431         * Enum.cs: Get rid of warning CS0162.
3433 2002-09-04  Miguel de Icaza  <miguel@ximian.com>
3435         * Double.cs, Single.cs, Char.cs, Boolean.cs: Use internal for the
3436         actual value instead of public.
3438         * LocalDataStoreSlot.cs: Make constructor internal.
3440         * Int16.cs, UInt16.cs, Int32.cs, UInt32.cs, Int64.cs, UInt64.cs,
3441         SByte.cs, Byte.cs, Char.cs: Use internal for the actual value
3442         instead of public.
3444 2002-09-03  Jonathan Pryor <jonpryor@vt.edu>
3445         * Enum.cs: Fixed Enum.Format so that the "x" format specifier would work
3446                    properly.
3448 2002-08-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3450         * DateTime.cs: fixed buglet.
3452 Tue Aug 27 16:39:47 CEST 2002 Paolo Molaro <lupus@ximian.com>
3454         * MonoType.cs: speedup access to common data.
3456 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3458         * Double.cs: implemented TryParse.
3460         * Math.cs: PowImpl is now private.
3462         * MissingFieldException.cs: implemented Message.
3464         * RuntimeMethodHandle.cs: stubbed GetFunctionPointer.
3466         * _AppDomain.cs: Uncommented ToString.
3468 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3470         * Type.cs:
3471         (IsValueTypeImpl): it's virtual, not abstract. Implemented.
3473 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3475         * ArgumentException.cs: use the field instead of the property for
3476         param_name.
3478         * ArgumentOutOfRangeException.cs: modified Message.
3480         * DateTime.cs: 
3481         (_DoParse): throw out of range exception for year. Removed check
3482         for month (it's done in the constructor).
3484 2002-08-21  Miguel de Icaza  <miguel@ximian.com>
3486         * Environment.cs: Implemented OSVersion property.
3488 2002-08-21  Dietmar Maurer  <dietmar@ximian.com>
3490         * Exception.cs: set stack_trace to null
3492 Wed Aug 21 13:02:20 CEST 2002 Paolo Molaro <lupus@ximian.com>
3494         * AppDomain.cs: implemented ToString().
3496 2002-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3498         * AppDomain.cs: securityInfo can be null in CreateDomain.
3500 2002-08-19  Dick Porter  <dick@ximian.com>
3502         * MonoType.cs: Add a space before the Assembly name in
3503         AssemblyQualifiedName (needed for resource files so the MS runtime
3504         can load types)
3506 2002-08-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3508         * AppDomain.cs: parameter name when throwing ArgumentNullException.
3510         * ArgumentException.cs: modified Message to do what MS does.
3512         * ArgumentNullException.cs: don't use {0} in message.
3514         * Exception.cs: use Message property in ToString ().
3516 2002-08-14  Cesar Octavio Lopez Nataren <cesar@ciencias.unam.mx>
3518         * WeakReference.cs: Changed the constructor and GetObjectData
3519         method needed for ISerializable implementation in order to be
3520         compatible with SOAP generated by MS.
3522 Wed Aug 14 17:34:07 CEST 2002 Paolo Molaro <lupus@ximian.com>
3524         * MonoType.cs, Type.cs: DeclaringType/ReflectedType fixes.
3526 2002-08-12  Dietmar Maurer  <dietmar@ximian.com>
3528         * Exception.cs (ToString): changed the ouput format.
3530 2002-08-07  Dietmar Maurer  <dietmar@ximian.com>
3532         * MonoType.cs: moved get_method icall to this class, we can
3533         remove it as soon someone provides a full featured GetMethodImpl.
3535         * Type.cs: use GetMethodImpl everywhere.
3537         * Delegate.cs: new CreateDelegate implementations.
3539 2002-08-06  Tim Coleman <tim@timcoleman.com>
3540         * MonoType.cs: 
3541                 Fix bug #28582.  Now checks parameters for properties
3542                 in GetPropertyImpl.
3544 2002-08-04  Nick Drochak  <ndrochak@gol.com>
3546         * Buffer.cs: Throw correct exception in GetByte() and SetByte().
3548 2002-08-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3550         * String.cs:
3551         (FormatSpecifier): allow white space between the comman and the width
3552         specifier.
3554 2002-07-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3556         * Int32.cs:
3557         * Int64.cs:
3558         * UInt32.cs:
3559         * UInt64.cs: fixed bug #28050. May be a MS bug?
3561 Thu Jul 18 14:47:03 CEST 2002 Paolo Molaro <lupus@ximian.com>
3563         * MonoType.cs: fix IsArrayImpl.
3565 2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3567         * String.cs: make ToLower (culture) and ToUpper (culture) use the
3568         default ToLower and ToUpper and don't throw NotImplemented.
3570 Sat Jul 13 15:09:01 CEST 2002 Paolo Molaro <lupus@ximian.com>
3572         * Type.cs: make GettTypeCode an icall. Test implementation of
3573         GetMember().
3575 2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3577         * AppDomainSetup.cs: implemented LoaderOptimization.
3579 2002-07-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3581         * Activator.cs: some more intermediate results checking in
3582         in CreateInstance and CreateInstanceFrom and use GetConstructor and
3583         Invoke only with Type [] until the other overloaded versions work.
3585 2002-07-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3587         * Activator.cs: reformatted. Implemented CreateInstance* methods
3588         that return ObjectHandle.
3590         * AppDomain.cs: implemented CreateInstance*AndUnwrap methods.
3592 2002-07-03  Nick Drochak  <ndrochak@gol.com>
3594         * Decimal.cs (Divide): Short cut the case where the dividend is 0 (and
3595         the divisor is not) and avoid the icall, which seems to have a bug.
3597 2002-07-03  Nick Drochak  <ndrochak@gol.com>
3599         * Double.cs (CompareTo): Correctly handle the case where the instance
3600         is NaN. Also return 0 if the values are equal.
3602 2002/07/03  Nick Drochak <ndrochak@gol.com>
3604         * MissingMethodException: Add missing Message property
3605         * MissingMemberException: Add missing Message property
3607 2002-06-30  Nick Drochak  <ndrochak@gol.com>
3609         * Double.cs (CompareTo): Just see which is bigger.  Don't use the
3610         subtraction trick, it doesn't work when the values have a diference of
3611         less than one.
3613         * Single.cs (CompareTo): same
3615 2002-06-27  Martin Baulig  <martin@gnome.org>
3617         * UIntPtr.cs (UIntPtr.Zero): Use an explicit `u' suffix in the
3618         constructor argument.  [FIXME: The implicit conversion to an
3619         unsigned integer doesn't work with mcs.]
3621 2002-06-26  Martin Baulig  <martin@gnome.org>
3623         * DecimalFormatter.cs: Removed MSTEST stuff, use `System',
3624         not `S = System'.  This file now compiles with mcs.
3626         * String.cs: Removed the already ifdef-outed __arglist Concat function
3627         to make it compile with mcs.
3629 2002-06-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3631         * IntegerFormatter.cs:
3632         (FormatParse.FormatNumber): fixed custom format for negative numbers.
3634 2002-06-21  Martin Baulig  <martin@gnome.org>
3636         * Double.cs: Replace the private `enum State' with constants since this
3637         will avoid some bigger headaches in mcs.
3639 Thu Jun 20 17:51:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
3641         * TimeSpan.cs: do not pollute the namespace with the
3642         System.Parser name.
3644 2002-06-18  Nick Drochak  <ndrochak@gol.com>
3646         * ArgumentException.cs: Use the message given in the constructor when
3647         accessing the Message property.  Thanks to Dietmar for the help with 
3648         "base".
3650 2002-06-17  Dietmar Maurer  <dietmar@ximian.com>
3652         * MonoType.cs: GetField is now a InternalCall
3654 2002-06-13  Nick Drochak  <ndrochak@gol.com>
3656         * DateTime.cs: (Parse): Accept dates that have no hour,min,sec. in the
3657         sortable format(s), e.g. "2002-02-25"
3659 2002/06/12  Nick Drochak <ndrochak@gol.com>
3661         * Random.cs (Next): Fix math error.  Return a number within the range.
3663 2002-06-12  Nick Drochak  <ndrochak@gol.com>
3665         * String.cs (IndexOf): Return -1 if start index is equal to string
3666         length.
3668 2002-06-10  Duncan Mak  <duncan@ximian.com>
3670         * Convert.cs (ToDouble): Remove rounding in ToDouble (float).
3671         (ToType): Added null field in conversionTable to avoid
3672         IndexOutOfRangeException. Changed what exceptions we throw to match
3673         the spec.
3674         
3675 2002-06-11  Nick Drochak  <ndrochak@gol.com>
3677         * Int64.cs (Parse): Added unique strings to the messages where we throw
3678         a FormatException. Needed these to debug, so just left them in since
3679         they might be useful later. Fixed Currency parsing where we weren't
3680         looking at CurrencyDecimalSeparator, etc.
3682 2002-06-09  Lawrence Pit  <loz@cable.a2000.nl>
3684         * DateTime.cs: fixes to pass tests M0 to M6:
3685                 if yy pattern then year values >= 30 are in 20th century
3686                 rfc1123 pattern is always in GMT, therefor useutc must be false
3687         made GetNow() internal static so it can be called from TimeZone.
3688         * TimeZone.cs: removed dependency on year 2002 from initialization of 
3689         current timezone.
3691 2002-06-09  Duncan Mak  <duncan@ximian.com>
3693         * Convert.cs (ToType): Rearranged what Exceptions we throw to
3694         match MS behavior.
3696 2002-06-08  Duncan Mak  <duncan@ximian.com>
3698         * Decimal.cs: Added support for the IConvertible interface.
3700 2002-06-08  Martin Baulig  <martin@gnome.org>
3702         * Enum.cs (IsDefined): `value' may be of the enum's type itself, it
3703         doesn't necessarily need to be of the enum's underlying type.
3705 2002/06/07  Nick Drochak <ndrochak@gol.com>
3707         * String.cs: Add [Serializable] to class
3708         * SByte.cs (Parse): Add [CLSCompliant(false)] to all the overloads
3710 2002-06-04  Nick Drochak  <ndrochak@gol.com>
3712         * Double.cs (Parse): Recognize the group separator string, but still we
3713         don't check the format for the proper number of digits between
3714         separators. Also throw OverflowException when we get Pos or Neg
3715         Infinity from runtime.
3717 2002-06-03  Duncan Mak  <duncan@ximian.com>
3719         * Convert.cs (ToDouble): Fixed ToDouble (byte value).
3721 Mon Jun 3 12:18:18 CEST 2002 Paolo Molaro <lupus@ximian.com>
3723         * Type.cs: fixed GetTypeCode.
3725 2002-06-02  Duncan Mak  <duncan@ximian.com>
3727         * Convert.cs (ToInt16): use Convert.ToInt16 (int) instead of a direct
3728         cast from an int so that we throw OverFlowException correctly.
3729         
3730         (ToInt64): Use a new 64bit version of ConvertToBase.
3731         
3732         (ConvertToBase): Add checks for overflow (checks Int32.MinValue
3733         and Int32.MaxValue).
3735         (ConvertFromBase64): New 64-bit version of ConvertFromBase.
3737 2002-06-02  Nick Drochak  <ndrochak@gol.com>
3739         * Convert.cs (ToSByte): Check for special value.
3740         * Single.cs (Parse): 
3741         * UInt16.cs (Parse):
3742         * UInt32.cs (Parse): Throw OverflowException if negative
3744 2002-06-02  Duncan Mak  <duncan@ximian.com>
3746         * Convert.cs (DBNull): Point it to DBNull.Value.
3747         (IsDBNull): Instead of checking typecodes, just check to see if
3748         it's the same as the DBNull field.
3750 2002-06-02  Nick Drochak  <ndrochak@gol.com>
3752         * Convert.cs (ConvertFromBase): Detect bad digits correctly.
3754 2002-06-02  Duncan Mak  <duncan@ximian.com>
3756         * Char.cs (Parse): Simplify the Exception handling.
3758         * Convert.cs (ToDecimal): Remove call to Math.Round () when
3759         converting from a float.
3761 2002-05-30  Martin Baulig  <martin@gnome.org>
3763         * MonoType.cs (GetInterface): Implemented.
3765 Thu May 23 17:17:28 CEST 2002 Paolo Molaro <lupus@ximian.com>
3767         * Activator.cs: implemented CreateInstance ().
3769 2002-05-22  Duncan Mak  <duncan@ximian.com>
3771         * Convert.cs (ConvertToBase): Added new 64bit version.
3772         (BuildConvertedString64): New 64bit version of
3773         BuildConvertedString.
3775         This fixes bug 25068.
3777         (ConvertFromBase): Added additional test for checking if the
3778         digits are valid. Thanks to Miguel for coming up with this test.
3780         This fixes bug 25071.
3781         
3782 2002-05-21  Duncan Mak  <duncan@ximian.com>
3784         * Convert.cs (ToType): Rearranged to fit the new layout of
3785         conversionTable.
3787         (conversionTable): Rearranged to fit the layout of the
3788         System.TypeCode enum.
3790         This should fix bug 25075.
3791         
3792 2002-05-21  Duncan Mak  <duncan@ximian.com>
3794         * Convert.cs (ToString): Fixed the ToString methods. Previously I had
3795         mixed up the two code paths, one for converting to a specific base
3796         (this case), another from converting from a foreign base to base10
3797         (used by ToInt16|32|64 (string, int)). This fixes bug 25068.
3799         * Convert.cs (ToByte)
3800         (ToSByte): Fixed bug 25074. Added more bits to ConvertFromBase so
3801         that we won't confuse FormatException with OverflowException.
3803 2002-05-22  Lawrence Pit  <loz@cable.a2000.nl>
3805         * Environment.cs: CommandLine missed spaces between arguments.
3806         Implemented StackTrace. Returning MachineName in UserDomainName
3807         instead of null.
3808         
3809 Tue May 21 17:25:49 CEST 2002 Paolo Molaro <lupus@ximian.com>
3811         * MonoCustomAttrs.cs: handle inherit argument.
3813 2002-05-21  Nick Drochak  <ndrochak@gol.com>
3815         * Math.cs (Pow): Change icall method name and insert parameter
3816         checks in for infinities and NaN.
3818 2002-05-13  Miguel de Icaza  <miguel@ximian.com>
3820         * Double.cs (Parse): Reimplement by cleaning up the string first,
3821         and then passing to strtof in the mono runtime.
3823         * Single.cs (Parse): Use the Double implementation and cast to
3824         float. 
3826 2002-05-21  Nick Drochak  <ndrochak@gol.com>
3828         * Math.cs 
3829                 (Ceiling): Check for "special" values
3830                 (Floor): Check for "special" values
3831                 (Round): Fix off-by-one error on decimal shifting
3833 2002-05-20  Lawrence Pit  <loz@cable.a2000.nl>
3835         * DateTime.cs: ToString () using "G" format specifier 
3837 2002-05-19  Martin Baulig  <martin@gnome.org>
3839         * Convert.cs (FromBase64CharArray): Do correct exception handling.
3841 2002-05-19  Martin Baulig  <martin@gnome.org>
3843         * Convert.cs (FromBase64CharArray): Convert the char array using
3844         System.Text.UTF8Encoding, not UnicodeEncoding (which is UTF-16) to
3845         a byte array.
3847 2002-05-17  Miguel de Icaza  <miguel@ximian.com>
3849         * MonoType.cs: Style changes.
3851         * Type.cs: Style changes.
3853 2002-05-16  Piers Haken <piersh@friksit.com
3855         * UInt64.cs: fix declaration of IConvertible.To* overrides.
3857 2002-05-16  Nick Drochak  <ndrochak@gol.com>
3859         * BitConverter.cs (ToString): Add parameter check for invalid start 
3860         index.
3862         * Console.cs: Use AutoFlush on the StreamWriter for stdin and stdout
3863         now that StreamWriter uses buffering
3865 2002-05-14  Miguel de Icaza  <miguel@ximian.com>
3867         * Double.cs: Oops.  Also handle exponents without finding a dot.
3869 2002-05-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3871         * ChangeLog: removed empty entry at the top of the file.
3873         * Int32.cs: made static functions used by Parse internal.
3875         * Int64.cs:
3876         * UInt32.cs:
3877         * UInt64.cs: removed static fucntions used by Parse and use the ones
3878         in Int32.cs
3880 2002-05-12  Daniel Morgan <danmorg@sc.rr.com>
3882         * IServiceProvider.cs: added using System
3884 2002-05-09  Daniel Morgan <danmorg@sc.rr.com>
3886         * Single.cs: copied ToString() and Parse() methods from 
3887         Double to Single and modified a tiny bit for Single.  
3888         There is still a FIXME for Double and Single about
3889         passing the format and provider info to the icall too.
3891 2002-05-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3893         * Int32.cs:
3894         * Int64.cs:
3895         * UInt32.cs:
3896         * UInt64.cs (Parse): don't use Char.IsNumber to test for hex digits.
3897         Don't use a delegate to test for valid digits.
3899 2002-05-01  Duncan Mak  <duncan@ximian.com>
3901         * Convert.cs: 
3902         * Math.cs: Added missing CLSCompliant attributes where necessary.
3903         
3904 2002-04-30  Duncan Mak  <duncan@ximian.com>
3906         * ArgumentException.cs (Message): 
3907         * ArgumentOutOfRangeException.cs (Message): Added.
3909 2002-04-30  Nick Drochak  <ndrochak@gol.com>
3911         * MonoType.cs: Remove unused variable and eliminate a compiler warning.
3913 Mon Apr 29 15:32:02 CEST 2002 Paolo Molaro <lupus@ximian.com>
3915         * Environment.cs: support for Exit(), CommandLine, CommandLineArgs ().
3917 2002-04-28  Duncan Mak  <duncan@ximian.com>
3919         * DivideByZeroException.cs: Added missing serialization constructor.
3921         * UnauthorizedAccessException.cs: Added the missing Serializable attribute.
3923 2002-04-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3925         * Math.cs: fix Floor () and Round (). Closes #23960.
3927 2002-04-27  Nick Drochak  <ndrochak@gol.com>
3929         * Array.cs (IList.Contains): Should throw a RankException if this is 
3930         called on a Rank > 1 array. Not in the docs, but this is what the 
3931         MS.NET does.
3933 2002-04-26  Duncan Mak  <duncan@ximian.com>
3935         * MissingMemberException.cs: Made the message variable 'protected'
3936         instead of 'private', so that we can see it in
3937         MissingMethodException and MissingFieldException.
3939         * MissingFieldException.cs:
3940         * MissingMethodException.cs: Added missing (string, string)
3941         constructor, and also the Message property.
3943 2002-04-26  Martin Baulig  <martin@gnome.org>
3945         * Enum.cs: Implemented the IConvertible methods.
3947 2002-04-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3949         * SByte.cs: little change in Parse (string) to avoid incorrect
3950         OverflowException thrown (reported by nickd).
3952 2002-04-22  Miguel de Icaza  <miguel@ximian.com>
3954         * ValueType.cs: Add Serializable attribute.
3956         * String.cs: ifdef-out out the __arglist Concat function until I
3957         add support for that to mcs.
3959 2002-04-24      Patrik Torstensson <patrik.torstensson@labs2.com>
3961         * AppDomain.cs (GetValue): usage of the correct icall (bug)
3963 Wed Apr 24 21:15:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
3965         * GC.cs: implement most of the methods as icalls.
3967 2002-04-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3969         * DecimalFormatter.cs (ToString): return correct value when the
3970         decimal number is 0.
3972 2002-04-24      Patrik Torstensson <patrik.torstensson@labs2.com>
3973         
3974         * Type.cs (GetProperty): fixed call syntax (needs an empty array not null)
3975         * MonoType.cs (GetPropertyImpl) : basic implementation (ignores types, bindingAttr, modifiers)
3977 2002-04-24  Nick Drochak  <ndrochak@gol.com>
3979         * Double.cs (Parse): Handle case where there are no digits before the 
3980         decimal point, such as ".1".
3982 2002-04-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3984         * Int32.cs:
3985         * UInt32.cs:
3986         * Int64.cs:
3987         * UInt64.cs: fixed bug #23738 (hex numbers parsed wrong).
3989 2002-04-23      Patrik Torstensson <patrik.torstensson@labs2.com>
3991         * String.cs (Split): fixed invalid split of count 0 and 1.
3992         
3993 2002-04-23      Patrik Torstensson <patrik.torstensson@labs2.com>
3994         
3995         * String.cs (LastIndexOf): fixed argument checking.
3996         * String.cs (Equals): made internal for performace.
3998 2002-04-23  Nick Drochak  <ndrochak@gol.com>
4000         * String.cs (Join): check argument and throw exception if needed
4002 2002-04-23  Nick Drochak  <ndrochak@gol.com>
4004         * String.cs (StartsWith): check argument and throw exception if needed
4006 2002-04-22  Nick Drochak  <ndrochak@gol.com>
4008         * String.cs (IndexOfAny): check arguments and throw exceptions as
4009         neccessary.  ALso remove some debug WriteLines.
4011 2002-04-20  Dietmar Maurer  <dietmar@ximian.com>
4013         * String.cs: use internal constructors
4014         buf fix in Concat.
4016 Thu Apr 18 17:16:15 CEST 2002 Paolo Molaro <lupus@ximian.com>
4018         * MonoType.cs: make GetElementType its own icall.
4020 2002-04-18  Nick Drochak <ndrochak@gol.com>
4022         * String.cs: Modified file. Re-add methods needed by the unit tests.
4024 Thu Apr 18 12:38:32 CEST 2002 Paolo Molaro <lupus@ximian.com>
4026         * String.cs: some code speedups and restored GetTypeCode().
4028 2002-04-17      Patrik Torstensson <patrik.torstensson@labs2.com>
4030         * String.cs: New implementation using internal calls.
4031         
4032 2002-04-16  Nick Drochak  <ndrochak@gol.com>
4034         * DecimalFormatter.cs: Trim off excess null characters from the string
4035         that decimal2string gives back.
4037 2002-04-16  Nick Drochak  <ndrochak@gol.com>
4039         * String.cs (SubString): revert my change.  I can't reproduce the
4040         problem anymore.
4042 2002-04-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4044         * Attribute.cs: added GetHashCode and Equals.
4046 2002-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4048         * Enum.cs: little improvements to Format ().
4050 Thu Apr 11 12:28:13 CEST 2002 Paolo Molaro <lupus@ximian.com>
4052         * String.cs: internalcall GetHashCode().
4053         * Array.cS: optimize access to elements.
4055 Wed Apr 10 21:20:19 CEST 2002 Paolo Molaro <lupus@ximian.com>
4057         * String.cs: make IndexOfAny() use an internalcall.
4059 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4061         * Int32.cs:
4062         * UInt32.cs:
4063         * Int64.cs: 
4064         * UInt64.cs: fixed error when testing for validity of flags.
4066 2002-04-11  Nick Drochak  <ndrochak@gol.com>
4068         * Double.cs: Use an internal call for ToString(). This is just a simple
4069         implementation to get away from throwing a NotImplementedException.
4071 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4073         * Int32.cs:
4074         * UInt32.cs:
4075         * Int64.cs: 
4076         * UInt64.cs: changed Type.GetType () by typeof (), as suggested by
4077         lupus.
4079         * Int32.cs:
4080         * Int64.cs: throw an OverFlowException when parsing a string 
4081         containing a dot followed by any non '0' number.
4083 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4085         * Byte.cs:
4086         * UInt16.cs:
4087         * UInt32.cs:
4088         * UInt64.cs: added complex Parse ().
4090 2002-04-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4092         * SByte.cs:
4093         * Int16.cs:
4094         * Int32.cs:
4095         * Int64.cs: added complex Parse ().
4097 2002-04-09  Nick Drochak  <ndrochak@gol.com>
4099         * Array.cs (BinarySearch): Add checks on paramters before using them
4100         and throw exceptions as needed.
4102         * Enum.cs (Format): Check if [Flags] is applied to enum and convert
4103         "G" format to "F" if so.
4105 Tue Apr 9 13:12:09 CEST 2002 Paolo Molaro <lupus@ximian.com>
4107         * MonoCustomAttrs.cs: return arrays of type Attribute[]
4108         instead of object[].
4110 2002/04/09  Nick Drochak <ndrochak@gol.com>
4112         * String.cs (Substring): Copy only non-null characters to the new
4113         string.
4115 2002-04-09  Nick Drochak  <ndrochak@gol.com>
4117         * IntegerFormatter.cs: Don't use a format character to indicate a
4118         custom format was passed in. It was using 'z' to indicate a custom
4119         format, but really it should throw a format exception if the user
4120         tries to use "z" as the format string. Now it does.
4122         * Activator.cs: New File.
4124 2002-04-08  Nick Drochak  <ndrochak@gol.com>
4126         * Enum.cs (ToString): Big ugly fix for the case where [Flags] is
4127         applied to an enum. Need to handle the different possible integer
4128         types of an enum somehow.  Can anyone say generics?
4130 Mon Apr  8 06:22:42  2002 Piers Haken <piersh@friskit.com>
4132         * Convert.cs: switched the To*(object) methods to use
4133         IConvertible directly instead of calling ChangeType
4135 Sat Apr 6 20:08:41 CEST 2002 Paolo Molaro <lupus@ximian.com>
4137         * ValueType.cs: make Equals() an internalcall.
4139 Fri Apr 5 15:38:54 CEST 2002 Paolo Molaro <lupus@ximian.com>
4141         * Type.cs: also look for nested types in FindMembers.
4142         * MonoType.cs: make GetNestedTypes() an internalcall.
4144 2002-04-05  Nick Drochak  <ndrochak@gol.com>
4146         * Enum.cs (Parse): Handle different underlying types.
4148 2002/04/04 Nick Drochak <ndrochak@gol.com>
4150         * Enum.cs (IsDefined): Throw exception when type of value to look for
4151         is not the correct one.  Attempt to have it work with string values
4152         too, but not sure if the unit tests are getting that far yet.
4154 2002-04-04  Nick Drochak  <ndrochak@gol.com>
4156         * Decimal.cs: Fix a couple of typos.
4158 Wed Apr 3 19:46:00 CEST 2002 Paolo Molaro <lupus@ximian.com>
4160         * Enum.cs: the values array is of the enum and not of the underlying
4161         type. Updates and some bug fixes.
4162         * MonoType.cs: make the internalcall return FullName instead of the
4163         assembly qualified name.
4164         * Type.cs: make ToString () simply return FullName.
4166 2002-04-03  Nick Drochak  <ndrochak@gol.com>
4168         * Type.cs (GetTypeCode): provide some of the implementation for this
4169         method.  It's still too simplistic to be considered complete.
4171 2002-04-02  Dietmar Maurer  <dietmar@ximian.com>
4173         * Object.cs: fixed FieldGetter/FieldSetter signature
4175 2002-04-02  Nick Drochak  <ndrochak@gol.com>
4177         * Environment.cs: add MonoTODO's on parts that should have it.
4179 2002-04-01  Nick Drochak  <ndrochak@gol.com>
4181         * Enum.cs: added reality checks (check parameters to most methods that
4182         need them).
4184 2002-03-30  Dietmar Maurer  <dietmar@ximian.com>
4186         * Object.cs: added FieldGetter/FieldSetter
4188 2002-03-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4190         * IntegerFormatter.cs: fixed initialization error in static
4191         constructor.
4193 2002-03-28  Dietmar Maurer  <dietmar@ximian.com>
4195         * Delegate.cs: added new field to store a trampoline function
4197 2002-03-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4199         * IntegerFormatter.cs: added workaround for bug #22668. First patch to
4200         make custom format strings work (not fully functional yet).
4202 2002/03/28  Nick Drochak <ndrochak@gol.com>
4204         * IntegerFormatter.cs: Change class from internal to public.  Add
4205         necessary [CLSCompliant(false)] attributes.
4207 2002-03-27  Duco Fijma  <duco@lorentz.xs4all.nl>
4208         * _AppDomain.cs, AppDomain.cs: renamed method GetDate to GetData
4209         (was a typo)
4211 2002-03-28  Nick Drochak  <ndrochak@gol.com>
4213         * Type.cs: Added MonoTODO tags on members that have FIXME, etc.
4215 2002-03-27  Dan Lewis  <dihlewis@yahoo.co.uk>
4217         * Console.cs: Modified to get std handles from MonoIO.
4218         * Environment.cs: removed PAL dependencies.
4220 2002-03-25  Miguel de Icaza  <miguel@ximian.com>
4222         * String.cs (System): Removed internal enumeration, because
4223         bootstrapping the corlib at this point does not support
4224         enumerations. 
4226         * IntPtr.cs: Temporary work-around until I fix the assembly
4227         attributes bug.
4229 2002-03-24  Martin Baulig  <martin@gnome.org>
4231         * Enum.cs (GetValues): According to the docu this is sorted after
4232         values, not names.
4234         * String.cs (System): Removed enumeration, because it is pretty
4235         hard to support enumerations in /nostdlib mode for the core types.
4237 Tue Mar 19 18:18:49 CET 2002 Paolo Molaro <lupus@ximian.com>
4239         * Array.cs: move error handling in the catch block.
4240         * MulticastDelegate.cs: remove == and != operators that were
4241         removed with the delegate changes (when you add stuff, please do not
4242         remove existing functionality!).
4243         * Type.cs: if a property is not found in a type, search for it
4244         in the parent types, too.
4246 2002-03-18  Dan Lewis <dihlewis@yahoo.co.uk>
4247         
4248         * Math.cs: changed to use icall instead of PAL.
4250 2002-03-18  Dietmar Maurer  <dietmar@ximian.com>
4252         * Double.cs: added check for NaN (Bug [22082])
4254 2002-03-19  Nick Drochak  <ndrochak@gol.com>
4256         * Enum.cs (Equals): check for null and throw if it is.
4257         * Enum.cs (Format): check for null parameters and throw if necessary.
4258         This method still needs more argument checking.
4260 2002-03-18  Dietmar Maurer  <dietmar@ximian.com>
4262         * Enum.cs (Equals): check if Enums are of the same type
4264 2002-03-18  Nick Drochak  <ndrochak@gol.com>
4266         * Double.cs: Explicitly handle comparisons in CompareTo() for
4267         Positive/Negative Infinity and NaN. Unit Test now passes on Linux.
4269         * Enum.cs(CompareTo): Check types of values before trying to compare.
4270         Throw exceptions if types are invalid or don't match.
4272 2002-03-14  Miguel de Icaza  <miguel@ximian.com>
4274         * Array.cs: Add some extra debugging information.
4276 2002-03-15  Nick Drochak  <ndrochak@gol.com>
4278         * Array.cs: Added IList and IEnumerable. 
4280 2002-03-14  Miguel de Icaza  <miguel@ximian.com>
4282         * UInt64.cs, UInt32.cs, UInt16.cs: Mark public parse methods as
4283         NonCLSCompliant. 
4285 2002-03-14  Dietmar Maurer  <dietmar@ximian.com>
4287         * Delegate.cs (Equals): also compare method_ptr 
4288         (GetHashCode): returm method_ptr as hash
4290 2002-03-13  Duco Fijma  <duco@lorentz.xs4all.n>
4291         * TimeSpan.cs: removed the use of Custom Numeric Format Strings,
4292         such as 42.ToString("0000000"), as these are (currently) not implemented
4293         in System.IntegerFormatter. TimeSpan luckely can do with Standard
4294         Numeric Format Strings, such as 42.ToString("D7").
4296 2002-03-12  Duncan Mak  <duncan@ximian.com>
4298         * FieldAccessException.cs: 
4299         * MethodAccessException.cs: 
4300         * PlatformNotSupportedException.cs: Inherit from
4301         MemberAccessException, not SystemException.
4303         * ObsoleteAttribute.cs: Made Message and IsError properties
4304         instead of fields.
4306 Tue Mar 12 19:21:18 CET 2002 Paolo Molaro <lupus@ximian.com>
4308         * GC.cs: make SuppressFinalize() a nop.
4309         * Delegate.cs: fix == operator.
4311 2002-03-13  Nick Drochak  <ndrochak@gol.com>
4313         * Enum.cs: Add IConvertible methods. Cyclic dependancy fixed in the
4314         runtime that goes with this patch.
4316 2002-03-10  Martin Baulig  <martin@gnome.org>
4318         * Int32.cs (Parse): Correctly parse negative numbers.
4320 2002-03-08  Martin Baulig  <martin@gnome.org>
4322         * String.cs (Split): Really fix it this time. Also adding several new
4323         testcase to the testsuite.       
4325 2002-03-08  Martin Baulig  <martin@gnome.org>
4327         * Array.cs (Copy): Optimized: removed duplicate null check, removed
4328         two duplicate GetLowerBound() calls and one duplicate IsValueType.
4330 Fri Mar 8 18:49:19 CET 2002 Paolo Molaro <lupus@ximian.com>
4332         * Object.cs: commit my hacked GetHashCode(): it's good enough for now.
4333         * String.cs: use the dumb code for IndexOf(string): this is worth
4334         15-20 % speedup in mcs compile with mint.
4336 Fri Mar 8 12:45:44 CET 2002 Paolo Molaro <lupus@ximian.com>
4338         * String.cs: revert change to Split() that broke the compiler (hi martin!:-).
4340 2002-03-07  Martin Baulig  <martin@gnome.org>
4342         * String.cs (Join): Throw an ArgumentNullException.
4343         (LastIndexOf (string,int,int)): This method does a backwards search,
4344         so startIndex points to the end of value, not to its beginning. Don't
4345         throw an exception if startIndex equals this.Length. Always return -1
4346         if startIndex is smaller than the length of value.
4347         (Replace (string,string)): Replace all occurences of oldValue.
4348         If newValue is null, all occurences of oldValue are to be removed.
4349         (Split (char[],int)): Return an empty array if maxCount is zero, throw
4350         an ArgumentOutOfRangeException if it's less than zero. Return maxValue
4351         elements, not maxValue+1.
4353 Thu Mar 7 17:16:06 CET 2002 Paolo Molaro <lupus@ximian.com>
4355         * MonoType.cs: make GetEvents() an internal call.
4356         * MulticastDelegate.cs: copy the passed in array.
4358 2002-03-06  Martin Baulig  <martin@gnome.org>
4360         * Array.cs (Copy): Use FastCopy when appropriate and do correct
4361         exception handling.
4363 2002-03-06  Duco Fijma  <duco@lorentz.xs4all.nl>
4364         * CharEnumerator.cs: fixes to CharEnumertor.MoveNext, fixing 
4365         some of the failures found be new tests (see ChangeLog in 
4366         Test/System). Comments added to this method, based on
4367         the representation invariant of this class, that (try to) explain
4368         why it now should be correct.
4370 2002-03-06  Dietmar Maurer  <dietmar@ximian.com>
4372         * Int64.cs (Parse): bug fix for max. negative value. 
4374 2002-03-07  Nick Drochak  <ndrochak@gol.com>
4376         * RuntimeTypeHandle.cs: Add Serializable attribute as the docs say.
4377         I need to understand what the difference between the attribute and
4378         the interface is.
4380 2002-03-06  Martin Baulig  <martin@gnome.org>
4382         * Array.cs (Copy): Always throw an ArrayTypeMismatchException, not
4383         an InvalidCastException if the widening conversion failed. See
4384         testcases #M94-#M96.
4386         * Array.cs (CopyTo): Bug fix from Ajay Dwivedi, correctly handle
4387         arrays with non-zero lower bounds. Also adding testcases #F10-#F13
4388         for this.
4390         * Array.cs (CopyTo): Reverted my last change, it was incorrect.
4391         (Copy): Actually allow copying multi-dimensional arrays.
4393 2002-03-05  Duncan Mak  <duncan@ximian.com>
4395         * Convert.cs:
4396         (DBNull) Added the missing field.
4397         (IsDBNull) Fixed typo.
4398         (ToByte (string, int)) Implemented.
4399         (ToString (byte, int)) Implemented.
4400         (ConvertToBase)
4401         (BuildConvertedString) internal functions used for converting values to
4402         a specific base.
4404         * Int16.cs: 
4405         * Int32.cs:
4406         * Int64.cs:
4407         * Single.cs:
4408         * UInt16.cs: 
4409         * UInt32.cs: Implemented the IConvertible interface.    
4411         * CharEnumerator.cs: Renamed to variables to be clearer and
4412         changed some of the tests to conform to the 1.0 spec.
4414 2002-03-06  Martin Baulig  <martin@gnome.org>
4416         * Array.cs (Copy): Calculate absolute array position here and use
4417         GetValueImpl() and SetValueImpl() with that position. We can now
4418         copy multi-dimensional arrays.
4419         (CopyTo): Small bug fix.
4421 2002-03-05  Duco Fijma  <duco@lorentz.xs4all.nl>
4423         * Version.cs: CompareTo changed according the LAMESPEC discovered by 
4424         Nick (See VersionTest.cs).
4425         * CharEnumerator.cs: fixed two bugs in MoveNext. It had an off-by-one
4426         error comparing the current position (idx) against the length of the
4427         string iterated and it set idx to an unrecognized special value (-2)
4429 Tue Mar 5 17:34:14 CET 2002 Paolo Molaro <lupus@ximian.com>
4431         * SByte.cs, UInt64.cs: implement IConvertible interface. Nobody wants
4432         to do this dirty work, but someone has to do it (and I need it to pass
4433         the "200 sample tests compiled on linux" mark).
4435 2002-03-06  Nick Drochak  <ndrochak@gol.com>
4437         * Attribute.cs
4438         * DecimalFormatter.cs
4439         * Delegate.cs
4440         * Double.cs
4441         * GC.cs
4442         * Int16.cs
4443         * Int32.cs
4444         * MonoType.cs
4445         * RuntimeMethodHandle.cs
4446         * RuntimeTypeHandle.cs
4447         * String.cs
4448         * Type.cs:
4449                 Add [MonoTODO]'s to places where we currently throw a
4450                 NotImplementedException.
4452 2002-03-05  Dietmar Maurer  <dietmar@ximian.com>
4454         * Int16.cs (Parse): do not overflow on max negative value
4456         * Int32.cs (Parse): do not overflow on max negative value
4458 Mon Mar 4 20:36:05 CET 2002 Paolo Molaro <lupus@ximian.com>
4460         * Type.cs: fixed IsClass.
4461         * MonoType.cs: fixed MemberType, IsPrimitiveImpl, IsPointerImpl,
4462         IsByRefImpl. Added GetInterfaces().
4463         * IServiceProvider.cs: compilation fix.
4465 Mon Mar 4 18:37:03 CET 2002 Paolo Molaro <lupus@ximian.com>
4467         * Array.cs: allow copying an empty array to an empty array.
4469 Mon Mar 4 17:59:16 CET 2002 Paolo Molaro <lupus@ximian.com>
4471         * String.cs: fixed LastIndexOf (string) to do a bit of argument
4472         checking.
4474 2002-03-04  Duco Fijma  <duco@lorentz.xs4all.nl>
4475         * Version.cs: many fixes to failures found by the newly created
4476         test cases for this class. Specifically, the CompareTo member
4477         returned wrong values due to the use of Int32.MaxValue as a special
4478         value indicating an "undefined" version component. Also implemented the
4479         missing operators (==, <, >, etc.), one missing constructor and
4480         and some exception throwing.
4482 2002-03-04  Nick Drochak  <ndrochak@gol.com>
4484         * IServiceProvider.cs: Add missing attribute: ComVisible(false)
4485         * Attribute.cs: Add missing attributes: Serializable and
4486         AttributeUsage(AttributeTargets.All)
4488 Mon Mar 4 11:26:49 CET 2002 Paolo Molaro <lupus@ximian.com>
4490         * MonoType.cs: implemented GetConstructors(), GetFields(),
4491         GetMethods(), GetProperties().
4492         * Object.cs: added debugging icall obj_address().
4493         * Type.cs: fixed the binding flags for some Get* methods.
4494         Implemented FindMembers() as calls to the specific GetMember
4495         methods.
4497 2002-03-01  Duco Fijma  <duco@lorentz.xs4all.nl>
4498         * BitConverter.cs: fixed one little bug: ToString(s, n, 0) 
4499         should give an exception for n>=s.Length.
4501 2002-03-01  Martin Baulig  <martin@gnome.org>
4503         * Array.cs: More argument checking and bug fixing.
4505 2002-03-01  Miguel de Icaza  <miguel@ximian.com>
4507         * BitConverter.cs: Indentation match
4509         * AppDomain.cs: Added MonoTODOs to this too.
4511         * Buffer.cs: Added MonoTODOs to this.
4513 2002-03-01  Martin Baulig  <martin@gnome.org>
4515         * Array.cs: Added argument checking to all methods where it was missing.
4517 2002-03-01  Duco Fijma  <duco@lorentz.xs4all.nl>
4519         * BitConverter.cs: Fixed bugs in ToString methods
4521 Fri Mar 1 15:20:00 CET 2002 Paolo Molaro <lupus@ximian.com>
4523         * MulticastDelegate.cs: implement operators so mcs3 can be used on linux.
4525 2002-03-01  Nick Drochak  <ndrochak@gol.com>
4527         * BitConverter.cs: Throw ArgumentException like mscorlib, instead of
4528         ArgumentOutOfRangeException like the docs say.
4530 2002-03-01  Martin Baulig  <martin@gnome.org>
4532         * Enum.cs (CompareTo): Correctly override this method from IComparable.
4534         * Console.cs (setIn, setOut, setError): It's called SetIn, SetOut, SetError.
4536 2002-02-28  Martin Baulig  <martin@gnome.org>
4538         * String.cs: This file now passes the testsuite on Linux :-)
4539         
4540         * String.cs (Intern, IsInterned): The interncalls are now called _Intern and _IsInterned;
4541         make them private and provide C# wrappers which do proper argument checking.
4543         * String.cs (Format): Correctly handle escaped brackets.
4545         * String.cs (_CompareChar): New internal function which compares two chars.
4546         (_Compare): Provide an internal compare method which can do all sorts of
4547         comparision and call it from all the Compare() methods. Also fixed a lot of
4548         bugs here, this code now actually passes the testsuite.
4550 2002-02-28  Duncan Mak  <duncan@ximian.com>
4552         * Convert.cs: Added the missing methods. The new class status page
4553         kicks ass, it even found my typos! Woohoo!
4554         (ConvertFromBase): Moved the Exception throwing in here and
4555         removed the other occurances so it's all centralized now.
4556         (ISDBNull): Implemented.
4557         (GetTypeCode): Implemented.
4559 2002-02-27  Duco Fijma  <duco@lorentz.xs4all.nl>
4560         * Guid.cs: Guid.ToString("") and Guid.ToString(null) is now understood as Guid.ToString("D") 
4561         just as in mscorlib. There is (probably) a documentation bug in the MS FrameWork SDK, which
4562         states that a lacking format should be interpreted as "N".  
4563         Also added [Serializable] attribute
4564         * TimeSpan.cs: some formatting and added the [Serializable] attribute
4566 2002-02-26  Duncan Mak  <duncan@ximian.com>
4568         * WeakReference.cs: Committed for Ajay Kumar Dwivedi.   
4570 2002-02-26  Martin Baulig  <martin@gnome.org>
4572         * TimeZone.cs: Use an internal enum rather than magic numbers to access the
4573         fields of the interncall GetTimeZoneData.
4575         * DateTime.cs: Implemented Parse and fixed a few bugs.
4577         * String.cs (TrimStart): Small fix.
4579 2002-02-26  Martin Baulig  <martin@gnome.org>
4581         * DateTime.cs: ParseExact is now fully functional.
4583         * String.cs (TrimEnd): Small fix.
4585 2002-02-26  Duco Fijma <duco@lorentz.xs4all.nl>
4586         * TimeSpan.cs: Added method TimeSpan.FromMilliseconds, mysteriously 
4587         missing for about six months.
4589 Tue Feb 26 14:21:19 CET 2002 Paolo Molaro <lupus@ximian.com>
4591         * UInt64.cs: fixed Parse method () to handle some of the NumberStyle flags.
4593 2002-02-26  Martin Baulig  <martin@gnome.org>
4595         * DateTime.cs: Miguel already committed this, but there was still a
4596         ChangeLog entry for this missing ....
4597         We're now reusing functionality from TimeSpan, printing dates is
4598         fully implemented, currently working on parsing.
4600         * TimeZone.cs: Fully implemented this. There's a new InternCall in the
4601         runtime for this.
4603 Fri Feb 22 18:47:08 CET 2002 Paolo Molaro <lupus@ximian.com>
4605         * MonoType.cs: disable constructor.
4606         * Object.cs: make GetType() an internalcall.
4607         * Type.cs: added correct bindingflags to GetMethods ().
4608         All such calls should be reviewed to use the correct flags.
4610 Thu Feb 21 19:23:46 CET 2002 Paolo Molaro <lupus@ximian.com>
4612         * Type.cs, MonoType.cs: type_is_subtype_of () changed to include extra
4613         argument.
4615 Thu Feb 21 16:56:51 CET 2002 Paolo Molaro <lupus@ximian.com>
4617         * Type.cs: implemented IsAssignableFrom.
4619 2002-02-21  Duco Fijma <duco@lorentz.xs4all.nl>
4620         * Guid.cs: fixed Guid.Guid(string) ctor. Changed format:
4621         "{0xdddddddd,0xdddd,0xdddd,{0xdd},{0xdd},{0xdd},{0xdd},{0xdd},{0xdd}}" 
4622         to "{0xdddddddd,0xdddd,0xdddd,{0xdd,0xdd,0xdd,0xdd,0xdd,0xdd}}" 
4623         The former is documented by Microsoft. The latter is how they
4624         actually implemented it in mscorlib:-)
4626 Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>
4628         * MonoCustomAttrs.cs: hooks to get the custom attributes from the
4629         runtime.
4630         * MonoType.cs: Implemented custom attributes methods.
4633 2002-02-21  Duco Fijma <duco@lorentz.xs4all.nl>
4634         * Guid.cs: 
4636 Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>
4638         * MonoCustomAttrs.cs: hooks to get the custom attributes from the
4639         runtime.
4640         * MonoType.cs: Implemented custom attributes methods.
4642 2002-02-19  Dietmar Maurer  <dietmar@ximian.com>
4644         * Array.cs (CopyTo): use GetLength() instead of GetUpperBound() 
4646 2002-02-19  Duncan Mak  <duncan@ximian.com>
4648         * Convert.cs: Finished up the missing methods in Convert. Added a
4649         new private method ConvertFromBase.
4651 2002-02-19  Dietmar Maurer  <dietmar@ximian.com>
4653         * String.cs: impl. IConvertible interface
4655 2002-02-18  Duco Fijma <duco@lorentz.xs4all.nl>
4656         * Guid.cs: actual implementation for Guid.Guid(string) Ctor
4658 2002-02-18  Duncan Mak  <duncan@ximian.com>
4660         * Convert.cs: Changed from using Type.GetType (string) to just
4661         typeof (). Probably will speed things up a bit?         
4663 2002-02-18  Ajay Kumar Dwivedi <AjayKumar.Dwivedi@dresdner-bank.com>
4665         * Array.cs:         
4666         1. Fix for GetUpperBound to return correct values
4667         2. made some Properties virtual
4668         3. Adds IsFixedSize and IsReadOnly properties.
4669         4. changes CreateInstance(Type,int[],int[]) to throw Exception
4670         when third arg is null. InternalCall CreateInstance changed to  
4671         CreateInstanceImpl
4672         5. Fixed array.GetUpperBound at a couple of places
4673         6. IndexOf and LastIndexOf now use Object.Equals instead of "=="
4674         7. Added two FIXME's in BinarySearch functions.
4676 2002-02-17  Duncan Mak  <duncan@ximian.com>
4678         * TimeZone.cs:  Applied the rest of Ajay's patch for    
4679         IsDaylightSavingTime. Thanks a lot for the nice explanation of how
4680         it works!
4682 2002-02-17  Duco Fijma  <duco@lorentz.xs4all.nl>
4683         * Guid.cs: added stub for Guid(string) ctor
4685 2002-02-17  Duncan Mak  <duncan@ximian.com>
4687         * Convert.cs: Near-complete implementation of Convert.cs
4689         Added all the To* methods taking (object) and
4690         (object, IFormatProvider) as parameters.
4692         Added [CLSCompliant (false)] attributes to methods dealing with
4693         unsigned types.
4695         Added the missing section on converting to and from DateTime. Only
4696         6 missing methods, all marked with MonoTODOs. Will tackle them later.           
4698 2002-02-16  Duncan Mak  <duncan@ximian.com>
4700         * TimeZone.cs: patch from Ajay Kumar Dwivedi (adwiv@yahoo.com) to
4701         make IsDaylightSavingTime (DateTime) call 
4702         IsDaylightSavingTime (DateTime, DaylightTime).  
4703         
4704         Added internal class CurrentTimeZone from Ajay. It needs more work
4705         to fill in the appropriate internal calls.
4706         
4707 Sat Feb 16 12:41:41 CET 2002 Paolo Molaro <lupus@ximian.com>
4709         * Type.cs: fix IsClass.
4711 Sat Feb 16 12:02:02 CET 2002 Paolo Molaro <lupus@ximian.com>
4713         * String.cs: fix Trim().
4715 Fri Feb 15 21:02:46 CET 2002 Paolo Molaro <lupus@ximian.com>
4717         * String.cs: fix more off by one errors.
4719 Thu Feb 14 18:54:09 CET 2002 Paolo Molaro <lupus@ximian.com>
4721         * MonoType.cs: fix IsValueTypeImpl.
4722         * Type.cs: fix IsEnum. Implement Equals methods.
4724 Wed Feb 13 21:50:13 CET 2002 Paolo Molaro <lupus@ximian.com>
4726         * Int32.cs: implement IConvertible interface.
4727         
4728 2002-02-12  Duncan Mak  <duncan@ximian.com>
4730         * TimeZone.cs: Implemented and added to CVS.
4732 2002-02-11  Duncan Mak  <duncan@ximian.com>
4734         * Convert.cs: Implemented the ChangeType () methods.
4736 Mon Feb 11 19:48:58 CET 2002 Paolo Molaro <lupus@ximian.com>
4738         * Array.cs: make Clone() an internal call.
4740 2002-02-09  Duco Fijma <duco@lorentz.xs4all.nl>
4741         * Changed Guid.NewGuid so that it can use both System.Random and 
4742           System.Security.Cryptography.RandomNumberGenerator
4744 2002-02-09  Duco Fijma <duco@lorentz.xs4all.nl>
4745         * First version of Guid.NewGuid
4747 2002-02-08  Duncan Mak  <duncan@ximian.com>
4749         * RuntimeArgumentHandle.cs: Added to CVS.
4751 Fri Feb 8 19:14:54 CET 2002 Paolo Molaro <lupus@ximian.com>
4753         * CrossAppDomainDelegate.cs, AssemblyLoadEventHandler.cs,
4754         UnhandledExceptionEventHandler.cs: added delegates.
4756 Fri Feb 8 18:06:20 CET 2002 Paolo Molaro <lupus@ximian.com>
4758         * MarshalByRefObject.cs: add ToString () method
4759         (apparently needed by nunit).
4760         * _AppDomain.cs: uncomment ToString(): dietmar fixed the bug triggered
4761         by it in the runtime.
4763 2002-02-08  Dan Lewis <dihlewis@yahoo.co.uk>
4764         
4765         * String.cs (Format): implemented
4767 2002-02-07  Duncan Mak  <duncan@ximian.com>
4768         
4769         * DuplicateWaitObjectException:
4770         * InvalidCastException:
4771         * NotImplementedException:
4772         * NotSupportedException:
4773         * NullReferenceException:
4774         * OutOfMemoryException:
4775         * OverflowException:
4776         * RankException:
4777         * StackOverflowException.cs:
4778         * UnauthorizedAccessException: Added missing constructor used for serialization.
4780 2002-02-07  Dietmar Maurer  <dietmar@ximian.com>
4782         * String.cs (System.Compare): bug fix 
4784 2002-02-06  Dietmar Maurer  <dietmar@ximian.com>
4786         * Enum.cs (Parse,  GetHashCode): impl. 
4788 2002-02-05  Duncan Mak  <duncan@ximian.com>
4790         * DBNull.cs: This is my first crack at the DBNull class. I think I
4791         actually got most of the IConvertible methods right, but I haven't
4792         done the research to test whether or not this is the correct
4793         behavior. IConvertible.ToType () is the most iffy of all, IMHO.
4795         * DllNotFoundException.cs: Inherits from TypeLoadException, not SystemException.
4797 2002-02-05  Dietmar Maurer  <dietmar@ximian.com>
4799         * Enum.cs: added more functionality (GetName, ToObject, Equals)
4801 2002-01-31  Duncan Mak  <duncan@ximian.com>
4803         * InvalidOperationException.cs:
4804         * NotFiniteNumberException.cs:
4805         * ObjectDisposedException.cs:
4806         * TypeInitializationException.cs: Added missing bits for serialization/
4807         
4808         * AppDomainUnloadedException.cs:
4809         * ApplicationException.cs:
4810         * ArgumentOutOfRangeException.cs:
4811         * ArithmeticException.cs:
4812         * ArrayTypeMismatchException:
4813         * BadImageFormatException.cs:
4814         * Exception.cs:
4815         * MissingMemberException.cs:
4816         * TypeLoadException.cs: Added missing bits for serialization.
4818 2002-01-30  Duco Fijma <duco@lorentz.xs4all.nl>
4819         * Guid.cs: implemented everything but Guid.NewGuid
4821 Tue Jan 29 22:32:36 CET 2002 Paolo Molaro <lupus@ximian.com>
4823         * _AppDomain.cs: remove ToString() method: it doesn't seem right 
4824         to have it in this interface and it screws up the method vtable setup.
4826 2002-01-28  Andrei Zmievski <andrei@php.net>
4828         * Double.cs: implemented IConvertible interface.
4830 2002-01-28  Miguel de Icaza  <miguel@ximian.com>
4832         * ArgumentException.cs: Implement serialization constructor.
4833         (GetObjectData): Implement serializer.
4834         
4835         * ArgumentNullException.cs: Implement serialization constructor.
4837         * Exception.cs: Implement serialization constructor.
4838         (GetObjectData): Implement serializer.
4840 2002-01-23  Miguel de Icaza  <miguel@ximian.com>
4842         * DateTime.cs (UnixEpoch): The Begining of the Unix epoch.
4844 2002-01-23  Duncan Mak  <duncan@ximian.com>
4846         * EntryPointNotFoundException.cs:
4847         * FormatException: Added missing constructor and related bits.
4849         * TypeLoadException: Added missing constructor, methods and properties.
4851 2002-01-23  Miguel de Icaza  <miguel@ximian.com>
4853         * AppDomain.cs (GetAssemblies): Use foreach construct instead of
4854         manually getting the enumerator.
4856         (AppDomain.AppDomain): Prime the loaded assemblies with the
4857         assemblies loaded by the runtime in our behalf.
4859         * AppDomainSetup.cs: Remove private keyword, that is the default.
4860         Add a new property DisallowPublisherPolicy.
4862         * AppDomain.cs (AppDomain.GetAssemblies): Implement.
4864 Tue Jan 22 22:51:48 CET 2002 Paolo Molaro <lupus@ximian.com>
4866         * MonoType.cs, Type.cs: many updates, corrected implementation,
4867         completed stubs.
4869 2002-01-20  Andrei Zmievski <andrei@php.net>
4871         * Byte.cs:
4872         * Char.cs: implemented IConvertible interface.
4874         * Boolean.cs: use our own ToString() method directly.
4876 2002-01-20  Duncan Mak  <duncan@ximian.com>
4878         * Files I commited recently: Fixed indentation style.
4880 2002-01-20 Nick Drochak  <ndrochak@gol.com>
4882         * SerializableAttribute.cs: this attrib can be used on enums, structs, 
4883         and delegates too. Added the appropriate usage flags.
4885 2002-01-18  Duncan Mak  <duncan@ximian.com>
4887         * CharEnumerator.cs: Implemented.
4888         * String.cs (System): Fixed the GetEnumerator () method(s).
4890         * ObsoleteAttribute.cs:
4891         * STAThreadAttribute.cs:
4892         * MTAThreadAttribute.cs:
4893         * ThreadStaticAttribute.cs:
4894         * LoaderOptimizationAttribute.cs:
4895         * PlatformNotSupportedException.cs:
4896         * LoaderOptimization.cs: Added to CVS.
4898 2002-01-18  Duncan Mak  <duncan@ximian.com>
4900         * AppDomainUnloadedException.cs:
4901         * MethodAccessException.cs:
4902         * ContextMarshalException.cs:
4903         * CannotUnloadAppDomainException.cs:
4904         * DllNotFoundException.cs:
4905         * EntryPointNotFoundException.cs:
4906         * FieldAccessException.cs:
4907         * TypeUnloadedException.cs:
4908         * MissingFieldException.cs: Added to CVS.
4910         * ApplicationException.cs: 
4911         * MemberAccessException.cs:
4912         * MissingMemberException.cs
4913         * MissingMethodException.cs:
4914         * SystemException.cs: Added [Serializable] attribute.
4916         * Exception.cs: Added [Serializable] attribute, made properties
4917         'Message', 'Source' and 'StackTrace' virtual methods, per 1.0
4918         spec.
4920         * ContextStaticAttribute.cs: Added [Serializable] attribute and
4921         put in the missing constructor.
4923         * Environment.cs: Commented out references to
4924         EnvironmentPermissionAttribute, because they're just stubbed out
4925         right now and has no implementation.
4927 2002-01-16  Andrei Zmievski <andrei@php.net>
4929         * Boolean.cs: implemented IConvertible interface
4931 2002-01-15  Nick Drochak  <ndrochak@gol.com>
4933         * ResolveEventArgs.cs: class should derive from EventArgs.
4935 2002-01-14  Miguel de Icaza  <miguel@ximian.com>
4937         * String.cs (System): Use DefaultMemberName for the String class.
4939 Mon Jan 14 17:06:40 CET 2002 Paolo Molaro <lupus@ximian.com>
4941         * String.cs: use IndexerName in index char accessor.
4943 Thu Jan 10 21:05:23 CET 2002 Paolo Molaro <lupus@ximian.com>
4945         * MonoType.cs: add rank to MonoTypeInfo and implement GetArrayRank.
4946         * String.c: eliminate 64k+ method calls in search.
4947         * Type.cs: handle byref and array types in ToString ().
4949 2002-01-09  Duco Fijma <duco@lorentz.xs4all.nl>
4951         * Guid.cs: created first version
4953 2002-01-10  Dietmar Maurer  <dietmar@ximian.com>
4955         * MonoType.cs: added missing TypeAttributes to MonoTypeInfo 
4957 Wed Jan 9 19:35:07 CET 2002 Paolo Molaro <lupus@ximian.com>
4959         * MulticastDelegate.cs: add == and != operator stubs.
4960         * String.cs: check for null in == operator.
4961         * Type.cs: use a virtual method to get TypeAttributes.
4963 Tue Jan  8 23:30:19 EST 2002 Matt Kimball <matt@kimball.net>
4964         * String.cs: Fixed several off-by-one errors in LastIndexOf* methods
4966 2002-01-09  Nick Drochak  <ndrochak@gol.com>
4967         
4968         * Environment.cs: Comment out Security attribute and put a MonoTODO
4969         there as a reminder.  We need mcs magic to handle security attributes in
4970         corlib.
4972 2002-01-07  Duco Fijma <duco@lorentz.xs4all.nl>
4973         * Created IAppDomainSetup.cs
4975 2002-01-06  Duco Fijma <duco@lorentz.xs4all.nl>
4976         * Created System._AppDomain interface in _AppDomain.cs
4978 2002-01-06  Nick Drochak  <ndrochak@gol.com>
4980         * ResolveEventArgs.cs: New File, completely implemented! ;)
4982 Sat Jan 5 15:53:50 CET 2002 Paolo Molaro <lupus@ximian.com>
4984         * Enum.cs: dummy ToString impl.
4985         * String.cs: dummy format implementations to get compiler errors
4986         somewhat working.
4987         * Type.cs: implemented filter delegates. FindMembers runs the filter, now.
4989 2002-01-05  Ravi Pratap  <ravi@ximian.com>
4991         * TODOAttribute.cs : Augment some more; provide two constructors
4992         with support for a comment too.
4994 2002-01-05  Nick Drochak  <ndrochak@gol.com>
4996         * Uncommented those MonoTODO's now that Ravi's got
4997         the class in there
4999 2001-01-04  Ravi Pratap  <ravi@ximian.com>
5001         * TODOAttribute.cs : Actually add this time ;-)
5003         Change name to MonoTODO.
5005 2002-01-04  Jeffrey Stedfast  <fejj@ximian.com>
5007         * String.cs (Trim): Fixed a few logic bugs in the code that
5008         calculated how much to trim off the end of the string.
5010 2001-01-04  Nick Drochak  <ndrochak@gol.com>
5011         
5012         * Commented out the [TODO] attributes for now.  We don't have the
5013         class written.  Also changed it to [MonoTODO]
5015 2002-01-04  Ravi Pratap  <ravi@ximian.com>
5017         * TODOAttribute.cs : Add. We use this attribute to tag all bits in
5018         our class libraries that are incomplete.
5020         * Array.cs : Apply attribute wherever we find a FIXME which says
5021         we need something to be implemented there.
5023         * Int32.cs : Ditto.
5025         * MulticastDelegate.cs : Ditto.
5027         * RuntimeFieldHandler.cs, RuntimeMethodHandle.cs,
5028         RuntimeTypeHandle.cs : Ditto.
5030         * String.cs : Ditto.
5032         * Type.cs : Ditto.
5034         * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs, Delegate.cs : Ditto.
5036         * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs, Single.cs, 
5037         UInt16.cs, UInt32.cs, ValueType.cs: Ditto.
5039         * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs,
5040         Delegate.cs : Ditto.
5042         * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs,
5043         Single.cs, UInt16.cs, UInt32.cs, ValueType.cs: Ditto.
5044         
5045 Thu Jan 3 23:24:04 CET 2002 Paolo Molaro <lupus@ximian.com>
5047         * Delegate.cs: add Remove() stub.
5048         * Enum.cs: add ToObject().
5049         * Type.cs: add IsEnum property.
5051 2002-01-03  Kristian Rietveld  <kris@gtk.org>
5053         * Convert.cs: add non-CLS-compliant ToBoolean methods for char,
5054         DateTime and object.
5056 2001-12-30  Nick Drochak  <ndrochak@gol.com>
5058         * Byte.cs (Parse): Add comments to aid in testing.
5060 2001-12-21  Miguel de Icaza  <miguel@ximian.com>
5062         * Char.cs (Parse): Implement.
5064         * Byte.cs (Parse): Implement a fast parser.
5065         
5066         * SByte.cs (Parse): Implement a fast parser.
5068         * UInt16.cs (Parse): Implement a fast parser.
5069         
5070         * Int16.cs (Parse): Implement a fast parser.
5072         * UInt32.cs (Parse): Implement a fast parser.
5074         * Int32.cs (Parse): Implement a fast parser.
5076 Fri Dec 21 15:14:52 CET 2001 Paolo Molaro <lupus@ximian.com>
5078         * Array.cs: fix null ref in sort code.
5079         * UInt64.cs: add bare-bones parse.
5081 Thu Dec 20 15:29:52 CET 2001 Paolo Molaro <lupus@ximian.com>
5082         
5083         * Byte.cs: removed use of Regexes.
5085 Tue Dec 18 18:39:54 CET 2001 Paolo Molaro <lupus@ximian.com>
5087         * Enum.cs: implemented GetValues(), GetNames(), GetName(),
5088         IsDefined(), GetUnderlyingType().
5089         * String.cs: fix one instance of Compare().
5090         * Type.cs: implemented GetProperties(), GetProperty().
5092 Thu Dec 13 20:10:57 CET 2001 Paolo Molaro <lupus@ximian.com>
5094         * Array.cs: implement CopyTo ().
5095         * Char.cs: implement ToString ().
5096         * Exception.cs: bugfix.
5097         * Int32.cs: bare-bones Parse ().
5098         * MonoType.cs: query the needed info with an internalcall.
5099         * String.cs: speedups, bugfixes, reduced copies.
5100         * Type.cs: added missing fields. Implemented many of the Is*
5101         properties. Implemented GetMethod(), GetConstructor(), GetMethods(),
5102         GetFields(), FindMembers(), ToString().
5103         
5104 2001-12-11  Dick Porter  <dick@ximian.com>
5106         * DateTime.cs: Implemented FromFileTime() and ToFileTime()
5108         * Console.cs: Use handles rather than casting file descriptors
5110 2001-12-08  Nick Drochak  <ndrochak@gol.com>
5112         * Byte.cs (Parse): Start implementation. Parse(string) works, but
5113         now we need to handle other formats
5115 2001-12-06  Dietmar Maurer  <dietmar@ximian.com>
5117         * DateTime.cs: added an icall to GetNow()
5119 2001-12-04  Dietmar Maurer  <dietmar@ximian.com>
5121         * Double.cs: added the parse method from Bob Smith
5123 2001-11-28  Miguel de Icaza  <miguel@ximian.com>
5125         * UInt64.cs: ditto.
5127         * UInt32.cs: ditto.
5129         * Int32.cs (Int32.CompareTo): Fix because we can not just
5130         substract the values.
5132         Return possitive value if the object is null.
5134         * Boolean.cs: (Boolean.CompareTo): ditto.
5136         * Int16.cs (Int16.CompareTo): ditto.
5138         * Byte.cs (Byte.CompareTo): ditto.
5140         * SByte.cs (SByte.CompareTo): ditto.
5142         * Char.cs (Char.CompareTo): ditto.
5143         
5144         * Decimal.cs (Decimal.CompareTo): ditto.
5146         * Int64.cs (Int64.CompareTo): ditto.
5148         * Single.cs: Ditto.
5150         * UInt16.cs: Ditto.
5152 2001-11-28  Nick Drochak <ndrochak@gol.com>
5154         * Byte.cs: Throw NotImplementedException for Parse.
5156 2001-11-27  Derek Holden  <dholden@draper.com>
5158         * IntegerFormatter.cs: Formatting of type "Number" was not
5159         using NumberFormatInfo.NumberNegativePattern.
5161 2001-11-26  Dick Porter  <dick@ximian.com>
5163         * LocalDataStoreSlot.cs: No need to delete a system TLS slot in
5164         the finalise routine any more
5166 2001-11-21  Miguel de Icaza  <miguel@ximian.com>
5168         * ApplicationException.cs: internationalize by adding calls to
5169         Locale.GetText ().  And throw NotImplementedExceptions on calls
5170         that we have to implement.
5172         * Version.cs: Ditto.
5174         * ValueType.cs: ditto.
5176         * UnauthorizedAccessException.cs: ditto.
5178         * UInt32.cs: ditto.
5180         * UInt64.cs: ditto.
5182         * UInt16.cs: ditto.
5184         * TypeLoadException.cs: ditto
5186         * TypeInitializationException.cs: ditto.
5188         * Type.cs: ditto.
5190         * TimeSpan.cs: ditto.
5192         * SystemException.cs: ditto.
5194         * String.cs: ditto.
5196         * StackOverflowException.cs: ditto.x
5198         * Single.cs: ditto.
5200         * SByte.cs: ditto.
5202         * RuntimeTypeHandle.cs: ditto.
5204         * RuntimeMethodHandle.cs: ditto.
5206         * RuntimeFieldHandle.cs: ditto.
5208         * Random.cs: ditto.
5210         * OutOfMemoryException.cs: ditto.
5212         * OperatingSystem.cs: ditto.
5214         * ObjectDisposedException.cs: ditto.
5216         * NullReferenceException.cs: ditto.
5218         * NotImplementedException.cs: ditto.
5220         * NotFiniteNumberException.cs: ditto.o
5222         * MulticastNotSupportedException.cs: ditto.
5224         * MissingMethodException.cs: ditto.
5226         * MemberAccessException.cs: ditto.
5228         * Math.cs: ditto.
5230         * InvalidCastException.cs: ditto.
5232         * IntegerFormatter.cs: ditto.
5234         * Int32.cs: ditto.
5236         * Int16.cs: ditto.
5238         * IndexOutOfRangeException.cs: ditto.
5240         * Environment.cs: ditto
5242         * Enum.cs: ditto.
5244         * DuplicateWaitObjectException.cs: ditto.
5246         * DivideByZeroException.cs: ditto.
5248         * Delegate.cs: ditto
5250         * DecimalFormatter.cs: ditto.
5252         * Decimal.cs: ditto.
5254         * DateTime.cs: ditto.
5256         * Convert.cs: ditto.
5258         * Char.cs: ditto.
5260         * Byte.cs: ditto.
5262         * Boolean.cs: ditto.
5264         * ArrayTypeMismatchException.cs: ditto.
5266         * ArithmeticException.cs: ditto.
5268         * ArgumentOutOfRangeException.cs: ditto.
5270         * ArgumentNullException.cs: ditto.
5272         * Enum.cs: Make it derive from ValueType, add CompareTo method.
5274         * Attribute.cs: Reformat.
5276 2001-11-14  Miguel de Icaza  <miguel@ximian.com>
5278         * Decimal.cs, Double.cs, Byte.cs, Char.cs, Int16, UInt16, Int32,
5279         UInt32, Int64, UInt64, SByte, Single (CompareTo): Throw the
5280         exception if the value is null too.
5282         * Char.cs (CompareTo): ditto.
5284         * ApplicationException.cs: Added constructor that does serialization.
5286         * ParamArrayAttribute.cs: Define attribute correctly.
5288 Wed Nov 14 16:31:19 CET 2001 Paolo Molaro <lupus@ximian.com>
5290         * AppDomain.cs: rename dummy interface _AppDomain to AppDomain_Intf.
5291         * Array.cs: fix Array.Copy.
5292         * AssemblyLoadEventArgs.cs: rename field.
5293         * CLSCompliantAttribute.cs: use correct name for the class.
5294         * Char.cs: fix IsLetter.
5295         * Console.cs, DateTime.cs, Decimal.cs, IConvertible.cs, Math.cs,
5296         SByte.cs, UInt16.cs, UInt32.cs, UInt64.cs, UIntPtr.cs: CLSCompliant updates.
5297         * Convert.cs: CLSCompliant updates, add ChangeType() methods.
5298         * Delegate.cs: renamed target field to m_target.
5299         * Enum.cs: added missing methods.
5300         * MonoType.cs: add a constructor and some needed properties.
5301         * Object.cs: implement GetType().
5302         * String.cs: CLSCompliant updates. Fixes everywhere to remove the
5303         ending 0 char.
5304         * Type.cs: add missing methods/properties.
5306 2001-11-10  Sean MacIsaac  <macisaac@ximian.com>
5308         * AttributeUseage.cs: Should define AttributeUsageAttribute.
5310         * CLSCompliant.cs: Marked with AttributeUsage attribute.
5312         * Decimal.cs: Fixed CLSCompliant attributes.
5314         * Type.cs: changed _impl to internal (needs to be accessable by
5315         subclasses).
5317         (TypeHandle): Marked as abstract, implementation removed.
5319         (IsNotPublic, IsPublic, GetMethods, GetPropery, GetConstructor,
5320         GetMethod): Added stub implementations so NUnit would link against
5321         corlib
5323 Tue Nov 6 09:11:43 CET 2001 Paolo Molaro <lupus@ximian.com>
5325         * AppDomain.cs: use an internal constructor for AssemblyBuilder.
5327 2001-11-05  Miguel de Icaza  <miguel@ximian.com>
5329         * NonSerializedAttribute.cs: Add AttributeUsage rules for this
5330         attribute. 
5332 Fri Nov 2 18:23:15 CET 2001 Paolo Molaro <lupus@ximian.com>
5334         * String.cs: fix a couple of bugs.
5335         * AppDomain.cs: use new AppBuilder constructor.
5336         * Buffer.cs, GC.cs, NonSerializedAttribute.cs,
5337         NotImplementedException.cs, ObjectDisposedException.cs,
5338         UnauthorizedAccessException.cs: add implementation.
5339         * OverflowException.cs: fix class name.
5341 2001-10-28  Jeffrey Stedfast  <fejj@ximian.com>
5343         * String.cs: Don't use a terminating nil char for our internal
5344         array.
5346 2001-10-27  Miguel de Icaza  <miguel@ximian.com>
5348         * Delegate.cs (Delegate.CombineImpl): Implement.
5349         (Delegate.Combine): Implement.
5351         * MulticastDelegate.cs (MulticastDelegate.Equals): Implement.
5353         (MulticastDelegate.CombineImpl): This was not as trivial as I
5354         thought. 
5356         * ContextStaticAttribute.cs: Added AttributeUsage to
5357         ContextStaticAttribute. 
5359         * FlagsAttribute.cs: Add AttributeUsage to FlagsAttribute
5361 2001-10-15  Martin Weindel <martin.weindel@t-online.de>
5363         * added Decimal.cs * added DecimalFormatter.cs (internal class
5364         used from System.Decimal)
5366 2001-10-11  Thomas Neidhart <tome@sbox.tugraz.at>
5368         * Convert.cs: Added methods for Base64 transforming just used the
5369           existing System.Security.Cryptography.ToBase64Transform, should
5370           be changed to use a stand-alone class, e.g. Base64Encoder
5371           
5372 2001-10-10  Derek Holden  <dholden@draper.com>
5374         * IntegerFormatter.cs: Added. Implements ToString for all the
5375         integer data types for all the format types.
5377         * Byte.cs: Using IntegerFormatter for ToString's.
5379         * SByte.cs: Using IntegerFormatter for ToString's.
5381         * Int16.cs: Using IntegerFormatter for ToString's.
5383         * Int32.cs: Using IntegerFormatter for ToString's.
5385         * Int64.cs: Using IntegerFormatter for ToString's.
5387         * UInt16.cs: Using IntegerFormatter for ToString's.
5389         * UInt32.cs: Using IntegerFormatter for ToString's.
5391         * UInt64.cs: Using IntegerFormatter for ToString's.
5393 2001-10-07  Miguel de Icaza  <miguel@ximian.com>
5395         * Exception.cs: Implement bits of serialization.
5397         * RuntimeFieldHandle.cs: Implement Serialization features.
5399         * Type.cs: Implement TypeHandle property.
5401 2001-09-28  Dick Porter  <dick@ximian.com>
5403         * LocalDataStoreSlot.cs: Implemented
5405 Tue Sep 25 19:58:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
5407         * String.cs: fix off-by-one error in Trim().
5409 Tue Sep 25 18:52:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
5411         * Type.cs: added GetType () method.
5413 Tue Sep 25 17:29:02 CEST 2001 Paolo Molaro <lupus@ximian.com>
5415         * MissingMethodException.cs, MissingMemberException.cs,
5416         MemberAccessException.cs: added.
5418 Tue Sep 25 16:46:43 CEST 2001 Paolo Molaro <lupus@ximian.com>
5420         * String.cs: don't access the string array out of bounds in
5421         LastIndexOf.  * Type.cs: fix return type of the Assembly property.
5423 Mon Sep 24 20:35:24 CEST 2001 Paolo Molaro <lupus@ximian.com>
5425         * String.cs: make Intern and IsIntern internalcalls.
5427 2001-09-13  Dick Porter  <dick@ximian.com>
5429         * Type.cs: Added a stub for the IsValueType property.
5431         * SystemException.cs (System): Added the other constructor, so
5432         that System.Threading exceptions can inherit it.
5434 2001-09-08  Jeffrey Stedfast  <fejj@ximian.com>
5436         * String.cs (TrimStart): Don't keep looping through the trimchars
5437         once we've found a match.
5438         (TrimEnd): Same here.
5439         (Trim): And finally here.
5441 2001-09-07  Ravi Pratap  <ravi@ximian.com>
5443         * Char.cs (IsLetterOrDigit): Implement.
5444         (IsLower): Implement, but we need to be Unicode aware.
5445         (IsNumber): Implement.
5446         (IsPunctuation): Implement.
5447         (IsWhiteSpace): Implement.
5448         (ToUpper): Fix to subtract 32 from the ASCII value, not 33 :)
5449         (ToLower): Same here.
5451 2001-09-04  Miguel de Icaza  <miguel@ximian.com>
5453         * Object.cs: Shortcut, if (a == b) then return true.
5455 Fri Sep 7 18:34:48 CEST 2001 Paolo Molaro <lupus@ximian.com>
5457         * Delegate.cs: we need a pointer to the method thunk in
5458         the delegate object.
5460 Fri Sep 7 12:28:01 CEST 2001 Paolo Molaro <lupus@ximian.com>
5462         * AsyncCallback.cs, common.src: add AsyncCallback delegate.
5464 2001-09-06  Jeffrey Stedfast  <fejj@ximian.com>
5466         * String.cs (System): Don't mix uint and int.
5468 2001-09-04  Jeffrey Stedfast  <fejj@ximian.com>
5470         * String.cs (BoyerMoore): Modified to not use pointers and to instead
5471         use indexes.
5472         (IndexOf): Use BoyerMoore.
5474 2001-09-02  Miguel de Icaza  <miguel@ximian.com>
5476         * All over: Use the autogenerated enumerations from the ECMA
5477         documentation that Sergey wrote.
5478         
5479         * PlatformID.cs: Add Unix definition.
5481         * OperatingSystem.cs: Use Unix instead of Linux here.
5483         * MarshalByRefObject.cs: Mark class as [Serializable].
5485 2001-08-28  Dietmar Maurer  <dietmar@ximian.com>
5487         * Console.cs: impl. (write only)
5488         implemented the stdin stuff
5490         * Int32.cs: impl. real op_Equal
5492 2001-08-24  Miguel de Icaza  <miguel@ximian.com>
5494         * (common.src): Removed IAsyncResult as it is not on CVS yet.
5496         * UIntPtr.cs: Removed CLSCompliant attribute before the namespace,
5497         as it breaks the build.
5499 2001-08-23  Michael Lambert <michaellambert@email.com>
5501         * IntPtr.cs: Optimized unsafe declaration, implemented GetObjectData, 
5502         added CLSCompliant attribute
5504         * IAsyncResult.cs: Added
5506         * common.src: Added IAsyncResult.cs
5508 2001-08-23  Michael Lambert <michaellambert@email.com>
5510         * UIntPtr.cs: Added
5512         * common.src: Added UIntPtr.cs
5514 2001-08-20  Dietmar Maurer  <dietmar@ximian.com>
5516         * Attribute.cs: uncomment some code to make it compile again
5518         * mono.src: removed duplicated Attribute.cs
5520 2001-08-16  Nick Drochak <ndrochak@gol.com>
5522         * Attribute.cs: implemented all methods except GetHashCode()
5524         * common.src: added Attribute.cs so it would compile in
5526 2001-08-10  Dietmar Maurer  <dietmar@ximian.com>
5528         * Object.cs: changed MemberWiseClone to MemberwiseClone, and
5529         marked it as InternalCall
5530         
5531         * common.src: removed UriFormatException.cs because the file is
5532         not there.
5534         * RuntimeTypeHandle.cs: replaced IntrPtr with IntPtr
5535         * Char.cs: replaced byte with char
5537         * Array.cs: make it work with the mono interpreter
5539 2001-08-06  Miguel de Icaza  <miguel@ximian.com>
5541         * Version.cs: Make the class sealed
5543 2001-08-08  Bob Smith  <bob@thestuff.net>
5545         * Random.cs: Many compile fixes.
5546         * Random.cs: I read a bad spec. Class updated to match real spec.
5548 2001-08-06  Miguel de Icaza  <miguel@ximian.com>
5550         * IntPtr.cs: Added and Completed implementation.
5552         * Uri.cs: Add a note.
5554 2001-08-06  Bob Smith  <bob@thestuff.net>
5556         * Random.cs: Compile fix. Needs more testing.
5558 2001-08-06 Garrett Rooney <rooneg@electricjellyfish.net>
5560         * Uri.cs: Initial Implementation.  Parsing needs to be fixed to take 
5561         into account IPv6 addresses, url encoding needs to be implemented, and 
5562         various minor methods need to be written, but this is a decent start.
5564 2001-08-06  Dietmar Maurer  <dietmar@ximian.com>
5566         * common.src: added Object.cs
5568         * mono.src: added ValueType.cs
5570 2001-08-02  Dietmar Maurer  <dietmar@ximian.com>
5572         * Math.cs: replaced libc with libm
5574 2001-08-02  Bob Smith  <bob@thestuff.net>
5576         * Random.cs: Implemented. Needs testing.
5578 2001-08-02  Miguel de Icaza  <miguel@ximian.com>
5580         * IServiceProvider.cs, EventHandler.cs: New files.
5582 2001-08-02  Marcel Narings  <marcel@narings.nl>
5583         
5584         * DateTime.cs: Cleaned up a bit. Added the Add* family members.
5585         Added exceptions. Added IConvertible. Still needs some platform 
5586         dependend stuff, the Parse and ToString members
5588 2001-08-01  Dietmar Maurer  <dietmar@ximian.com>
5590         * Type.cs (GetTypeFromHandle): added placeholder 
5592 2001-07-24  Derek Holden  <dholden@draper.com>
5594         * Boolean.cs: Formatted to code style standard. Added GetTypeCode
5595         which is really an IConvertible defined method.
5597         * Byte.cs: Added a missing Parse method. Put in Parse and ToString
5598         behavior, still need to do the main Parse and ToString.
5600         * Char.cs: Added a bunch of missing ECMA methods. Commented a
5601         specification discrepency. Still didn't any unicode stuff, though
5602         every IsFoo(char c) method has an IsFoo(string, index)
5603         counterpart, added wrappers for those.
5604         
5605         * Convert.cs: Fixed NaN/Inf checking and double/float
5606         rounding. Added ToType for IConvertible classes
5608         * Double.cs: Fixed ECMA min and max values. Added IsInfinity /
5609         IsNaN methods. Changed Inf/NaN internals.
5611         * IConvertible.cs: Added comments for using
5612         Convert.ToType. Changed return values to draft base values.
5614         * Int16.cs: Added a missing Parse statement. Put in behavior for
5615         overloaded ToString and Parse methods.
5617         * Int32.cs: Added a missing Parse statement. Put in behavior for
5618         overloaded ToString and Parse methods.
5620         * Int64.cs: Added a missing Parse statement. Put in behavior for
5621         overloaded ToString and Parse methods.
5622         
5623         * Single.cs: Put in ECMA epsilon value. Added IsInfinity / IsNaN
5624         methods. Changed Inf/NaN internals.
5626         * SByte.cs: Added a missing Parse method. Put in Parse and
5627         ToString behavior, still need to do the main Parse and ToString.
5629         * UInt16.cs: Added a missing Parse statement. Put in behavior for
5630         overloaded ToString and Parse methods.
5632         * UInt32.cs: Added a missing Parse statement. Put in behavior for
5633         overloaded ToString and Parse methods.
5635         * UInt64.cs: Added a missing Parse statement. Put in behavior for
5636         overloaded ToString and Parse methods.
5637         
5638 2001-07-20  Miguel de Icaza  <miguel@ximian.com>
5640         * MulticastDelegate.cs: New File.
5642         * Delegate.cs: New file.
5644         * Enum.cs: New file.
5646         * Attribute.cs: New file.
5648         * Type.cs: New file.
5650         * ParamArrayAttribute.cs: New file.
5652         * RuntimeTypeHandle.cs: New file.
5654         * MulticastDelegate.cs: Added.
5656         * DateTime.cs: Added
5658         * Delegate.cs: Added
5660 2001-07-18  Michael Lambert <michaellambert@email.com>
5662         * AttributeTargets.cs: Add.
5664 2001-07-19  Jeffrey Stedfast  <fejj@ximian.com>
5666         * Char.cs: Made ToUpper and ToLower public methods.
5668         * String.cs: Lots and lots of compile fixes - just need to write
5669         DateTime.cs and this should build completely now.
5671 2001-07-19  Bob Smith (bob@thestuff.net)
5673         * Math.cs: Implemented. 
5675 2001-07-19  Miguel de Icaza  <miguel@ximian.com>
5677         * String.cs: Removed tolower and toupper.
5679         * Char.cs: Moved ToLower and ToUpper from string to here. 
5681         * Convert.cs ToByte (float value), ToByte (double value) Use IsNan
5682         instead of comparing the value to Nan.
5684 2001-07-19  Duco Fijma (duco@lorentz.xs4all.nl)
5686         * TimeSpan.cs: New implementation.
5688 2001-07-18  Scott Sanders <scott@stonecobra.com>
5690          * UriFormatExcpetion.cs: Add - 85% complete
5692 2001-07-17  Jeffrey Stedfast  <fejj@ximian.com>
5694         * String.cs (IndexOf): Slight optimization that allows skipping
5695         over a few chars here and there. This isn't as good as using my
5696         Boyer-Moore implementation, however, Boyer-Moore is only really
5697         good for long strings (I plan on making the code decide which
5698         string search algorithm it should use on-the-fly at some point).
5699         (LastIndexOf): Fix to work correctly.
5700         (BoyerMoore): Took out some unneeded code and fixed an edge-case.
5702 2001-07-16  Michael Lambert <michaellambert@email.com>
5704         * EventArgs.cs: Add.
5705         
5706 2001-07-16  Miguel de Icaza  <miguel@ximian.com>
5708         * Version.cs: Remove my buggy comment.
5710 2001-07-15  Sean MacIsaac  <macisaac@ximian.com>
5712         * String.cs: Spelling error of IComparable, object's
5713         MemberwiseClone cannot be overridden.  Made indexer valid for now,
5714         but not sure what to do about this in the long run.  Seems to be a
5715         couple bugs in csc.exe having to do with multiple pointer defs in
5716         the same statement, and returning subclasses of a class in the
5717         return type of an interface function implementation.  Also moved
5718         operators inside of class definition.
5720 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
5722         * String.cs: A tom of compile fixes, although we still don't compile.
5724         * IConvertible.cs: The To*Int64() methods return *Int64's, not
5725         *Int32's. Also, it's ToDateTime() not ToDateType().
5727 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
5729         * String.cs: Apparently I needed to at least write stubs for the
5730         IConvertible interfaces. *sigh*
5732 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
5734         * String.cs: Many logic/other fixes and better usage of the
5735         features of c#
5736         (tolower): New convenience method to help condense code.
5737         (toupper): Another new helper method.
5738         (Compare): Use the new helper methods.
5739         (ToLower): use tolower().
5740         (ToUpper): use toupper().
5741         (LastIndexOfAny): Implemented.
5742         (BoyerMoore): New private helper method that implements a modified
5743         version of the Boyer-Moore search algorithm. Noothing uses it yet
5744         as I'm not 100% sure it even works properly with unicode strings
5745         not to mention it uses a huge lookup-table :-)
5746         (Split): Implemented.
5748 2001-07-13  Jeffrey Stedfast  <fejj@ximian.com>
5750         * TODO: Added things that need to be finished in System.String
5752         * String.cs: New source file implementing the System.String class
5754 2001-07-12  Sean MacIsaac  <macisaac@ximian.com>
5756         * TypeCode.cs: UInt64 was UInt63.
5758         * Object.cs: Fixed a numer of compiler errors.
5760         * Array.cs: Fixed some compiler errors.
5762         * IComparable.cs: Fixed some compiler errors.
5764         * ICloneable.cs: Fixed some compiler errors.
5766         * IConvertible.cs: Fixed some compiler errors.
5768         * IFormattable.cs: Fixed a compiler error.
5770         * IFormatProvider.cs: Fixed a compiler error.
5772         * IDisposable.cs: Fixed a compiler error.
5774         * IFormatProvider.cs: Added public accesability type to
5775         IFormatProvider.
5777         * Exception.cs: Added a using statement to remove compile time
5778         error.
5780         * ApplicationException.cs: Removed a ; that was causing a compiler
5781         error.
5783         * Int16.cs: Fixed some compiler errors.
5785         * Int32.cs: Fixed some compiler errors.
5787         * Int64.cs: Fixed some compiler errors.
5789         * SystemException.cs: Fixed a compiler error.
5791         * UInt16.cs: Fixed some compiler errors.
5793         * UInt32.cs: Fixed some compiler errors.
5795         * UInt64.cs: Fixed some compiler errors.
5797         * Void.cs: Fixed a compiler error.      
5799 2001-07-12  Joe Shaw  <joe@ximian.com>
5801         * Array.cs: Fix backwards parameters to Array.SetValue()
5802         throughout.
5803         (BinarySearch): Fix backward logic surrounding whether to call
5804         value.CompareTo or comparer.Compare.
5805         (LastIndexOf): Stop being stupid. I am so not used to strongly
5806         bounded arrays...
5807         (Sort): Implement a quicksort.
5809 2001-07-11  Joe Shaw  <joe@ximian.com>
5811         * Array.cs: Change all instances of trying to access an array with
5812         the index operator to calls to GetValue and SetValue, and add
5813         InternalGetValue and InternalSetValue which are internal calls
5814         into the runtime. Ew.
5816 2001-07-10  Joe Shaw  <joe@ximian.com>
5818         * Array.cs: Implemented everything but Sort().
5820 2001-07-09  Jeffrey Stedfast  <fejj@ximian.com>
5822         * Object.cs (Object::Equals): Object variable name is `o'.
5824 2001-07-06  Joe Shaw  <joe@ximian.com>
5826         * Int16.cs, Int32.cs, Int64.cs, UInt16.cs, UInt32.cs, UInt64.cs:
5827         Implement the IComparable and IFormattable interfaces. Fix a typo
5828         (publig -> public)
5830         * ApplicationException.cs, ArgumentException.cs,
5831         ArgumentNullException.cs, ArgumentOutOfRangeException.cs,
5832         ArtithmeticException.cs, ArrayTypeMismatchException.cs,
5833         DivideByZeroException.cs, DuplicateWaitObjectException.cs,
5834         ExecutionEngineException.cs, FormatException.cs,
5835         IndexOutOfRangeException.cs, InvalidCastException.cs,
5836         InvalidOperationException.cs, InvalidProgramException.cs,
5837         MulticateNotSupportedException.cs, NotFiniteNumberException.cs,
5838         NotSupportedException.cs, NullReferenceException.cs,
5839         OutOfMemoryException.cs, OverflowException.cs, RankException.cs,
5840         StackOverflowException.cs, SystemException.cs,
5841         TypeInitializationException.cs: Added all of the exceptions
5842         specified by the language spec. Mmmm... bloat.
5844 2001-07-06  Miguel de Icaza  <miguel@ximian.com>
5846         * Int64.cs, Int32.cs: Put.  Parsing and ToString missing.  Should
5847         do a generic routine all of these guys use.
5849         * Int16.cs: identified missing methods.
5851         * UInt16.cs, UInt32.cs, UInt64.cs: Add.
5853 2001-06-26  Miguel de Icaza  <miguel@ximian.com>
5855         * TypeCode.cs: Implement
5857         * Void.cs: Implement.
5859         * TODO: Add file to keep track of pending tasks.
5861         * Object.cs, ValueType.cs: Implement.