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