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