3637620e65acad008ec24bf2d603bb96cc6744ff
[mono.git] / mcs / class / corlib / System / ChangeLog
1 2005-08-09  Miguel de Icaza  <miguel@novell.com>
2
3         * ConsoleKey.cs: Include a few aliases for a few values that were
4         introduced recently.
5
6 2005-08-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
7
8         * ConsoleKey.cs: added Backspace, which has the same value as BackSpace.
9         Fixes bug #75697.
10
11 2005-08-08  Atsushi Enomoto  <atsushi@ximian.com>
12
13         * String.cs : (StartsWith) compared string lengths are not always the
14           same in culture-sensitive comparison.
15
16 2005-08-05  Gert Driesen  <drieseng@users.sourceforge.net>
17
18         * Array.cs: Changed protected ctor to private. Fixes API compatibility
19         with MS.NET.
20         * RuntimeFieldHandle.cs: Equals methods and GetHashCode should only
21         be exposed in 2.0 profile.
22         * RuntimeMethodHandle.cs: Equals methods and GetHashCode should only
23         be exposed in 2.0 profile.
24         * RuntimeTypeHandle.cs: Equals methods and GetHashCode should only
25         be exposed in 2.0 profile.
26         * Type.cs: Added GetType method and implemented _Type interface.
27         Fixes API compatibility with MS.NET.
28
29 2005-07-28  Marek Safar  <marek.safar@seznam.cz>
30
31         * StringComparer.cs: Add generics version of string interfaces.
32
33 2005-07-26  Atsushi Enomoto  <atsushi@ximian.com>
34
35         * StringComparer.cs : implemented StringCultureComparer.GetHashCode().
36
37 2005-07-26  Zoltan Varga  <vargaz@freemail.hu>
38
39         * StringSplitOptions.cs MidpointRounding.cs: New files.
40
41         * String.cs Math.cs: Add stubs for some new 2.0 APIs.
42
43 2005-07-26  Marek Safar  <marek.safar@seznam.cz>
44
45         * StringComparer.cs: New file.
46
47 2005-07-26  Raja R Harinath  <harinath@gmail.com>
48
49         * Enum.cs (GetValue): Make private.  Return an ulong.
50         (Parse): Tighten scope of couple of variables.  Use ulong when
51         twiddling bits.
52
53 2005-07-25  Raja R Harinath  <rharinath@novell.com>
54
55         * Enum.cs (FindName, GetValue): New.  Carved out of ...
56         (Parse): ... this.  Refactor and simplify code.  Avoid incurring
57         exceptions when parsing names.  Avoid allocating arrays unless
58         necessary.  Avoid conversion of an enumeration constant to its own
59         type.  (Incorporates ideas from a patch by Gonzalo Paniagua Javier.)
60
61 2005-07-13  Lluis Sanchez Gual  <lluis@novell.com>
62
63         * MarshalByRefObject.cs: GetLifetimeService() should be virtual.
64         Fixes bug #75527.
65
66 2005-07-13  Miguel de Icaza  <miguel@novell.com>
67
68         * Array.cs: Patch from rodrigobamboo@gmail.com that fixes the
69         signature for GetValue and SetValue to make the long [] argument
70         be a params argument. 
71
72 2005-07-11  Pedro Martínez Juliá  <pedromj@gmail.com>
73
74         * Convert.cs: Fix the bug when Convert.ChangeType was using
75         NumberFormatInfo instead of DateTimeFormatInfo when the type to
76         change is a DateTime.
77
78 2005-07-11  Martin Baulig  <martin@ximian.com>
79
80         * Array.cs: Use Type.Equals() instead of `==' to compare type
81         parameters.     
82
83 2005-07-10  Kamil Skalski <nazgul@nemerle.org>
84
85         * Type.cs: Mark BindGenericParameters as deprecated. Use
86         MakeGenericType as default implementation with updated signature.
87
88 2005-07-09  Zoltan Varga  <vargaz@freemail.hu>
89
90         * Attribute.cs (IsDefined): Fix IsDefined for ParameterInfo's. Fixes
91         #75514.
92
93 2005-07-05  Lluis Sanchez Gual  <lluis@novell.com>
94
95         * DelegateSerializationHolder.cs: When the deserialized target is
96         a proxy, call IsInstanceOfType to force the proxy to load the
97         real type of the remote object. This is needed to make sure that
98         subsequent calls to GetType() return the expected type. This fixes
99         bug #75447.
100
101 2005-07-03  Ben Maurer  <bmaurer@ximian.com>
102
103         * OperatingSystem.cs: patch from Aleksandar Dezelin to fix
104         serialization.
105
106 2005-06-30  Sebastien Pouliot  <sebastien@ximian.com> 
107
108         * Guid.cs: Avoid code duplication between overriden methods (new in 
109         2.0). Avoid exception processing when possible. Renamed parameters to
110         match the framework. Added ComVisible to NET_2_0.
111
112 2005-06-28  Elliott Draper  <el@eldiablo.co.uk>
113
114         * Activator.cs: This implements the generic Activator.CreateInstance<T>()
115         function for NET_2_0. It's full signature is:
116                 public static T CreateInstance<T>();
117
118 2005-06-28  Lluis Sanchez Gual  <lluis@novell.com>
119
120         * Decimal.cs: Renamed internal fields for the sake of serialization
121         interoperability with MS.NET.
122         * Exception.cs: In the StackTrace property, return the stack trace
123         if it has a value, even if the exception has not been thrown
124         (it may have been deserialized).
125
126 2005-06-28  Martin Baulig  <martin@ximian.com>
127
128         * Array.cs (Array.InternalArray<T>): New nested class; derives
129         from Array.  This is now used by the runtime for arrays; fixes #74953.
130
131 2005-06-27  Atsushi Enomoto  <atsushi@ximian.com>
132
133         * String.cs : added some extra whitespace characters for Trim().
134           Fixed bug #75259.
135
136 2005-06-13  Michal Moskal <malekith@nemerle.org>
137         
138         * MonoType.cs: Don't use MethodHandle in GetMethod/GetConstructor,
139         since it now throws on MethodBuilders. Don't use FieldHandle in
140         GetField (throws on FieldBuilder) - just use the name.
141
142 2005-06-13  Martin Baulig  <martin@ximian.com>
143
144         * MonoType.cs
145         (MonoType.getFullName): Added `bool assembly_qualified' argument.
146         (MonoType.AssemblyQualifiedName): The interncall now adds the
147         assembly name, so we don't need to do it here.
148         (MonoType.FullName): Use the new getFullName() API.
149
150 2005-06-14  Sebastien Pouliot  <sebastien@ximian.com>
151
152         * Char.cs: ToLowerInvariant and ToUpperInvariant are now public in 
153         NET_2_0. Added "new" white char and ComVisible for 2.0.
154
155 2005-06-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
156
157         * Convert.cs: FromBase64String and FromBase64CharArray are now internal
158         calls to avoid extra allocations.
159
160 2005-06-09  Kamil Skalski <nazgul@nemerle.org>
161
162         * Type.cs: Add MakeGenericType method form .NET 2.0 beta 2 API
163
164         * Type.cs MonoType.cs: Add internal virtual
165         Get{Method,Constructor,Field} for obtaining instanciated *Info objects
166         from non-instanciated counterparts
167
168 2005-06-09  Zoltan Varga  <vargaz@freemail.hu>
169
170         * ModuleHandle RuntimeMethodHandle.cs RuntimeTypeHandle.cs RuntimeFieldHandle.cs RuntimeArgumentHandle.cs: Add missing 2.0 attributes.
171
172 2005-06-08  Zoltan Varga  <vargaz@freemail.hu>
173
174         * Type.cs: Add missing 2.0 attributes.
175
176 2005-06-07  Carlos Alberto Cortez <calberto.cortez@gmail.com>
177
178         * MonoCustomAttrs.cs: Added GetCustomAttributesDataInternal icall, and
179         also internal method GetCustomAttributesData, used by 
180         System.Reflection.CustomAttributeData.
181         
182 2005-06-06  Sebastien Pouliot  <sebastien@ximian.com>
183
184         * Activator.cs: Added  _Activator interface (and members) for 1.1 and
185         missing attributes (for both 1.1 and 2.0).
186         * String.cs: Made internal To[Lower|Upper]Invariant methods public for
187         2.0. Reworked Trim() to skip a useless call. Added missing attribute
188         for 2.0.
189         * Type.cs: Added  _Type, _MemberInfo interfaces (1.1/2.0). Added 
190         missing attribute for 2.0. Hided some public/protected methods.
191
192 2005-06-06  Zoltan Varga  <vargaz@freemail.hu>
193
194         * ModuleHandle.cs: Update after PortableExecutableKinds name change.
195
196 2005-06-06  Sebastien Pouliot  <sebastien@ximian.com>
197
198         * _AppDomain.cs: Added new members in the interface (added in 1.1 SP1)
199         * AppDomain.cs: Added new members from _AppDomain interface.
200         * AppDomainManager.cs: Fixed flags and added attributes.
201         * DomainManagerInitializationFlags.cs: The flag has been renamed to 
202         AppDomainManagerInitializationOptions in beta2.
203
204 2005-06-06  Zoltan Varga  <vargaz@freemail.hu>
205
206         * Type.cs MonoCustomAttrs.cs: Return SerializableAttribute for types as well.
207
208 2005-06-06  Sebastien Pouliot  <sebastien@ximian.com>
209
210         * Exception.cs: Implements _Exception only for 2.0.
211
212 2005-06-06  Zoltan Varga  <vargaz@freemail.hu>
213
214         * GC.cs: Fix build.
215         
216         * GC.cs UnhandledExceptionEventArgs.cs IntPtr.cs RuntimeFieldHandle.cs 
217           String.cs Object.cs Math.cs RuntimeMethodHandle.cs ModuleHandle.cs 
218           RuntimeTypeHandle.cs AppDomain.cs: Add some missing 2.0 methods/attributes.
219
220 2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
221
222         * Environment.cs:
223         * AppDomain.cs: if the assembly is loaded from a byte array, Location
224         returns "". Fixes bug #74958.
225
226 2005-06-04  Ben Maurer  <bmaurer@ximian.com>
227
228         * *.cs: More 2.0 API fixups
229
230         * *.cs: In beta 2, generics are no longer non-cls-compliant.
231
232 2005-06-05  Kazuki Oikawa  <kazuki@panicode.com>
233
234         * NumberFormatter.cs: Fixed the output of 0.ToString("00.00E00")
235         that was different from MSFT.
236         * String.cs: Fixed IndexOfAny thrown an exception
237         when startIndex of arguments equals Length. (Closes bug #75083.)
238
239         * Decimal.cs: Changed to use NumberFormatter in ToString.
240         * NumberFormatter.cs: Implemented decimal formatter.
241
242 2005-06-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
243
244         * Type.cs: reverted wrong fix for bug #71300 in r45150. This makes SSL
245         support in System.Net work again.
246
247 2005-06-01  Ben Maurer  <bmaurer@ximian.com>
248
249         * CharEnumerator.cs: add IEnumerable <char> support
250
251 2005-05-30  Sebastien Pouliot  <sebastien@ximian.com>
252
253         * Activator.cs: Added missing validation on parameters.
254
255 2005-05-28  Ben Maurer  <bmaurer@ximian.com>
256
257         * Type.cs: Check that the arguments of the `types' array are
258         non-null. Fixes bug 71300
259
260 2005-05-28  Sebastien Pouliot  <sebastien@ximian.com>
261
262         * AppDomainSetup.cs: Added new 2,0 constructors and the 
263         ActivationArguments property.
264         * AppDomainManager.cs: Added using System.Runtime.Hosting as it is the
265         new location for the ApplicationActivator class.
266         * ApplicationActivator.cs: Moved to System.Runtime.Hosting namespace.
267
268 2005-05-27  Vladimir Vukicevic  <vladimir@pobox.com>
269
270         * Environment.cs: bump corlib version for bug #75060.
271
272 2005-05-27  Raja R Harinath  <rharinath@novell.com>
273
274         * Environment.cs (ExpandEnvironmentVariables): Rewrite
275         sb.Append (s.SubString (a, b)) to sb.Append (s, a, b).
276         * String.cs (FormatHelper): Rewrite sb.Append (s.SubString (a)) to
277         sb.Append (s, a, s.Length - a).  Avoid allocating 'pad' string --
278         StringBuilder has an appropriate Append overload.
279
280 2005-05-26  Zoltan Varga  <vargaz@freemail.hu>
281
282         * Type.cs (IsEnum): Special case EnumBuilder here.
283
284 2005-05-26  Sebastien Pouliot  <sebastien@ximian.com>
285
286         * MonoType.cs: Changed call from GetName to UnprotectedGetName to
287         allow call to work with serialization under a restrictive policy.
288         The code path (the protected information) isn't being used.
289
290 2005-05-25  Zoltan Varga  <vargaz@freemail.hu>
291
292         * Exception.cs: Use the new StackTrace ctor.
293
294         * Type.cs: Improve support for user defined type subclasses.
295
296 2005-05-25  Atsushi Enomoto  <atsushi@ximian.com>
297
298         * DateTime.cs : Added minimum digit parameter to ParseNumber() to
299           reject 2 digit years for "yyyy".
300           Use GetAllDateTimePatterns() instead of constant string.
301           Fixed bug #72788.
302
303 2005-05-25  Atsushi Enomoto  <atsushi@ximian.com>
304
305         * DateTime.cs : next_not_digit prevented some valid parse.
306           Just remove it, since now we pass max length to ParseNumber() and
307           thus it is not needed anymore. Fixed bug 63137.
308
309 2005-05-24  Atsushi Enomoto  <atsushi@ximian.com>
310
311         * DateTime.cs : HH should not always block tt. Fixed bug #60912.
312           Reset num after whitespace parsing.
313           Added "M/d/yyyy HH':'mm':'ss tt" as an invariant pattern.
314
315 2005-05-24  Atsushi Enomoto  <atsushi@ximian.com>
316
317         * DateTime.cs : Allow ',' where whitespaces are allowed.
318           Fixed bug #71289.
319
320 2005-05-22  Ben Maurer  <bmaurer@ximian.com>
321
322         * BitConverter.cs: Speed this up, fixing 74014. Patch from
323         `Aleksandar Dezelin'.
324
325 2005-05-20  Zoltan Varga  <vargaz@freemail.hu>
326
327         * Type.cs: Add some helper methods needed by other classes.
328
329         * Array.cs: Improve support for user defined Type subclasses.   
330         
331         * Type.cs: Rename GetTypeCode icall to GetTypeCodeInternal and add a managed
332         wrapper function, not used yet.
333
334         * Type.cs Array.cs: Revert this as it breaks the build.
335
336         * Type.cs Array.cs: Improve support for user defined Type subclasses.
337
338 2005-05-19  Ben Maurer  <bmaurer@ximian.com>
339
340         * Delegate.cs (Equals): Use `as' to protect in the case where !
341         (obj is Delegate)
342
343 2005-05-19  Raja R Harinath  <rharinath@novell.com>
344
345         * Console.cs (Readline) [NET_2_0]: Avoid "uninitialized variable"
346         error.
347
348 2005-05-19  Miguel de Icaza  <miguel@novell.com>
349
350         * TermInfoDriver.cs: Removed warning.
351
352         * Array.cs (Resize<T>, TrueForAll<T>, ConvertAll<TInput,TOutput>,
353         FindLastIndex<T>: Parameter names are normative.        
354         Fix coding style ("Method<T>" not "Method <T>")
355         Throw argument exceptions per argument.
356         
357         (FindAll): Fix bug, actually return the values that were computed,
358         not a short version of the original array.
359         
360 2005-05-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
361
362         * Console.cs: fix error in the 2_0 side and split ReadLine in 2, one
363         for each framework version.
364
365 2005-05-15  Andreas Nahr  <ClassDevelopment@A-SoftTech.com>
366
367         * Attribute.cs:
368         * Exception.cs: .Net 1.1 already has these interfaces
369
370 Mon May 16 18:23:49 CEST 2005 Paolo Molaro <lupus@ximian.com>
371
372         * MonoCustomAttrs.cs, Type.cs: do not create a SerializableAttribute
373         object on GetCustomAttributes (fixes bug #74717).
374
375 2005-05-15  Atsushi Enomoto  <atsushi@ximian.com>
376
377         * DateTime.cs : for 'z' next_not_digit didn't work as expected.
378           Fixed bug #74775.
379
380 2005-05-15  Atsushi Enomoto  <atsushi@ximian.com>
381
382         * DateTime.cs : don't allow extraneous pattern characters also for
383           non-exact parsing (ParseExact() was fine). Bug #74936 fixed
384
385 2005-05-13  Gert Driesen <drieseng@users.sourceforge.net>
386
387         * Activator.cs: Match exceptions thrown by MS.NET for
388         CreateInstance overloads if type is abstract. Fixes bug #74861.
389
390 2005-05-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
391
392         * OperatingSystem.cs: PlatformID.Unix.
393
394 2005-05-09  Sebastien Pouliot  <sebastien@ximian.com>
395
396         * Environment.cs: Patch from Gonzalo to fix Environment.OSVersion.
397         Platform under NET_2_0 to return PlatformID.Unix. Fix bug #74841.
398
399 2005-05-07  Atsushi Enomoto  <atsushi@ximian.com>
400
401         * NumberFormatter.cs : roundtrip number is already rounded before
402           FormatGeneral() and DefaultMaxPrecision was extraneous. This fixes
403           bug #72955.
404
405 2005-05-07  Ben Maurer  <bmaurer@ximian.com>
406
407         * Array.cs (BinarySearch): Patch from kazuki to pass arguments to
408         the comparer in the same order as msft. Fixes #70725
409
410 2005-05-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
411
412         * Enum.cs: the hashtable don't need to be synchronized any more, since
413         it's only accessed from withint a lock.
414
415         * Console.cs: stdin, stdout and stderr will never be finalized. Fixes
416         bug 74768.
417
418 2005-05-06  Zoltan Varga  <vargaz@freemail.hu>
419
420         * Array.cs: Remove CLSCompliant (false) attributes.
421
422 2005-05-06  Martin Baulig  <martin@ximian.com>
423
424         * Predicate.cs, Action.cs, Comparision.cs, Converter.cs: Add
425         [CLSCompliant(true)] attribute.
426
427 2005-05-04  Miguel de Icaza  <miguel@novell.com>
428
429         * Enum.cs (MonoEnumInfo): Based on a patch from James Willcox,
430         initialize cache as a static method.  Fixes #74828.
431
432 2005-05-03  Marek Safar  <marek.safar@seznam.cz>
433
434         * Console.cs: CancelKeyPress is stubbed.
435
436 2005-04-25  Sebastien Pouliot  <sebastien@ximian.com>
437
438         * ActivationContext.cs: Updated for beta2.
439         * AppDomainManager.cs: Updated for beta2.
440         * ApplicationId.cs: Updated for beta2.
441         * ApplicationIdentity.cs: Updated for beta2.
442         * Exception.cs: Now use Assembly.UnprotectedGetName () as Exception 
443         doesn't leak the code base from the returned AssemblyName.
444
445 2005-04-25  Martin Baulig  <martin@ximian.com>
446
447         * Environment.cs (Environment.Version): Changed to 2.0.50215.
448
449 2005-04-22  Sebastien Pouliot  <sebastien@ximian.com>
450
451         * Attribute.cs: Added _Attribute interface to NET_2_0 to reduce the 
452         number of "missing" in the class status pages.
453
454 2005-04-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
455
456         * MulticastDelegate.cs: (GetInvocationList) when building the list that
457         is later traversed forward, mark 'this' as the end of the chain.
458         Fixes bug #74607.
459
460 2005-04-19  Zoltan Varga  <vargaz@freemail.hu>
461
462         * Environment.cs: Bump corlib version.
463
464 2005-04-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
465
466         * WindowsConsoleDriver.cs: ignore key release events.
467
468 2005-04-06  Atsushi Enomoto  <atsushi@ximian.com>
469
470         * Char.cs : ToUpper()/ToLower() comparison ranges were incorrect.
471
472 2005-04-05  Sebastien Pouliot  <sebastien@ximian.com>
473
474         * _AppDomain.cs: Add security checks to the interface. Declarative 
475         security on events requires BOOTSTRAP_WITH_OLDLIB to work properly 
476         with older MCS.
477         * AppDomain.cs: Add some (not complete) security checks. Bug#74411 is
478         blocking some cases from working properly. Declarative security on 
479         events requires BOOTSTRAP_WITH_OLDLIB to work properly with older MCS.
480
481 2005-04-04  Sebastien Pouliot  <sebastien@ximian.com>
482
483         * AppDomain.cs: Use the PolicyLevel to resolve the granted permissions
484         on the AppDomain. Added an internal property to get the granted set.
485
486 2005-04-04  Atsushi Enomoto  <atsushi@ximian.com>
487
488         * String.cs,
489           Char.cs : use TextInfo for ToLower() and ToUpper().
490
491 2005-03-31  Sebastien Pouliot  <sebastien@ximian.com>
492
493         * Exception.cs: Added Assert for TypeInformation to GetObjectData and
494         ToString methods (not required for 2.0 as TypeInformation will be 
495         deprecated). Added null check for GetObjectData.
496
497 Tue Mar 29 11:47:19 CEST 2005 Paolo Molaro <lupus@ximian.com>
498
499         * Delegate.cs: allow IronPython 0.7 to compile.
500
501 2005-03-24  Miguel de Icaza  <miguel@novell.com>
502
503         * Delegate.cs: Add CreateDelegate with a target option, currently
504         internal as it is not exposed by the framework yet.
505
506 2005-03-24  Zoltan Varga  <vargaz@freemail.hu>
507
508         * String.cs: Add some 2.0 methods.
509
510 2005-03-24  Sebastien Pouliot  <sebastien@ximian.com>
511
512         * Activator.cs: Now use the supplied evidences when loading 
513         assemblies. Added LinkDemand for RemotingConfiguration on both
514         GetObject methods.
515         * Console.cs: Added Assert for UnmanagedCode on OpenStandard[Error|
516         Input|Output] as they use a handle on a FileStream (which is
517         restricted otherwise). Added Demand for UnmanagedCode for the
518         Set[Error|In|Out] methods.
519         * MarshalByRefObject.cs: Added LinkDemand for Infrastructure on 
520         CreateObjRef, GetLifetimeService and InitializeLifetimeService.
521         * RuntimeMethodHandle.cs: Added Demand for UnmanagedCode on 
522         GetFunctionPointer method.
523         * TypedReference.cs: Added LinkDemand for ReflectionPermission's
524         MemberAccess on MakeTypedReference.
525
526 2005-03-14  Sebastien Pouliot  <sebastien@ximian.com>
527
528         * Environment.cs: Fix CAS unit tests for NET_1_1.
529         * Exception.cs: Fix CAS unit tests for NET_1_1.
530
531 2005-03-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
532
533         * Version.cs: don't ignore the last number. Fixes bug #73539.
534
535 2005-03-11  Sebastien Pouliot  <sebastien@ximian.com>
536
537         * MonoType.cs: When the security manager is active, constructors and
538         methods will return null if a linkdemand fails during reflection 
539         query.
540
541 2005-03-11  Zoltan Varga  <vargaz@freemail.hu>
542
543         * Array.cs (Sort): Bail out early if length <= 1. Fixes #72721.
544
545 2005-03-10  Zoltan Varga  <vargaz@freemail.hu>
546
547         * Environment.cs: Bump corlib version.
548
549 2005-03-10  Martin Baulig  <martin@ximian.com>
550
551         * Nullable.cs (Nullable<T>.ToString): Return an empty string if
552         we're null.
553
554 2005-03-09  Zoltan Varga  <vargaz@freemail.hu>
555
556         * Activator.cs MonoType.cs: Applied patch from Carlos Alberto Cortez
557         (carlos@unixmexico.org). Allow creation of valuetypes with no ctor.
558         Fixes #73432.
559
560 2005-03-04  Zoltan Varga  <vargaz@freemail.hu>
561
562         * Environment.cs: Bump corlib version.
563
564         * Exception.cs (StackTrace): Return the wrapper info as well.
565
566 2005-03-02  Kazuki Oikawa  <kazuki@panicode.com>
567
568         * NumberFormatter.cs: Some internal classes was converted to structs,
569         and improved some points.
570
571 2005-02-26  Kazuki Oikawa  <kazuki@panicode.com>
572
573         * NumberFormatter.cs: Improved performance and memory usage
574         when integer standard format.
575         * SByte.cs:
576         * Int16.cs:
577         * Int32.cs:
578         * Int64.cs:
579         * Byte.cs:
580         * UInt16.cs:
581         * UInt32.cs:
582         * UInt64.cs:
583         * Single.cs:
584         * Double.cs:
585         * TimeSpan.cs: Improved these directly call to NumberFormatter.
586
587 2005-02-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
588
589         * TermInfoDriver.cs: set the xmit mode if available. Handle key input
590         and translate them into a ConsoleKeyInfo.
591         * TermInfoReader.cs: added a method to return the bytes of a string
592         property.
593         * ConsoleKeyInfo.cs: added copy constructor and setters.
594
595 2005-02-24  Zoltan Varga  <vargaz@freemail.hu>
596
597         * Array.cs: Add missing 2.0 attributes and correct some parameter names.
598
599 2005-02-24  Carlos Alberto Cortez <calberto.cortez@gmail.com>
600
601         * AppDomain.cs: Changed GetAssemblies, LoadAssembly, and Load signatures,
602         and added some to support the reflection only methods. DoAssemblyResolve
603         was modified to invoke the new PreBindAssemblyResolve event when the
604         assembly is reflection only.
605         
606 2005-02-21  Zoltan Varga  <vargaz@freemail.hu>
607
608         * GC.cs Double.cs IntPtr.cs Array.cs Decimal.cs Math.cs Single.cs:
609         Add net 2.0 ReliabilityContractAttributes.
610
611 2005-02-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
612
613         * TermInfoDriver.cs: cygwin terminals are handled by the windows
614         console driver.
615
616         * TermInfoReader.cs:
617         * TermInfoNumbers.cs:
618         * KnownTerminals.cs:
619         * TermInfoBooleans.cs:
620         * TermInfoStrings.cs: documented.
621
622 2005-02-19  Kazuki Oikawa <kazuki@panicode.com>
623
624         * Array.cs: Reverse the order in the Equals calls.
625
626 2005-02-18  Zoltan Varga  <vargaz@freemail.hu>
627
628         * Exception.cs (StackTrace): Implement this in managed code since it is
629         needed by CAS. Fixes #72146.
630
631 2005-02-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
632
633         * WindowsConsoleDriver.cs: implemented MoveBufferArea.
634
635 2005-02-14  Raja R Harinath  <rharinath@novell.com>
636
637         * Array.cs (Array.Swapper) [!BOOTSTRAP_WITH_OLDLIB]: Make nested.
638         See #72015.
639
640 2005-02-12  Ben Maurer  <bmaurer@ximian.com>
641
642         * Version.cs (CompareTo, Equals): Make sure the versions for
643         generics handle `null'. The non-generics versions now just call
644         the regular versions, to reduce code duplication.
645
646         * Boolean.cs (CompareTo): make this really work for generics 
647
648         * Type.cs (GetProperty): Passing new Type [0] is different than
649         null. null means `I don't care how many types this has,' while new
650         Type [0] means `this must have 0 types.'
651
652 2005-02-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
653
654         * corlib.dll.sources: added WindowsConsoleDriver.cs
655
656         * System/ConsoleDriver.cs: use WindowsConsoleDriver on windows and
657         implemented the few missing properties/methods.
658
659         * System/IConsoleDriver.cs: uncommented all methods/properties.
660         * System/TermInfoDriver.cs: implement changes from IConsoleDriver.
661         * System/WindowsConsoleDriver.cs: implemented IConsoleDriver for
662         windows. Only missing MoveBufferArea by now.
663
664 2005-02-11  Zoltan Varga  <vargaz@freemail.hu>
665
666         * Type.cs (IsAssignableFrom): Add support for TypeBuilders.
667
668         * Int32.cs AppDomain.cs: Fix warnings.
669
670 2005-02-10  Marek Safar  <marek.safar@seznam.cz>
671
672         * IServiceProvider.cs: Is not ComVisible.
673
674         * NonSerializedAttribute.cs: Fix AttributeUsage flags.
675
676         * Type.cs: Fix ClassInterface attribute.
677
678 Tue Feb 8 19:26:47 CET 2005 Paolo Molaro <lupus@ximian.com>
679
680         * Delegate.cs: remove the finalizer from Delegate: this
681         is handled internally by the runtime now.
682
683 2005-02-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
684
685         * Activator.cs: provide the Type name when throwing an exception.
686
687 2005-02-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
688
689         * TimeZone.cs: lock on the static Hashtable instead of 'this'. Fixes
690         bug #72238.
691
692 Fri Feb 4 15:46:04 CET 2005 Paolo Molaro <lupus@ximian.com>
693
694         * Array.cs: provide specialized versions of some methods.
695
696 Thu Feb 3 15:15:25 CET 2005 Paolo Molaro <lupus@ximian.com>
697
698         * String.cs: provide a managed memcpy and memset method
699         for use both in corlib and from the JIT. Implement
700         some methods with the managed helpers and remove some icalls.
701
702 2005-01-31  Sebastien Pouliot  <sebastien@ximian.com>
703
704         * Exception.cs: Added Data property for NET_2_0 (required for new
705         unit tests).
706
707 2005-01-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
708
709         * ConsoleDriver.cs:
710         * TermInfoDriver.cs:
711         * IConsoleDriver.cs:
712         * Console.cs: added BufferWidth and BufferHeight.
713
714 2005-01-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
715
716         * ConsoleDriver.cs:
717         * Console.cs:
718         * TermInfoDriver.cs:
719         * IConsoleDriver.cs: added a few more properties and fixed cursor
720         addressing.
721
722 2005-01-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
723
724         * ConsoleDriver.cs: static class that forwards the Console 2.0 class
725         calls to the proper driver.
726         * TermInfoDriver.cs: terminfo based console driver.
727         * IConsoleDriver.cs: interface implemented by console drivers.
728
729         * ConsoleCancelEventArgs.cs:
730         * ConsoleCancelEventHandler.cs:
731
732         * ConsoleModifiers.cs: 
733         * ConsoleSpecialKey.cs:
734         * ConsoleColor.cs:
735         * ConsoleKey.cs: new enumerations.
736
737         * ConsoleKeyInfo.cs: New file.
738
739         * TermInfoReader.cs: reader for terminfo capabilities files.
740
741         * TermInfoNumbers.cs:
742         * TermInfoBooleans.cs:
743         * TermInfoStrings.cs: enumations for terminfo property names.
744
745         * KnownTerminals.cs: byte arrays for selected terminals.
746
747         * Console.cs: added more 2.0 methods and implemented some of them.
748
749
750 2005-01-30  Atsushi Enomoto  <atsushi@ximian.com>
751
752         * Int32.cs : (FindSign) IndexOf() is better than creating substring.
753
754 2005-01-27  Sebastien Pouliot  <sebastien@ximian.com>
755
756         * BadImageFormatException.cs: Protect the fusion (GAC) log from being
757         disclosed unless code has ControlPolicy and ControlEvidence.
758
759 2005-01-27  Zoltan Varga  <vargaz@freemail.hu>
760
761         * Exception.cs: Compute stack trace on demand.
762
763 2005-01-26  Sebastien Pouliot  <sebastien@ximian.com>
764
765         * Environment.cs: Removed hack for static class (NET_2_0). Added 
766         proper security for FailFast (documented in FDBK20543). Added new
767         method IsRunningOnWindows to replace (Platform == 128) as the logic is
768         gonna change in the future (Unix is id #4 in NET_2_0).
769
770 2005-01-24  Sebastien Pouliot  <sebastien@ximian.com>
771
772         * Environment.cs: Added CAS security (both declarative and imperative)
773         as a test. This shouldn't affect execution unless --security is 
774         specified.
775
776 2005-01-19  Rafael Teixeira  <rafaelteixeirabr@hotmail.com>
777         * Type.cs: Corrected implementation for the Type.FilterNameIgnoreCase
778         and Type.FilterName delegates They weren't dealing with the optional '*'
779         at the end of the filter mask
780
781 2005-01-19  Zoltan Varga  <vargaz@freemail.hu>
782
783         * Array.cs: Fix a typo in the previous patch.
784         
785         * Array.cs: Fix some test failures in the generic methods.
786
787         * Array.cs: Implement AsReadOnly.
788
789 2005-01-13  Geoff Norton  <gnorton@customerdna.com>
790
791         * Guid.cs: Fix endian issues (use Mono.Security.BitConverterLE).  Fixes
792         #71242
793
794 2005-01-11  Sebastien Pouliot  <sebastien@ximian.com>
795
796         * AppDomain.cs: Removed Activate and ActivateNewProcess methods. They
797         have been removed from 2.0.
798
799 2005-01-11  Zoltan Varga  <vargaz@freemail.hu>
800
801         * Boolean.cs Char.cs Single.cs Double.cs: Implement IComparable<T> in
802         NET 2.0.
803
804 2005-01-10  Sebastien Pouliot  <sebastien@ximian.com>
805
806         * ApplicationIdentity.cs: Throw ArgumentNullException if name is null.
807         Add default culture (neutral) to the name when none is specified.
808         * AppDomain.cs: Changed IsDefaultAppDomain (2.0). Is seems that we 
809         can't trust Id ?
810
811 2005-01-09  Sebastien Pouliot  <sebastien@ximian.com>
812
813         * DateTime.cs: Reverted last patch for utc as it broke all certificate
814         handling and another unit test in DateTime.
815
816 2005-01-09  Miguel de Icaza  <miguel@ximian.com>
817
818         * DateTime.cs: Return immediately if useutc is set to true, there
819         is no need to do the extra computation (which also happened to
820         create a new DateTime using the `use_localtime' constructor, which
821         lead to the erroneous date returns when using 'u' or `U'
822         formats).   
823
824         Fixes another bug in the regression test suite.
825
826 2005-01-08  Sebastien Pouliot  <sebastien@ximian.com> 
827
828         * AppDomain.cs: Fix the DefaultDomain property to return the root 
829         domain (as it seems that the root's Id isn't always 0).
830         * BitConverter.cs: The "special support" for ToString(new byte[0]) is
831         only for NET_2_0 - previously this was an ArgumentOutOfRangeException.
832
833 2005-01-08  Miguel de Icaza  <miguel@ximian.com>
834
835         * IntegerFormatter.cs: The - sign inside the "negative" section in
836         a multi-format string means `show the sign' only if it is the
837         first token, not `copy verbatim'.  In the other sections it means
838         `copy-verbatim'.
839
840         This makes things like:  (-34).ToString ("#;-#") show up as "-34"
841         instead of "--34".
842
843         The bad news is that this code needs to be rewritten to handle all
844         the formatting cases, see bug #71112 for details.
845
846         * Convert.cs (Convert.ToType): Throw an InvalidCastException if
847         the conversion is invalid, not ArgumentException, this fixes
848         another regression in our test suite.
849
850 2005-01-08  Sebastien Pouliot  <sebastien@ximian.com>
851
852         * AppDomain.cs: Add ApplicationIdentity property for 2.0;
853         * AppDomainManager.cs: Remove HostRefusedSet support (it does not 
854         exists anymore).
855
856 2005-01-08  Zoltan Varga  <vargaz@freemail.hu>
857
858         * DateTime.cs: Create MaxValue and MinValue using a different constructor to avoid static 
859         initialization problems.
860
861 2005-01-02  Ben Maurer  <bmaurer@ximian.com>
862
863         * Int32.cs: NumberStyles.AllowExponent was supported by the
864         Int32.Parse function. From Akira <mei@work.email.ne.jp>. Fixes bug
865         70469.
866
867 2005-01-01  Atsushi Enomoto  <atsushi@ximian.com>
868
869         * Base64FormattingOptions.cs : it was not in System namespace.
870
871 2004-12-21  Atsushi Enomoto  <atsushi@ximian.com>
872
873         * DateTime.cs : If no progress on value string, don't regard as
874           matched. This fixes bug #70707.
875
876 2004-12-20  Sebastien Pouliot  <sebastien@ximian.com>
877
878         * Environment.cs: Bump corlib version.
879
880 2004-12-16  Zoltan Varga  <vargaz@freemail.hu>
881
882         * Array.cs (DoBinarySearch): Fix a warning.
883
884 2004-12-08  Zoltan Varga  <vargaz@freemail.hu>
885
886         * Environment.cs: Bump corlib version.
887
888         * AppDomain.cs: Add new DefineInternalDynamicAssembly () method.
889
890 2004-12-06  Ben Maurer  <bmaurer@ximian.com>
891
892         * Exception.cs: Prevent stringifying the type name on the
893         ctor. this gets called a few times on every execution to create a
894         nullref exception.
895
896 2004-12-06  Martin Baulig  <martin@ximian.com>
897
898         * Decimal.cs: Decimal constant support has been merged into GMCS,
899         removed the FIXME.
900
901 2004-12-06  Zoltan Varga  <vargaz@freemail.hu>
902
903         * Environment.cs: Bump corlib version.
904         
905         * Environment.cs: Bump corlib version.
906
907 2004-11-30  Zoltan Varga  <vargaz@freemail.hu>
908
909         * MonoType.cs (UnderlyingSystemType): Make this return this as in
910         MS.NET. Fixes #56245.
911
912 2004-11-29  Atsushi Enomoto  <atsushi@ximian.com>
913
914         * GC.cs : Collect(generation) actually does not throw an exception
915           even if generation > MaxGeneration (MS document bug).
916
917 2004-11-28  Zoltan Varga  <vargaz@freemail.hu>
918
919         * Exception.cs: Implement _Exception under NET_2_0.
920
921         * Byte.cs SByte.cs UInt16.cs Int16.cs: Make these compile under csc 2.0.
922
923         * AccessViolationException.cs DataMisalignedException.cs OperationCanceledException.cs
924         NotCancelableException.cs TimeoutException.cs: New files.
925
926 2004-11-23  Raja R Harinath  <rharinath@novell.com>
927
928         * Decimal.cs [NET_2_0]: Use old code till GMCS imports decimal
929         constant support.
930
931 2004-11-23  Raja R Harinath  <rharinath@novell.com>
932
933         * Decimal.cs [BOOTSTRAP_WITH_OLDLIB]: Use old code for compilers
934         without decimal constant support.
935
936 2004-11-23  Marek Safar  <marek.safar@seznam.cz>
937
938         * Decimal.cs: Updated to use compiler decimal constant support.
939
940 2004-11-20  Zoltan Varga  <vargaz@freemail.hu>
941
942         * MonoType.cs: Revert last change since it breaks remoting.
943
944 2004-11-18  Zoltan Varga  <vargaz@freemail.hu>
945
946         * MonoType.cs (UnderlyingSystemType): Make this return this as in
947         MS.NET. Fixes #56245.
948
949 2004-11-17  Carlos Alberto Cortez <carlos@unixmexico.org>
950
951         * INullable.cs: New interface added.
952         * Nullable.cs: Methods added. Also a static Nullable class
953         containing static methods.
954         
955 2004-11-15  Sebastien Pouliot  <sebastien@ximian.com>
956
957         * BitConverter.cs: Added support for special case when ToString is 
958         called with (new byte [0]).
959
960 2004-11-10  Lluis Sanchez  <lluis@novell.com>
961
962         * Exception.cs: Added setter for StackTrace.
963
964 2004-11-07  Ben Maurer  <bmaurer@ximian.com>
965
966         * IntegerFormatter.cs: Avoid .ToCharArray
967
968 2004-11-06  Ben Maurer  <bmaurer@ximian.com>
969
970         * Single.cs, Double.cs (GetHashCode): Better hashcode impl
971
972 2004-11-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
973
974         * InvalidOperationException.cs: make the message more meaningful and
975         real. Fixes bug #69055.
976
977 2004-10-28  Ben Maurer  <bmaurer@ximian.com>
978
979         * String.cs: Rather than == String.Empty, use .Length == 0. It
980         is a bit faster (avoids a method call, and the code is less complex).
981
982 2004-10-24  Fawad Halim  <fawad@fawad.net>
983         * Environment.cs: If an Environment variable value isn't found, leave the trailing % of the reference for further matches.
984         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.
985         This fixes bug #64995.
986
987 2004-10-19  Lluis Sanchez  <lluis@novell.com>
988
989         * MarshalByRefObject.cs: Field _identity is not serializable.
990         This fixes bug #68567.
991
992 2004-10-17  Ben Maurer  <bmaurer@ximian.com>
993
994         * DateTime.cs (ZeroPad): Use unsafe code to speed this up. We
995         avoid entering slow integer formatting code.
996
997         (_ToString): Use ZeroPad here when possible, as it is faster.
998
999 2004-10-11  Martin Baulig  <martin@ximian.com>
1000
1001         * Environment.cs: Bump corlib version to 28.
1002
1003 2004-10-08  Zoltan Varga  <vargaz@freemail.hu>
1004
1005         * Convert.cs (ToType): Throw an exception when converting null to a
1006         valuetype. Fixes #67780.
1007
1008 2004-10-08  Atsushi Enomoto  <atsushi@ximian.com>
1009
1010         * DateTime.cs : Performance fix. ParseExact() implementation should
1011           avoid s = s.Substring(1).
1012
1013 2004-10-08  Atsushi Enomoto  <atsushi@ximian.com>
1014
1015         * DateTime.cs : When it it not exact parse, 'Z' is allowed as a suffix
1016           of m/s/t/z. This fixes bug 66723.
1017
1018 Wed Oct 6 12:37:54 CEST 2004 Paolo Molaro <lupus@ximian.com>
1019
1020         * String.cs: make GetHashCode() managed.
1021
1022 2004-10-04  Zoltan Varga  <vargaz@freemail.hu>
1023
1024         * AppDomain.cs: Make ThreadStatic variables static. Fixes #56614.
1025
1026         * Runtime*Handle.cs ModuleHandle.cs: Add Equals + GetHashCode.
1027
1028         * ModuleHandle.cs: Add missing methods.
1029
1030         * RuntimeTypeHandle.cs: Add GetModuleHandle () method.
1031
1032 2004-10-03  Zoltan Varga  <vargaz@freemail.hu>
1033
1034         * AttributeTargets.cs: Add 2.0 GenericParameter value.
1035
1036         * Environment.cs: Bump corlib version.
1037
1038 2004-10-02  Zoltan Varga  <vargaz@freemail.hu>
1039
1040         * Int32.cs UInt32.cs Byte.cs SByte.cs Int16.cs UInt16.cs Int64.cs UInt64.cs: Implement 2.0 TryParse methods.
1041
1042 2004-09-30  Geoff Norton  <gnorton@customerdna.com>
1043
1044         * Convert.cs: ConvertToBase* was not endian aware.  Implemented EndianSwap
1045         and swapping of all values before going into the BitConverter so that values
1046         are returned with proper endianess.
1047
1048 2004-09-23  Martin Garton  <martin@wrasse.demon.co.uk>
1049
1050         * Convert.cs: ToType was returning unconverted object when it should
1051         fail with an ArgumentException.
1052
1053 2004-09-27  Zoltan Varga  <vargaz@freemail.hu>
1054
1055         * Array.cs: Add stub for AsReadOnly<T>.
1056         
1057 2004-09-25  Zoltan Varga  <vargaz@freemail.hu>
1058
1059         * Type.cs: Add MakePointerType && stub for ReflectionOnlyGetType.
1060
1061         * MonoCustomAttrs.cs (GetCustomAttributesBase): Add support for
1062         parameters.
1063
1064 2004-09-24  Zoltan Varga  <vargaz@freemail.hu>
1065
1066         * MonoCustomAttrs.cs (GetCustomAttributesBase): Add support for
1067         methods and fields.
1068         
1069         * MonoCustomAttrs.cs: Beginnings of support for returning 2.0 pseudo
1070         custom attributes.
1071
1072         * MonoCustomAttrs.cs (RetrieveAttributeUsage): Avoid infinite recursion.
1073
1074         * MonoCustomAttrs.cs (GetCustomAttributes): Fix the 'attributeType is 
1075         sealed' optimization.
1076
1077         * Type.cs: Implement 2.0 StructLayoutAttribute property. 
1078
1079         * Type.cs Add GetPseudoCustomAttributes () method.
1080
1081 2004-09-24  Martin Baulig  <martin@ximian.com>
1082
1083         * Type.cs (Type.GetGenericParameterConstraints): New public method.
1084
1085 2004-09-23  Zoltan Varga  <vargaz@freemail.hu>
1086
1087         * MonoCustomAttrs.cs (GetCustomAttributes): Rename the icall to
1088         GetCustomAttributesInternal and add a 'pseudoAttrs' argument.
1089
1090         * Type.cs: Tweak Module property in 2.0 build.
1091
1092 2004-09-23  Martin Baulig  <martin@ximian.com>
1093
1094         * Type.cs (Type.GenericParameterAttributes): New public property.
1095
1096 2004-09-23  Martin Baulig  <martin@ximian.com>
1097
1098         * GenericParameterAttributes.cs: New file.
1099
1100 2004-09-22  Zoltan Varga  <vargaz@freemail.hu>
1101
1102         * ModuleHandle.cs: Updated after changes to Module class.
1103
1104 2004-09-21  Geoff Norton <gnorton@customerdna.com>
1105
1106         * Type.cs: BindingFlags.IgnoreCase was being ignored, this reimplements
1107         this filter. Fixes bug #65778.
1108
1109 2004-09-20  Zoltan Varga  <vargaz@freemail.hu>
1110
1111         * Environment.cs: Bump corlib version.
1112
1113 2004-09-19  Zoltan Varga  <vargaz@freemail.hu>
1114
1115         * ModuleHandle.cs: New file.
1116
1117         * RuntimeFieldHandle.cs: Add an internal ctor.
1118
1119 2004-09-19  Dick Porter  <dick@ximian.com>
1120
1121         * Console.cs: Use the internal wrappers for StreamReader and
1122         StreamWriter that catch IOException.
1123
1124 2004-09-16  Sebastien Pouliot  <sebastien@ximian.com>
1125
1126         * Environment.cs: Bumped mono_corlib_version to 25.
1127
1128 2004-09-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1129
1130         * AppDomain.cs: added SetupInformationNoCopy property, since
1131         SetupInformation creates a copy now, all updates to it should use the
1132         actual data. Fixes bug #61991 take 2.
1133
1134 2004-09-09  Tim Coleman <tim@timcoleman.com>
1135         * Base64FormattingOptions.cs: New enum
1136         * Convert.cs: Add new ToBase64String methods for Fx 2.0
1137
1138 2004-09-08  Marek Safar  <marek.safar@seznam.cz>
1139
1140         * Console.cs,
1141         * GC.cs: Class is static for NET_2_0.
1142
1143 2004-09-07 Ben Maurer  <bmaurer@users.sourceforge.net>
1144
1145         * Activator.cs: Make sure not to call .GetType on a
1146         null argument. fixes 63852
1147
1148 2004-09-06 Ben Maurer  <bmaurer@users.sourceforge.net>
1149
1150         * Array.cs (Clear): make this an icall.
1151
1152 2004-09-05 Ben Maurer  <bmaurer@users.sourceforge.net>
1153
1154         * MonoCustomAttribute.cs: Avoid the call to GetBase when possible.
1155
1156 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1157
1158         * Environment.cs: (ExpandEnvironmentVariables) don't nullify the case
1159         insensitive enironment variables hashtable once we create it.
1160
1161 2004-09-04  Sebastien Pouliot  <sebastien@ximian.com>
1162
1163         * AppDomain.cs: Changed 2 imperative security demands to declarative
1164         (unsupported) so it doesn't (for now) call the security runtime.
1165
1166 2004-09-02  Zoltan Varga  <vargaz@freemail.hu>
1167
1168         * Delegate.cs: Free the delegate trampoline in the finalizer.
1169
1170 2004-08-26  Sebastien Pouliot  <sebastien@ximian.com>
1171
1172         * ApplicationId.cs: Completed GetHashCode using information from MS
1173         (FDBK13339).
1174
1175 2004-08-23  Sebastien Pouliot  <sebastien@ximian.com>
1176
1177         * Boolean.cs: Added TryParse static method for NET_2_0 profile.
1178
1179 2004-08-19  Atsushi Enomoto  <atsushi@ximian.com>
1180
1181         * DateTime.cs : When hour format is "hh", MS.NET (maybe incorrectly)
1182           allows 12, that should not be accepted (13 is rejected) and
1183           interpreted as 0. This fixes bug 63376.
1184
1185 2004-08-17  Sebastien Pouliot  <sebastien@ximian.com>
1186
1187         * Version.cs: Fixed Clone so we can use it on versions with only
1188         major/minor or major/minor/build.
1189
1190 2004-08-17  Martin Baulig  <martin@ximian.com>
1191
1192         * MonoType.cs (MonoType.getFullName): Added `bool full_name'
1193         argument specifying whether or not to include the type arguments.
1194         (MonoType.FullName): Don't include the type arguments.
1195         (MonoType.ToString): Include them here.
1196
1197         * Environment.cs: Bumped mono_corlib_version to 24.
1198
1199 2004-08-16  Duncan Mak  <duncan@ximian.com>
1200
1201         * AttributeUsageAttribute.cs: Change the AttributeUsage to
1202         AttributeTargets.Class, from AttributeTargets.All, fixes Zoltan's
1203         bug #62895.
1204
1205 2004-08-11  Marek Safar  <marek.safar@seznam.cz>
1206
1207         * AppDomain.cs: Fixed typo of DefineDynamicAssembly argument.
1208         Added call to AddPermissionRequests to pass permissions
1209         arguments.
1210         * Environment.cs: Added a few Fx 2.0 methods
1211
1212 2004-08-09  Sebastien Pouliot  <sebastien@ximian.com>
1213
1214         * ApplicationId.cs: Fixed typo to fix NET_2_0 compilation.
1215         * AppDomain.cs: Fixed use of Evidence and AppDomainSetup (copies, not
1216         references). Added (non-obsolete) Fx 2.0 properties and methods.
1217         * AppDomainSetup.cs: Added internal copy constructor.
1218         * DomainManagerInitializationFlags.cs: Fixed values.
1219
1220 2004-08-08  Sebastien Pouliot  <sebastien@ximian.com>
1221
1222         * AppDomainInitializer.cs: New Fx 2.0 class for AppDomain.
1223         * AppDomainManager.cs: New Fx 2.0 class for AppDomain.
1224         * ApplicationActivator.cs: New Fx 2.0 class for AppDomain.
1225         * ApplicationId.cs: New Fx 2.0 class.
1226         * ApplicationIdentity.cs: Fixed ToString.
1227         * DomainManagerInitializationFlags.cs: New Fx 2.0 flags for AppDomain.
1228
1229 2004-08-05  Sebastien Pouliot  <sebastien@ximian.com>
1230
1231         * AppDomain.cs: Added a new icall, getDomainByID, to get the an 
1232         AppDomain using it's Id. Completed SetAppDomainPolicy.
1233         * Environment.cs: Bumped mono_corlib_version to 23.
1234
1235 2004-08-02  Martin Baulig  <martin@ximian.com>
1236
1237         * DateTime.cs, TimeSpan.cs, Guid.cs, Version.cs: Implement IComparable<T>.
1238
1239 2004-07-29  Atsushi Enomoto  <atsushi@ximian.com>
1240
1241         * Environment.cs : GacPath on windows is based on mscorlib.dll, and
1242           now its location is changed.
1243
1244 2004-07-21  Lluis Sanchez Gual  <lluis@novell.com>
1245
1246         * Environment.cs: Return the MS.NET 2.0 beta1 runtime version for the
1247           NET_2_0 profile.
1248         
1249 2004-07-18  Martin Baulig  <martin@ximian.com>
1250
1251         * Array.cs: Ben Maurer implemented all the new generic methods
1252         here :-)
1253
1254 2004-07-17  Martin Baulig  <martin@ximian.com>
1255
1256         * Decimal.cs: Implement IComparable<Decimal>.
1257
1258 2004-07-17  Martin Baulig  <martin@ximian.com>
1259
1260         * Byte.cs, Int16.cs, Int32.cs, Int64.cs, SByte.cs, String.cs,
1261         UInt16.cs, UInt32.cs, UInt64.cs: Implement IComparable<T>.      
1262
1263 2004-07-13  Sebastien Pouliot  <sebastien@ximian.com>
1264
1265         * ActivationContext.cs: New class in Fx 2.0. Required for 
1266         System.Security.Policy.
1267         * ApplicationIdentity.cs: New class in Fx 2.0. Required for 
1268         System.Security.Policy.
1269         * IApplicationDescription.cs: New interface in Fx 2.0. Required for 
1270         System.Security.Policy.
1271         * IHostContext.cs: New interface in Fx 2.0. Required for 
1272         System.Security.Policy.
1273
1274 2004-07-12  Geoff Norton <gnorton@customerdna.com>
1275
1276         * DateTime.cs: Patch for bug #61112.  Our DateTime wasn't roundtripping over timezone
1277           boundaries properly.  This patch checkes ToLocalTime() to see if we're tripping over a boundary
1278           and will add/subtract the hour if needed
1279
1280 2004-07-07  Geoff Norton <gnorton@customerdna.com>
1281
1282         * Monotype.cs: Patch for bug #58844.  Dont throw exceptions right away;
1283           pass through all the possibly BindingInfo's and keep a bool value as to the type
1284           of exception we might need to throw;
1285
1286 2004-07-07  Geoff Norton <gnorton@customerdna.com>
1287
1288         * Patch to fix bug #58973
1289
1290 2004-07-02  Jackson Harper  <jackson@ximian.com>
1291
1292         * PlatformID.cs: New 2.0 values.
1293         
1294 2004-06-25  Ben Maurer <bmaurer@ximian.com>
1295         
1296         * Environment.cs: GetFolderPath has new behavior. r=miguel
1297
1298 2004-06-23  Sebastien Pouliot  <sebastien@ximian.com>
1299
1300         * DateTime.cs: Throw ArgumentOutOfRangeException if the year is
1301         bigger than 9999. Fix bug #41845.
1302         * FloatingPointFormatter.cs: Applied correction from Jon Skeet on
1303         the "R"eversible format for negative numbers.
1304
1305 2004-06-21  Jackson Harper  <jackson@ximian.com>
1306
1307         * Decimal.cs: Make sure to use invariant culture when parsing
1308         floats stringified with the invariant culture. Patch by Rodrigo
1309         B. de Oliveira.
1310         
1311 2004-06-19  Atsushi Enomoto  <atsushi@ximian.com>
1312
1313         * FloatingPointFormatter.cs : Literal string should be kept in the
1314           output.
1315
1316 2004-06-18  Atsushi Enomoto  <atsushi@ximian.com>
1317
1318         * DateTime.cs : Concatenating whitespace removal was not working fine.
1319           Modified FormatException message (1 cent kindness).
1320
1321 2004-06-18  Ben Maurer  <bmaurer@ximian.com>
1322         
1323         * Action.cs, ArraySegment.cs, Comparison.cs, Converter.cs, Predicate.cs:
1324         new generics classes
1325         * IComparable.cs: add the new <T> version.
1326         * EventHandler.cs: new <T> version.
1327         
1328 2004-06-18  Dick Porter  <dick@ximian.com>
1329
1330         * String.cs: The icall can cope with embedded \0 now.
1331
1332 2004-06-18  Atsushi Enomoto  <atsushi@ximian.com>
1333
1334         * DateTime.cs :
1335           - Added new common pattern "yyyy/M/dZ"
1336           - empty string should not be compared in _ParseEnum()
1337           - Use culture independent string comparison in _ParseString()
1338           - Whitespace removal should be checked after '..' token check (some
1339             pattern such like es-ES LongDatePattern contains spaces in '..').
1340           - formats null check should be done (to throw ArgumentNullException)
1341             in ParseExact().
1342           - When specified one character format, dates are incorrectly regarded
1343             as to use invariant culture.
1344
1345 2004-06-18  Gert Driesen <drieseng@users.sourceforge.net>
1346
1347         * ArgIterator.cs: changed layout to Auto
1348         * DateTime.cs: changed layout to Auto
1349
1350 2004-06-18  Gert Driesen <drieseng@users.sourceforge.net>
1351
1352         * DateTime.cs: CRLF to LF
1353
1354 2004-06-17  Sebastien Pouliot  <sebastien@ximian.com>
1355
1356         * Decimal.cs: Fixed regression in System.Data caused by the recent 
1357         changes. Adapted (and moved) the code to correct the scale from 
1358         SqlMoney. Removed unused (and unusable) IsOne and fixed IsZero (where
1359         scale has no importance).
1360
1361 2004-06-17  Lluis Sanchez Gual  <lluis@ximian.com>
1362
1363         * Activator.cs: In CreateInstance(), use Public|Instance if access binding
1364           attributes are omitted.
1365
1366 2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>
1367
1368         * DateTime.cs : GetDateTimeFormats(char, IFormatProvider) should also
1369           check if the format character is valid.
1370
1371 2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>
1372
1373         * DateTime.cs : AddDays(double) rounds the input.
1374
1375 2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>
1376
1377         * DateTime.cs : Incorrect maxvalue comparison in ToUniversalTime().
1378           Fixed ToLocalTime() as well, but it does check range for MinValue.
1379
1380 2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>
1381
1382         * DateTime.cs : Added overflow check in ToUniversalTime() and
1383           ToLocalTime(). Fixed bug #60253.
1384
1385 2004-06-16  Sebastien Pouliot  <sebastien@ximian.com>
1386
1387         * FloatingPointFormatter.cs: Implemented "R" format using Jon Skeet
1388         source code (with permission). Fix (biggest) part of bug #60110.
1389         http://www.yoda.arachsys.com/csharp/floatingpoint.html
1390
1391 2004-06-15  Sebastien Pouliot  <sebastien@ximian.com>
1392
1393         * Decimal.cs: Fixed scale after Round (a different scale is correct 
1394         from a math point of view but affect the string representation of the
1395         value). Note: other operations also have scale problems!
1396         * DecimalFormatter.cs: Fixed FormatGeneral to match Fx 1.1 output.
1397         * FloatingPointFormatter.cs: Fixed ToString which doesn't use banker's
1398         rounding (which is the rounding provided by Math.Round). This fix bug
1399         #60111. The code (new Round methods) should be moved elsewhere (as it
1400         may also be required elsewhere) post Mono 1.0.
1401
1402 2004-06-15  Gert Driesen <drieseng@users.sourceforge.net>
1403
1404         * AppDomainSetup.cs: added TODO for serialization
1405         * ExecutionEngineException.cs: added missing serialization ctor
1406         * InvalidProgramException.cs: added missing serialization ctor
1407         * MulticastNotSupportedException.cs: added missing serialization ctor
1408         * ObsoleteAttribute.cs: fixed serialization compatibility with MS.NET
1409         * Random.cs: fixed serialization compatibility with MS.NET
1410
1411 2004-06-15  Paolo Molaro <lupus@ximian.com>
1412
1413         * Type.cs: removed unused (and non-existing) icall type_is_instance.
1414
1415 2004-06-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1416
1417         * Environment.cs: use internalGetHome instead of getting "HOME" as
1418         that variable may not be defined.
1419
1420 2004-06-14  Sebastien Pouliot  <sebastien@ximian.com>
1421
1422         * TimeSpan.cs: Fixed timespan with large values for hours or minutes
1423         (overflow is only checked for days but can also occurs in hours and
1424         minutes which uses Int32 when multiplying). The new results match MS
1425         implementation.
1426
1427 2004-06-14  Atsushi Enomoto  <atsushi@ximian.com>
1428
1429         * FloatingPointFormatter.cs : Recognize '%' and '\u2030' and replace
1430           them with matching NumberFormatInfo properties.
1431
1432 2004-06-14  Atsushi Enomoto  <atsushi@ximian.com>
1433
1434         * Double.cs : Use IFormatProvider.GetFormat() instead of literal '-'.
1435         * FloatingPointFormatter.cs :
1436           Use NumberFormatInfo.NegativeSign. This change saves many XSLT test
1437           failures.
1438           Format Permille pattern (It is undocumented but actually available,
1439           and used in xsl:format-number).
1440
1441 2004-06-14  Raja R Harinath  <rharinath@novell.com>
1442
1443         * Console.cs (Console.Write, Console.WriteLine): Disable __arglist
1444         version with BOOTSTRAP_WITH_OLDLIB.
1445         * String.cs (STring.Concat): Likewise.
1446
1447 2004-06-13  Atsushi Enomoto  <atsushi@ximian.com>
1448
1449         * FloatingPointFormatter.cs :
1450           - Don't format more than 15 fraction digits. Don't report to Pedro
1451             directly (removing the error message with his concent).
1452           - When format string starts with '.', it means integral part format 
1453             is not specified. Ignore '.' characters after the first
1454             appearance. Fixed bug #59890.
1455           - 0.0 is formatted only before the third ';' appearance.
1456
1457 2004-06-11  Sebastien Pouliot  <sebastien@ximian.com>
1458
1459         * DateTime.cs: Added a AddRoundedMilliseconds which use the "old Mono"
1460         rounding logic which worked for FromOADate (while the newer didn't).
1461         * TimeSpan.cs: Now throw an OverflowException when the timespan is
1462         over MaxValue or under MinValue.
1463
1464 2004-06-11  Martin Baulig  <martin@ximian.com>
1465
1466         * Console.cs (Write, WriteLine): Implemented the varargs versions.
1467
1468 2004-06-11  Martin Baulig  <martin@ximian.com>
1469
1470         * String.cs (Concat): Implemented the varargs version.
1471
1472 2004-06-10  Sebastien Pouliot  <sebastien@ximian.com>
1473
1474         * Decimal.cs: Hacked the Parse method to allow the runtime C code to
1475         decode it properly (i.e. matching MS results). Fixed the Round method
1476         for negative decimal numbers (moved code from Math.cs).
1477         * Math.cs: Now use Decimal class for Round(Decimal,int). Required to
1478         fix a bug when rounding a negative decimal.
1479
1480 2004-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1481
1482         * AppDomain.cs: set the _principal to null when changing the policy.
1483         * Console.cs: remove ClsCompliant attribute from a method marked as
1484         internal and added comment.
1485
1486 2004-06-10  Gert Driesen <drieseng@users.sourceforge.net>
1487
1488         * Delegate.cs: marked protected fields private to match public
1489         API of MS.NET, marked DynamicInvokeImpl and GetMethodImpl
1490         protected to fix public API
1491         * Enum.cs: marked ctor protected to match public API of MS.NET
1492         * MulticastDelegate.cs: marked DynamicInvokeImpl protected to
1493         match public API of MS.NET
1494
1495 2004-06-10  Atsushi Enomoto  <atsushi@ximian.com>
1496
1497         * DateTime.cs : Added more common patterns.
1498
1499 2004-06-09  Sebastien Pouliot  <sebastien@ximian.com>
1500
1501         * Decimal.cs: Fixed banker rounding by calling Math.Round. This won't
1502         be a performance winner (the actual Math code has a note to wait a
1503         better Decimal implementation) but it returns the correct results
1504         (without adding new code in corlib or the runtime). Fix #37744.
1505
1506 2004-06-09  Atsushi Enomoto  <atsushi@ximian.com>
1507
1508         * DateTime.cs :
1509           - A bunch of fixes (patch by Steven Brown). Fraction seconds are 
1510             now represented as double. Strict token check for 'Z'.
1511           - Pattern validity check in GetDateTimeFormats(char).
1512           - Fixed pattern "yyyy/M/d HH:mm:ss".
1513
1514 2004-06-09  Sebastien Pouliot  <sebastien@ximian.com>
1515
1516         * Decimal.cs: Fixed remainder (and optimized some cases not to call 
1517         unmanaged code). Simplified divide. Removed workaround for bug #59793.
1518         Fixed GetHashCode to return different result for X and -X.
1519
1520 2004-06-08  Atsushi Enomoto  <atsushi@ximian.com>
1521
1522         * DateTime.cs :
1523           - Now re-checked all common format patterns. They should be tried
1524             with both current culture and invariant culture. Since '/' covers
1525             '-', removed extraneous patterns. Added more common patterns
1526             such as "yyyy-MM-dd" and X509Certificate pattern (it is valid
1527             only after NET_1_1). Commented out 1 character format patterns.
1528           - The format patterns we should try should not be obtained by
1529             GetAllDateTimePatterns(). Just use 'd', 'D', 't', 'T', ... (one
1530             character patterns), to handle UTC correctly. Examined patterns
1531             are changed, to 1) common patterns with specified (or current)
1532             culture, 2) common patterns with invariant, 3) The above "one
1533             character patterns" with specified (or current) culture.
1534           - When trying to parse some kind of patterns such as RFC1123, 
1535             always use invariant DateTimeFormatInfo so that they can avoid
1536             parsing with culture-dependent calendar.
1537           - Check "GMT" only when doing Parse(). Don't it when ParseExact().
1538           - Removed extraneous '-' case. It is not special one.
1539           - When ParseExact(), allow only '/' for '/' pattern character.
1540           - When Parse(), allow any non-letter & non-number characters.
1541           - When pattern is not fully parsed, reject that format.
1542           - Added "exact" parameter to some ParseExact().
1543           - RFC1123 pattern is (again) now parsed in local time. I regressed
1544             some problems in previous fix.
1545
1546 2004-06-08  Sebastien Pouliot  <sebastien@ximian.com>
1547
1548         * Decimal.cs: Fixed cast to integer types to truncate (not round) the
1549         value.
1550
1551 2004-06-07  Duncan Mak  <duncan@ximian.com>
1552
1553         * Exception.cs (Source): This can return null.
1554
1555 2004-06-07  Sebastien Pouliot  <sebastien@ximian.com>
1556
1557         * DateTime.cs: Fixed FromFileTime for negative values. Fixed 
1558         constructor to limit range of milliseconds from 0,999. Fixed
1559         ToType method to work for object, string and DateTime.
1560
1561 2004-06-07  Sebastien Pouliot  <sebastien@ximian.com>
1562
1563         * DateTime.cs: Fixed OLE Automation date conversions: timezone 
1564         insensitive, wrong exception in FromOADate, handling of Min/Max 
1565         values, negative doubles where integer part is negative but 
1566         decimals are positive! Charming format ;-)
1567
1568 2004-06-06  Sebastien Pouliot  <sebastien@ximian.com>
1569
1570         * String.cs: Fixed Join in case separator parameter is null.
1571         * TimeSpan.cs: Cache format errors during parsing and throw 
1572         FormatException only if there was no overflow.
1573
1574 2004-06-06  Gert Driesen <drieseng@users.sourceforge.net>
1575
1576         * MonoCustomAttrs.cs: fixed issue where an empty array was 
1577         returned when GetCustomAttributes was invoked with null
1578         attribute type and there was only one result
1579
1580 2004-06-06  Sebastien Pouliot  <sebastien@ximian.com>
1581
1582         * Decimal.cs: Fixed ToString(String.Empty) to default ("G").
1583         * Int16.cs: Fixed ToString(String.Empty) to default ("G").
1584         * Int32.cs: Fixed ToString(String.Empty) to default ("G").
1585         * Int64.cs: Fixed ToString(String.Empty) to default ("G").
1586         * SByte.cs: Fixed ToString(String.Empty) to default ("G").
1587         * UInt16.cs: Fixed ToString(String.Empty) to default ("G").
1588         * UInt32.cs: Fixed ToString(String.Empty) to default ("G").
1589         * UInt64.cs: Fixed ToString(String.Empty) to default ("G").
1590
1591 2004-06-05  Sebastien Pouliot  <sebastien@ximian.com>
1592
1593         * Convert.cs: Fixed the convertion of negative integers (byte, short, 
1594         int and long) into string in a specific base (2, 8, 10 or 16).
1595
1596 2004-06-04  Sebastien Pouliot  <sebastien@ximian.com>
1597
1598         * Math.cs: Fixed IEEERemainder to return -0 (0x8000000000000000) when
1599         the dividend is negative and the result is 0 (remainder).
1600
1601 2004-06-03  Sebastien Pouliot  <sebastien@ximian.com>
1602
1603         * Delegate.cs: Fix the NullReferenceException in Combine(Delegate[]).
1604
1605 2004-06-02  Sebastien Pouliot  <sebastien@ximian.com>
1606
1607         * TimeSpan.cs: Fixed overflow issues when delaing with big (days) time
1608         spans. Fixed parsing when only days are presents in the string (which
1609         should be illegal according to the documentation but is supported).
1610
1611 2004-06-01  Sebastien Pouliot  <sebastien@ximian.com>
1612
1613         * TimeSpan.cs: Fixed exceptions in FromXXX methods as they are 
1614         somewhat different from the documentation.
1615
1616 2004-06-01  Gert Driesen <drieseng@users.sourceforge.net>
1617
1618         * Type.cs: added missing attributes on InvokeMember
1619
1620 2004-06-01  Miguel de Icaza  <miguel@ximian.com>
1621
1622         * String.cs: Flag concat with four arguments internal. 
1623
1624 2004-05-31  Sebastien Pouliot  <sebastien@ximian.com>
1625
1626         * Array.cs: Fixed legal case where value is null.
1627         * Byte.cs: Fixed ToString when format is an empty string (use "G").
1628         * Guid.cs: Renamed private fields (and changed some to signed) to 
1629         match MS implementation and allow serialization to work. Fix 
1630         bug #59113.
1631
1632 2004-05-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1633
1634         * DateTime.cs: adjust milliseconds for fraction specifier ('f').
1635
1636 2004-05-30  Miguel de Icaza  <miguel@ximian.com>
1637
1638         * Console.cs: Remove *again* the version of WriteLine with four
1639         arguments;  That should *not* be added.  
1640
1641         Flag it as internal as people migrate their code.
1642
1643 2004-05-29  Sebastien Pouliot  <sebastien@ximian.com>
1644
1645         * Convert.cs: Fixed ToSByte(string,IFormatProvider) to throw 
1646         ArgumentNullException (only case, all other returns 0). Fixed exception
1647         reporting for hex prefix only strings. Fixed ChangeTo where null could
1648         be misinterpreted between null and Empty.
1649
1650 2004-05-28  Sebastien Pouliot  <sebastien@ximian.com>
1651
1652         * Convert.cs: Fixed integer parsing for special cases (0x, 0X for base
1653         16), non-base 10 negative numbers ... see new unit tests. Fixed the 
1654         case when we parse Int64.MinValue (positive doesn't fit a signed long).
1655
1656 2004-05-28  Jackson Harper  <jackson@ximian.com>
1657
1658         * Environment.cs: Increment version number.
1659         
1660 2004-05-28  Zoltan Varga  <vargaz@freemail.hu>
1661
1662         * AppDomain.cs (Load): Try loading from assemblyRef.CodeBase if exists.
1663         Fixes #59189.
1664
1665 2004-05-28  Atsushi Enomoto <atsushi@ximian.com>
1666
1667         * DateTime.cs : I reverted my fix by accident :(
1668
1669 2004-05-28  Atsushi Enomoto <atsushi@ximian.com>
1670
1671         * DateTime.cs :
1672           - In ToString(), Don't use culture-dependent daynames to format
1673             Universal/RFC1123 date/time. Also, use FullDateTimePattern for 'U'.
1674           - Fixed GetDateTimeFormats () that generated incorrect 'U' value 
1675             (since the format string is the same as 'F').
1676
1677 2004-05-28  Atsushi Enomoto <atsushi@ximian.com>
1678
1679         * DateTime.cs : don't adjust utc value in ToString(). It must output
1680           the same time value, just adding 'Z' for UTC.
1681
1682 2004-05-28  Atsushi Enomoto <atsushi@ximian.com>
1683
1684         * DateTime.cs : in 'Z' case, remove the 'Z' char from input before
1685           proceeding.
1686
1687 2004-05-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1688
1689         * AppDomainSetup.cs: InitAppDomainSetup is not needed now.
1690
1691 2004-05-27  Sebastien Pouliot  <sebastien@ximian.com>
1692
1693         * Byte.cs: Fixed parsing for "-0" which is valid for unsigned types.
1694         * Convert.cs: Convert with a base parameter cannot parse negative 
1695         string numbers, even "-0".
1696         * UInt16.cs: Fixed parsing for "-0" which is valid for unsigned types.
1697         * UInt32.cs: Fixed parsing for "-0" which is valid for unsigned types.
1698         * UInt64.cs: Fixed parsing for "-0" which is valid for unsigned types.
1699
1700 2004-05-27  Atsushi Enomoto <atsushi@ximian.com>
1701
1702         * DateTime.cs : 
1703           - Added "yyyy/MM/dd HH:mm:ss 'GMT'" and "yyyy-MM-dd HH:mm:ss 'GMT'"
1704             to common formats (yes, I know it is nothing more than hack)
1705           - Fixed some GetDateTimeFormats() that just returned patterns.
1706           - For InvariantCulture, now try both supported formats and our
1707             predefined formats.
1708           - It was accepting incorrectly extraneous characters. That caused
1709             some UTC/non-UTC bug.
1710           - RFC1123 string should return universal time. Uncomment again (the
1711             problem should went away because of the extra characters fix above.
1712
1713             With some of the changes above, fixed bug #47720.
1714
1715 2004-05-27  Atsushi Enomoto <atsushi@ximian.com>
1716
1717         * DateTime.cs : quick revert 'Z' support for certificate verifications.
1718
1719 2004-05-26  Sebastien Pouliot  <sebastien@ximian.com>
1720
1721         * Array.cs: Removed duplicate condition if LastIndexOf.
1722
1723 2004-05-26  Atsushi Enomoto <atsushi@ximian.com>
1724
1725         * DateTime.cs :
1726           - Added "yyyy-MM-dd HH:mm:ss" to "compatible patterns".
1727             (Fixed bug #58938.)
1728           - As a quick remedy to accept more patterns, Parse() now also tries
1729             InvariantInfo patterns (this is because we have no more than one
1730             pattern for each pattern component.)
1731           - In _DoParse(), 'Z' should not be read as timezone specifier. Some
1732             culture uses 'Z' as AM/PM designer, and it should be recognized as
1733             part of the UTCpattern (if it actually UTC pattern for the culture
1734             contains 'Z').
1735
1736 2004-05-26  Gert Driesen (drieseng@users.sourceforge.net)
1737
1738         * MonoCustomAttrs.cs: Fixed issue with AllowMultiple, as MS
1739         seems to allow multiple attributes with AllowMultiple at
1740         runtime.
1741
1742 2004-05-26  Sebastien Pouliot  <sebastien@ximian.com>
1743
1744         * Byte.cs: Throw an OverflowException for negative numbers.
1745         * Convert.cs: Accept 0x and 0X as prefix when parsing base16 strings.
1746         * Environment.cs: Bumped mono_corlib_version to 20 (rng interface).
1747
1748 2004-05-25  Sebastien Pouliot  <sebastien@ximian.com>
1749
1750         * Array.cs: Fixed possible integer overflow.
1751         * BitConverter.cs: Fixed a possible integer overflow in ToString.
1752         * Guid.cs: Added an internal method to create a random Guid without
1753         using CryptoConfig (which is heavy on first use). This is only used
1754         in S.R.E.ModuleBuilder to speedup MCS compilation.
1755         * String.cs: Fixed reported exception for PadLeft|Right. Fixed 
1756         possible integer overflow in methods that takes index and count
1757         as parameters.
1758
1759 2004-05-25  Zoltan Varga  <vargaz@freemail.hu>
1760
1761         * String.cs: Add new Strcpy icalls which take a char array as 
1762         parameter.
1763
1764 2004-05-25  Atsushi Enomoto <atsushi@ximian.com>
1765
1766         * DateTime.cs : added more invariant format patterns. This should
1767           really fix bug #57656.
1768
1769 2004-05-25 14:14 CET Patrik Torstensson <totte@hiddenpeaks.com>
1770
1771         * BitConverter.cs (ToBoolean): Return true or false instead
1772         of unsafe returing byte as bool. Fixes bug #58874.
1773
1774 2004-05-25  Atsushi Enomoto <atsushi@ximian.com>
1775
1776         * DateTime.cs : In ToString(string, IFormatProvider), use "G" if
1777           string format argument is null.
1778
1779 2004-05-25  Lluis Sanchez Gual  <lluis@ximian.com>
1780
1781         * Version.cs: Rename of data fields to match those in Microsoft.NET.
1782           Patch by PAF@design.ru.
1783
1784 2004-05-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1785
1786         * DateTime.cs: allow double quotes in the formats. Don't set
1787         next_not_digit to true in presence of single or double quotes. Patch by
1788         Martin Probst.
1789
1790 2004-05-24  Zoltan Varga  <vargaz@freemail.hu>
1791
1792         * AppDomainSetup.cs (InitAppDomainSetup): This one returns void.
1793
1794 2004-05-23  Sebastien Pouliot  <sebastien@ximian.com>
1795
1796         * Array.cs: Fixed exception when we try to Clear outside bounds.
1797         * Boolean.cs: Fixed Equals for True!=True (see bugzilla #58874).
1798         * BitConverter.cs: Fixed negative index and integer overflow in
1799         To... methods.
1800         * Buffer.cs: Fixed integer overflow in BlockCopy.
1801
1802 2004-05-22  Sebastien Pouliot  <sebastien@ximian.com>
1803
1804         * Array.cs: Clear can now work on multidimentional arrays.
1805         * IntPtr.cs: We now only accept 32bits values in the long constructor
1806         unless we're on a 64 bits machine.
1807         * UIntPtr.cs: We now only accept 32bits unsigned values in the ulong 
1808         constructor unless we're on a 64 bits machine.
1809
1810 2004-05-22  Duncan Mak  <duncan@ximian.com>
1811
1812         * Convert.cs: The file was mostly in DOS endings already, for the
1813         sake of consistency, converted it all to DOS endings.
1814         (ToType): When value is null, immediately return null and don't
1815         ever throw a NullReferenceException. When conversionType is null,
1816         throw an InvalidCastException. Give a better error message when
1817         attempting to convert to a DBNull as well.
1818
1819 2004-05-21  Sebastien Pouliot  <sebastien@ximian.com>
1820
1821         * Decimal.cs: Fixed To... methods that needs to trunk the integer part
1822         of Decimal (and not use the banker's rounding like Convert.To...).
1823         * Single.cs: Fixed CompareTo and Equals (copied fix from Double) wrt
1824         to NaN compares (see new unit tests).
1825
1826 2004-05-20  Sebastien Pouliot  <sebastien@ximian.com>
1827
1828         * Convert.cs: Added checks for integer overflow for From|ToBase64Char.
1829         Also fixed the case where wide (16 bits) characters were converted to 
1830         bytes.
1831
1832 2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)
1833
1834         * ThreadStaticAttribute.cs
1835         * ContextStaticAttribute.cs
1836         * FlagsAttribute.cs
1837         * ObsoleteAttribute.cs : now that Inherited is false by
1838         default on AttributeUsageAttribute (as it should be) we
1839         need to explicitly set Inherited to false for those
1840         attributes should it be be false.
1841
1842 2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)
1843
1844         * AttributeUsageAttribute.cs: Inherited property should be
1845         true by defaultrs.cs: respect Inherited property, and
1846
1847 2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)
1848
1849         * MonoCustomAttrs.cs: respect Inherited property, and
1850         AllowMultiple property of a CustomAttribute. This fixes
1851         a major issue we had with respect to custom attributes.
1852
1853 2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)
1854
1855         * MonoType.cs: throw ArgumentNullException when type parameter in
1856         GetCustomAttributes(Type, bool) is null
1857
1858 2004-05-18  Sebastien Pouliot  <sebastien@ximian.com>
1859
1860         * Buffer.cs: Added checks for null source and destination. Fix failing
1861         CryptoStream unit test.
1862         * Guid.cs: Fixed thread-safety issue. Simplified implementation to use
1863         pseudo-random numbers to generate GUIDs (as per section 3.4 of the 
1864         spec). This removes the TODO to get the computer MAC address and
1865         the chances to get a duplicate GUID (across different machines).
1866
1867 2004-05-17  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1868
1869         * TimeSpan.cs: Only catch expected exceptions, if we get other exceptions
1870           than OverflowExceptions then something went wrong internally
1871
1872 2004-05-17  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1873
1874         * Char.cs: Fix long standing bug with ToLower/ToUpper not being
1875           culture - sensitive
1876
1877 2004-05-14  Zoltan Varga  <vargaz@freemail.hu>
1878
1879         * Buffer.cs: Optimize BlockCopy.
1880
1881         * Environment.cs: Bump corlib version.
1882
1883 2004-05-14  Atsushi Enomoto <atsushi@ximian.com>
1884
1885         * __ComObject.cs : This class is not regarded as CLSCompliant by csc.
1886           See also bug #58478.
1887
1888 2004-05-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1889
1890         * AppDomainSetup.cs: don't throw an exception if dynamic_base has not
1891         been set. Just return null as MS. Fixes bug #58120.
1892
1893 2004-05-14  Marek Safar  <marek.safar@seznam.cz>
1894
1895         * Boolean.cs, Byte.cs, Char.cs, DBNull.cs, DateTime.cs,
1896           Decimal.cs, Double.cs, Enum.cs, Int16.cs, Int32.cs,
1897           Int64.cs, IntegerFormatter.cs, SByte.cs, Single.cs,
1898           String.cs, UInt16.cs, UInt32.cs, UInt64.cs: Removed
1899           useless [CLSCompliant (false)]
1900
1901
1902 2004-05-13  Sebastien Pouliot  <sebastien@ximian.com>
1903
1904         * __ComObject.cs: To please corcompare (no implementation).
1905
1906 2004-05-13  Zoltan Varga  <vargaz@freemail.hu>
1907
1908         * Environment.cs: Bump corlib version.
1909
1910 2004-05-13  Sebastien Pouliot  <sebastien@ximian.com>
1911
1912         * Environement.cs: Removed two security attributes for CurrentDirectory
1913         that weren't documented (and anyway we don't support them).
1914
1915 2004-05-11  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1916
1917         * Char.cs: Fix exceptions
1918
1919 2004-05-11  Lluis Sanchez Gual  <lluis@ximian.com>
1920
1921         * MissingMemberException.cs: Fix in serialization constructor.
1922
1923 2004-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1924
1925         * Environment.cs: GetGacPath return value is resolved at runtime on
1926         windows.
1927
1928 2004-05-07  Sebastien Pouliot  <sebastien@ximian.com>
1929  
1930         * Convert.cs: ToBase64CharArray method was depending on a bug in 
1931         S.S.C.ToBase64Transform class to work. Added an internal method to 
1932         provide the same functionality (multiple block processing).
1933
1934 2004-05-06  Jackson Harper  <jackson@ximian.com>
1935
1936         * Environment.cs: Make $HOME the personal directory.
1937
1938 2004-05-06  Sebastien Pouliot  <sebastien@ximian.com>
1939  
1940         * Convert.cs: ToBase64String method was depending on a bug in 
1941         S.S.C.ToBase64Transform class to work. Added an internal method to 
1942         provide the same functionality (multiple block processing).
1943
1944 2004-05-05  Sebastien Pouliot  <sebastien@ximian.com>
1945  
1946         * Environment.cs: Completed OSVersion property.
1947         * Version.cs: Added internal CreateFromString() to "try" to build the
1948         best version number form the specified string.
1949  
1950 2004-05-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1951
1952         * TimeSpan.cs: Redid a lot of stuff in TimeSpan from scratch.
1953           Fixes several potential bugs and makes things way faster.
1954
1955 2004-05-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1956
1957         * TimeSpan.cs: Formatting changes
1958
1959 2004-04-29 Ben Maurer  <bmaurer@users.sourceforge.net>
1960
1961         * Activator.cs: change _flags to a const.
1962         * IntegerFormatter.cs: make tables readonly.
1963         * Convert.cs: tables readonly
1964         * DateTime.cs: ditto.
1965         * IntPtr.cs: avoid a cctor.
1966
1967 2004-04-29  Jackson Harper  <jackson@ximian.com>
1968
1969         * MonoType.cs: 
1970         * Type.cs: NET_2_0 now instead of 1_2. 
1971         
1972 2004-04-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1973
1974         * Environment.cs: implemented GetLogicalDrives.
1975
1976 2004-04-28  Miguel de Icaza  <miguel@ximian.com>
1977
1978         * Applied patch from Atsushi Enomoto that allows Synchronized
1979         writers to have a `dont close' flag, this fixes 52094
1980
1981 2004-04-29  Lluis Sanchez Gual  <lluis@ximian.com>
1982
1983         * MonoCustomAttrs.cs, MonoType.cs: Property.GetGetMethod() does not
1984         return the method if it is private (it did until now because of a
1985         bug). Make sure it works as it worked before the fix.
1986         * Type.cs: Implemented FilterAttribute delegate.
1987
1988 2004-04-28  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1989
1990         * IntegerFormatter.cs: Prevent the use of the explicit static constuctor
1991
1992 2004-04-27  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1993
1994         * IntegerFormatter.cs: Made functions internal (needed by other patches)
1995
1996 2004-04-27  Lluis Sanchez Gual  <lluis@ximian.com>
1997
1998         * DateTime.cs: TODO cleaning.
1999         * Delegate.cs: GetObjectData should be virtual.
2000         * IntegerFormatter.cs: Method factorization. I don't want to fix bugs in
2001           30 methods almost identical.
2002         * MulticastDelegate.cs: Implemented GetObjectData.
2003         
2004 2004-04-26  Jackson Harper  <jackson@ximian.com>
2005
2006         * Environment.cs: Things going bump in the night.
2007
2008 2004-04-25  Miguel de Icaza  <miguel@ximian.com>
2009
2010         * Convert.cs (toBase64Transform): Make private.
2011
2012 2004-04-25  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2013
2014         * Convert.cs:
2015         * Decimal.cs:
2016         * DecimalFormatter.cs:
2017         * FloatingPointFormatter.cs: Call invariant Char functions
2018         * Guid.cs: Call invariant Char and String functions
2019         * String.cs: Call invariant Char functions
2020
2021 2004-04-25  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2022
2023         * String.cs: Refactored the Invariant ToXXX into its own internal methods
2024           so they are directly callable within corlib (can prevent early
2025           construction of CultureInfo, InvariantCulture and related classes)
2026
2027 2004-04-24  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2028
2029         * String.cs: Managed impl. of Invariant parts of ToLower, ToUpper
2030         * Char.cs: Managed impl. of Invariant parts of ToLower, ToUpper
2031
2032 2004-04-24  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2033
2034         * String.cs: Check for null values
2035
2036 2004-04-23  Peter Bartok <pbartok@novell.com>
2037
2038         * Environment.cs: GetLogicalDrives now returns "/" instead of null. Gonzalo
2039           will do a better fix in the future, but this way apps can at least use it.
2040
2041 2004-04-23  Sebastien Pouliot  <sebastien@ximian.com>
2042
2043         * Environment.cs: Better support for GetFolderPath (same results as MS 
2044           on Windows).
2045
2046 2004-04-22  Lluis Sanchez Gual  <lluis@ximian.com>
2047
2048         * Activator.cs: Removed TODOs for finished methods.
2049         * AppDomainSetup.cs: When setting a relative path to ApplicationBase, it
2050           must be relative to the current directory, not the temp directory.
2051           Implemented DynamicBase.
2052         * Convert.cs: No need to create a ToBase64Transform instance at every call
2053           to ToBase64CharArray.
2054         * DateTime.cs: Implemented missing methods FromFileTimeUtc and 
2055           ToFileTimeUtc.
2056         * Decimal.cs: Implemented FromOACurrency and ToOACurrency.
2057         * Delegate.cs: Removed class TODO.
2058         * IntegerFormatter.cs: Use Char.IsLetter and Char.IsDigit instead of ad-hoc
2059           methods.
2060         * Type.cs: Removed TODOs for things already implemented.
2061         
2062 2004-04-21  Lluis Sanchez Gual  <lluis@ximian.com>
2063
2064         * Char.cs: Implemented culture-dependent ToLower and ToUpper methods.
2065         * MulticastDelegate.cs: Removed unused code.
2066
2067 2004-04-19  Lluis Sanchez Gual  <lluis@ximian.com>
2068
2069         * AppDomain.cs: Implemented DynamicDirectory and SetDynamicBase.
2070         * Array.cs: Removed some TODOs in CreateInstance and IndexOf.
2071         * BadImageFormatException.cs: TODO reformat.
2072         * DateTime.cs: Implemented GetDateTimeFormats and GetDateTimeFormats.
2073         * DelegateSerializationHolder.cs: Made class internal.
2074         * Enum.cs: Removed TODO for localization, since this is something that has
2075           to be done for all classes.
2076         * Environment.cs: Removed TODO.
2077         * Exception.cs: Changed ToString to use StringBuilder.
2078         * MonoDummy.cs: Made class internal.
2079         * UnitySerializationHolder.cs: Added support for modules.
2080
2081 2004-04-16  David Sheldon <dave-mono@earth.li>
2082
2083         * DecimalFormatter.cs: Don't append a decimal point after the
2084           end of a number. ((decimal)1).ToString("P0") should be "100 %", not
2085           "100. %"
2086
2087 2004-04-09  Miguel de Icaza  <miguel@ximian.com>
2088
2089         * OutOfMemoryException.cs: Removed the call to Locale.GetText from
2090           this.
2091
2092 2004-04-10  Gert Driesen (drieseng@users.sourceforge.net)
2093
2094         * MonoDummy.cs: added MonoTODO to make sure we remove this class
2095           when its no longer needed
2096
2097 2004-04-09  David Sheldon <dave-mono@earth.li>
2098
2099         * Convert.cs: Allow + signs in strings for ToInt32, and
2100           - if it is base 10.
2101
2102 2004-04-08  Atsushi Enomoto  <atsushi@ximian.com>
2103
2104         * Nullable.cs : usingdecl should also be conditional.
2105
2106 2004-04-07  Martin Baulig  <martin@ximian.com>
2107
2108         * Nullable.cs: New file.
2109
2110 2004-04-07  Martin Baulig  <martin@ximian.com>
2111
2112         * Type.cs (Type.GetGenericArguments): Make this abstract.
2113
2114 2004-04-07  Jackson Harper  <jackson@ximian.com>
2115
2116         * Environment.cs: Increase corlib version number.
2117         
2118 2004-04-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2119
2120         * Environment.cs:
2121         (ExpandEnvironmentVariables): on windows, env. vars. are case
2122         insensitive.
2123
2124 2004-04-06  Sebastien Pouliot  <sebastien@ximian.com>
2125
2126         * AppDomain.cs: Added static to [ThreadStatic] _principal field. 
2127         Removed [ThreadStatic] for _principalPolicy (not required).
2128
2129 2004-04-06  Miguel de Icaza  <miguel@ximian.com>
2130
2131         * Guid.cs: Flag as Sequential.
2132
2133 2004-04-02  Dick Porter  <dick@ximian.com>
2134
2135         * String.cs: More sanity checks in Replace().  Fixes bug 55822.
2136
2137 2004-04-02  Sebastien Pouliot  <sebastien@ximian.com>
2138
2139         * Environment.cs: Implement ExpandEnvironmentVariables static method.
2140         Now call the runtime to get the username (fix #56144).
2141
2142 2004-04-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2143
2144         * MonoType.cs: AssemblyQualifiedName now displays culture, version...
2145         Fixes bug #56341.
2146
2147 2004-03-29  Miguel de Icaza  <miguel@ximian.com>
2148
2149         * Console.cs: If we fail to open stdin/stdout/stderr, create
2150         readers with a NullStream.  This can happen if our caller does not
2151         setup stdin/stoud/stderr file handles.  #56158 exposed this, but
2152         it will happen elsewhere.
2153
2154 2004-03-29  Lluis Sanchez Gual <lluis@ximian.com>
2155
2156         * Convert.cs: In ToSingle(double), removed checks for Single.MaxValue
2157         and Single.MinValue. MS.NET don't do it. This fixes bug #56005.
2158         * Guid.cs: Added support for guid strings in the "N" and "P" formats in
2159           the constructor. This fixes bug #54019.
2160
2161 2004-03-23  Lluis Sanchez Gual <lluis@ximian.com>
2162
2163         * FloatingPointFormatter.cs: Made the class thread safe. Had to move some
2164           internal variables to structures that are moved around methods.
2165           Factorized some common formatting code into FormatNumberInternal.
2166           
2167 2004-03-23  Dick Porter  <dick@ximian.com>
2168
2169         * DateTime.cs: Allow any character for DateSeparator when parsing,
2170         except TimeSeparator, a digit or a letter.  Fixes bug 54047.  Also
2171         deleted the previous fix for 54721, because this covers it too.
2172         
2173 2004-03-23  Dick Porter  <dick@ximian.com>
2174
2175         * DateTime.cs: Check the date string for too many digits when
2176         parsing.  Fixes bugs 53023 and 53025.
2177
2178 2004-03-22  Dick Porter  <dick@ximian.com>
2179
2180         * String.cs: Use the provider when converting strings to other
2181         types.
2182
2183         * DateTime.cs: Add MM-dd-yyyy to the list of standard date parsing
2184         formats.  Fixes bug 54721.
2185
2186 2004-03-22  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2187
2188         * Console.cs: Styled, optimized calls
2189         * CrossAppDomainDelegate.cs: Small header fix
2190         * Buffer.cs: Style, improve errors
2191         * BitConverter.cs: Style, improve errors, remove obsolete comment
2192         * Attribute.cs: Style, improve errors, small fix
2193         * Array.cs: Style, improve errors, small fix, added TODOs
2194         * Activator.cs: Style, localized errors, added error checks
2195         * Byte.cs: Style, localized errors, fixed wrong exception parameters
2196         * Char.cs: Style
2197         * Boolean.cs: Style
2198         * AppDomainSetup.cs: Style
2199         * AppDomain.cs: Style, implemented two methods (redirect)
2200
2201 2004-03-21  Jackson Harper  <jackson@ximian.com>
2202
2203         * FloatingPointFormatter.cs: Set precision from number format info
2204         when it is not specified. This fixes bug #54983.
2205         
2206 2004-03-18  Nick Drochak <ndrochak@ieee.org>
2207
2208         * Math.cs: Use IsNaN() method not "x == NaN".
2209
2210 2004-03-16  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2211
2212         * EntryPointNotFoundException.cs
2213         * DuplicateWaitObjectException.cs
2214         * DllNotFoundException.cs
2215         * DivideByZeroException.cs
2216         * ContextMarshalException.cs
2217         * CannotUnloadAppDomainException.cs
2218         * BadImageFormatException.cs
2219         * ArrayTypeMismatchException.cs
2220         * ArithmeticException.cs
2221         * ArgumentOutOfRangeException.cs
2222         * ArgumentNullException.cs
2223         * ArgumentException.cs
2224         * ApplicationException.cs
2225         * AppDomainUnloadedException.cs: Added missing HResult overrides
2226
2227         * BadImageFormatException.cs: Improved/ Fixed implementation
2228
2229 2004-03-15  Sebastien Pouliot  <sebastien@ximian.com>
2230
2231         * Random.cs: Corrected random value when Next is called with a 
2232         negative value. Testing indictae that our results aren't exactly the 
2233         same as MS, we have a +/- 1 (probably rounding errors due to 
2234         different implementation).
2235
2236 2004-03-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2237
2238         * Environment.cs: updated corlib version.
2239
2240 2004-03-15  Lluis Sanchez Gual <lluis@ximian.com>
2241
2242         * Boolean.cs, Byte.cs, Char.cs, Double.cs, Int16.cs, Int32.cs, Int64.cs,
2243           SByte.cs, Single.cs, UInt16.cs, UInt32.cs, UInt64.cs: Renamed internal
2244           field "value" to "m_value", so it is interoperable with MS.NET when 
2245           serializing and deserializing data. Based on the patch from Daniel
2246           Keep.
2247
2248 2004-03-14  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2249
2250         * TypeInitializationException.cs
2251         * SystemException.cs
2252         * StackOverflowException.cs
2253         * RankException.cs
2254         * OverflowExceptionException.cs
2255         * OutOfMemoryException.cs
2256         * NullReferenceException.cs
2257         * NotSupportedException.cs
2258         * NotFiniteNumberException.cs
2259         * InvalidOperationException.cs
2260         * InvalidCastException.cs
2261         * IndexOutOfRangeException.cs
2262         * FormatException.cs
2263         * ExecutionEngineException.cs: improved parameter names
2264
2265 2004-03-13  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2266
2267         * Enum.cs
2268         * EntryPointNotFoundException.cs
2269         * DuplicateWaitObjectException.cs
2270         * DoubleFormatter.cs
2271         * DllNotFoundException.cs
2272         * DivideByZeroException.cs
2273         * DelegateSerializationHolder.cs
2274         * Delegate.cs
2275         * DBNull.cs
2276         * ContextStaticAttribute.cs
2277         * ContextMarshalException.cs
2278         * ContextBoundObject.cs
2279         * CLSCompliantAttribute.cs
2280         * CharEnumerator.cs
2281         * CannotUnloadAppDomainException.cs
2282         * BadImageFormatException.cs
2283         * AttributeUsageAttribute.cs
2284         * AttributeTargets.cs
2285         * AsyncCallback.cs
2286         * AssemblyLoadEventHandler.cs
2287         * AssemblyLoadEventArgs.cs
2288         * ArrayTypeMismatchException.cs
2289         * ArithmeticException.cs
2290         * ArgumentOutOfRangeException.cs
2291         * ArgumentNullException.cs
2292         * ArgumentException.cs
2293         * ArgIterator.cs
2294         * ApplicationException.cs
2295         * AppDomainUnloadedException.cs
2296         * AppDomain.cs: Mono styled, fixed exceptions/ locales
2297           removed excess usings
2298
2299 2004-03-10  Sebastien Pouliot  <sebastien@ximian.com>
2300
2301         * Convert.cs: FromBase64 now ignore some characters (tab, LF, CR and
2302         spaces) which fixed #54939. Changed the way that the length is 
2303         validated (multiple of 4) because the ignored characters must not be
2304         included in the count.
2305
2306 2004-03-10  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2307
2308         * String.cs: Monostyled
2309
2310 2004-03-09  Jackson Harper  <jackson@ximian.com>
2311
2312         * Char.cs: Only use a byte for numeric data.
2313         
2314 2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2315
2316         * TypedReference.cs: Added missing Attributes
2317         * ParamArrayAttribute.cs: Small style fix
2318         * OperatingSystem.cs: Added .Net 1.1 member
2319
2320 2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2321
2322         * FieldAccessException.cs
2323         * FormatException.cs
2324         * InvalidCastException.cs
2325         * InvalidOperationException.cs
2326         * MemberAccessException.cs
2327         * MethodAccessException.cs
2328         * MissingFieldException.cs: Locale strings
2329         * MissingMemberException.cs: Locale strings
2330         * MissingMethodException.cs: Locale strings
2331         * NotFiniteNumberException.cs
2332         * NotImplementedException.cs
2333         * NotSupportedException.cs
2334         * NullReferenceException.cs
2335         * ObjectDisposedException.cs
2336         * OutOfMemoryException.cs
2337         * OverflowExceptionException.cs
2338         * PlatformNotSupportedException.cs
2339         * RankException.cs: Added missing HResult overrides
2340
2341 2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2342
2343         * RuntimeTypeHandle.cs
2344         * RuntimeMethodHandle.cs
2345         * RuntimeFieldHandle.cs: Implemented serialization (partially untested)
2346
2347 2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2348
2349         * EventArgs.cs
2350         * Exception.cs
2351         * ExecutionEngineException.cs
2352         * FieldAccessException.cs
2353         * FormatException.cs
2354         * GC.cs
2355         * Guid.cs
2356         * IndexOutOfRangeException.cs
2357         * IntPtr.cs
2358         * InvalidCastException.cs
2359         * InvalidOperationException.cs
2360         * InvalidProgramException.cs
2361         * IServiceProvider.cs
2362         * LoaderOptimization.cs
2363         * LoaderOptimizationAttribute.cs
2364         * MarshalByRefObject.cs
2365         * Math.cs
2366         * MemberAccessException.cs
2367         * MethodAccessException.cs
2368         * MissingFieldException.cs
2369         * MissingMemberException.cs
2370         * MissingMethodException.cs
2371         * MultiCastDelegate.cs
2372         * MulticastNotSupportedException.cs
2373         * NonSerializedAttribute.cs
2374         * NotFiniteNumberException.cs
2375         * NotImplementedException.cs
2376         * NotSupportedException.cs
2377         * NullReferenceException.cs
2378         * ObjectDisposedException.cs
2379         * ObsoleteAttribute.cs
2380         * OperatingSystem.cs
2381         * OutOfMemoryException.cs
2382         * OverflowExceptionException.cs
2383         * PlatformID.cs
2384         * PlatformNotSupportedException.cs
2385         * Random.cs
2386         * RankException.cs
2387         * ResolveEventArgs.cs
2388         * ResolveEventHandler.cs
2389         * RuntimeFieldHandle.cs
2390         * RuntimeMethodHandle.cs
2391         * RuntimeTypeHandle.cs: Mono styled, fixed exceptions/ locales
2392           removed excess usings
2393
2394 2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2395
2396         * SystemException.cs: Exceptions set the HResult
2397         * TypeLoadException.cs: Exceptions set the HResult, fixed wrong exception usage
2398         * SByte.cs: Implemented two missing methods, fix wrong parameters for ArgumentNullException
2399
2400 2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2401
2402         * TypedReference.cs
2403         * TypeLoadException.cs
2404         * TypeInitializationException.cs
2405         * TypeCode.cs
2406         * TimeZone.cs
2407         * ThreadStaticAttribute.cs
2408         * SystemException.cs
2409         * STAThreadAttribute.cs
2410         * StackOverflowException.cs
2411         * SingleFormatter.cs
2412         * Single.cs
2413         * SerializableAttribute.cs: Mono styled, fixed exceptions/ locales
2414           removed excess usings
2415
2416 2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2417
2418         * UnauthorizedAccessException.cs: Exceptions set the HResult
2419         * UInt64.cs: Implemented two missing methods
2420         * UInt32.cs: Fix wrong parameters for ArgumentNullException, simpler convert
2421         * UInt16.cs: Fix wrong parameters for ArgumentNullException, simpler convert
2422
2423 2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2424
2425         * WeakReference.cs
2426         * Void.cs
2427         * Version.cs
2428         * ValueType.cs
2429         * UnitySerializationHolder.cs
2430         * UnhandledExceptionEventHandler.cs
2431         * UnauthorizedAccessException.cs
2432         * UIntPtr.cs
2433         * UInt64.cs
2434         * UInt32.cs
2435         * UInt16.cs: Mono styled, Locale.GetText fixes, msg fixes
2436
2437 2004-03-04  Lluis Sanchez Gual <lluis@ximian.com>
2438
2439         * Environment.cs: Bump corlib version.
2440
2441 2004-03-04  Jackson Harper  <jackson@ximian.com>
2442
2443         * Char.cs: New managed implementation. Modified patch by Andreas Nahr.
2444         
2445 2004-02-27  Lluis Sanchez Gual <lluis@ximian.com>
2446
2447         * String.cs: Concat() fixed crash when one of the arguments is an object
2448           whose ToString() method returns null.
2449         * TypeLoadException.cs: Added some serialization fiels, needed for
2450           compatibility with MS.NET.
2451
2452 2004-02-23 Ben Maurer  <bmaurer@users.sourceforge.net>
2453
2454         * String.cs (Equals): Speed up this method by avoiding Array
2455          Bounds Checks and by comparing by 32 bit words rather than 16 bit chars.
2456
2457         This gives between 0x (for 1 char) and >2x (for large strings)
2458         factor of improvement.
2459
2460         A big thanks to Miguel, who suggested the integer compares.
2461
2462 2004-02-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2463
2464         * MonoType.cs: use the binder in GetPropertyImpl.
2465
2466 2004-02-22  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2467
2468         * Math.cs: MonoStyled, replaced space with tabs,
2469           speedup of some methods by avoiding method calls
2470
2471 2004-02-18  Atsushi Enomoto  <atsushi@ximian.com>
2472
2473         * Char.cs : optimized IsSeparator(), IsWhiteSpace() and IsDigit().
2474           (Moved from InternalCall to Managed code).
2475
2476 2004-02-17  Martin Baulig  <martin@ximian.com>
2477
2478         * MonoType.cs (GetConstructors): Renamed the interncall to
2479         GetConstructors_internal(), made it internal and added a `Type
2480         reflected_type' argument to it.
2481         (GetEvents, GetFields): Likewise.
2482         (GetMethodsByName): Added `Type reflected_type' argument.
2483         (GetPropertiesByName): Likewise.
2484
2485 2004-02-16  Jackson Harper  <jackson@ximian.com>
2486
2487         * FloatingPointFormater.cs: Allow precision to be up to the number
2488         of decimals without rounding.
2489         
2490 2004-02-14  Zoltan Varga  <vargaz@freemail.hu>
2491
2492         * Delegate.cs (Equals): Do not compare method_ptr, since it might
2493         point to a trampoline.
2494
2495 2004-02-12  Jackson Harper  <jackson@ximian.com>
2496
2497         * AppDomainSetup.cs: If relative paths are used they should be
2498         rooted in the temp directory.
2499         
2500 2004-02-11  Marek Safar  <marek.safar@seznam.cz>
2501
2502         * Type.cs (FilterNameIgnoreCase_impl): Added extra check for speedup.
2503
2504 2004-02-10  Zoltan Varga  <vargaz@freemail.hu>
2505
2506         * AppDomain.cs (Load): Check that assemblyRef.Name is not empty, to
2507         avoid an assert in the runtime.
2508
2509 2004-02-08  Duncan Mak  <duncan@ximian.com>
2510
2511         * Convert.cs (ToType): Always let a Convert.ChangeType call
2512         succeed if the source object is already of the destination type.
2513
2514         Patch by Ian MacLean (ianm@activestate.com).
2515
2516 2004-02-05  Sebastien Pouliot  <sebastien@ximian.com>
2517
2518         * AppDomain.cs: Implemented SetPrincipalPolicy and SetThreadPrincipal.
2519
2520 2004-02-02  Zoltan Varga  <vargaz@freemail.hu>
2521
2522         * Environment.cs: Bump corlib version.
2523
2524 2004-02-02  Sebastien Pouliot  <sebastien@ximian.ca>
2525
2526         * DateTime.cs: Corrected support for "Z" in the mask (Parse). This
2527         fix bug #53461.
2528
2529 2004-01-27  Sebastien Pouliot  <spouliot@videotron.ca>
2530
2531         * Exception.cs: Changed ToString to remove the \n when no stack trace
2532         is present (which fixed a unit test for SecurityException). Changed
2533         all \n to Environment.NewLine.
2534
2535 2004-01-27  Lluis Sanchez Gual <lluis@ximian.com>
2536
2537         * ContextBoundObject.cs: Removed TODO.
2538
2539 2004-01-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2540
2541         * TimeSpan.cs: fixed bug #52075. Days (int) don't rely on TotalDays
2542         (double), which might round up.
2543
2544 2004-01-19  Jackson Harper <jackson@ximian.com>
2545
2546         * FloatingPointFormatter.cs: Use the default decimal digits count
2547         if they are not specified. This fixes bug #52927.
2548         
2549 2004-01-19  Zoltan Varga  <vargaz@freemail.hu>
2550
2551         * Environment.cs: Bump version number.
2552
2553 2004-01-19  Lluis Sanchez Gual  <lluis@ximian.com>
2554
2555         * Type.cs: Added internal call for IsInstanceOfType. The old implementation
2556         uses IsAssignableFrom(o.GetType()), which is not always valid for 
2557         transparent proxies (because GetType will not return the type of the remote
2558         object if its assembly is not present).
2559
2560 2004-01-18  David Sheldon <dave-mono@earth.li>
2561
2562   * FloatingPointFormatter.cs: Skip the decimal point if we have an 
2563     integer mantassa. So: 1E+15, rather than 1.E+15.
2564
2565 2004-01-18  David Sheldon <dave-mono@earth.li>
2566
2567         * Array.cs (GetValue/SetValue): Throw NullRef exception like .NET 1.1, 
2568         even though docs say it should be an ArgumentNull. Two test cases now
2569   pass. See also nickd's commit of 2003-12-24.
2570
2571 2004-01-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2572
2573         * Environment.cs: increased corlib version.
2574
2575 2004-01-14  Lluis Sanchez Gual <lluis@ximian.com>
2576
2577         * MonoCustomAttrs.cs: Removed attribute cache. Attribute instances can't
2578         be reused because they could be modified. This fixes bug #52655.
2579
2580 2004-01-12  Patrik Torstensson
2581
2582         * Environment.cs: Bump corlib version number due to new StringBuilder
2583         
2584         * String.cs: New internal method to support the new StringBuilder that
2585         uses the string as a buffer (until ToString is called)
2586
2587 2004-01-12  Zoltan Varga  <vargaz@freemail.hu>
2588
2589         * Environment.cs: Bump corlib version number for real this time.
2590         
2591         * AppDomain.cs (LoadAssembly): Pass the assembly name as a string to
2592         the runtime, so it can take into account the Culture etc.
2593
2594         * Environment.cs: Bump corlib version number.
2595         
2596 2004-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2597
2598         * MonoType.cs: GetMethods renamed to GetMethodsByName. It takes a
2599         new parameter with the method name and a boolean for ignoring case.
2600         Removed some string comparisons no longer needed.
2601
2602 2004-01-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2603
2604         * MonoType.cs: GetProperties renamed to GetPropetiesByName. It takes a
2605         new parameter with the property name and a boolean for ignoring case.
2606         Fixes bug #52753.
2607
2608 2004-01-11  David Sheldon <dave-mono@earth.li>
2609
2610         * DateTime.cs: Correct processing of formats with multiple '-'s, fixing
2611         bug 52274.
2612
2613 2004-01-10  Zoltan Varga  <vargaz@freemail.hu>
2614
2615         * AppDomain.cs: Keep track of type resolve and assembly resolve 
2616         events in progress to prevent infinite recursion.
2617
2618 2004-01-06  Miguel de Icaza  <miguel@ximian.com>
2619
2620         * Console.cs: Test for UTF-8 being present anywhere on the
2621         string, also do ToUpper instead of ToLower, which will work even
2622         around the ICU bug with different locales (#52065), and addresses #52101
2623
2624 2004-01-05  Zoltan Varga  <vargaz@freemail.hu>
2625
2626         * Environment.cs: Bump version.
2627
2628 2003-12-24 Ben Maurer  <bmaurer@users.sourceforge.net>
2629
2630         * Type.cs (IsNotPublic): One would normally assume that
2631         IsNotPublic == !IsPublic, but this is not the case (note to MS,
2632         make better names ;-). Fixes #52547, `Type.IsNotPublic not 
2633         correct for Nested types'
2634
2635 2003-12-24  Nick Drochak  <ndrochak@ieee.org>
2636
2637         * Array.cs (CreateInstance): Throw NullRef exception like .NET 1.1, 
2638         even though docs say it should be an ArgumentNull. Sent email to MS
2639         about this "bug".
2640
2641 2003-12-23  Lluis Sanchez Gual  <lluis@ximian.com>
2642
2643         * Exception.cs: Several changes to make it compatible with MS.NET (needed
2644         for remoting interoperability): set a default value for hresult, added 
2645         initialization of class_name, serialization field RemoteStackTrace must
2646         be RemoteStackTraceString, added ser. field ExceptionMethod.
2647
2648         * IndexOutOfRangeException.cs: Added serialization constructor.
2649
2650 2003-12-22  Bernie Solomon  <bernard@ugsolutions.com>
2651
2652         * Int32 (Parse):
2653           Int64 (Parse): Fix overflow checking for AllowHexSpecifier
2654
2655 2003-12-20  Zoltan Varga  <vargaz@freemail.hu>
2656
2657         * MonoType.cs (GetMethodImpl): Only call FindMostDerivedMatch if the
2658         user supplied no parameter info, but not when the user supplied an
2659         empty parameter list. This fixes IKVM.
2660
2661         * Environment.cs: Bump corlib version.
2662
2663 2003-12-19  Dick Porter  <dick@ximian.com>
2664
2665         * String.cs: Added Compare shortcut for length==0.
2666
2667 2003-12-17  Zoltan Varga  <vargaz@freemail.hu>
2668
2669         * Environment.cs: Bump corlib version.
2670
2671 2003-12-17  Dick Porter  <dick@ximian.com>
2672
2673         * String.cs: Fix StartsWith and EndsWith when the argument is the
2674         empty string.  Fixes bug 52283.
2675
2676 2003-12-16  Zoltan Varga  <vargaz@freemail.hu>
2677
2678         * Environment.cs (HasShutdownStarted): Implement.
2679
2680 2003-12-15  Zoltan Varga  <vargaz@freemail.hu>
2681
2682         * Environment.cs (HasShutdownStarted): Make this static under NET 1.1.
2683         
2684         * Environment.cs: Bump version number.
2685
2686 2003-12-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2687
2688         * DateTime.cs: don't bail out with that year out of range error on
2689         stuff like "MM/dd/yyyy HH:MM:ss".
2690
2691 2003-12-13  Zoltan Varga  <vargaz@freemail.hu>
2692
2693         * Environment.cs: Make it a const instead.
2694         
2695         * Environment.cs: Make version field static.
2696
2697 2003-12-10  Zoltan Varga  <vargaz@freemail.hu>
2698
2699         * Type.cs: Make DefaultBindingFlags protected.
2700
2701         * Environment.cs: Applied patch from Todd Berman (tbermann@gentoo.org).
2702         Add new GacPath property + its associated icall.
2703
2704 2003-12-09 Anirban Bhattacharjee <banirban@novell.com>
2705
2706         * DateTime.cs : Bugs fixed (41845, 51422)
2707         * MonoType.cs : Exception message changed 
2708
2709 2003-12-08  Martin Baulig  <martin@ximian.com>
2710
2711         * Type.cs (MakeByRefType): New public method.
2712
2713 2003-12-08  Zoltan Varga  <vargaz@freemail.hu>
2714
2715         * Environment.cs: Add a version number for the corlib-runtime interface
2716         to make it easier to diagnose problems resulting from a mismatch 
2717         between the two.
2718
2719 2003-12-08  Patrik Torstensson   <p@rxc.se>
2720
2721         * Type.cs (GetMethod): Check type arguments within array
2722         * MonoType.cs (GetMethodImpl): Handle methods with a new slot
2723         (same signature but different classes (derived level)
2724
2725 2003-12-07  Zoltan Varga  <vargaz@freemail.hu>
2726
2727         * Type.cs (MakeArrayType): Add argument checking.
2728
2729 2003-12-06  Dick Porter  <dick@ximian.com>
2730
2731         * String.cs: Don't use CompareInfo for non-culture-sensitive
2732         IndexOf and LastIndexOf methods.
2733
2734 2003-12-06  Ravindra  <rkumar@novell.com>
2735
2736         * DateTime.cs: Made Parse(string, IFormatProvider) method to
2737         use second argument. Fixed bug #51464.
2738
2739 2003-12-04  Martin Baulig  <martin@ximian.com>
2740
2741         * Type.cs (Type.MakeArrayType): New public method.
2742
2743 2003-12-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2744
2745         * Buffer.cs:
2746         (BlockCopy): make the exception thrown helpful.
2747
2748 2003-12-03  Dick Porter  <dick@ximian.com>
2749
2750         * String.cs: Calling Replace on an empty string returns itself.
2751
2752 2003-12-03  Zoltan Varga  <vargaz@freemail.hu>
2753
2754         * MonoType.cs: Get rid of get_type_info, use a separate icall for
2755         each property instead.
2756
2757 2003-12-02  Dick Porter  <dick@ximian.com>
2758
2759         * Decimal.cs: Fix NumberFormatInfo lookup.  Patch by
2760         Mohammad DAMT (mdamt@cdl2000.com), fixes bug 51443.
2761
2762 2003-12-01  Dick Porter  <dick@ximian.com>
2763
2764         * String.cs: Make Compare, IndexOf, LastIndexOf, StartsWith,
2765         Replace, ToLower, ToUpper and Equals use the correct CultureInfo.
2766
2767 2003-11-28  Dick Porter  <dick@ximian.com>
2768
2769         * Type.cs: 
2770         * MonoType.cs: 
2771         * Enum.cs: 
2772         * Boolean.cs: Do string compares with the Invariant culture.
2773
2774 2003-11-27 Ben Maurer  <bmaurer@users.sourceforge.net>
2775
2776         * Array.cs: make the enumerator ICloneable
2777
2778 2003-11-27 Ben Maurer  <bmaurer@users.sourceforge.net>
2779
2780         * Decimal.cs (ToXXX): Call Convert.ToXXX.
2781
2782 2003-11-26  Zoltan Varga  <vargaz@freemail.hu>
2783
2784         * AppDomain.cs: Applied patch from ztashev@openlinksw.co.uk (Zdravko Tashev). 
2785         Implement Load(byte[]) methods.
2786
2787         * BadImageFormatException.cs: Fix ToString.
2788
2789 2003-11-24  Zoltan Varga  <vargaz@freemail.hu>
2790
2791         * MonoType.cs: Make Standard|HasThis match Standard in GetMethod and
2792         GetConstructor, as done by MS.
2793
2794 2003-11-19  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2795
2796         * FloatingPointFormatter.cs: Removed some unused variables to prevent csc compiler warnings
2797
2798 2003-11-18  Lluis Sanchez Gual  <lluis@ximian.com>
2799
2800         * TypeInitializationException.cs: Added missing serialization constructor.
2801
2802 2003-11-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2803
2804         * AppDomainSetup.cs: Don't add an extra '/' at the end of 
2805         ApplicationBase. The tests pass now with mono.
2806
2807 2003-11-18  Zoltan Varga  <vargaz@freemail.hu>
2808
2809         * ValueType.cs: New optimized implementation for Equals and GetHashCode.
2810
2811 2003-11-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2812
2813         * Environment.cs: use Directory in CurrentDirectory property.
2814         We were not throwing any exception when setting the directory to an
2815         invalid path.
2816
2817 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2818
2819         * Array.cs:
2820         * Delegate.cs: implemented 1.1 stuff.
2821
2822         * Enum.cs:
2823         * IntPtr.cs: removed extra attribute.
2824         * PlatformID.cs: added WinCE.
2825
2826 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2827
2828         * ValueType.cs:
2829         (Equals): compare the fields of structs too.
2830         (GetHashCode): combine the hash code of all the fields.
2831         Fixes bug #50901 (will remove the icall in a couple of days).
2832
2833 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2834
2835         * Array.cs: fixed Clear for non-zero bounded arrays. Fixes bug #50968.
2836
2837 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2838
2839         * DateTime.cs: handle century when we try to parse 4-digit years and
2840         only 2 digits are present. Fixes bug #49394.
2841
2842 2003-11-13  Miguel de Icaza  <miguel@ximian.com>
2843
2844         * Console.cs: On utf-8 consoles, use unmarked output.
2845
2846 2003-11-13  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2847
2848         * IAppDomainSetup.cs:
2849         * _AppDomain.cs: 
2850         * Object.cs:
2851         * Type.cs: Added missing attribute
2852
2853 2003-11-12 Lluis Sanchez Gual <lluis@ximian.com>
2854
2855         * Environment.cs: Added internal method for getting the path to 
2856         machine.config.
2857         
2858 2003-11-12 Jackson Harper <jackson@ximian.com>
2859
2860         * Environment.cs: Add MyMusic and MyPictures to the SpecialFolder
2861         enum. This fixes the SWF build.
2862         
2863 2003-11-12  Miguel de Icaza  <miguel@ximian.com>
2864
2865         * PlatformID.cs: Remove Unix platform, we cant expose constants
2866         that are not in the framework.
2867
2868         * OperatingSystem.cs: Adjust for the breakage.
2869
2870         * RuntimeMethodHandle.cs: Fix signature.
2871
2872         * Double.cs: Fix signature of TryParse.
2873
2874         * String.cs (Concat (object, object, object, object)): Add missing method.
2875
2876         * OperatingSystem.cs: Removed Equals, GetHashCode, they were not
2877         in the .NET Framework.
2878
2879         * Enum.cs: Hide constructor.  
2880
2881         Fix ToUint16 to be explicitly implemented.
2882
2883         * Console.cs: Add couple of extra missing methods (Write and
2884         WriteLine overloaded)
2885
2886 2003-11-11  Miguel de Icaza  <miguel@ximian.com>
2887
2888         * AppDomain.cs, Activator.cs: New unimplmented entry points from
2889         1.1 (Com activation related).
2890         
2891         * Exception.cs: Formatting.
2892         
2893         * IServiceProvider.cs: Add ComVisible (true).
2894
2895         * AppDomainSetup.cs: Add a couple more properties from .NET 1.1 
2896
2897 2003-11-03  Lluis Sanchez Gual <lluis@ximian.com>
2898
2899         * AppDomain.cs: Added some null checks in Load methods. This fixes bug
2900           #50356.
2901
2902 2003-11-01  Zoltan Varga  <vargaz@freemail.hu>
2903
2904         * AppDomain.cs: Make the SetDomain icalls private + call InternalInvoke
2905         on MonoMethod instead of Invoke.
2906
2907 2003-11-01  Pedro Martínez Juliá  <yoros@wanadoo.es>
2908
2909         * DateTime.cs: Fixed Add* methods handling. Now it works properly
2910         with extreme values (there is a bug with Overflow and Underflow in
2911         long type).
2912
2913 2003-10-31  Pedro Martínez Juliá  <yoros@wanadoo.es>
2914
2915         * DateTime.cs: Fixed a few format bugs.
2916
2917 2003-10-31  Zoltan Varga  <vargaz@freemail.hu>
2918
2919         * AppDomain.cs (InternalPushDomainRef): New icalls.
2920
2921         * AppDomain.cs (InvokeInDomain): New method to execute code in a 
2922         different appdomain.
2923
2924 2003-10-27  Zoltan Varga  <vargaz@freemail.hu>
2925
2926         * AppDomain.cs: Fix prototype of InternalIsFinalizingForUnload.
2927
2928 2003-10-25  Zoltan Varga  <vargaz@freemail.hu>
2929
2930         * AppDomain.cs (IsFinalizingForUnload): Implement.
2931
2932         * AppDomain.cs (Unload): Move the notification of OnUnload listeners
2933         to unmanaged code.
2934
2935 2003-10-25  Martin Baulig  <martin@ximian.com>
2936
2937         * MonoType.cs: Don't make this sealed.
2938
2939 2003-10-24  Zoltan Varga  <vargaz@freemail.hu>
2940
2941         * AppDomain.cs: Add InternalInvokeInDomain[ByID] icalls.
2942
2943 2003-10-24  Pedro Martínez Juliá  <yoros@wanadoo.es>
2944
2945         * DateTime.cs: When handling '-' as a date separator, MS.NET uses
2946         the same symbol in the parse (not DateTimeFormatInfo.DateSeparator).
2947
2948 2003-10-22  Dick Porter  <dick@ximian.com>
2949
2950         * DateTime.cs: Handle '-' as a date separator when parsing formats.
2951
2952 2003-10-20  Duncan Mak  <duncan@ximian.com>
2953
2954         * Delegate.cs (CreateDelegate): Avoid creating an extra Type array
2955         and merge the two iterations into one.
2956
2957 2003-10-15  Zoltan Varga  <vargaz@freemail.hu>
2958
2959         * TypedReference.cs: Add new field used by the runtime.
2960
2961 2003-10-15  Martin Baulig  <martin@ximian.com>
2962
2963         * Type.cs (Type.DeclaringMethod): For a generic method's type
2964         parameter, return this method - otherwise, return null.
2965
2966 2003-10-14  Martin Baulig  <martin@ximian.com>
2967
2968         The generics API has changed in the spec since it was added here;
2969         these modifications make it match the spec again.
2970
2971         * Type.cs
2972         (GetGenericParameters): Renamed to `GetGenericArguments'.
2973         (HasGenericParameters): Renamed to `HasGenericArguments'.
2974         (HasUnboundGenericParameters): Renamed to `ContainsGenericParameters'.
2975         (IsGenericTypeDefinition): New property.
2976         (IsUnboundGenericParameter): Renamed to `IsGenericParameter'.
2977
2978         * MonoType.cs (ContainsGenericParameters): Implement this here;
2979         this is no interncall anymore.
2980
2981 2003-10-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2982
2983         * Delegate.cs: add the method name to the exception when it cannot be
2984         bound.
2985         * Exception.cs: fix nullref in Source.
2986
2987 2003-10-10  Zoltan Varga  <vargaz@freemail.hu>
2988
2989         * Array.cs: Add argument checking to GetValue and SetValue.
2990
2991 2003-10-09  Miguel de Icaza  <miguel@ximian.com>
2992
2993         * DateTime.cs: Patch from Chris Turchin: the DateTime.MaxValue
2994         should not be TimeSpan.MaxValue, because it overflow.  Set this to
2995         be MAX_VALUE_TICKS
2996
2997 2003-10-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2998
2999         * MonoCustomAttrs.cs: from_cache is now thread-safe. Yeah, I got a
3000         duplicate entry exception.
3001
3002 2003-10-08 Ben Maurer  <bmaurer@users.sourceforge.net>
3003
3004         * DateTime.cs (ToString): Total rewrite, fixes #49358.
3005
3006 2003-10-03  Zoltan Varga  <vargaz@freemail.hu>
3007
3008         * AppDomain.cs: Change accessibility of DoTypeResolve to fix build.
3009
3010 2003-10-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3011
3012         * Enum.cs:
3013         (Equals): check that the object is an Enum before comparing the types.
3014
3015 2003-09-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3016
3017         * Array.cs: reduced xsp allocated memory by 1/2.
3018
3019 2003-09-25  Martin Baulig  <martin@ximian.com>
3020
3021         * Type.cs (Type.IsGenericTypeDefinition): Removed this method
3022         since it was identical to GetGenericTypeDefinition().
3023         (Type.IsGenericInstance): New property.
3024
3025 2003-09-24  Duncan Mak  <duncan@ximian.com>
3026
3027         * Math.cs (Abs): Fix double Locale.GetText bug reported by
3028         davejp@volny.cz. This fixes #48788.
3029
3030 2003-09-14  Pedro Martínez Juliá  <yoros@wanadoo.es>
3031
3032         * FloatingPointFormatter.cs: Add the necessary castings to char
3033         conversions.
3034
3035 2003-09-13  Pedro Martínez Juliá  <yoros@wanadoo.es>
3036
3037         * FloatingPointFormatter.cs: Make the method calls more functional
3038         for protecting the values from different threads (make it more
3039         thread safe).
3040
3041 2003-09-13  Pedro Martínez Juliá  <yoros@wanadoo.es>
3042
3043         * FloatingPointFormatter.cs: Fix a bug with the negative value of
3044         count parameter.
3045
3046 2003-09-12  Pedro Martínez Juliá  <yoros@wanadoo.es>
3047
3048         * FloatingPointFormatter.cs: Applied a lot of improvements in string
3049         construction, make use of Append/Insert with the "count" parameter.
3050     Thanks to Ben Maurer.
3051
3052 2003-09-10  Pedro Martínez Juliá  <yoros@wanadoo.es>
3053
3054         * FloatingPointFormatter.cs: Fix a bug with Custm Format.
3055
3056         * FloatingPointFormatter.cs: Fix a little bug I've introduced the
3057         last change.
3058
3059 2003-09-10  Pedro Martínez Juliá  <yoros@wanadoo.es>
3060
3061         * DoubleFormatter.cs: A few optimizations. Now, only one object
3062         is created to convert all double numbers.
3063
3064         * SingleFormatter.cs: A few optimizations. Now, only one object
3065         is created to convert all float numbers.
3066
3067         * FloatingPointFormatter.cs: Split the "number type parameters" from
3068         the "numver value and format parameters". The first ones are in the
3069         constructor and the others are in a method.
3070
3071 2003-09-09  Zoltan Varga  <vargaz@freemail.hu>
3072
3073         * Array.cs: Added argument checking to some NET_1_1 methods.
3074
3075 2003-09-04  Martin Baulig  <martin@ximian.com>
3076
3077         * Type.cs (GetGenericTypeDefinition): Make this method virtual.
3078
3079 2003-08-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3080
3081         * Array.cs: added the new overloaded CreateInstance, GetValue, SetValue
3082         taking 'longs'. All tests pass.
3083
3084 2003-08-26 Ben Maurer  <bmaurer@users.sourceforge.net>
3085
3086         * Exception.cs: Add ClassInterface attr. Implement TargetSite and
3087         Source. Remove MonoTODO attributes (class is 100% done). Also
3088         passes all Rotor tests for Exception!
3089
3090 2003-08-26 Ben Maurer  <bmaurer@users.sourceforge.net>
3091
3092         * Enum.cs: Remove [MonoTODO]'s that had been completed.
3093
3094 2003-08-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3095
3096         * String.cs: fixed bug #47802.
3097
3098 2003-08-21 Ben Maurer  <bmaurer@users.sourceforge.net>
3099
3100         * String.cs: Created method FormatHelper that does formatting,
3101         using a StringBuilder.
3102
3103 2003-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3104
3105         * Array.cs: patch by lb@lb.ods.org that fixes bug #47707.
3106
3107 2003-08-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3108
3109         * Delegate.cs: CreteDelegate (Type, MethodInfo) only supports static
3110         methods under MS.
3111
3112 2003-08-11  Duncan Mak  <duncan@ximian.com>
3113
3114         * Environment.cs (Version): Return the same numbers as the MS
3115         implementation.
3116
3117 2003-08-10  Miguel de Icaza  <miguel@ximian.com>
3118
3119         * Array.cs: Applied patch from Thong (Tum) Nguyen;  Removed
3120         replicated tests, and have a routine that does the heavy lifting.
3121
3122 2003-08-08  Lluis Sanchez Gual <lluis@ximian.com>
3123
3124         * DateTime.cs: Fixed DoParse. It was calling the wrong constructor
3125           of DateTime.
3126         * Environment.cs: return $HOME for ApplicationData folder.
3127
3128 2003-08-04  Duncan Mak  <duncan@ximian.com>
3129
3130         * FloatingPointFormatter.cs (Normalize): Apply a patch from Aleksey
3131         Demakov <avd@openlinksw.com> to fix formatting for Big power of 10
3132         floating point values. This fixes bug #46175.
3133
3134         * Convert.cs (ToUInt16): Throw an OverflowException correctly, as
3135         noted by c5n4kh6u02@sneakemail.com in
3136         http://bugzilla.ximian.com/show_bug.cgi?id=43098.
3137
3138 Sat Aug  2 13:01:46 BST 2003 Malte Hildingson <malte@amy.udd.htu.se>
3139
3140         * Double.cs: added icall Double.AssertEndianity.
3141
3142 Fri Aug 1 16:47:17 CEST 2003 Paolo Molaro <lupus@ximian.com>
3143
3144         * Type.cs, MonoType.cs: implemented generic-specific methods.
3145
3146 2003-07-29  Miguel de Icaza  <miguel@ximian.com>
3147
3148         * Buffer.cs: Add new internal MemCopy call.
3149
3150         Removed the above.
3151
3152 Tue Jul 29 12:13:16 CEST 2003 Paolo Molaro <lupus@ximian.com>
3153
3154         * Type.cs, MonoType.cs, ArgIterator.cs: pass the handles values
3155         to icalls, to avoid special cases in some call conventions.
3156
3157 2003-07-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3158
3159         * Enum.cs: added Serializable attribute.
3160
3161 2003-07-25  Duncan Mak  <duncan@ximian.com>
3162
3163         * AppDomain.cs (Equals):
3164         (GetHashCode): Removed because they do not need to be defined
3165         here.
3166
3167 2003-07-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3168
3169         * TypeLoadException.cs: removed unused fields. TypeName returns "" if
3170         cannot even get the type.
3171
3172 2003-07-24  Miguel de Icaza  <miguel@ximian.com>
3173
3174         * Type.cs: Added generics stubs.
3175
3176 2003-07-23  Duncan Mak  <duncan@ximian.com>
3177
3178         * Environment.cs (SpecialFolder): Added 'Desktop' and 'MyComputer'
3179         as values for NET_1_1.
3180         (GetFolderPath): Return the empty string ("") for values of
3181         SpecialFolder that have no corresponding equivalents in
3182         Linux. Return "$HOME/Desktop" for SpecialFolder.DesktopDirectory
3183         and "$HOME" for SpecialFolder.Personal.
3184
3185         * IntPtr.cs (GetObjectData): Mark it as an interface
3186         implementation, instead of a public method.
3187
3188         * Guid.cs (NewGuid): Remove MonoTODOAttribute.
3189
3190         * TypeLoadException.cs (GetObjectData):
3191         Create stubs for the fields that are being serialized.
3192
3193         * UIntPtr.cs: Removed erroneous CLSCompliantAttributes.
3194
3195 2003-07-23  Lluis Sanchez Gual <lluis@ximian.com>
3196         
3197         * Enum.cs: Fixed enum formatting. For flag enums, if one of
3198           the flags is unnamed, ToString() returns the integer value.
3199
3200 2003-07-22  Jerome Laban <jlaban@wanadoo.fr>
3201
3202         * Guid.cs: Fixed ToString (), was producing incorrect string.
3203
3204 2003-07-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3205
3206         * AppDomainSetup.cs: fixed bug #46609.
3207
3208 Thu Jul 17 17:28:27 CEST 2003 Paolo Molaro <lupus@ximian.com>
3209
3210         * MonoType.cs: use an icall for IsPrimitiveImpl ().
3211
3212 Thu Jul 17 15:23:17 CEST 2003 Paolo Molaro <lupus@ximian.com>
3213
3214         * Guid.cs: faster ToString ().
3215
3216 2003-07-15  Pedro Martínez Juliá  <yoros@wanadoo.es>
3217
3218         * FloatingPointFormatter.cs: Few changes for get working Rotor
3219         tests.
3220
3221 2003-07-13  Zoltan Varga  <vargaz@freemail.hu>
3222
3223         * Type.cs (IsAssignableFrom): Implement this as an icall since the
3224         runtime already includes the neccessary logic.
3225
3226 2003-07-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3227
3228         * AppDomainSetup.cs: remove the "file://" prefix from ApplicationBase
3229         if it's present and get the full path for non-Uri paths.
3230
3231 2003-07-2  Lluis Sanchez Gual <lluis@ximian.com>
3232
3233         * DateTime.cs: Fixed formatting of fractions of second.
3234
3235 2003-06-30  Zoltan Varga  <vargaz@freemail.hu>
3236
3237         * Console.cs: Turn off buffering for the streams returned by
3238         OpenStandardOutput () and OpenStandardError () if the buffer size is 0.
3239
3240 2003-06-28  Lluis Sanchez Gual <lluis@ximian.com>
3241
3242         * Random.cs: Changed behavior of Random to match MS.NET. When Next is
3243           called with maxvalue==0 or minvalue==maxvalue, MS.NET internally generates
3244           a new random number (although it is not needed), while mono did not. 
3245           As a result, the sequence of random numbers could be different for the
3246           same seed.
3247
3248 Thu Jun 26 16:06:35 CEST 2003 Paolo Molaro <lupus@ximian.com>
3249
3250         * FloatingPointFormatter.cs: use dec_len2 as default precision.
3251
3252 2003-06-26  Lluis Sanchez Gual <lluis@ximian.com>
3253
3254         * DateTime.cs: Modified constructor. Check for valid value of TimeSpan must
3255           be done after the correspondig UTC offset has been applied.
3256
3257 2003-06-26  Lluis Sanchez Gual <lluis@ximian.com>
3258
3259         * Object.cs: Object must have the Serializable attribute.
3260         * DateTime.cs: Fixed _DoParse() so it correctly applies the utc offset
3261           to the resulting date. Also fixed _ToString so now correctly formates the
3262           UTC offset.
3263
3264 Wed Jun 18 19:22:22 CEST 2003 Paolo Molaro <lupus@ximian.com>
3265
3266         * Enum.cs: fix race in cache (bug#41841).
3267
3268 Wed Jun 18 18:52:11 CEST 2003 Paolo Molaro <lupus@ximian.com>
3269
3270         * FloatingPointFormatter.cs: if the precision is not specified, use
3271         the default precision for the data type.
3272
3273 Wed Jun 18 18:11:30 CEST 2003 Paolo Molaro <lupus@ximian.com>
3274
3275         * Array.cs: throw ArgumentOutOfRangeException in Copy if needed
3276         (patch by tum@veridicus.com (Thong (Tum) Nguyen)).
3277
3278 2003-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3279
3280         * MonoType.cs: don't throw nullref when the return type for a property
3281         is specified and the property doesn't have a get accessor.
3282
3283 2003-06-10  Duncan Mak  <duncan@ximian.com>
3284
3285         * Array.cs (CreateInstance): Fixed a typo. It should throw
3286         ArgumentNullException instead of ArgumentException.
3287
3288 2003-06-09  Duncan Mak  <duncan@ximian.com>
3289
3290         * Array.cs: Revert the last revert. I fixed it.
3291         (Sort): Put a try-catch block around qsort, and wrap whatever
3292         Exception we get into a InvalidOperationException.
3293
3294 2003-06-08 Jackson Harper <jackson@latitudegeo.com>
3295
3296         * Array.cs: Revert last patch, it broke some other functionality.
3297                 
3298 2003-06-08  Duncan Mak  <duncan@ximian.com>
3299
3300         * Array.cs: Throw more exceptions. This fixes the errors we see
3301         from the Rotor testsuite.
3302
3303         (CreateInstance): Throw ArgumentNullException when the input are
3304         null. Throw ArgumentOutOfRangeException when bounds + length is
3305         greater than Int32.MaxValue.
3306         (LastIndexOf): Throw ArgumentOutOfRangeException if index is outside
3307         the valid range of indices of array.
3308         (Sort): Throw InvalidOperationException when comparer is null and
3309         none of the elements in keys implements IComparable.
3310
3311 2003-06-08  Duncan Mak  <duncan@ximian.com>
3312
3313         * Array.cs (CreateInstance): Throw a TypeLoadException if the
3314         Length of the input array 'lengths' is greater than 255 so that we
3315         won't see the g_assert that is in mono_array_class_get in class.c.
3316
3317         This fixes bug #44304.
3318
3319 2003-06-05  Nick Drochak  <ndrochak@gol.com>
3320
3321         * UnitySerializataionHolder.cs: Cleanups according to class status page
3322
3323 Wed Jun 4 16:59:39 CEST 2003 Paolo Molaro <lupus@ximian.com>
3324
3325         * ArgIterator.cs, TypedReference.cs, RuntimeArgumentHandle.cs,
3326         RuntimeTypeHandle.cs: implemented the needed stuff to handle
3327         vararg calls.
3328
3329 2003-06-02  Sebastien Pouliot  <spouliot@videotron.ca>
3330
3331         * Random.cs: New implementation based on Knuth ran3 to fix #43597.
3332         See http://www.library.cornell.edu/nr/bookcpdf/c7-1.pdf. Commited
3333         for Ben Maurer after review and testing.
3334
3335 2003-05-28  Ben Maurer <bmaurer@users.sourceforge.net>
3336         
3337         * Array.cs: Added better argument checking to Array.Sort ()
3338         * DBNull.cs: Made the conversions throw like they do in MS.
3339
3340 2003-05-24  Philip Van Hoof  <me@freax.org>
3341
3342         * Math.cs: Add the MS.NET 1.1 methods (BigMul, DivRem, DivRem).
3343
3344 2003-05-21  Pedro Martínez Juliá  <yoros@wanadoo.es>
3345
3346         * FloatingPointFormatter.cs: Take care with the explicit precision
3347         and round the number to that precision.
3348
3349         * DoubleFormatter.cs: Adapt to the two level precision (15 - 17).
3350
3351         * SingleFormatter.cs: Adapt to the two level precision (7 - 8).
3352
3353 2003-05-20  Philip Van Hoof <me@freax.org>
3354
3355         * DateTime.cs (FromOADate, GetDateTimeFormats, ToOADate):
3356         Implemented.
3357
3358 2003-05-20  Zoltan Varga  <vargaz@freemail.hu>
3359
3360         * AppDomainSetup.cs: Added new field which is used to notify the
3361         runtime that the search path has changed.
3362
3363 2003-05-18  Pedro Martínez Juliá  <yoros@wanadoo.es>
3364
3365         * FloatingPointFormatter.cs: Fixed NullReferenceException bug I've
3366         introduced the last change I've done.
3367
3368 2003-05-17  Ben Maurer  <bmaurer@users.sourceforge.net>
3369
3370         * Array.cs: Fixed SyncRoot to behave like MS (return this). Removed 
3371         MonoTODO from SyncRoot (because fixed) and IsSynchronized (it was
3372         behaving correctly).
3373         
3374 2003-05-17  Pedro Martínez Juliá  <yoros@wanadoo.es>
3375
3376         * FloatingPointFormatter.cs: Fixed little format mismatches.
3377
3378 2003-05-16  Pedro Martínez Juliá  <yoros@wanadoo.es>
3379
3380         * FloatingPointFormatter.cs: Fixed "-0" result emited.
3381
3382 2003-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3383
3384         * AppDomain.cs: Added null argument check in Load().
3385         * Activator.cs: fixed bug #39926.
3386
3387 2003-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3388
3389         * Enum.cs: fixed bugs #41522 and #42879.
3390
3391 2003-05-12  Zoltan Varga  <vargaz@freemail.hu>
3392
3393         * String.cs: Tweak IndexOf and LastIndexOf to match specification and
3394         undocumented MS behaviour.
3395
3396 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3397
3398         * Activator.cs: applied patch for bug #39926. Thanks to Jean Marc and
3399         Jaime.
3400
3401 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3402
3403         * String.cs: fixed bug #41411 and another similar problem in
3404         LastIndexOf (string).
3405
3406 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3407
3408         * String.cs: patch by Jean Marc <jean-marc.andre@polymtl.ca> that fixes
3409         bug #42695.
3410
3411 2003-05-09  Zoltan Varga  <vargaz@freemail.hu>
3412
3413         * MulticastDelegate.cs (GetInvocationList): Avoid ArrayList 
3414         construction if the delegate list only has one element.
3415
3416 2003-05-01  Pedro Martínez Juliá  <yoros@wanadoo.es>
3417
3418         * Environment.cs: Changed the method GetFolderPath because it must
3419         return at least a directory name (not null).
3420
3421         * Convert.cs: In ToType, if the destination type is unknown, try to
3422         cast the value to object (then, the calling method will downcast it
3423         to the type it wants).
3424
3425 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3426
3427         * Enum.cs: fixed bug #41522.
3428
3429 Tue Apr 29 13:58:16 CEST 2003 Paolo Molaro <lupus@ximian.com>
3430
3431         * Enum.cs: protect with the lock also the lookup (bug #41841).
3432
3433 Tue Apr 29 13:24:32 CEST 2003 Paolo Molaro <lupus@ximian.com>
3434
3435         * MonoType.cs: allow a null name if InvokeMember is called with
3436         BindingFlags.CreateInstance set.
3437
3438 2003-04-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3439
3440         * Enum.cs: reverted my previous patch.
3441
3442 2003-04-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3443
3444         * Enum.cs: fixed bug #41841.
3445
3446 2003-04-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3447
3448         * MonoType.cs:
3449         (GetPropertyImpl): handle BindingFlags.IgnoreCase.
3450
3451 2003-04-22  Pedro Martínez Juliá  <yoros@wanadoo.es>
3452
3453         * FloatingPointFormatter.cs: Little fixes for get the same results
3454         as MS.NET and show a message when something goes wrong with the
3455         parser of Custom Formats.
3456
3457 2003-04-22  Nick Drochak  <ndrochak@gol.com>
3458
3459         * Double.cs (ToString):
3460         * Single.cs (ToString): Handle case where param is a CultureInfo.
3461
3462 2003-04-18  Zoltan Varga  <vargaz@freemail.hu>
3463
3464         * Object.cs ValueType.cs: Make the Object::GetHashCode() and 
3465         ValueType::Equals() icalls static non-virtual, so they can be called
3466         by the code in RuntimeHelpers.
3467
3468 2003-04-18  Miguel de Icaza  <miguel@ximian.com>
3469
3470         * Delegate.cs (operator ==): Do not crash if the second argument
3471         is null.  Bug fix submitted by Juan Cri.
3472
3473 2003-04-18  Eduardo Garcia Cebollero <kiwnix@yahoo.es>
3474
3475         * Array.cs: Deleted the exception in Array.Initialize(), it looks
3476         like the method do nothing for C#, is still a MonoTODO until
3477         we find a compiler that uses that.
3478
3479 2003-04-14  Miguel de Icaza  <miguel@ximian.com>
3480
3481         * Delegate.cs (Delegate): Seems like a typo, we were checking the
3482         a field rather than the argument 
3483
3484         * MonoType.cs: Make GetNestedType an external method implementation.
3485
3486 2003-04-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3487
3488         * Enum.cs: fixed bug #41294.
3489
3490 2003-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3491
3492         * DateTime.cs: fixes bug #40910, part 2.
3493
3494 2003-04-11  Dietmar Maurer  <dietmar@ximian.com>
3495
3496         * String.cs (Equals): avoid the internal call, code cleanups
3497
3498 2003-04-11  Alan Tam <Tam@SiuLung.com>
3499
3500         * Convert.cs: fixed bug #41085.
3501
3502 2003-04-10  Lluis Sanchez Gual <lluis@ideary.com>
3503
3504         * AppDomain.cs: Added internal method for getting process guid.
3505
3506 2003-04-09  Ville Palo <vi64pa@kolumbus.fi>
3507
3508         * Array.cs: Little fix to compare () method.
3509         
3510 2003-04-09  Zoltan Varga  <vargaz@freemail.hu>
3511
3512         * String.cs (Equals): Add trivial optimization.
3513
3514 2003-04-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3515
3516         * DateTime.cs: fixed bug #40910.
3517
3518 2003-04-05  Miguel de Icaza  <miguel@ximian.com>
3519
3520         * Console.cs: Make stderr, stdout and stdin use synchronized
3521         versions of the their readers/writers.
3522
3523 2003-04-04  Dick Porter  <dick@ximian.com>
3524
3525         * Version.cs: Make operator== and operator!= cope with null
3526         objects.  Didn't change operator<, operator<=, operator> or
3527         operator>= because its not meaningful to use those to compare
3528         against null, and throwing a NullReferenceException is probably
3529         the best thing to do there anyway.
3530
3531         Fixes bug 40720.
3532
3533 2003-04-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3534
3535         * AppDomain.cs: fixed InvalidCastException.
3536
3537 2003-03-30  Zoltan Varga  <vargaz@freemail.hu>
3538
3539         * Array.cs (Copy): Call FastCopy() earlier to avoid the expensive
3540         type checks and let it decide whenever a fast copy is possible.
3541
3542 2003-03-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3543
3544         * MonoType.cs:
3545         (GetMethodImpl): support BindingFlags.IgnoreCase flag. Fixes bug #40322.
3546
3547 2003-03-25  Zoltan Varga  <vargaz@freemail.hu>
3548
3549         * Activator.cs (CreateInstance): Call GetConstructor with the right
3550         arguments so the nonPublic argument is handled correctly.
3551
3552 2003-03-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3553
3554         * Type.cs: fixed bug #40123.
3555
3556 2003-03-22  Pedro Martínez Juliá  <yoros@wanadoo.es>
3557
3558         * FloatingPointFormatter.cs: Fixed some bugs for get the same
3559         results than MS.NET. Added simple error recovering, now ToString
3560         will return a general format if there is any exception in the
3561         process of formatting. This make the library more robust while the
3562         formatters are refined.
3563
3564 2003-03-16  Pedro Martínez Juliá  <yoros@wanadoo.es>
3565
3566         * FloatingPointFormatter.cs: Added support for group separators.
3567
3568 2003-03-16  Pedro Martínez Juliá  <yoros@wanadoo.es>
3569
3570         * Single.cs:
3571         * Double.cs: Apply changes of .ToString methods.
3572         * SingleFormatter.cs:
3573         * DoubleFormatter.cs: Simple wrappers to FloatingPointFormatter.
3574         * FloatingPointFormatter.cs: New class. Implementation of double and
3575         single formatters. It is unified now and parametrized with precission
3576         values.
3577
3578 2003-03-15  Lluis Sanchez Gual <lluis@ideary.com>
3579
3580         * AppDomain.cs: fixes bugs #39380 and #39331.
3581
3582 2003-03-06  Nick Drochak  <ndrochak@gol.com>
3583
3584         * TimeSpan.cs (Negate): Throw exception when value is MinValue.
3585
3586 2003-03-04  Dick Porter  <dick@ximian.com>
3587
3588         * Single.cs:
3589         * Double.cs: Temporarily reverted the Double and Single ToString()
3590         change, because it broke nunit.
3591
3592
3593 2003-03-04  Pedro Martínez Juliá  <yoros@wanadoo.es>
3594
3595         * Double.cs: Changed ToString method. Added NumberFormatInfo support
3596         with DoubleFormatter class.
3597         * Single.cs: Changed ToString method. Added NumberFormatInfo support
3598         with SingleFormatter class.
3599         * DoubleFormatter.cs: New class with Double formatting functions.
3600         * SingleFormatter.cs: New class with Single formatting functions.
3601
3602 2003-03-03  Lluis Sanchez Gual <lluis@ideary.com>
3603
3604         * Activator.cs: Added support for activation using activation attributes.
3605         * AppDomain.cs: Added internal method to get the default context from the runtime.
3606
3607 2003-02-28  Elan Feingold  <efeingold@mn.rr.com>
3608
3609         * DateTime.cs: FileTime is expressed in Universal time, and as such must
3610         be converted before subtracting the magic offset.
3611         * DateTime.cs: Strings in the format "2003-02-27T10:05:03-11:00" (note
3612         the timezone at the end) *must* be parsed by DateTime.Parse() for
3613         compatibility with Microsoft.
3614
3615 2003-02-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3616
3617         * Attribute.cs:
3618         * MonoCustomAttrs.cs: fix for the regression test failure (see bug
3619         #38238).
3620
3621         * IntPtr.cs: added serialization .ctor
3622
3623 2003-02-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3624
3625         * AppDomain.cs: check for null in Unload and changed method name.
3626
3627 2003-02-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3628
3629         * MonoCustomAttrs.cs: fixed bug #38238.
3630
3631 2003-02-17  Martin Baulig  <martin@ximian.com>
3632
3633         * Exception.cs (Exception.ToString): Print a newline between the
3634         exception message and the stack trace.
3635
3636 2003-02-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3637
3638         * AppDomain.cs: implemented GetCurrentThreadId ().
3639
3640 2003-02-14  Patrik Torstensson
3641
3642         * Exception.cs: Fixed message output formating
3643
3644 2003-02-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3645
3646         * Int32.cs:
3647         (Parse): ignore everything after a \0 (MS parses: "512\0hola" as 512).
3648
3649 2003-02-12  Miguel de Icaza  <miguel@ximian.com>
3650
3651         * Type.cs: IsClass should return false for Enumerations
3652
3653 2003-02-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3654
3655         * MonoCustomAttrs.cs: return the correct array type in the short case.
3656         Fixes bug #37818.
3657
3658 2003-02-08  Pedro Martíenz Juliá  <yoros@wanadoo.es>
3659
3660         * Math.cs: Fix a few methods (like Round) and add with comments the
3661         new methods: BigMul and DivRem that were in ECMA specs.
3662
3663 2003-02-07  Patrik Torstensson
3664
3665         * Exception.cs: Fixed formating
3666
3667 2003-02-05  Patrik Torstensson
3668
3669         * AppDomain.cs: Partly fixed the unload method 
3670         
3671 2003-02-04  Patrik Torstensson
3672
3673         * AppDomain.cs: Fixed lease issue with appdomain
3674
3675 2003-02-04  Lluis Sanchez Gual <lluis@ideary.com>
3676
3677         * MarshalByRefObject.cs: Implemented GetLifetimeService() and 
3678           InitializeLifetimeService().
3679
3680 2003-02-03  Patrik Torstensson
3681
3682         * AppDomain.cs: New internalcalls for handling domain/context switches
3683         * AppDomain.cs (CreateDomain): Return transparant proxy for appdomain object
3684
3685 2003-02-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3686
3687         * AppDomain.cs: implemented AppendPrivatePath, ClearPrivatePath
3688         and ClearShadowCopyPath and fixed GetType ().
3689
3690         * Attribute.cs: clean up.
3691
3692         * Console.cs: removed UnixConsoleEncoding. Use Default.
3693
3694 2003-02-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3695
3696         * Attribute.cs: fixed all IsDefined overloads. Gotta fix
3697         GetCustomAttributes later.
3698
3699 2003-01-31  Patrik Torstensson
3700
3701         * Buffer.cs: Changed access level of BlockCopyInternal
3702
3703 Thu Jan 30 19:54:30 CET 2003 Paolo Molaro <lupus@ximian.com>
3704
3705         * String.cs, IntegerFormatter.cs: use const where appropriate.
3706
3707 2003-01-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3708
3709         * MonoCustomAttrs.cs: fixed GetBase () for Type. Thanks to Zoltan for
3710         reporting.
3711
3712 2003-01-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3713
3714         * MonoCustomAttrs.cs: fixed shortcut in GetCustomAttributes.
3715         The argument ICustomAttributeProvider can be of other types different
3716         from Type. Handle it.
3717
3718 2003-01-28  Zoltan Varga  <vargaz@freemail.hu>
3719
3720         * DateTime.cs: fix FromFileTime so the time returned by 
3721         File::GetLastModificationTime etc. is in the correct timezone.
3722
3723 2003-01-28  Patrik Torstensson
3724         * Exception.cs: reverted formating/endline changes (sorry guys)
3725
3726 2003-01-28  Patrik Torstensson
3727
3728         * MarshalByRefObject.cs: implemented GetObjectIdentity
3729         * Exception.cs: added support for remote exceptions
3730
3731 2003-01-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3732
3733         * DateTime.cs: fixed bug #37225.
3734
3735 2003-01-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3736
3737         * Enum.cs: Clone the arrays in GetNames and GetValues. Thanks lupus!
3738
3739 2003-01-27  Zoltan Varga  <vargaz@freemail.hu>
3740
3741         * AppDomain.cs: Added DoTypeResolve method which will be called by
3742         the runtime to raise TypeResolve events.
3743
3744 2003-01-27  Duncan Mak  <duncan@ximian.com>
3745
3746         * Enum.cs (ToType): Implement this using Convert.ToType.
3747
3748 2003-01-21  Miguel de Icaza  <miguel@ximian.com>
3749
3750         * Math.cs: Remove Pow's implementation body as it was wrong.  The
3751         C code does the right thing.  The code was trying to handle a
3752         number of cases, and that was incorrect.
3753
3754 2003-01-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3755
3756         * CharEnumerator.cs: fix to Current by crainaj@hotmail.com. Closes
3757         bug #37113.
3758
3759 2003-01-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3760
3761         * Enum.cs: added caching to GetInfo.
3762
3763 2003-01-23  Dick Porter  <dick@ximian.com>
3764
3765         * Environment.cs (System): Implemented ExitCode
3766
3767 2003-01-23  Zoltan Varga  <vargaz@freemail.hu>
3768
3769         * Type.cs (IsInstanceOfType): fixed regression caused by the change
3770         to IsSubclassOf().
3771
3772 2003-01-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3773
3774         * MonoType.cs: re-added lines that were removed in the previous commit.
3775
3776 2003-01-16  Lluis Sanchez Gual <lsg@ctv.es>
3777
3778         * Type.cs: corrected property IsSerializable. It should always return
3779         true for enums and delegates
3780         * MonoType.cs: added serialization support.
3781         * Delegate.cs: added serialization support.
3782         * DBNull.cs: added serialization support.
3783         * UnitySerializationHolder.cs: supports serialization of Assembly,
3784         MonoType and DBNull.
3785         * DelegateSerializationHolder.cs: added.
3786
3787 2003-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3788
3789         * Exception.cs: changed default message to match MS one.
3790
3791 2003-01-12  Patrik Torstensson <totte@race-x-change.com>
3792
3793         * String.cs: Fixed bug with CompareOrdinal
3794
3795 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3796
3797         * Enum.cs: implements IFormattable.
3798
3799 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3800
3801         * AppDomain.cs: implemented DoCallBack method.
3802         * MonoType.cs:
3803         (GetConstructorImpl): when the flag is BindingFlags.Default, set it to
3804         Public, Instance.
3805
3806         NUnit2 tests start moving.
3807
3808 2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3809
3810         * Activator.cs: fixed bug #36052. Also added checks to avoid trying to
3811         instantiate an abstract class.
3812
3813 2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3814
3815         * Type.cs:
3816         (IsSubclassOf): return false when null. Use != instead of Equals.
3817
3818 2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3819
3820         * Type.cs: fixed IsSubclassOf. Patch from Zoltan Varga.
3821
3822 Fri Jan 3 20:18:51 CET 2003 Paolo Molaro <lupus@ximian.com>
3823
3824         * MonoType.cs: fixed Namespace property for nested types.
3825
3826 Fri Jan 3 16:18:27 CET 2003 Paolo Molaro <lupus@ximian.com>
3827
3828         * MonoCustomAttrs.cs: create properly typed arrays when returning
3829         arrays of attributes of a given type.
3830
3831 Fri Jan 3 11:10:14 CET 2003 Paolo Molaro <lupus@ximian.com>
3832
3833         * MonoType.cs: fixed MemberType property for nested types.
3834
3835 2003-01-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3836
3837         * String.cs: fixed bug #36209.
3838
3839 2002-12-20 Lluis Sanchez Gual <lsg@ctv.es>
3840
3841         * Activator.cs: implemented method GetObject.
3842
3843 2002-12-28  Marcus Urban <mathpup@mylinuxisp.com>
3844
3845         * Activator.cs: Since the documentation indicates the method
3846         either succeeds or throws one of the listed exceptions, we weren't
3847         expecting that CreateInstance might be returning null.
3848
3849         For more information on the bug, see http://bugs.ximian.com/show_bug.cgi?id=36109
3850
3851 2002-12-20 Lluis Sanchez Gual <lsg@ctv.es>
3852
3853         * MarshalByRefObject.cs: implemented CreateObjRef.
3854
3855 2002-12-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3856
3857         * DateTime.cs: fixed bug #30076.
3858         * TimeZone.cs: provide the parameter name in a exception.
3859
3860 2002-12-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3861
3862         * DecimalFormatter.cs: fixed bug #35560.
3863
3864 Wed Dec 4 16:04:28 CET 2002 Paolo Molaro <lupus@ximian.com>
3865
3866         * Type.cs: implemented GetInterfaceMap (needs an updated runtime).
3867
3868 2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3869
3870         * Array.cs: use Object.Equals (obj, obj) to compare objects to avoid
3871         nulls. Fixes #34909.
3872
3873 2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3874
3875         * AppDomain.cs: DoAssemblyResolve now returns when one of the handlers
3876         returns a non-null assembly.
3877
3878 2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3879
3880         * MulticastDelegate.cs: make GetInvocationList work for more than 1
3881         delegate.
3882
3883 2002-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3884
3885         * MulticastDelegate.cs: implemented GetInvocationList. I'll check later
3886         if this is the correct order of invocation.
3887
3888 2002-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3889
3890         * Type.cs: changed the signature of internal_from_name. Modified
3891         the overloads of GetType to use it and check the typeName argument.
3892         Implemented FindInterfaces.
3893
3894 2002-11-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3895
3896         * MarshalByRefObject.cs: undo latest changes. It breaks the build by
3897         some obscure reasons (try make -f makefile.gnu using a corlib which has
3898         the modified version).
3899
3900 2002-11-26  Miguel de Icaza  <miguel@ximian.com>
3901
3902         * String.cs (Concat): Reduce the number of compares required. 
3903
3904 Mon Nov 18 17:54:22 CET 2002 Paolo Molaro <lupus@ximian.com>
3905
3906         * Activator.cs: throw a MissingMethodException if the default
3907         constructor is not found in CreateInstance.
3908
3909 2002-11-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3910
3911         * String.cs:
3912         (Equals (str, str)): use 'as' instead of casting to object.
3913         (Equals (obj)): check the length of the strings (until now,
3914         "Hello".Equals ((object) "Hellow World!) was true!).
3915
3916 2002-11-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3917
3918         * MonoType.cs: implemented GetEvent (name, flags).
3919
3920 2002-11-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3921
3922         * AppDomain.cs: implemented a couple of methods called from the runtime
3923         to fire AssemblyLoad and AssemblyResolve events.
3924
3925 2002-10-31  Dick Porter  <dick@ximian.com>
3926
3927         * Environment.cs: MonoIO methods now have an error parameter
3928
3929 2002-10-29  Zoltan Varga  <vargaz@freemail.hu>
3930
3931         * Enum.cs: Added support for whitespaces in Enum:Parse().
3932
3933 2002-10-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3934
3935         * Type.cs: fixed GetProperty (string, Type []) and removed get_property
3936         internal call. Closes bug #32992.
3937
3938 2002-10-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3939
3940         * Exception.cs: display the inner exception, if any, in ToString ().
3941
3942 2002-10-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3943
3944         * Environment.cs: fixed StackTrace property.
3945
3946 2002-10-16  Nick Drochak  <ndrochak@gol.com>
3947
3948         * Enum.cs (Parse): Then fix the code so that it works too.
3949
3950 2002-10-15  Nick Drochak  <ndrochak@gol.com>
3951
3952         * Enum.cs (Parse): Use unsigned casts to avoid compiler warnings.
3953
3954 2002-10-12  Nick Drochak  <ndrochak@gol.com>
3955
3956         * IntegerFormatter.cs: Fix compiler warnings.
3957
3958 2002-10-11  Tim Haynes <thaynes@openlinksw.com>
3959
3960         * Type.cs (GetConstructors): Use the correct flags.
3961
3962 2002-10-09  Nick Drochak  <ndrochak@gol.com>
3963
3964         * IntegerFormatter.cs: Suppress insignificant leading zeros
3965
3966 Fri Sep 27 15:06:29 CEST 2002 Paolo Molaro <lupus@ximian.com>
3967
3968         * MonoCustomAttrs.cs: applied patch by "Si Jingnan"
3969         <stonewell@21cn.com> to return also derived types.
3970
3971 2002-09-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3972
3973         * Activator.cs: little fix in CreateInstance (Type, bool).
3974
3975 2002-09-19  Duncan Mak  <duncan@ximian.com>
3976
3977         * Array.cs (CopyTo): Revert back to 1.40, this is stopping
3978         I18N/Common from building right now.
3979
3980 2002-09-19  Nick Drochak  <ndrochak@gol.com>
3981
3982         * Array.cs (CopyTo): Account for Object type and base (primitive) types
3983         * Type.cs (IsAssignableFrom): return false for a null parameter
3984
3985 2002-09-19  Nick Drochak <ndrochak@gol.com>
3986
3987         * Array.cs (CopyTo): Check that source type can be cast automatically
3988         to the destination type.
3989
3990 2002-09-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3991
3992         * Type.cs: implemented IsAssignableFrom, DefaultBinder and
3993         GetDefaultMembers.
3994
3995 2002-09-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3996
3997         * Char.cs: implemented ToString (char)
3998         * IntegerFormatter.cs: made it internal.
3999
4000 2002-09-13  Nick Drochak  <ndrochak@gol.com>
4001
4002         * Enum.cs (Format): handle the "d" format for both signed and unsigned
4003         underlying types.
4004
4005 2002-09-12  Dick Porter  <dick@ximian.com>
4006
4007         * UIntPtr.cs: Remove the [StructLayout(LayoutKind.Auto)]
4008         attribute, as there doesn't appear to be any struct
4009         layout-depending code here (and corcompare says it should be
4010         LayoutKind.Sequential)
4011
4012         * Decimal.cs: Stub out missing methods, add
4013         [DecimalConstantAttribute] to the constant fields (as shown by
4014         corcompare).
4015
4016         * LocalDataStoreSlot.cs: 
4017         * Environment.cs: 
4018         * Char.cs: 
4019         * Array.cs: Stub out missing methods.
4020
4021         * TypedReference.cs: 
4022         * ArgIterator.cs: Stub out
4023
4024         * AppDomainSetup.cs: 
4025         * AppDomain.cs: Stub out missing methods, add missing
4026         ClassInterface(ClassInterfaceType.None) attribute.
4027
4028 2002-09-12  Nick Drochak  <ndrochak@gol.com>
4029
4030         * Double.cs (ToString): Throw exception when "X" format is passed in.
4031
4032 Wed Sep 11 15:26:34 CEST 2002 Paolo Molaro <lupus@ximian.com>
4033
4034         * MonoType.cs: implemented Module property.
4035
4036 Wed Sep 11 12:49:51 CEST 2002 Paolo Molaro <lupus@ximian.com>
4037
4038         * MonoType.cs, Type.cs: implemented InvokeMember.
4039
4040 Wed Sep 11 11:06:43 CEST 2002 Paolo Molaro <lupus@ximian.com>
4041
4042         * Delegate.cs: check the type passed to CreateDelegate is a Delegate
4043         type. Check the method signature matches.
4044
4045 Sat Sep 7 10:16:52 CEST 2002 Paolo Molaro <lupus@ximian.com>
4046
4047         * RuntimeMethodHandle.cs: implemented GetFunctionPointer().
4048
4049 2002-09-06  Miguel de Icaza  <miguel@ximian.com>
4050
4051         * Console.cs: Specify an encoder, otherwise we will get the UTF8
4052         encoder that by default emits the byte markers.
4053
4054 Fri Sep 6 20:14:04 CEST 2002 Paolo Molaro <lupus@ximian.com>
4055
4056         * Delegate.cs: look also for non-public methods until we have the
4057         security checks in place.
4058
4059 Fri Sep 6 12:20:06 CEST 2002 Paolo Molaro <lupus@ximian.com>
4060
4061         * MonoType.cs: consider also the full name in GetInterface.
4062
4063 Fri Sep 6 12:11:28 CEST 2002 Paolo Molaro <lupus@ximian.com>
4064
4065         * MonoType.cs: implemented GetMembers, GetConstructorImpl and
4066         GetMethodImpl using the binder.
4067         * Type.cs: GetConstructorImpl/GetConstructor fixes.
4068
4069 2002-09-03  Jonathan Pryor <jonpryor@vt.edu>
4070         * Enum.cs: Get rid of warning CS0162.
4071
4072 2002-09-04  Miguel de Icaza  <miguel@ximian.com>
4073
4074         * Double.cs, Single.cs, Char.cs, Boolean.cs: Use internal for the
4075         actual value instead of public.
4076
4077         * LocalDataStoreSlot.cs: Make constructor internal.
4078
4079         * Int16.cs, UInt16.cs, Int32.cs, UInt32.cs, Int64.cs, UInt64.cs,
4080         SByte.cs, Byte.cs, Char.cs: Use internal for the actual value
4081         instead of public.
4082
4083 2002-09-03  Jonathan Pryor <jonpryor@vt.edu>
4084         * Enum.cs: Fixed Enum.Format so that the "x" format specifier would work
4085                    properly.
4086
4087 2002-08-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4088
4089         * DateTime.cs: fixed buglet.
4090
4091 Tue Aug 27 16:39:47 CEST 2002 Paolo Molaro <lupus@ximian.com>
4092
4093         * MonoType.cs: speedup access to common data.
4094
4095 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4096
4097         * Double.cs: implemented TryParse.
4098
4099         * Math.cs: PowImpl is now private.
4100
4101         * MissingFieldException.cs: implemented Message.
4102
4103         * RuntimeMethodHandle.cs: stubbed GetFunctionPointer.
4104
4105         * _AppDomain.cs: Uncommented ToString.
4106
4107 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4108
4109         * Type.cs:
4110         (IsValueTypeImpl): it's virtual, not abstract. Implemented.
4111
4112 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4113
4114         * ArgumentException.cs: use the field instead of the property for
4115         param_name.
4116
4117         * ArgumentOutOfRangeException.cs: modified Message.
4118
4119         * DateTime.cs: 
4120         (_DoParse): throw out of range exception for year. Removed check
4121         for month (it's done in the constructor).
4122
4123 2002-08-21  Miguel de Icaza  <miguel@ximian.com>
4124
4125         * Environment.cs: Implemented OSVersion property.
4126
4127 2002-08-21  Dietmar Maurer  <dietmar@ximian.com>
4128
4129         * Exception.cs: set stack_trace to null
4130
4131 Wed Aug 21 13:02:20 CEST 2002 Paolo Molaro <lupus@ximian.com>
4132
4133         * AppDomain.cs: implemented ToString().
4134
4135 2002-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4136
4137         * AppDomain.cs: securityInfo can be null in CreateDomain.
4138
4139 2002-08-19  Dick Porter  <dick@ximian.com>
4140
4141         * MonoType.cs: Add a space before the Assembly name in
4142         AssemblyQualifiedName (needed for resource files so the MS runtime
4143         can load types)
4144
4145 2002-08-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4146
4147         * AppDomain.cs: parameter name when throwing ArgumentNullException.
4148
4149         * ArgumentException.cs: modified Message to do what MS does.
4150
4151         * ArgumentNullException.cs: don't use {0} in message.
4152
4153         * Exception.cs: use Message property in ToString ().
4154
4155 2002-08-14  Cesar Octavio Lopez Nataren <cesar@ciencias.unam.mx>
4156
4157         * WeakReference.cs: Changed the constructor and GetObjectData
4158         method needed for ISerializable implementation in order to be
4159         compatible with SOAP generated by MS.
4160
4161 Wed Aug 14 17:34:07 CEST 2002 Paolo Molaro <lupus@ximian.com>
4162
4163         * MonoType.cs, Type.cs: DeclaringType/ReflectedType fixes.
4164
4165 2002-08-12  Dietmar Maurer  <dietmar@ximian.com>
4166
4167         * Exception.cs (ToString): changed the ouput format.
4168
4169 2002-08-07  Dietmar Maurer  <dietmar@ximian.com>
4170
4171         * MonoType.cs: moved get_method icall to this class, we can
4172         remove it as soon someone provides a full featured GetMethodImpl.
4173
4174         * Type.cs: use GetMethodImpl everywhere.
4175
4176         * Delegate.cs: new CreateDelegate implementations.
4177
4178 2002-08-06  Tim Coleman <tim@timcoleman.com>
4179         * MonoType.cs: 
4180                 Fix bug #28582.  Now checks parameters for properties
4181                 in GetPropertyImpl.
4182
4183 2002-08-04  Nick Drochak  <ndrochak@gol.com>
4184
4185         * Buffer.cs: Throw correct exception in GetByte() and SetByte().
4186
4187 2002-08-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4188
4189         * String.cs:
4190         (FormatSpecifier): allow white space between the comman and the width
4191         specifier.
4192
4193 2002-07-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4194
4195         * Int32.cs:
4196         * Int64.cs:
4197         * UInt32.cs:
4198         * UInt64.cs: fixed bug #28050. May be a MS bug?
4199
4200 Thu Jul 18 14:47:03 CEST 2002 Paolo Molaro <lupus@ximian.com>
4201
4202         * MonoType.cs: fix IsArrayImpl.
4203
4204 2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4205
4206         * String.cs: make ToLower (culture) and ToUpper (culture) use the
4207         default ToLower and ToUpper and don't throw NotImplemented.
4208
4209 Sat Jul 13 15:09:01 CEST 2002 Paolo Molaro <lupus@ximian.com>
4210
4211         * Type.cs: make GettTypeCode an icall. Test implementation of
4212         GetMember().
4213
4214 2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4215
4216         * AppDomainSetup.cs: implemented LoaderOptimization.
4217
4218 2002-07-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4219
4220         * Activator.cs: some more intermediate results checking in
4221         in CreateInstance and CreateInstanceFrom and use GetConstructor and
4222         Invoke only with Type [] until the other overloaded versions work.
4223
4224 2002-07-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4225
4226         * Activator.cs: reformatted. Implemented CreateInstance* methods
4227         that return ObjectHandle.
4228
4229         * AppDomain.cs: implemented CreateInstance*AndUnwrap methods.
4230
4231 2002-07-03  Nick Drochak  <ndrochak@gol.com>
4232
4233         * Decimal.cs (Divide): Short cut the case where the dividend is 0 (and
4234         the divisor is not) and avoid the icall, which seems to have a bug.
4235
4236 2002-07-03  Nick Drochak  <ndrochak@gol.com>
4237
4238         * Double.cs (CompareTo): Correctly handle the case where the instance
4239         is NaN. Also return 0 if the values are equal.
4240
4241 2002/07/03  Nick Drochak <ndrochak@gol.com>
4242
4243         * MissingMethodException: Add missing Message property
4244         * MissingMemberException: Add missing Message property
4245
4246 2002-06-30  Nick Drochak  <ndrochak@gol.com>
4247
4248         * Double.cs (CompareTo): Just see which is bigger.  Don't use the
4249         subtraction trick, it doesn't work when the values have a diference of
4250         less than one.
4251
4252         * Single.cs (CompareTo): same
4253
4254 2002-06-27  Martin Baulig  <martin@gnome.org>
4255
4256         * UIntPtr.cs (UIntPtr.Zero): Use an explicit `u' suffix in the
4257         constructor argument.  [FIXME: The implicit conversion to an
4258         unsigned integer doesn't work with mcs.]
4259
4260 2002-06-26  Martin Baulig  <martin@gnome.org>
4261
4262         * DecimalFormatter.cs: Removed MSTEST stuff, use `System',
4263         not `S = System'.  This file now compiles with mcs.
4264
4265         * String.cs: Removed the already ifdef-outed __arglist Concat function
4266         to make it compile with mcs.
4267
4268 2002-06-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4269
4270         * IntegerFormatter.cs:
4271         (FormatParse.FormatNumber): fixed custom format for negative numbers.
4272
4273 2002-06-21  Martin Baulig  <martin@gnome.org>
4274
4275         * Double.cs: Replace the private `enum State' with constants since this
4276         will avoid some bigger headaches in mcs.
4277
4278 Thu Jun 20 17:51:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
4279
4280         * TimeSpan.cs: do not pollute the namespace with the
4281         System.Parser name.
4282
4283 2002-06-18  Nick Drochak  <ndrochak@gol.com>
4284
4285         * ArgumentException.cs: Use the message given in the constructor when
4286         accessing the Message property.  Thanks to Dietmar for the help with 
4287         "base".
4288
4289 2002-06-17  Dietmar Maurer  <dietmar@ximian.com>
4290
4291         * MonoType.cs: GetField is now a InternalCall
4292
4293 2002-06-13  Nick Drochak  <ndrochak@gol.com>
4294
4295         * DateTime.cs: (Parse): Accept dates that have no hour,min,sec. in the
4296         sortable format(s), e.g. "2002-02-25"
4297
4298 2002/06/12  Nick Drochak <ndrochak@gol.com>
4299
4300         * Random.cs (Next): Fix math error.  Return a number within the range.
4301
4302 2002-06-12  Nick Drochak  <ndrochak@gol.com>
4303
4304         * String.cs (IndexOf): Return -1 if start index is equal to string
4305         length.
4306
4307 2002-06-10  Duncan Mak  <duncan@ximian.com>
4308
4309         * Convert.cs (ToDouble): Remove rounding in ToDouble (float).
4310         (ToType): Added null field in conversionTable to avoid
4311         IndexOutOfRangeException. Changed what exceptions we throw to match
4312         the spec.
4313         
4314 2002-06-11  Nick Drochak  <ndrochak@gol.com>
4315
4316         * Int64.cs (Parse): Added unique strings to the messages where we throw
4317         a FormatException. Needed these to debug, so just left them in since
4318         they might be useful later. Fixed Currency parsing where we weren't
4319         looking at CurrencyDecimalSeparator, etc.
4320
4321 2002-06-09  Lawrence Pit  <loz@cable.a2000.nl>
4322
4323         * DateTime.cs: fixes to pass tests M0 to M6:
4324                 if yy pattern then year values >= 30 are in 20th century
4325                 rfc1123 pattern is always in GMT, therefor useutc must be false
4326         made GetNow() internal static so it can be called from TimeZone.
4327         * TimeZone.cs: removed dependency on year 2002 from initialization of 
4328         current timezone.
4329
4330 2002-06-09  Duncan Mak  <duncan@ximian.com>
4331
4332         * Convert.cs (ToType): Rearranged what Exceptions we throw to
4333         match MS behavior.
4334
4335 2002-06-08  Duncan Mak  <duncan@ximian.com>
4336
4337         * Decimal.cs: Added support for the IConvertible interface.
4338
4339 2002-06-08  Martin Baulig  <martin@gnome.org>
4340
4341         * Enum.cs (IsDefined): `value' may be of the enum's type itself, it
4342         doesn't necessarily need to be of the enum's underlying type.
4343
4344 2002/06/07  Nick Drochak <ndrochak@gol.com>
4345
4346         * String.cs: Add [Serializable] to class
4347         * SByte.cs (Parse): Add [CLSCompliant(false)] to all the overloads
4348
4349 2002-06-04  Nick Drochak  <ndrochak@gol.com>
4350
4351         * Double.cs (Parse): Recognize the group separator string, but still we
4352         don't check the format for the proper number of digits between
4353         separators. Also throw OverflowException when we get Pos or Neg
4354         Infinity from runtime.
4355
4356 2002-06-03  Duncan Mak  <duncan@ximian.com>
4357
4358         * Convert.cs (ToDouble): Fixed ToDouble (byte value).
4359
4360 Mon Jun 3 12:18:18 CEST 2002 Paolo Molaro <lupus@ximian.com>
4361
4362         * Type.cs: fixed GetTypeCode.
4363
4364 2002-06-02  Duncan Mak  <duncan@ximian.com>
4365
4366         * Convert.cs (ToInt16): use Convert.ToInt16 (int) instead of a direct
4367         cast from an int so that we throw OverFlowException correctly.
4368         
4369         (ToInt64): Use a new 64bit version of ConvertToBase.
4370         
4371         (ConvertToBase): Add checks for overflow (checks Int32.MinValue
4372         and Int32.MaxValue).
4373
4374         (ConvertFromBase64): New 64-bit version of ConvertFromBase.
4375
4376 2002-06-02  Nick Drochak  <ndrochak@gol.com>
4377
4378         * Convert.cs (ToSByte): Check for special value.
4379         * Single.cs (Parse): 
4380         * UInt16.cs (Parse):
4381         * UInt32.cs (Parse): Throw OverflowException if negative
4382
4383 2002-06-02  Duncan Mak  <duncan@ximian.com>
4384
4385         * Convert.cs (DBNull): Point it to DBNull.Value.
4386         (IsDBNull): Instead of checking typecodes, just check to see if
4387         it's the same as the DBNull field.
4388
4389 2002-06-02  Nick Drochak  <ndrochak@gol.com>
4390
4391         * Convert.cs (ConvertFromBase): Detect bad digits correctly.
4392
4393 2002-06-02  Duncan Mak  <duncan@ximian.com>
4394
4395         * Char.cs (Parse): Simplify the Exception handling.
4396
4397         * Convert.cs (ToDecimal): Remove call to Math.Round () when
4398         converting from a float.
4399
4400 2002-05-30  Martin Baulig  <martin@gnome.org>
4401
4402         * MonoType.cs (GetInterface): Implemented.
4403
4404 Thu May 23 17:17:28 CEST 2002 Paolo Molaro <lupus@ximian.com>
4405
4406         * Activator.cs: implemented CreateInstance ().
4407
4408 2002-05-22  Duncan Mak  <duncan@ximian.com>
4409
4410         * Convert.cs (ConvertToBase): Added new 64bit version.
4411         (BuildConvertedString64): New 64bit version of
4412         BuildConvertedString.
4413
4414         This fixes bug 25068.
4415
4416         (ConvertFromBase): Added additional test for checking if the
4417         digits are valid. Thanks to Miguel for coming up with this test.
4418
4419         This fixes bug 25071.
4420         
4421 2002-05-21  Duncan Mak  <duncan@ximian.com>
4422
4423         * Convert.cs (ToType): Rearranged to fit the new layout of
4424         conversionTable.
4425
4426         (conversionTable): Rearranged to fit the layout of the
4427         System.TypeCode enum.
4428
4429         This should fix bug 25075.
4430         
4431 2002-05-21  Duncan Mak  <duncan@ximian.com>
4432
4433         * Convert.cs (ToString): Fixed the ToString methods. Previously I had
4434         mixed up the two code paths, one for converting to a specific base
4435         (this case), another from converting from a foreign base to base10
4436         (used by ToInt16|32|64 (string, int)). This fixes bug 25068.
4437
4438         * Convert.cs (ToByte)
4439         (ToSByte): Fixed bug 25074. Added more bits to ConvertFromBase so
4440         that we won't confuse FormatException with OverflowException.
4441
4442 2002-05-22  Lawrence Pit  <loz@cable.a2000.nl>
4443
4444         * Environment.cs: CommandLine missed spaces between arguments.
4445         Implemented StackTrace. Returning MachineName in UserDomainName
4446         instead of null.
4447         
4448 Tue May 21 17:25:49 CEST 2002 Paolo Molaro <lupus@ximian.com>
4449
4450         * MonoCustomAttrs.cs: handle inherit argument.
4451
4452 2002-05-21  Nick Drochak  <ndrochak@gol.com>
4453
4454         * Math.cs (Pow): Change icall method name and insert parameter
4455         checks in for infinities and NaN.
4456
4457 2002-05-13  Miguel de Icaza  <miguel@ximian.com>
4458
4459         * Double.cs (Parse): Reimplement by cleaning up the string first,
4460         and then passing to strtof in the mono runtime.
4461
4462         * Single.cs (Parse): Use the Double implementation and cast to
4463         float. 
4464
4465 2002-05-21  Nick Drochak  <ndrochak@gol.com>
4466
4467         * Math.cs 
4468                 (Ceiling): Check for "special" values
4469                 (Floor): Check for "special" values
4470                 (Round): Fix off-by-one error on decimal shifting
4471
4472 2002-05-20  Lawrence Pit  <loz@cable.a2000.nl>
4473
4474         * DateTime.cs: ToString () using "G" format specifier 
4475
4476 2002-05-19  Martin Baulig  <martin@gnome.org>
4477
4478         * Convert.cs (FromBase64CharArray): Do correct exception handling.
4479
4480 2002-05-19  Martin Baulig  <martin@gnome.org>
4481
4482         * Convert.cs (FromBase64CharArray): Convert the char array using
4483         System.Text.UTF8Encoding, not UnicodeEncoding (which is UTF-16) to
4484         a byte array.
4485
4486 2002-05-17  Miguel de Icaza  <miguel@ximian.com>
4487
4488         * MonoType.cs: Style changes.
4489
4490         * Type.cs: Style changes.
4491
4492 2002-05-16  Piers Haken <piersh@friksit.com
4493
4494         * UInt64.cs: fix declaration of IConvertible.To* overrides.
4495
4496 2002-05-16  Nick Drochak  <ndrochak@gol.com>
4497
4498         * BitConverter.cs (ToString): Add parameter check for invalid start 
4499         index.
4500
4501         * Console.cs: Use AutoFlush on the StreamWriter for stdin and stdout
4502         now that StreamWriter uses buffering
4503
4504 2002-05-14  Miguel de Icaza  <miguel@ximian.com>
4505
4506         * Double.cs: Oops.  Also handle exponents without finding a dot.
4507
4508 2002-05-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4509
4510         * ChangeLog: removed empty entry at the top of the file.
4511
4512         * Int32.cs: made static functions used by Parse internal.
4513
4514         * Int64.cs:
4515         * UInt32.cs:
4516         * UInt64.cs: removed static fucntions used by Parse and use the ones
4517         in Int32.cs
4518
4519 2002-05-12  Daniel Morgan <danmorg@sc.rr.com>
4520
4521         * IServiceProvider.cs: added using System
4522
4523 2002-05-09  Daniel Morgan <danmorg@sc.rr.com>
4524
4525         * Single.cs: copied ToString() and Parse() methods from 
4526         Double to Single and modified a tiny bit for Single.  
4527         There is still a FIXME for Double and Single about
4528         passing the format and provider info to the icall too.
4529
4530 2002-05-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4531
4532         * Int32.cs:
4533         * Int64.cs:
4534         * UInt32.cs:
4535         * UInt64.cs (Parse): don't use Char.IsNumber to test for hex digits.
4536         Don't use a delegate to test for valid digits.
4537
4538 2002-05-01  Duncan Mak  <duncan@ximian.com>
4539
4540         * Convert.cs: 
4541         * Math.cs: Added missing CLSCompliant attributes where necessary.
4542         
4543 2002-04-30  Duncan Mak  <duncan@ximian.com>
4544
4545         * ArgumentException.cs (Message): 
4546         * ArgumentOutOfRangeException.cs (Message): Added.
4547
4548 2002-04-30  Nick Drochak  <ndrochak@gol.com>
4549
4550         * MonoType.cs: Remove unused variable and eliminate a compiler warning.
4551
4552 Mon Apr 29 15:32:02 CEST 2002 Paolo Molaro <lupus@ximian.com>
4553
4554         * Environment.cs: support for Exit(), CommandLine, CommandLineArgs ().
4555
4556 2002-04-28  Duncan Mak  <duncan@ximian.com>
4557
4558         * DivideByZeroException.cs: Added missing serialization constructor.
4559
4560         * UnauthorizedAccessException.cs: Added the missing Serializable attribute.
4561
4562 2002-04-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4563
4564         * Math.cs: fix Floor () and Round (). Closes #23960.
4565
4566 2002-04-27  Nick Drochak  <ndrochak@gol.com>
4567
4568         * Array.cs (IList.Contains): Should throw a RankException if this is 
4569         called on a Rank > 1 array. Not in the docs, but this is what the 
4570         MS.NET does.
4571
4572 2002-04-26  Duncan Mak  <duncan@ximian.com>
4573
4574         * MissingMemberException.cs: Made the message variable 'protected'
4575         instead of 'private', so that we can see it in
4576         MissingMethodException and MissingFieldException.
4577
4578         * MissingFieldException.cs:
4579         * MissingMethodException.cs: Added missing (string, string)
4580         constructor, and also the Message property.
4581
4582 2002-04-26  Martin Baulig  <martin@gnome.org>
4583
4584         * Enum.cs: Implemented the IConvertible methods.
4585
4586 2002-04-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4587
4588         * SByte.cs: little change in Parse (string) to avoid incorrect
4589         OverflowException thrown (reported by nickd).
4590
4591 2002-04-22  Miguel de Icaza  <miguel@ximian.com>
4592
4593         * ValueType.cs: Add Serializable attribute.
4594
4595         * String.cs: ifdef-out out the __arglist Concat function until I
4596         add support for that to mcs.
4597
4598 2002-04-24      Patrik Torstensson <patrik.torstensson@labs2.com>
4599
4600         * AppDomain.cs (GetValue): usage of the correct icall (bug)
4601
4602 Wed Apr 24 21:15:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
4603
4604         * GC.cs: implement most of the methods as icalls.
4605
4606 2002-04-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4607
4608         * DecimalFormatter.cs (ToString): return correct value when the
4609         decimal number is 0.
4610
4611 2002-04-24      Patrik Torstensson <patrik.torstensson@labs2.com>
4612         
4613         * Type.cs (GetProperty): fixed call syntax (needs an empty array not null)
4614         * MonoType.cs (GetPropertyImpl) : basic implementation (ignores types, bindingAttr, modifiers)
4615
4616 2002-04-24  Nick Drochak  <ndrochak@gol.com>
4617
4618         * Double.cs (Parse): Handle case where there are no digits before the 
4619         decimal point, such as ".1".
4620
4621 2002-04-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4622
4623         * Int32.cs:
4624         * UInt32.cs:
4625         * Int64.cs:
4626         * UInt64.cs: fixed bug #23738 (hex numbers parsed wrong).
4627
4628 2002-04-23      Patrik Torstensson <patrik.torstensson@labs2.com>
4629
4630         * String.cs (Split): fixed invalid split of count 0 and 1.
4631         
4632 2002-04-23      Patrik Torstensson <patrik.torstensson@labs2.com>
4633         
4634         * String.cs (LastIndexOf): fixed argument checking.
4635         * String.cs (Equals): made internal for performace.
4636
4637 2002-04-23  Nick Drochak  <ndrochak@gol.com>
4638
4639         * String.cs (Join): check argument and throw exception if needed
4640
4641 2002-04-23  Nick Drochak  <ndrochak@gol.com>
4642
4643         * String.cs (StartsWith): check argument and throw exception if needed
4644
4645 2002-04-22  Nick Drochak  <ndrochak@gol.com>
4646
4647         * String.cs (IndexOfAny): check arguments and throw exceptions as
4648         neccessary.  ALso remove some debug WriteLines.
4649
4650 2002-04-20  Dietmar Maurer  <dietmar@ximian.com>
4651
4652         * String.cs: use internal constructors
4653         buf fix in Concat.
4654
4655 Thu Apr 18 17:16:15 CEST 2002 Paolo Molaro <lupus@ximian.com>
4656
4657         * MonoType.cs: make GetElementType its own icall.
4658
4659 2002-04-18  Nick Drochak <ndrochak@gol.com>
4660
4661         * String.cs: Modified file. Re-add methods needed by the unit tests.
4662
4663 Thu Apr 18 12:38:32 CEST 2002 Paolo Molaro <lupus@ximian.com>
4664
4665         * String.cs: some code speedups and restored GetTypeCode().
4666
4667 2002-04-17      Patrik Torstensson <patrik.torstensson@labs2.com>
4668
4669         * String.cs: New implementation using internal calls.
4670         
4671 2002-04-16  Nick Drochak  <ndrochak@gol.com>
4672
4673         * DecimalFormatter.cs: Trim off excess null characters from the string
4674         that decimal2string gives back.
4675
4676 2002-04-16  Nick Drochak  <ndrochak@gol.com>
4677
4678         * String.cs (SubString): revert my change.  I can't reproduce the
4679         problem anymore.
4680
4681 2002-04-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4682
4683         * Attribute.cs: added GetHashCode and Equals.
4684
4685 2002-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4686
4687         * Enum.cs: little improvements to Format ().
4688
4689 Thu Apr 11 12:28:13 CEST 2002 Paolo Molaro <lupus@ximian.com>
4690
4691         * String.cs: internalcall GetHashCode().
4692         * Array.cS: optimize access to elements.
4693
4694 Wed Apr 10 21:20:19 CEST 2002 Paolo Molaro <lupus@ximian.com>
4695
4696         * String.cs: make IndexOfAny() use an internalcall.
4697
4698 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4699
4700         * Int32.cs:
4701         * UInt32.cs:
4702         * Int64.cs: 
4703         * UInt64.cs: fixed error when testing for validity of flags.
4704
4705 2002-04-11  Nick Drochak  <ndrochak@gol.com>
4706
4707         * Double.cs: Use an internal call for ToString(). This is just a simple
4708         implementation to get away from throwing a NotImplementedException.
4709
4710 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4711
4712         * Int32.cs:
4713         * UInt32.cs:
4714         * Int64.cs: 
4715         * UInt64.cs: changed Type.GetType () by typeof (), as suggested by
4716         lupus.
4717
4718         * Int32.cs:
4719         * Int64.cs: throw an OverFlowException when parsing a string 
4720         containing a dot followed by any non '0' number.
4721
4722 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4723
4724         * Byte.cs:
4725         * UInt16.cs:
4726         * UInt32.cs:
4727         * UInt64.cs: added complex Parse ().
4728
4729 2002-04-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4730
4731         * SByte.cs:
4732         * Int16.cs:
4733         * Int32.cs:
4734         * Int64.cs: added complex Parse ().
4735
4736 2002-04-09  Nick Drochak  <ndrochak@gol.com>
4737
4738         * Array.cs (BinarySearch): Add checks on paramters before using them
4739         and throw exceptions as needed.
4740
4741         * Enum.cs (Format): Check if [Flags] is applied to enum and convert
4742         "G" format to "F" if so.
4743
4744 Tue Apr 9 13:12:09 CEST 2002 Paolo Molaro <lupus@ximian.com>
4745
4746         * MonoCustomAttrs.cs: return arrays of type Attribute[]
4747         instead of object[].
4748
4749 2002/04/09  Nick Drochak <ndrochak@gol.com>
4750
4751         * String.cs (Substring): Copy only non-null characters to the new
4752         string.
4753
4754 2002-04-09  Nick Drochak  <ndrochak@gol.com>
4755
4756         * IntegerFormatter.cs: Don't use a format character to indicate a
4757         custom format was passed in. It was using 'z' to indicate a custom
4758         format, but really it should throw a format exception if the user
4759         tries to use "z" as the format string. Now it does.
4760
4761         * Activator.cs: New File.
4762
4763 2002-04-08  Nick Drochak  <ndrochak@gol.com>
4764
4765         * Enum.cs (ToString): Big ugly fix for the case where [Flags] is
4766         applied to an enum. Need to handle the different possible integer
4767         types of an enum somehow.  Can anyone say generics?
4768
4769 Mon Apr  8 06:22:42  2002 Piers Haken <piersh@friskit.com>
4770
4771         * Convert.cs: switched the To*(object) methods to use
4772         IConvertible directly instead of calling ChangeType
4773
4774 Sat Apr 6 20:08:41 CEST 2002 Paolo Molaro <lupus@ximian.com>
4775
4776         * ValueType.cs: make Equals() an internalcall.
4777
4778 Fri Apr 5 15:38:54 CEST 2002 Paolo Molaro <lupus@ximian.com>
4779
4780         * Type.cs: also look for nested types in FindMembers.
4781         * MonoType.cs: make GetNestedTypes() an internalcall.
4782
4783 2002-04-05  Nick Drochak  <ndrochak@gol.com>
4784
4785         * Enum.cs (Parse): Handle different underlying types.
4786
4787 2002/04/04 Nick Drochak <ndrochak@gol.com>
4788
4789         * Enum.cs (IsDefined): Throw exception when type of value to look for
4790         is not the correct one.  Attempt to have it work with string values
4791         too, but not sure if the unit tests are getting that far yet.
4792
4793 2002-04-04  Nick Drochak  <ndrochak@gol.com>
4794
4795         * Decimal.cs: Fix a couple of typos.
4796
4797 Wed Apr 3 19:46:00 CEST 2002 Paolo Molaro <lupus@ximian.com>
4798
4799         * Enum.cs: the values array is of the enum and not of the underlying
4800         type. Updates and some bug fixes.
4801         * MonoType.cs: make the internalcall return FullName instead of the
4802         assembly qualified name.
4803         * Type.cs: make ToString () simply return FullName.
4804
4805 2002-04-03  Nick Drochak  <ndrochak@gol.com>
4806
4807         * Type.cs (GetTypeCode): provide some of the implementation for this
4808         method.  It's still too simplistic to be considered complete.
4809
4810 2002-04-02  Dietmar Maurer  <dietmar@ximian.com>
4811
4812         * Object.cs: fixed FieldGetter/FieldSetter signature
4813
4814 2002-04-02  Nick Drochak  <ndrochak@gol.com>
4815
4816         * Environment.cs: add MonoTODO's on parts that should have it.
4817
4818 2002-04-01  Nick Drochak  <ndrochak@gol.com>
4819
4820         * Enum.cs: added reality checks (check parameters to most methods that
4821         need them).
4822
4823 2002-03-30  Dietmar Maurer  <dietmar@ximian.com>
4824
4825         * Object.cs: added FieldGetter/FieldSetter
4826
4827 2002-03-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4828
4829         * IntegerFormatter.cs: fixed initialization error in static
4830         constructor.
4831
4832 2002-03-28  Dietmar Maurer  <dietmar@ximian.com>
4833
4834         * Delegate.cs: added new field to store a trampoline function
4835
4836 2002-03-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4837
4838         * IntegerFormatter.cs: added workaround for bug #22668. First patch to
4839         make custom format strings work (not fully functional yet).
4840
4841 2002/03/28  Nick Drochak <ndrochak@gol.com>
4842
4843         * IntegerFormatter.cs: Change class from internal to public.  Add
4844         necessary [CLSCompliant(false)] attributes.
4845
4846 2002-03-27  Duco Fijma  <duco@lorentz.xs4all.nl>
4847         * _AppDomain.cs, AppDomain.cs: renamed method GetDate to GetData
4848         (was a typo)
4849
4850 2002-03-28  Nick Drochak  <ndrochak@gol.com>
4851
4852         * Type.cs: Added MonoTODO tags on members that have FIXME, etc.
4853
4854 2002-03-27  Dan Lewis  <dihlewis@yahoo.co.uk>
4855
4856         * Console.cs: Modified to get std handles from MonoIO.
4857         * Environment.cs: removed PAL dependencies.
4858
4859 2002-03-25  Miguel de Icaza  <miguel@ximian.com>
4860
4861         * String.cs (System): Removed internal enumeration, because
4862         bootstrapping the corlib at this point does not support
4863         enumerations. 
4864
4865         * IntPtr.cs: Temporary work-around until I fix the assembly
4866         attributes bug.
4867
4868 2002-03-24  Martin Baulig  <martin@gnome.org>
4869
4870         * Enum.cs (GetValues): According to the docu this is sorted after
4871         values, not names.
4872
4873         * String.cs (System): Removed enumeration, because it is pretty
4874         hard to support enumerations in /nostdlib mode for the core types.
4875
4876 Tue Mar 19 18:18:49 CET 2002 Paolo Molaro <lupus@ximian.com>
4877
4878         * Array.cs: move error handling in the catch block.
4879         * MulticastDelegate.cs: remove == and != operators that were
4880         removed with the delegate changes (when you add stuff, please do not
4881         remove existing functionality!).
4882         * Type.cs: if a property is not found in a type, search for it
4883         in the parent types, too.
4884
4885 2002-03-18  Dan Lewis <dihlewis@yahoo.co.uk>
4886         
4887         * Math.cs: changed to use icall instead of PAL.
4888
4889 2002-03-18  Dietmar Maurer  <dietmar@ximian.com>
4890
4891         * Double.cs: added check for NaN (Bug [22082])
4892
4893 2002-03-19  Nick Drochak  <ndrochak@gol.com>
4894
4895         * Enum.cs (Equals): check for null and throw if it is.
4896         * Enum.cs (Format): check for null parameters and throw if necessary.
4897         This method still needs more argument checking.
4898
4899 2002-03-18  Dietmar Maurer  <dietmar@ximian.com>
4900
4901         * Enum.cs (Equals): check if Enums are of the same type
4902
4903 2002-03-18  Nick Drochak  <ndrochak@gol.com>
4904
4905         * Double.cs: Explicitly handle comparisons in CompareTo() for
4906         Positive/Negative Infinity and NaN. Unit Test now passes on Linux.
4907
4908         * Enum.cs(CompareTo): Check types of values before trying to compare.
4909         Throw exceptions if types are invalid or don't match.
4910
4911 2002-03-14  Miguel de Icaza  <miguel@ximian.com>
4912
4913         * Array.cs: Add some extra debugging information.
4914
4915 2002-03-15  Nick Drochak  <ndrochak@gol.com>
4916
4917         * Array.cs: Added IList and IEnumerable. 
4918
4919 2002-03-14  Miguel de Icaza  <miguel@ximian.com>
4920
4921         * UInt64.cs, UInt32.cs, UInt16.cs: Mark public parse methods as
4922         NonCLSCompliant. 
4923
4924 2002-03-14  Dietmar Maurer  <dietmar@ximian.com>
4925
4926         * Delegate.cs (Equals): also compare method_ptr 
4927         (GetHashCode): returm method_ptr as hash
4928
4929 2002-03-13  Duco Fijma  <duco@lorentz.xs4all.n>
4930         * TimeSpan.cs: removed the use of Custom Numeric Format Strings,
4931         such as 42.ToString("0000000"), as these are (currently) not implemented
4932         in System.IntegerFormatter. TimeSpan luckely can do with Standard
4933         Numeric Format Strings, such as 42.ToString("D7").
4934
4935 2002-03-12  Duncan Mak  <duncan@ximian.com>
4936
4937         * FieldAccessException.cs: 
4938         * MethodAccessException.cs: 
4939         * PlatformNotSupportedException.cs: Inherit from
4940         MemberAccessException, not SystemException.
4941
4942         * ObsoleteAttribute.cs: Made Message and IsError properties
4943         instead of fields.
4944
4945 Tue Mar 12 19:21:18 CET 2002 Paolo Molaro <lupus@ximian.com>
4946
4947         * GC.cs: make SuppressFinalize() a nop.
4948         * Delegate.cs: fix == operator.
4949
4950 2002-03-13  Nick Drochak  <ndrochak@gol.com>
4951
4952         * Enum.cs: Add IConvertible methods. Cyclic dependancy fixed in the
4953         runtime that goes with this patch.
4954
4955 2002-03-10  Martin Baulig  <martin@gnome.org>
4956
4957         * Int32.cs (Parse): Correctly parse negative numbers.
4958
4959 2002-03-08  Martin Baulig  <martin@gnome.org>
4960
4961         * String.cs (Split): Really fix it this time. Also adding several new
4962         testcase to the testsuite.       
4963
4964 2002-03-08  Martin Baulig  <martin@gnome.org>
4965
4966         * Array.cs (Copy): Optimized: removed duplicate null check, removed
4967         two duplicate GetLowerBound() calls and one duplicate IsValueType.
4968
4969 Fri Mar 8 18:49:19 CET 2002 Paolo Molaro <lupus@ximian.com>
4970
4971         * Object.cs: commit my hacked GetHashCode(): it's good enough for now.
4972         * String.cs: use the dumb code for IndexOf(string): this is worth
4973         15-20 % speedup in mcs compile with mint.
4974
4975 Fri Mar 8 12:45:44 CET 2002 Paolo Molaro <lupus@ximian.com>
4976
4977         * String.cs: revert change to Split() that broke the compiler (hi martin!:-).
4978
4979 2002-03-07  Martin Baulig  <martin@gnome.org>
4980
4981         * String.cs (Join): Throw an ArgumentNullException.
4982         (LastIndexOf (string,int,int)): This method does a backwards search,
4983         so startIndex points to the end of value, not to its beginning. Don't
4984         throw an exception if startIndex equals this.Length. Always return -1
4985         if startIndex is smaller than the length of value.
4986         (Replace (string,string)): Replace all occurences of oldValue.
4987         If newValue is null, all occurences of oldValue are to be removed.
4988         (Split (char[],int)): Return an empty array if maxCount is zero, throw
4989         an ArgumentOutOfRangeException if it's less than zero. Return maxValue
4990         elements, not maxValue+1.
4991
4992 Thu Mar 7 17:16:06 CET 2002 Paolo Molaro <lupus@ximian.com>
4993
4994         * MonoType.cs: make GetEvents() an internal call.
4995         * MulticastDelegate.cs: copy the passed in array.
4996
4997 2002-03-06  Martin Baulig  <martin@gnome.org>
4998
4999         * Array.cs (Copy): Use FastCopy when appropriate and do correct
5000         exception handling.
5001
5002 2002-03-06  Duco Fijma  <duco@lorentz.xs4all.nl>
5003         * CharEnumerator.cs: fixes to CharEnumertor.MoveNext, fixing 
5004         some of the failures found be new tests (see ChangeLog in 
5005         Test/System). Comments added to this method, based on
5006         the representation invariant of this class, that (try to) explain
5007         why it now should be correct.
5008
5009 2002-03-06  Dietmar Maurer  <dietmar@ximian.com>
5010
5011         * Int64.cs (Parse): bug fix for max. negative value. 
5012
5013 2002-03-07  Nick Drochak  <ndrochak@gol.com>
5014
5015         * RuntimeTypeHandle.cs: Add Serializable attribute as the docs say.
5016         I need to understand what the difference between the attribute and
5017         the interface is.
5018
5019 2002-03-06  Martin Baulig  <martin@gnome.org>
5020
5021         * Array.cs (Copy): Always throw an ArrayTypeMismatchException, not
5022         an InvalidCastException if the widening conversion failed. See
5023         testcases #M94-#M96.
5024
5025         * Array.cs (CopyTo): Bug fix from Ajay Dwivedi, correctly handle
5026         arrays with non-zero lower bounds. Also adding testcases #F10-#F13
5027         for this.
5028
5029         * Array.cs (CopyTo): Reverted my last change, it was incorrect.
5030         (Copy): Actually allow copying multi-dimensional arrays.
5031
5032 2002-03-05  Duncan Mak  <duncan@ximian.com>
5033
5034         * Convert.cs:
5035         (DBNull) Added the missing field.
5036         (IsDBNull) Fixed typo.
5037         (ToByte (string, int)) Implemented.
5038         (ToString (byte, int)) Implemented.
5039         (ConvertToBase)
5040         (BuildConvertedString) internal functions used for converting values to
5041         a specific base.
5042
5043         * Int16.cs: 
5044         * Int32.cs:
5045         * Int64.cs:
5046         * Single.cs:
5047         * UInt16.cs: 
5048         * UInt32.cs: Implemented the IConvertible interface.    
5049
5050         * CharEnumerator.cs: Renamed to variables to be clearer and
5051         changed some of the tests to conform to the 1.0 spec.
5052
5053 2002-03-06  Martin Baulig  <martin@gnome.org>
5054
5055         * Array.cs (Copy): Calculate absolute array position here and use
5056         GetValueImpl() and SetValueImpl() with that position. We can now
5057         copy multi-dimensional arrays.
5058         (CopyTo): Small bug fix.
5059
5060 2002-03-05  Duco Fijma  <duco@lorentz.xs4all.nl>
5061
5062         * Version.cs: CompareTo changed according the LAMESPEC discovered by 
5063         Nick (See VersionTest.cs).
5064         * CharEnumerator.cs: fixed two bugs in MoveNext. It had an off-by-one
5065         error comparing the current position (idx) against the length of the
5066         string iterated and it set idx to an unrecognized special value (-2)
5067
5068 Tue Mar 5 17:34:14 CET 2002 Paolo Molaro <lupus@ximian.com>
5069
5070         * SByte.cs, UInt64.cs: implement IConvertible interface. Nobody wants
5071         to do this dirty work, but someone has to do it (and I need it to pass
5072         the "200 sample tests compiled on linux" mark).
5073
5074 2002-03-06  Nick Drochak  <ndrochak@gol.com>
5075
5076         * Attribute.cs
5077         * DecimalFormatter.cs
5078         * Delegate.cs
5079         * Double.cs
5080         * GC.cs
5081         * Int16.cs
5082         * Int32.cs
5083         * MonoType.cs
5084         * RuntimeMethodHandle.cs
5085         * RuntimeTypeHandle.cs
5086         * String.cs
5087         * Type.cs:
5088                 Add [MonoTODO]'s to places where we currently throw a
5089                 NotImplementedException.
5090
5091 2002-03-05  Dietmar Maurer  <dietmar@ximian.com>
5092
5093         * Int16.cs (Parse): do not overflow on max negative value
5094
5095         * Int32.cs (Parse): do not overflow on max negative value
5096
5097 Mon Mar 4 20:36:05 CET 2002 Paolo Molaro <lupus@ximian.com>
5098
5099         * Type.cs: fixed IsClass.
5100         * MonoType.cs: fixed MemberType, IsPrimitiveImpl, IsPointerImpl,
5101         IsByRefImpl. Added GetInterfaces().
5102         * IServiceProvider.cs: compilation fix.
5103
5104 Mon Mar 4 18:37:03 CET 2002 Paolo Molaro <lupus@ximian.com>
5105
5106         * Array.cs: allow copying an empty array to an empty array.
5107
5108 Mon Mar 4 17:59:16 CET 2002 Paolo Molaro <lupus@ximian.com>
5109
5110         * String.cs: fixed LastIndexOf (string) to do a bit of argument
5111         checking.
5112
5113 2002-03-04  Duco Fijma  <duco@lorentz.xs4all.nl>
5114         * Version.cs: many fixes to failures found by the newly created
5115         test cases for this class. Specifically, the CompareTo member
5116         returned wrong values due to the use of Int32.MaxValue as a special
5117         value indicating an "undefined" version component. Also implemented the
5118         missing operators (==, <, >, etc.), one missing constructor and
5119         and some exception throwing.
5120
5121 2002-03-04  Nick Drochak  <ndrochak@gol.com>
5122
5123         * IServiceProvider.cs: Add missing attribute: ComVisible(false)
5124         * Attribute.cs: Add missing attributes: Serializable and
5125         AttributeUsage(AttributeTargets.All)
5126
5127 Mon Mar 4 11:26:49 CET 2002 Paolo Molaro <lupus@ximian.com>
5128
5129         * MonoType.cs: implemented GetConstructors(), GetFields(),
5130         GetMethods(), GetProperties().
5131         * Object.cs: added debugging icall obj_address().
5132         * Type.cs: fixed the binding flags for some Get* methods.
5133         Implemented FindMembers() as calls to the specific GetMember
5134         methods.
5135
5136 2002-03-01  Duco Fijma  <duco@lorentz.xs4all.nl>
5137         * BitConverter.cs: fixed one little bug: ToString(s, n, 0) 
5138         should give an exception for n>=s.Length.
5139
5140 2002-03-01  Martin Baulig  <martin@gnome.org>
5141
5142         * Array.cs: More argument checking and bug fixing.
5143
5144 2002-03-01  Miguel de Icaza  <miguel@ximian.com>
5145
5146         * BitConverter.cs: Indentation match
5147
5148         * AppDomain.cs: Added MonoTODOs to this too.
5149
5150         * Buffer.cs: Added MonoTODOs to this.
5151
5152 2002-03-01  Martin Baulig  <martin@gnome.org>
5153
5154         * Array.cs: Added argument checking to all methods where it was missing.
5155
5156 2002-03-01  Duco Fijma  <duco@lorentz.xs4all.nl>
5157
5158         * BitConverter.cs: Fixed bugs in ToString methods
5159
5160 Fri Mar 1 15:20:00 CET 2002 Paolo Molaro <lupus@ximian.com>
5161
5162         * MulticastDelegate.cs: implement operators so mcs3 can be used on linux.
5163
5164 2002-03-01  Nick Drochak  <ndrochak@gol.com>
5165
5166         * BitConverter.cs: Throw ArgumentException like mscorlib, instead of
5167         ArgumentOutOfRangeException like the docs say.
5168
5169 2002-03-01  Martin Baulig  <martin@gnome.org>
5170
5171         * Enum.cs (CompareTo): Correctly override this method from IComparable.
5172
5173         * Console.cs (setIn, setOut, setError): It's called SetIn, SetOut, SetError.
5174
5175 2002-02-28  Martin Baulig  <martin@gnome.org>
5176
5177         * String.cs: This file now passes the testsuite on Linux :-)
5178         
5179         * String.cs (Intern, IsInterned): The interncalls are now called _Intern and _IsInterned;
5180         make them private and provide C# wrappers which do proper argument checking.
5181
5182         * String.cs (Format): Correctly handle escaped brackets.
5183
5184         * String.cs (_CompareChar): New internal function which compares two chars.
5185         (_Compare): Provide an internal compare method which can do all sorts of
5186         comparision and call it from all the Compare() methods. Also fixed a lot of
5187         bugs here, this code now actually passes the testsuite.
5188
5189 2002-02-28  Duncan Mak  <duncan@ximian.com>
5190
5191         * Convert.cs: Added the missing methods. The new class status page
5192         kicks ass, it even found my typos! Woohoo!
5193         (ConvertFromBase): Moved the Exception throwing in here and
5194         removed the other occurances so it's all centralized now.
5195         (ISDBNull): Implemented.
5196         (GetTypeCode): Implemented.
5197
5198 2002-02-27  Duco Fijma  <duco@lorentz.xs4all.nl>
5199         * Guid.cs: Guid.ToString("") and Guid.ToString(null) is now understood as Guid.ToString("D") 
5200         just as in mscorlib. There is (probably) a documentation bug in the MS FrameWork SDK, which
5201         states that a lacking format should be interpreted as "N".  
5202         Also added [Serializable] attribute
5203         * TimeSpan.cs: some formatting and added the [Serializable] attribute
5204
5205 2002-02-26  Duncan Mak  <duncan@ximian.com>
5206
5207         * WeakReference.cs: Committed for Ajay Kumar Dwivedi.   
5208
5209 2002-02-26  Martin Baulig  <martin@gnome.org>
5210
5211         * TimeZone.cs: Use an internal enum rather than magic numbers to access the
5212         fields of the interncall GetTimeZoneData.
5213
5214         * DateTime.cs: Implemented Parse and fixed a few bugs.
5215
5216         * String.cs (TrimStart): Small fix.
5217
5218 2002-02-26  Martin Baulig  <martin@gnome.org>
5219
5220         * DateTime.cs: ParseExact is now fully functional.
5221
5222         * String.cs (TrimEnd): Small fix.
5223
5224 2002-02-26  Duco Fijma <duco@lorentz.xs4all.nl>
5225         * TimeSpan.cs: Added method TimeSpan.FromMilliseconds, mysteriously 
5226         missing for about six months.
5227
5228 Tue Feb 26 14:21:19 CET 2002 Paolo Molaro <lupus@ximian.com>
5229
5230         * UInt64.cs: fixed Parse method () to handle some of the NumberStyle flags.
5231
5232 2002-02-26  Martin Baulig  <martin@gnome.org>
5233
5234         * DateTime.cs: Miguel already committed this, but there was still a
5235         ChangeLog entry for this missing ....
5236         We're now reusing functionality from TimeSpan, printing dates is
5237         fully implemented, currently working on parsing.
5238
5239         * TimeZone.cs: Fully implemented this. There's a new InternCall in the
5240         runtime for this.
5241
5242 Fri Feb 22 18:47:08 CET 2002 Paolo Molaro <lupus@ximian.com>
5243
5244         * MonoType.cs: disable constructor.
5245         * Object.cs: make GetType() an internalcall.
5246         * Type.cs: added correct bindingflags to GetMethods ().
5247         All such calls should be reviewed to use the correct flags.
5248
5249 Thu Feb 21 19:23:46 CET 2002 Paolo Molaro <lupus@ximian.com>
5250
5251         * Type.cs, MonoType.cs: type_is_subtype_of () changed to include extra
5252         argument.
5253
5254 Thu Feb 21 16:56:51 CET 2002 Paolo Molaro <lupus@ximian.com>
5255
5256         * Type.cs: implemented IsAssignableFrom.
5257
5258 2002-02-21  Duco Fijma <duco@lorentz.xs4all.nl>
5259         * Guid.cs: fixed Guid.Guid(string) ctor. Changed format:
5260         "{0xdddddddd,0xdddd,0xdddd,{0xdd},{0xdd},{0xdd},{0xdd},{0xdd},{0xdd}}" 
5261         to "{0xdddddddd,0xdddd,0xdddd,{0xdd,0xdd,0xdd,0xdd,0xdd,0xdd}}" 
5262         The former is documented by Microsoft. The latter is how they
5263         actually implemented it in mscorlib:-)
5264
5265 Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>
5266
5267         * MonoCustomAttrs.cs: hooks to get the custom attributes from the
5268         runtime.
5269         * MonoType.cs: Implemented custom attributes methods.
5270
5271
5272 2002-02-21  Duco Fijma <duco@lorentz.xs4all.nl>
5273         * Guid.cs: 
5274
5275 Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>
5276
5277         * MonoCustomAttrs.cs: hooks to get the custom attributes from the
5278         runtime.
5279         * MonoType.cs: Implemented custom attributes methods.
5280
5281 2002-02-19  Dietmar Maurer  <dietmar@ximian.com>
5282
5283         * Array.cs (CopyTo): use GetLength() instead of GetUpperBound() 
5284
5285 2002-02-19  Duncan Mak  <duncan@ximian.com>
5286
5287         * Convert.cs: Finished up the missing methods in Convert. Added a
5288         new private method ConvertFromBase.
5289
5290 2002-02-19  Dietmar Maurer  <dietmar@ximian.com>
5291
5292         * String.cs: impl. IConvertible interface
5293
5294 2002-02-18  Duco Fijma <duco@lorentz.xs4all.nl>
5295         * Guid.cs: actual implementation for Guid.Guid(string) Ctor
5296
5297 2002-02-18  Duncan Mak  <duncan@ximian.com>
5298
5299         * Convert.cs: Changed from using Type.GetType (string) to just
5300         typeof (). Probably will speed things up a bit?         
5301
5302 2002-02-18  Ajay Kumar Dwivedi <AjayKumar.Dwivedi@dresdner-bank.com>
5303
5304         * Array.cs:         
5305         1. Fix for GetUpperBound to return correct values
5306         2. made some Properties virtual
5307         3. Adds IsFixedSize and IsReadOnly properties.
5308         4. changes CreateInstance(Type,int[],int[]) to throw Exception
5309         when third arg is null. InternalCall CreateInstance changed to  
5310         CreateInstanceImpl
5311         5. Fixed array.GetUpperBound at a couple of places
5312         6. IndexOf and LastIndexOf now use Object.Equals instead of "=="
5313         7. Added two FIXME's in BinarySearch functions.
5314
5315 2002-02-17  Duncan Mak  <duncan@ximian.com>
5316
5317         * TimeZone.cs:  Applied the rest of Ajay's patch for    
5318         IsDaylightSavingTime. Thanks a lot for the nice explanation of how
5319         it works!
5320
5321 2002-02-17  Duco Fijma  <duco@lorentz.xs4all.nl>
5322         * Guid.cs: added stub for Guid(string) ctor
5323
5324 2002-02-17  Duncan Mak  <duncan@ximian.com>
5325
5326         * Convert.cs: Near-complete implementation of Convert.cs
5327
5328         Added all the To* methods taking (object) and
5329         (object, IFormatProvider) as parameters.
5330
5331         Added [CLSCompliant (false)] attributes to methods dealing with
5332         unsigned types.
5333
5334         Added the missing section on converting to and from DateTime. Only
5335         6 missing methods, all marked with MonoTODOs. Will tackle them later.           
5336
5337 2002-02-16  Duncan Mak  <duncan@ximian.com>
5338
5339         * TimeZone.cs: patch from Ajay Kumar Dwivedi (adwiv@yahoo.com) to
5340         make IsDaylightSavingTime (DateTime) call 
5341         IsDaylightSavingTime (DateTime, DaylightTime).  
5342         
5343         Added internal class CurrentTimeZone from Ajay. It needs more work
5344         to fill in the appropriate internal calls.
5345         
5346 Sat Feb 16 12:41:41 CET 2002 Paolo Molaro <lupus@ximian.com>
5347
5348         * Type.cs: fix IsClass.
5349
5350 Sat Feb 16 12:02:02 CET 2002 Paolo Molaro <lupus@ximian.com>
5351
5352         * String.cs: fix Trim().
5353
5354 Fri Feb 15 21:02:46 CET 2002 Paolo Molaro <lupus@ximian.com>
5355
5356         * String.cs: fix more off by one errors.
5357
5358 Thu Feb 14 18:54:09 CET 2002 Paolo Molaro <lupus@ximian.com>
5359
5360         * MonoType.cs: fix IsValueTypeImpl.
5361         * Type.cs: fix IsEnum. Implement Equals methods.
5362
5363 Wed Feb 13 21:50:13 CET 2002 Paolo Molaro <lupus@ximian.com>
5364
5365         * Int32.cs: implement IConvertible interface.
5366         
5367 2002-02-12  Duncan Mak  <duncan@ximian.com>
5368
5369         * TimeZone.cs: Implemented and added to CVS.
5370
5371 2002-02-11  Duncan Mak  <duncan@ximian.com>
5372
5373         * Convert.cs: Implemented the ChangeType () methods.
5374
5375 Mon Feb 11 19:48:58 CET 2002 Paolo Molaro <lupus@ximian.com>
5376
5377         * Array.cs: make Clone() an internal call.
5378
5379 2002-02-09  Duco Fijma <duco@lorentz.xs4all.nl>
5380         * Changed Guid.NewGuid so that it can use both System.Random and 
5381           System.Security.Cryptography.RandomNumberGenerator
5382
5383 2002-02-09  Duco Fijma <duco@lorentz.xs4all.nl>
5384         * First version of Guid.NewGuid
5385
5386 2002-02-08  Duncan Mak  <duncan@ximian.com>
5387
5388         * RuntimeArgumentHandle.cs: Added to CVS.
5389
5390 Fri Feb 8 19:14:54 CET 2002 Paolo Molaro <lupus@ximian.com>
5391
5392         * CrossAppDomainDelegate.cs, AssemblyLoadEventHandler.cs,
5393         UnhandledExceptionEventHandler.cs: added delegates.
5394
5395 Fri Feb 8 18:06:20 CET 2002 Paolo Molaro <lupus@ximian.com>
5396
5397         * MarshalByRefObject.cs: add ToString () method
5398         (apparently needed by nunit).
5399         * _AppDomain.cs: uncomment ToString(): dietmar fixed the bug triggered
5400         by it in the runtime.
5401
5402 2002-02-08  Dan Lewis <dihlewis@yahoo.co.uk>
5403         
5404         * String.cs (Format): implemented
5405
5406 2002-02-07  Duncan Mak  <duncan@ximian.com>
5407         
5408         * DuplicateWaitObjectException:
5409         * InvalidCastException:
5410         * NotImplementedException:
5411         * NotSupportedException:
5412         * NullReferenceException:
5413         * OutOfMemoryException:
5414         * OverflowException:
5415         * RankException:
5416         * StackOverflowException.cs:
5417         * UnauthorizedAccessException: Added missing constructor used for serialization.
5418
5419 2002-02-07  Dietmar Maurer  <dietmar@ximian.com>
5420
5421         * String.cs (System.Compare): bug fix 
5422
5423 2002-02-06  Dietmar Maurer  <dietmar@ximian.com>
5424
5425         * Enum.cs (Parse,  GetHashCode): impl. 
5426
5427 2002-02-05  Duncan Mak  <duncan@ximian.com>
5428
5429         * DBNull.cs: This is my first crack at the DBNull class. I think I
5430         actually got most of the IConvertible methods right, but I haven't
5431         done the research to test whether or not this is the correct
5432         behavior. IConvertible.ToType () is the most iffy of all, IMHO.
5433
5434         * DllNotFoundException.cs: Inherits from TypeLoadException, not SystemException.
5435
5436 2002-02-05  Dietmar Maurer  <dietmar@ximian.com>
5437
5438         * Enum.cs: added more functionality (GetName, ToObject, Equals)
5439
5440 2002-01-31  Duncan Mak  <duncan@ximian.com>
5441
5442         * InvalidOperationException.cs:
5443         * NotFiniteNumberException.cs:
5444         * ObjectDisposedException.cs:
5445         * TypeInitializationException.cs: Added missing bits for serialization/
5446         
5447         * AppDomainUnloadedException.cs:
5448         * ApplicationException.cs:
5449         * ArgumentOutOfRangeException.cs:
5450         * ArithmeticException.cs:
5451         * ArrayTypeMismatchException:
5452         * BadImageFormatException.cs:
5453         * Exception.cs:
5454         * MissingMemberException.cs:
5455         * TypeLoadException.cs: Added missing bits for serialization.
5456
5457 2002-01-30  Duco Fijma <duco@lorentz.xs4all.nl>
5458         * Guid.cs: implemented everything but Guid.NewGuid
5459
5460 Tue Jan 29 22:32:36 CET 2002 Paolo Molaro <lupus@ximian.com>
5461
5462         * _AppDomain.cs: remove ToString() method: it doesn't seem right 
5463         to have it in this interface and it screws up the method vtable setup.
5464
5465 2002-01-28  Andrei Zmievski <andrei@php.net>
5466
5467         * Double.cs: implemented IConvertible interface.
5468
5469 2002-01-28  Miguel de Icaza  <miguel@ximian.com>
5470
5471         * ArgumentException.cs: Implement serialization constructor.
5472         (GetObjectData): Implement serializer.
5473         
5474         * ArgumentNullException.cs: Implement serialization constructor.
5475
5476         * Exception.cs: Implement serialization constructor.
5477         (GetObjectData): Implement serializer.
5478
5479 2002-01-23  Miguel de Icaza  <miguel@ximian.com>
5480
5481         * DateTime.cs (UnixEpoch): The Begining of the Unix epoch.
5482
5483 2002-01-23  Duncan Mak  <duncan@ximian.com>
5484
5485         * EntryPointNotFoundException.cs:
5486         * FormatException: Added missing constructor and related bits.
5487
5488         * TypeLoadException: Added missing constructor, methods and properties.
5489
5490 2002-01-23  Miguel de Icaza  <miguel@ximian.com>
5491
5492         * AppDomain.cs (GetAssemblies): Use foreach construct instead of
5493         manually getting the enumerator.
5494
5495         (AppDomain.AppDomain): Prime the loaded assemblies with the
5496         assemblies loaded by the runtime in our behalf.
5497
5498         * AppDomainSetup.cs: Remove private keyword, that is the default.
5499         Add a new property DisallowPublisherPolicy.
5500
5501         * AppDomain.cs (AppDomain.GetAssemblies): Implement.
5502
5503 Tue Jan 22 22:51:48 CET 2002 Paolo Molaro <lupus@ximian.com>
5504
5505         * MonoType.cs, Type.cs: many updates, corrected implementation,
5506         completed stubs.
5507
5508 2002-01-20  Andrei Zmievski <andrei@php.net>
5509
5510         * Byte.cs:
5511         * Char.cs: implemented IConvertible interface.
5512
5513         * Boolean.cs: use our own ToString() method directly.
5514
5515 2002-01-20  Duncan Mak  <duncan@ximian.com>
5516
5517         * Files I commited recently: Fixed indentation style.
5518
5519 2002-01-20 Nick Drochak  <ndrochak@gol.com>
5520
5521         * SerializableAttribute.cs: this attrib can be used on enums, structs, 
5522         and delegates too. Added the appropriate usage flags.
5523
5524 2002-01-18  Duncan Mak  <duncan@ximian.com>
5525
5526         * CharEnumerator.cs: Implemented.
5527         * String.cs (System): Fixed the GetEnumerator () method(s).
5528
5529         * ObsoleteAttribute.cs:
5530         * STAThreadAttribute.cs:
5531         * MTAThreadAttribute.cs:
5532         * ThreadStaticAttribute.cs:
5533         * LoaderOptimizationAttribute.cs:
5534         * PlatformNotSupportedException.cs:
5535         * LoaderOptimization.cs: Added to CVS.
5536
5537 2002-01-18  Duncan Mak  <duncan@ximian.com>
5538
5539         * AppDomainUnloadedException.cs:
5540         * MethodAccessException.cs:
5541         * ContextMarshalException.cs:
5542         * CannotUnloadAppDomainException.cs:
5543         * DllNotFoundException.cs:
5544         * EntryPointNotFoundException.cs:
5545         * FieldAccessException.cs:
5546         * TypeUnloadedException.cs:
5547         * MissingFieldException.cs: Added to CVS.
5548
5549         * ApplicationException.cs: 
5550         * MemberAccessException.cs:
5551         * MissingMemberException.cs
5552         * MissingMethodException.cs:
5553         * SystemException.cs: Added [Serializable] attribute.
5554
5555         * Exception.cs: Added [Serializable] attribute, made properties
5556         'Message', 'Source' and 'StackTrace' virtual methods, per 1.0
5557         spec.
5558
5559         * ContextStaticAttribute.cs: Added [Serializable] attribute and
5560         put in the missing constructor.
5561
5562         * Environment.cs: Commented out references to
5563         EnvironmentPermissionAttribute, because they're just stubbed out
5564         right now and has no implementation.
5565
5566 2002-01-16  Andrei Zmievski <andrei@php.net>
5567
5568         * Boolean.cs: implemented IConvertible interface
5569
5570 2002-01-15  Nick Drochak  <ndrochak@gol.com>
5571
5572         * ResolveEventArgs.cs: class should derive from EventArgs.
5573
5574 2002-01-14  Miguel de Icaza  <miguel@ximian.com>
5575
5576         * String.cs (System): Use DefaultMemberName for the String class.
5577
5578 Mon Jan 14 17:06:40 CET 2002 Paolo Molaro <lupus@ximian.com>
5579
5580         * String.cs: use IndexerName in index char accessor.
5581
5582 Thu Jan 10 21:05:23 CET 2002 Paolo Molaro <lupus@ximian.com>
5583
5584         * MonoType.cs: add rank to MonoTypeInfo and implement GetArrayRank.
5585         * String.c: eliminate 64k+ method calls in search.
5586         * Type.cs: handle byref and array types in ToString ().
5587
5588 2002-01-09  Duco Fijma <duco@lorentz.xs4all.nl>
5589
5590         * Guid.cs: created first version
5591
5592 2002-01-10  Dietmar Maurer  <dietmar@ximian.com>
5593
5594         * MonoType.cs: added missing TypeAttributes to MonoTypeInfo 
5595
5596 Wed Jan 9 19:35:07 CET 2002 Paolo Molaro <lupus@ximian.com>
5597
5598         * MulticastDelegate.cs: add == and != operator stubs.
5599         * String.cs: check for null in == operator.
5600         * Type.cs: use a virtual method to get TypeAttributes.
5601
5602 Tue Jan  8 23:30:19 EST 2002 Matt Kimball <matt@kimball.net>
5603         * String.cs: Fixed several off-by-one errors in LastIndexOf* methods
5604
5605 2002-01-09  Nick Drochak  <ndrochak@gol.com>
5606         
5607         * Environment.cs: Comment out Security attribute and put a MonoTODO
5608         there as a reminder.  We need mcs magic to handle security attributes in
5609         corlib.
5610
5611 2002-01-07  Duco Fijma <duco@lorentz.xs4all.nl>
5612         * Created IAppDomainSetup.cs
5613
5614 2002-01-06  Duco Fijma <duco@lorentz.xs4all.nl>
5615         * Created System._AppDomain interface in _AppDomain.cs
5616
5617 2002-01-06  Nick Drochak  <ndrochak@gol.com>
5618
5619         * ResolveEventArgs.cs: New File, completely implemented! ;)
5620
5621 Sat Jan 5 15:53:50 CET 2002 Paolo Molaro <lupus@ximian.com>
5622
5623         * Enum.cs: dummy ToString impl.
5624         * String.cs: dummy format implementations to get compiler errors
5625         somewhat working.
5626         * Type.cs: implemented filter delegates. FindMembers runs the filter, now.
5627
5628 2002-01-05  Ravi Pratap  <ravi@ximian.com>
5629
5630         * TODOAttribute.cs : Augment some more; provide two constructors
5631         with support for a comment too.
5632
5633 2002-01-05  Nick Drochak  <ndrochak@gol.com>
5634
5635         * Uncommented those MonoTODO's now that Ravi's got
5636         the class in there
5637
5638 2001-01-04  Ravi Pratap  <ravi@ximian.com>
5639
5640         * TODOAttribute.cs : Actually add this time ;-)
5641
5642         Change name to MonoTODO.
5643
5644 2002-01-04  Jeffrey Stedfast  <fejj@ximian.com>
5645
5646         * String.cs (Trim): Fixed a few logic bugs in the code that
5647         calculated how much to trim off the end of the string.
5648
5649 2001-01-04  Nick Drochak  <ndrochak@gol.com>
5650         
5651         * Commented out the [TODO] attributes for now.  We don't have the
5652         class written.  Also changed it to [MonoTODO]
5653
5654 2002-01-04  Ravi Pratap  <ravi@ximian.com>
5655
5656         * TODOAttribute.cs : Add. We use this attribute to tag all bits in
5657         our class libraries that are incomplete.
5658
5659         * Array.cs : Apply attribute wherever we find a FIXME which says
5660         we need something to be implemented there.
5661
5662         * Int32.cs : Ditto.
5663
5664         * MulticastDelegate.cs : Ditto.
5665
5666         * RuntimeFieldHandler.cs, RuntimeMethodHandle.cs,
5667         RuntimeTypeHandle.cs : Ditto.
5668
5669         * String.cs : Ditto.
5670
5671         * Type.cs : Ditto.
5672
5673         * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs, Delegate.cs : Ditto.
5674
5675         * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs, Single.cs, 
5676         UInt16.cs, UInt32.cs, ValueType.cs: Ditto.
5677
5678         * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs,
5679         Delegate.cs : Ditto.
5680
5681         * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs,
5682         Single.cs, UInt16.cs, UInt32.cs, ValueType.cs: Ditto.
5683         
5684 Thu Jan 3 23:24:04 CET 2002 Paolo Molaro <lupus@ximian.com>
5685
5686         * Delegate.cs: add Remove() stub.
5687         * Enum.cs: add ToObject().
5688         * Type.cs: add IsEnum property.
5689
5690 2002-01-03  Kristian Rietveld  <kris@gtk.org>
5691
5692         * Convert.cs: add non-CLS-compliant ToBoolean methods for char,
5693         DateTime and object.
5694
5695 2001-12-30  Nick Drochak  <ndrochak@gol.com>
5696
5697         * Byte.cs (Parse): Add comments to aid in testing.
5698
5699 2001-12-21  Miguel de Icaza  <miguel@ximian.com>
5700
5701         * Char.cs (Parse): Implement.
5702
5703         * Byte.cs (Parse): Implement a fast parser.
5704         
5705         * SByte.cs (Parse): Implement a fast parser.
5706
5707         * UInt16.cs (Parse): Implement a fast parser.
5708         
5709         * Int16.cs (Parse): Implement a fast parser.
5710
5711         * UInt32.cs (Parse): Implement a fast parser.
5712
5713         * Int32.cs (Parse): Implement a fast parser.
5714
5715 Fri Dec 21 15:14:52 CET 2001 Paolo Molaro <lupus@ximian.com>
5716
5717         * Array.cs: fix null ref in sort code.
5718         * UInt64.cs: add bare-bones parse.
5719
5720 Thu Dec 20 15:29:52 CET 2001 Paolo Molaro <lupus@ximian.com>
5721         
5722         * Byte.cs: removed use of Regexes.
5723
5724 Tue Dec 18 18:39:54 CET 2001 Paolo Molaro <lupus@ximian.com>
5725
5726         * Enum.cs: implemented GetValues(), GetNames(), GetName(),
5727         IsDefined(), GetUnderlyingType().
5728         * String.cs: fix one instance of Compare().
5729         * Type.cs: implemented GetProperties(), GetProperty().
5730
5731 Thu Dec 13 20:10:57 CET 2001 Paolo Molaro <lupus@ximian.com>
5732
5733         * Array.cs: implement CopyTo ().
5734         * Char.cs: implement ToString ().
5735         * Exception.cs: bugfix.
5736         * Int32.cs: bare-bones Parse ().
5737         * MonoType.cs: query the needed info with an internalcall.
5738         * String.cs: speedups, bugfixes, reduced copies.
5739         * Type.cs: added missing fields. Implemented many of the Is*
5740         properties. Implemented GetMethod(), GetConstructor(), GetMethods(),
5741         GetFields(), FindMembers(), ToString().
5742         
5743 2001-12-11  Dick Porter  <dick@ximian.com>
5744
5745         * DateTime.cs: Implemented FromFileTime() and ToFileTime()
5746
5747         * Console.cs: Use handles rather than casting file descriptors
5748
5749 2001-12-08  Nick Drochak  <ndrochak@gol.com>
5750
5751         * Byte.cs (Parse): Start implementation. Parse(string) works, but
5752         now we need to handle other formats
5753
5754 2001-12-06  Dietmar Maurer  <dietmar@ximian.com>
5755
5756         * DateTime.cs: added an icall to GetNow()
5757
5758 2001-12-04  Dietmar Maurer  <dietmar@ximian.com>
5759
5760         * Double.cs: added the parse method from Bob Smith
5761
5762 2001-11-28  Miguel de Icaza  <miguel@ximian.com>
5763
5764         * UInt64.cs: ditto.
5765
5766         * UInt32.cs: ditto.
5767
5768         * Int32.cs (Int32.CompareTo): Fix because we can not just
5769         substract the values.
5770
5771         Return possitive value if the object is null.
5772
5773         * Boolean.cs: (Boolean.CompareTo): ditto.
5774
5775         * Int16.cs (Int16.CompareTo): ditto.
5776
5777         * Byte.cs (Byte.CompareTo): ditto.
5778
5779         * SByte.cs (SByte.CompareTo): ditto.
5780
5781         * Char.cs (Char.CompareTo): ditto.
5782         
5783         * Decimal.cs (Decimal.CompareTo): ditto.
5784
5785         * Int64.cs (Int64.CompareTo): ditto.
5786
5787         * Single.cs: Ditto.
5788
5789         * UInt16.cs: Ditto.
5790
5791 2001-11-28  Nick Drochak <ndrochak@gol.com>
5792
5793         * Byte.cs: Throw NotImplementedException for Parse.
5794
5795 2001-11-27  Derek Holden  <dholden@draper.com>
5796
5797         * IntegerFormatter.cs: Formatting of type "Number" was not
5798         using NumberFormatInfo.NumberNegativePattern.
5799
5800 2001-11-26  Dick Porter  <dick@ximian.com>
5801
5802         * LocalDataStoreSlot.cs: No need to delete a system TLS slot in
5803         the finalise routine any more
5804
5805 2001-11-21  Miguel de Icaza  <miguel@ximian.com>
5806
5807         * ApplicationException.cs: internationalize by adding calls to
5808         Locale.GetText ().  And throw NotImplementedExceptions on calls
5809         that we have to implement.
5810
5811         * Version.cs: Ditto.
5812
5813         * ValueType.cs: ditto.
5814
5815         * UnauthorizedAccessException.cs: ditto.
5816
5817         * UInt32.cs: ditto.
5818
5819         * UInt64.cs: ditto.
5820
5821         * UInt16.cs: ditto.
5822
5823         * TypeLoadException.cs: ditto
5824
5825         * TypeInitializationException.cs: ditto.
5826
5827         * Type.cs: ditto.
5828
5829         * TimeSpan.cs: ditto.
5830
5831         * SystemException.cs: ditto.
5832
5833         * String.cs: ditto.
5834
5835         * StackOverflowException.cs: ditto.x
5836
5837         * Single.cs: ditto.
5838
5839         * SByte.cs: ditto.
5840
5841         * RuntimeTypeHandle.cs: ditto.
5842
5843         * RuntimeMethodHandle.cs: ditto.
5844
5845         * RuntimeFieldHandle.cs: ditto.
5846
5847         * Random.cs: ditto.
5848
5849         * OutOfMemoryException.cs: ditto.
5850
5851         * OperatingSystem.cs: ditto.
5852
5853         * ObjectDisposedException.cs: ditto.
5854
5855         * NullReferenceException.cs: ditto.
5856
5857         * NotImplementedException.cs: ditto.
5858
5859         * NotFiniteNumberException.cs: ditto.o
5860
5861         * MulticastNotSupportedException.cs: ditto.
5862
5863         * MissingMethodException.cs: ditto.
5864
5865         * MemberAccessException.cs: ditto.
5866
5867         * Math.cs: ditto.
5868
5869         * InvalidCastException.cs: ditto.
5870
5871         * IntegerFormatter.cs: ditto.
5872
5873         * Int32.cs: ditto.
5874
5875         * Int16.cs: ditto.
5876
5877         * IndexOutOfRangeException.cs: ditto.
5878
5879         * Environment.cs: ditto
5880
5881         * Enum.cs: ditto.
5882
5883         * DuplicateWaitObjectException.cs: ditto.
5884
5885         * DivideByZeroException.cs: ditto.
5886
5887         * Delegate.cs: ditto
5888
5889         * DecimalFormatter.cs: ditto.
5890
5891         * Decimal.cs: ditto.
5892
5893         * DateTime.cs: ditto.
5894
5895         * Convert.cs: ditto.
5896
5897         * Char.cs: ditto.
5898
5899         * Byte.cs: ditto.
5900
5901         * Boolean.cs: ditto.
5902
5903         * ArrayTypeMismatchException.cs: ditto.
5904
5905         * ArithmeticException.cs: ditto.
5906
5907         * ArgumentOutOfRangeException.cs: ditto.
5908
5909         * ArgumentNullException.cs: ditto.
5910
5911         * Enum.cs: Make it derive from ValueType, add CompareTo method.
5912
5913         * Attribute.cs: Reformat.
5914
5915 2001-11-14  Miguel de Icaza  <miguel@ximian.com>
5916
5917         * Decimal.cs, Double.cs, Byte.cs, Char.cs, Int16, UInt16, Int32,
5918         UInt32, Int64, UInt64, SByte, Single (CompareTo): Throw the
5919         exception if the value is null too.
5920
5921         * Char.cs (CompareTo): ditto.
5922
5923         * ApplicationException.cs: Added constructor that does serialization.
5924
5925         * ParamArrayAttribute.cs: Define attribute correctly.
5926
5927 Wed Nov 14 16:31:19 CET 2001 Paolo Molaro <lupus@ximian.com>
5928
5929         * AppDomain.cs: rename dummy interface _AppDomain to AppDomain_Intf.
5930         * Array.cs: fix Array.Copy.
5931         * AssemblyLoadEventArgs.cs: rename field.
5932         * CLSCompliantAttribute.cs: use correct name for the class.
5933         * Char.cs: fix IsLetter.
5934         * Console.cs, DateTime.cs, Decimal.cs, IConvertible.cs, Math.cs,
5935         SByte.cs, UInt16.cs, UInt32.cs, UInt64.cs, UIntPtr.cs: CLSCompliant updates.
5936         * Convert.cs: CLSCompliant updates, add ChangeType() methods.
5937         * Delegate.cs: renamed target field to m_target.
5938         * Enum.cs: added missing methods.
5939         * MonoType.cs: add a constructor and some needed properties.
5940         * Object.cs: implement GetType().
5941         * String.cs: CLSCompliant updates. Fixes everywhere to remove the
5942         ending 0 char.
5943         * Type.cs: add missing methods/properties.
5944
5945 2001-11-10  Sean MacIsaac  <macisaac@ximian.com>
5946
5947         * AttributeUseage.cs: Should define AttributeUsageAttribute.
5948
5949         * CLSCompliant.cs: Marked with AttributeUsage attribute.
5950
5951         * Decimal.cs: Fixed CLSCompliant attributes.
5952
5953         * Type.cs: changed _impl to internal (needs to be accessable by
5954         subclasses).
5955
5956         (TypeHandle): Marked as abstract, implementation removed.
5957
5958         (IsNotPublic, IsPublic, GetMethods, GetPropery, GetConstructor,
5959         GetMethod): Added stub implementations so NUnit would link against
5960         corlib
5961
5962 Tue Nov 6 09:11:43 CET 2001 Paolo Molaro <lupus@ximian.com>
5963
5964         * AppDomain.cs: use an internal constructor for AssemblyBuilder.
5965
5966 2001-11-05  Miguel de Icaza  <miguel@ximian.com>
5967
5968         * NonSerializedAttribute.cs: Add AttributeUsage rules for this
5969         attribute. 
5970
5971 Fri Nov 2 18:23:15 CET 2001 Paolo Molaro <lupus@ximian.com>
5972
5973         * String.cs: fix a couple of bugs.
5974         * AppDomain.cs: use new AppBuilder constructor.
5975         * Buffer.cs, GC.cs, NonSerializedAttribute.cs,
5976         NotImplementedException.cs, ObjectDisposedException.cs,
5977         UnauthorizedAccessException.cs: add implementation.
5978         * OverflowException.cs: fix class name.
5979
5980 2001-10-28  Jeffrey Stedfast  <fejj@ximian.com>
5981
5982         * String.cs: Don't use a terminating nil char for our internal
5983         array.
5984
5985 2001-10-27  Miguel de Icaza  <miguel@ximian.com>
5986
5987         * Delegate.cs (Delegate.CombineImpl): Implement.
5988         (Delegate.Combine): Implement.
5989
5990         * MulticastDelegate.cs (MulticastDelegate.Equals): Implement.
5991
5992         (MulticastDelegate.CombineImpl): This was not as trivial as I
5993         thought. 
5994
5995         * ContextStaticAttribute.cs: Added AttributeUsage to
5996         ContextStaticAttribute. 
5997
5998         * FlagsAttribute.cs: Add AttributeUsage to FlagsAttribute
5999
6000 2001-10-15  Martin Weindel <martin.weindel@t-online.de>
6001
6002         * added Decimal.cs * added DecimalFormatter.cs (internal class
6003         used from System.Decimal)
6004
6005 2001-10-11  Thomas Neidhart <tome@sbox.tugraz.at>
6006
6007         * Convert.cs: Added methods for Base64 transforming just used the
6008           existing System.Security.Cryptography.ToBase64Transform, should
6009           be changed to use a stand-alone class, e.g. Base64Encoder
6010           
6011 2001-10-10  Derek Holden  <dholden@draper.com>
6012
6013         * IntegerFormatter.cs: Added. Implements ToString for all the
6014         integer data types for all the format types.
6015
6016         * Byte.cs: Using IntegerFormatter for ToString's.
6017
6018         * SByte.cs: Using IntegerFormatter for ToString's.
6019
6020         * Int16.cs: Using IntegerFormatter for ToString's.
6021
6022         * Int32.cs: Using IntegerFormatter for ToString's.
6023
6024         * Int64.cs: Using IntegerFormatter for ToString's.
6025
6026         * UInt16.cs: Using IntegerFormatter for ToString's.
6027
6028         * UInt32.cs: Using IntegerFormatter for ToString's.
6029
6030         * UInt64.cs: Using IntegerFormatter for ToString's.
6031
6032 2001-10-07  Miguel de Icaza  <miguel@ximian.com>
6033
6034         * Exception.cs: Implement bits of serialization.
6035
6036         * RuntimeFieldHandle.cs: Implement Serialization features.
6037
6038         * Type.cs: Implement TypeHandle property.
6039
6040 2001-09-28  Dick Porter  <dick@ximian.com>
6041
6042         * LocalDataStoreSlot.cs: Implemented
6043
6044 Tue Sep 25 19:58:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
6045
6046         * String.cs: fix off-by-one error in Trim().
6047
6048 Tue Sep 25 18:52:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
6049
6050         * Type.cs: added GetType () method.
6051
6052 Tue Sep 25 17:29:02 CEST 2001 Paolo Molaro <lupus@ximian.com>
6053
6054         * MissingMethodException.cs, MissingMemberException.cs,
6055         MemberAccessException.cs: added.
6056
6057 Tue Sep 25 16:46:43 CEST 2001 Paolo Molaro <lupus@ximian.com>
6058
6059         * String.cs: don't access the string array out of bounds in
6060         LastIndexOf.  * Type.cs: fix return type of the Assembly property.
6061
6062 Mon Sep 24 20:35:24 CEST 2001 Paolo Molaro <lupus@ximian.com>
6063
6064         * String.cs: make Intern and IsIntern internalcalls.
6065
6066 2001-09-13  Dick Porter  <dick@ximian.com>
6067
6068         * Type.cs: Added a stub for the IsValueType property.
6069
6070         * SystemException.cs (System): Added the other constructor, so
6071         that System.Threading exceptions can inherit it.
6072
6073 2001-09-08  Jeffrey Stedfast  <fejj@ximian.com>
6074
6075         * String.cs (TrimStart): Don't keep looping through the trimchars
6076         once we've found a match.
6077         (TrimEnd): Same here.
6078         (Trim): And finally here.
6079
6080 2001-09-07  Ravi Pratap  <ravi@ximian.com>
6081
6082         * Char.cs (IsLetterOrDigit): Implement.
6083         (IsLower): Implement, but we need to be Unicode aware.
6084         (IsNumber): Implement.
6085         (IsPunctuation): Implement.
6086         (IsWhiteSpace): Implement.
6087         (ToUpper): Fix to subtract 32 from the ASCII value, not 33 :)
6088         (ToLower): Same here.
6089
6090 2001-09-04  Miguel de Icaza  <miguel@ximian.com>
6091
6092         * Object.cs: Shortcut, if (a == b) then return true.
6093
6094 Fri Sep 7 18:34:48 CEST 2001 Paolo Molaro <lupus@ximian.com>
6095
6096         * Delegate.cs: we need a pointer to the method thunk in
6097         the delegate object.
6098
6099 Fri Sep 7 12:28:01 CEST 2001 Paolo Molaro <lupus@ximian.com>
6100
6101         * AsyncCallback.cs, common.src: add AsyncCallback delegate.
6102
6103 2001-09-06  Jeffrey Stedfast  <fejj@ximian.com>
6104
6105         * String.cs (System): Don't mix uint and int.
6106
6107 2001-09-04  Jeffrey Stedfast  <fejj@ximian.com>
6108
6109         * String.cs (BoyerMoore): Modified to not use pointers and to instead
6110         use indexes.
6111         (IndexOf): Use BoyerMoore.
6112
6113 2001-09-02  Miguel de Icaza  <miguel@ximian.com>
6114
6115         * All over: Use the autogenerated enumerations from the ECMA
6116         documentation that Sergey wrote.
6117         
6118         * PlatformID.cs: Add Unix definition.
6119
6120         * OperatingSystem.cs: Use Unix instead of Linux here.
6121
6122         * MarshalByRefObject.cs: Mark class as [Serializable].
6123
6124 2001-08-28  Dietmar Maurer  <dietmar@ximian.com>
6125
6126         * Console.cs: impl. (write only)
6127         implemented the stdin stuff
6128
6129         * Int32.cs: impl. real op_Equal
6130
6131 2001-08-24  Miguel de Icaza  <miguel@ximian.com>
6132
6133         * (common.src): Removed IAsyncResult as it is not on CVS yet.
6134
6135         * UIntPtr.cs: Removed CLSCompliant attribute before the namespace,
6136         as it breaks the build.
6137
6138 2001-08-23  Michael Lambert <michaellambert@email.com>
6139
6140         * IntPtr.cs: Optimized unsafe declaration, implemented GetObjectData, 
6141         added CLSCompliant attribute
6142
6143         * IAsyncResult.cs: Added
6144
6145         * common.src: Added IAsyncResult.cs
6146
6147 2001-08-23  Michael Lambert <michaellambert@email.com>
6148
6149         * UIntPtr.cs: Added
6150
6151         * common.src: Added UIntPtr.cs
6152
6153 2001-08-20  Dietmar Maurer  <dietmar@ximian.com>
6154
6155         * Attribute.cs: uncomment some code to make it compile again
6156
6157         * mono.src: removed duplicated Attribute.cs
6158
6159 2001-08-16  Nick Drochak <ndrochak@gol.com>
6160
6161         * Attribute.cs: implemented all methods except GetHashCode()
6162
6163         * common.src: added Attribute.cs so it would compile in
6164
6165 2001-08-10  Dietmar Maurer  <dietmar@ximian.com>
6166
6167         * Object.cs: changed MemberWiseClone to MemberwiseClone, and
6168         marked it as InternalCall
6169         
6170         * common.src: removed UriFormatException.cs because the file is
6171         not there.
6172
6173         * RuntimeTypeHandle.cs: replaced IntrPtr with IntPtr
6174         * Char.cs: replaced byte with char
6175
6176         * Array.cs: make it work with the mono interpreter
6177
6178 2001-08-06  Miguel de Icaza  <miguel@ximian.com>
6179
6180         * Version.cs: Make the class sealed
6181
6182 2001-08-08  Bob Smith  <bob@thestuff.net>
6183
6184         * Random.cs: Many compile fixes.
6185         * Random.cs: I read a bad spec. Class updated to match real spec.
6186
6187 2001-08-06  Miguel de Icaza  <miguel@ximian.com>
6188
6189         * IntPtr.cs: Added and Completed implementation.
6190
6191         * Uri.cs: Add a note.
6192
6193 2001-08-06  Bob Smith  <bob@thestuff.net>
6194
6195         * Random.cs: Compile fix. Needs more testing.
6196
6197 2001-08-06 Garrett Rooney <rooneg@electricjellyfish.net>
6198
6199         * Uri.cs: Initial Implementation.  Parsing needs to be fixed to take 
6200         into account IPv6 addresses, url encoding needs to be implemented, and 
6201         various minor methods need to be written, but this is a decent start.
6202
6203 2001-08-06  Dietmar Maurer  <dietmar@ximian.com>
6204
6205         * common.src: added Object.cs
6206
6207         * mono.src: added ValueType.cs
6208
6209 2001-08-02  Dietmar Maurer  <dietmar@ximian.com>
6210
6211         * Math.cs: replaced libc with libm
6212
6213 2001-08-02  Bob Smith  <bob@thestuff.net>
6214
6215         * Random.cs: Implemented. Needs testing.
6216
6217 2001-08-02  Miguel de Icaza  <miguel@ximian.com>
6218
6219         * IServiceProvider.cs, EventHandler.cs: New files.
6220
6221 2001-08-02  Marcel Narings  <marcel@narings.nl>
6222         
6223         * DateTime.cs: Cleaned up a bit. Added the Add* family members.
6224         Added exceptions. Added IConvertible. Still needs some platform 
6225         dependend stuff, the Parse and ToString members
6226
6227 2001-08-01  Dietmar Maurer  <dietmar@ximian.com>
6228
6229         * Type.cs (GetTypeFromHandle): added placeholder 
6230
6231 2001-07-24  Derek Holden  <dholden@draper.com>
6232
6233         * Boolean.cs: Formatted to code style standard. Added GetTypeCode
6234         which is really an IConvertible defined method.
6235
6236         * Byte.cs: Added a missing Parse method. Put in Parse and ToString
6237         behavior, still need to do the main Parse and ToString.
6238
6239         * Char.cs: Added a bunch of missing ECMA methods. Commented a
6240         specification discrepency. Still didn't any unicode stuff, though
6241         every IsFoo(char c) method has an IsFoo(string, index)
6242         counterpart, added wrappers for those.
6243         
6244         * Convert.cs: Fixed NaN/Inf checking and double/float
6245         rounding. Added ToType for IConvertible classes
6246
6247         * Double.cs: Fixed ECMA min and max values. Added IsInfinity /
6248         IsNaN methods. Changed Inf/NaN internals.
6249
6250         * IConvertible.cs: Added comments for using
6251         Convert.ToType. Changed return values to draft base values.
6252
6253         * Int16.cs: Added a missing Parse statement. Put in behavior for
6254         overloaded ToString and Parse methods.
6255
6256         * Int32.cs: Added a missing Parse statement. Put in behavior for
6257         overloaded ToString and Parse methods.
6258
6259         * Int64.cs: Added a missing Parse statement. Put in behavior for
6260         overloaded ToString and Parse methods.
6261         
6262         * Single.cs: Put in ECMA epsilon value. Added IsInfinity / IsNaN
6263         methods. Changed Inf/NaN internals.
6264
6265         * SByte.cs: Added a missing Parse method. Put in Parse and
6266         ToString behavior, still need to do the main Parse and ToString.
6267
6268         * UInt16.cs: Added a missing Parse statement. Put in behavior for
6269         overloaded ToString and Parse methods.
6270
6271         * UInt32.cs: Added a missing Parse statement. Put in behavior for
6272         overloaded ToString and Parse methods.
6273
6274         * UInt64.cs: Added a missing Parse statement. Put in behavior for
6275         overloaded ToString and Parse methods.
6276         
6277 2001-07-20  Miguel de Icaza  <miguel@ximian.com>
6278
6279         * MulticastDelegate.cs: New File.
6280
6281         * Delegate.cs: New file.
6282
6283         * Enum.cs: New file.
6284
6285         * Attribute.cs: New file.
6286
6287         * Type.cs: New file.
6288
6289         * ParamArrayAttribute.cs: New file.
6290
6291         * RuntimeTypeHandle.cs: New file.
6292
6293         * MulticastDelegate.cs: Added.
6294
6295         * DateTime.cs: Added
6296
6297         * Delegate.cs: Added
6298
6299 2001-07-18  Michael Lambert <michaellambert@email.com>
6300
6301         * AttributeTargets.cs: Add.
6302
6303 2001-07-19  Jeffrey Stedfast  <fejj@ximian.com>
6304
6305         * Char.cs: Made ToUpper and ToLower public methods.
6306
6307         * String.cs: Lots and lots of compile fixes - just need to write
6308         DateTime.cs and this should build completely now.
6309
6310 2001-07-19  Bob Smith (bob@thestuff.net)
6311
6312         * Math.cs: Implemented. 
6313
6314 2001-07-19  Miguel de Icaza  <miguel@ximian.com>
6315
6316         * String.cs: Removed tolower and toupper.
6317
6318         * Char.cs: Moved ToLower and ToUpper from string to here. 
6319
6320         * Convert.cs ToByte (float value), ToByte (double value) Use IsNan
6321         instead of comparing the value to Nan.
6322
6323 2001-07-19  Duco Fijma (duco@lorentz.xs4all.nl)
6324
6325         * TimeSpan.cs: New implementation.
6326
6327 2001-07-18  Scott Sanders <scott@stonecobra.com>
6328
6329          * UriFormatExcpetion.cs: Add - 85% complete
6330
6331 2001-07-17  Jeffrey Stedfast  <fejj@ximian.com>
6332
6333         * String.cs (IndexOf): Slight optimization that allows skipping
6334         over a few chars here and there. This isn't as good as using my
6335         Boyer-Moore implementation, however, Boyer-Moore is only really
6336         good for long strings (I plan on making the code decide which
6337         string search algorithm it should use on-the-fly at some point).
6338         (LastIndexOf): Fix to work correctly.
6339         (BoyerMoore): Took out some unneeded code and fixed an edge-case.
6340
6341 2001-07-16  Michael Lambert <michaellambert@email.com>
6342
6343         * EventArgs.cs: Add.
6344         
6345 2001-07-16  Miguel de Icaza  <miguel@ximian.com>
6346
6347         * Version.cs: Remove my buggy comment.
6348
6349 2001-07-15  Sean MacIsaac  <macisaac@ximian.com>
6350
6351         * String.cs: Spelling error of IComparable, object's
6352         MemberwiseClone cannot be overridden.  Made indexer valid for now,
6353         but not sure what to do about this in the long run.  Seems to be a
6354         couple bugs in csc.exe having to do with multiple pointer defs in
6355         the same statement, and returning subclasses of a class in the
6356         return type of an interface function implementation.  Also moved
6357         operators inside of class definition.
6358
6359 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
6360
6361         * String.cs: A tom of compile fixes, although we still don't compile.
6362
6363         * IConvertible.cs: The To*Int64() methods return *Int64's, not
6364         *Int32's. Also, it's ToDateTime() not ToDateType().
6365
6366 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
6367
6368         * String.cs: Apparently I needed to at least write stubs for the
6369         IConvertible interfaces. *sigh*
6370
6371 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
6372
6373         * String.cs: Many logic/other fixes and better usage of the
6374         features of c#
6375         (tolower): New convenience method to help condense code.
6376         (toupper): Another new helper method.
6377         (Compare): Use the new helper methods.
6378         (ToLower): use tolower().
6379         (ToUpper): use toupper().
6380         (LastIndexOfAny): Implemented.
6381         (BoyerMoore): New private helper method that implements a modified
6382         version of the Boyer-Moore search algorithm. Noothing uses it yet
6383         as I'm not 100% sure it even works properly with unicode strings
6384         not to mention it uses a huge lookup-table :-)
6385         (Split): Implemented.
6386
6387 2001-07-13  Jeffrey Stedfast  <fejj@ximian.com>
6388
6389         * TODO: Added things that need to be finished in System.String
6390
6391         * String.cs: New source file implementing the System.String class
6392
6393 2001-07-12  Sean MacIsaac  <macisaac@ximian.com>
6394
6395         * TypeCode.cs: UInt64 was UInt63.
6396
6397         * Object.cs: Fixed a numer of compiler errors.
6398
6399         * Array.cs: Fixed some compiler errors.
6400
6401         * IComparable.cs: Fixed some compiler errors.
6402
6403         * ICloneable.cs: Fixed some compiler errors.
6404
6405         * IConvertible.cs: Fixed some compiler errors.
6406
6407         * IFormattable.cs: Fixed a compiler error.
6408
6409         * IFormatProvider.cs: Fixed a compiler error.
6410
6411         * IDisposable.cs: Fixed a compiler error.
6412
6413         * IFormatProvider.cs: Added public accesability type to
6414         IFormatProvider.
6415
6416         * Exception.cs: Added a using statement to remove compile time
6417         error.
6418
6419         * ApplicationException.cs: Removed a ; that was causing a compiler
6420         error.
6421
6422         * Int16.cs: Fixed some compiler errors.
6423
6424         * Int32.cs: Fixed some compiler errors.
6425
6426         * Int64.cs: Fixed some compiler errors.
6427
6428         * SystemException.cs: Fixed a compiler error.
6429
6430         * UInt16.cs: Fixed some compiler errors.
6431
6432         * UInt32.cs: Fixed some compiler errors.
6433
6434         * UInt64.cs: Fixed some compiler errors.
6435
6436         * Void.cs: Fixed a compiler error.      
6437
6438 2001-07-12  Joe Shaw  <joe@ximian.com>
6439
6440         * Array.cs: Fix backwards parameters to Array.SetValue()
6441         throughout.
6442         (BinarySearch): Fix backward logic surrounding whether to call
6443         value.CompareTo or comparer.Compare.
6444         (LastIndexOf): Stop being stupid. I am so not used to strongly
6445         bounded arrays...
6446         (Sort): Implement a quicksort.
6447
6448 2001-07-11  Joe Shaw  <joe@ximian.com>
6449
6450         * Array.cs: Change all instances of trying to access an array with
6451         the index operator to calls to GetValue and SetValue, and add
6452         InternalGetValue and InternalSetValue which are internal calls
6453         into the runtime. Ew.
6454
6455 2001-07-10  Joe Shaw  <joe@ximian.com>
6456
6457         * Array.cs: Implemented everything but Sort().
6458
6459 2001-07-09  Jeffrey Stedfast  <fejj@ximian.com>
6460
6461         * Object.cs (Object::Equals): Object variable name is `o'.
6462
6463 2001-07-06  Joe Shaw  <joe@ximian.com>
6464
6465         * Int16.cs, Int32.cs, Int64.cs, UInt16.cs, UInt32.cs, UInt64.cs:
6466         Implement the IComparable and IFormattable interfaces. Fix a typo
6467         (publig -> public)
6468
6469         * ApplicationException.cs, ArgumentException.cs,
6470         ArgumentNullException.cs, ArgumentOutOfRangeException.cs,
6471         ArtithmeticException.cs, ArrayTypeMismatchException.cs,
6472         DivideByZeroException.cs, DuplicateWaitObjectException.cs,
6473         ExecutionEngineException.cs, FormatException.cs,
6474         IndexOutOfRangeException.cs, InvalidCastException.cs,
6475         InvalidOperationException.cs, InvalidProgramException.cs,
6476         MulticateNotSupportedException.cs, NotFiniteNumberException.cs,
6477         NotSupportedException.cs, NullReferenceException.cs,
6478         OutOfMemoryException.cs, OverflowException.cs, RankException.cs,
6479         StackOverflowException.cs, SystemException.cs,
6480         TypeInitializationException.cs: Added all of the exceptions
6481         specified by the language spec. Mmmm... bloat.
6482
6483 2001-07-06  Miguel de Icaza  <miguel@ximian.com>
6484
6485         * Int64.cs, Int32.cs: Put.  Parsing and ToString missing.  Should
6486         do a generic routine all of these guys use.
6487
6488         * Int16.cs: identified missing methods.
6489
6490         * UInt16.cs, UInt32.cs, UInt64.cs: Add.
6491
6492 2001-06-26  Miguel de Icaza  <miguel@ximian.com>
6493
6494         * TypeCode.cs: Implement
6495
6496         * Void.cs: Implement.
6497
6498         * TODO: Add file to keep track of pending tasks.
6499
6500         * Object.cs, ValueType.cs: Implement.