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