2003-12-07 Zoltan Varga <vargaz@freemail.hu>
[mono.git] / mcs / class / corlib / System / ChangeLog
1 2003-12-07  Zoltan Varga  <vargaz@freemail.hu>
2
3         * Type.cs (MakeArrayType): Add argument checking.
4
5 2003-12-06  Dick Porter  <dick@ximian.com>
6
7         * String.cs: Don't use CompareInfo for non-culture-sensitive
8         IndexOf and LastIndexOf methods.
9
10 2003-12-06  Ravindra  <rkumar@novell.com>
11
12         * DateTime.cs: Made Parse(string, IFormatProvider) method to
13         use second argument. Fixed bug #51464.
14
15 2003-12-04  Martin Baulig  <martin@ximian.com>
16
17         * Type.cs (Type.MakeArrayType): New public method.
18
19 2003-12-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
20
21         * Buffer.cs:
22         (BlockCopy): make the exception thrown helpful.
23
24 2003-12-03  Dick Porter  <dick@ximian.com>
25
26         * String.cs: Calling Replace on an empty string returns itself.
27
28 2003-12-03  Zoltan Varga  <vargaz@freemail.hu>
29
30         * MonoType.cs: Get rid of get_type_info, use a separate icall for
31         each property instead.
32
33 2003-12-02  Dick Porter  <dick@ximian.com>
34
35         * Decimal.cs: Fix NumberFormatInfo lookup.  Patch by
36         Mohammad DAMT (mdamt@cdl2000.com), fixes bug 51443.
37
38 2003-12-01  Dick Porter  <dick@ximian.com>
39
40         * String.cs: Make Compare, IndexOf, LastIndexOf, StartsWith,
41         Replace, ToLower, ToUpper and Equals use the correct CultureInfo.
42
43 2003-11-28  Dick Porter  <dick@ximian.com>
44
45         * Type.cs: 
46         * MonoType.cs: 
47         * Enum.cs: 
48         * Boolean.cs: Do string compares with the Invariant culture.
49
50 2003-11-27 Ben Maurer  <bmaurer@users.sourceforge.net>
51
52         * Array.cs: make the enumerator ICloneable
53
54 2003-11-27 Ben Maurer  <bmaurer@users.sourceforge.net>
55
56         * Decimal.cs (ToXXX): Call Convert.ToXXX.
57
58 2003-11-26  Zoltan Varga  <vargaz@freemail.hu>
59
60         * AppDomain.cs: Applied patch from ztashev@openlinksw.co.uk (Zdravko Tashev). 
61         Implement Load(byte[]) methods.
62
63         * BadImageFormatException.cs: Fix ToString.
64
65 2003-11-24  Zoltan Varga  <vargaz@freemail.hu>
66
67         * MonoType.cs: Make Standard|HasThis match Standard in GetMethod and
68         GetConstructor, as done by MS.
69
70 2003-11-19  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
71
72         * FloatingPointFormatter.cs: Removed some unused variables to prevent csc compiler warnings
73
74 2003-11-18  Lluis Sanchez Gual  <lluis@ximian.com>
75
76         * TypeInitializationException.cs: Added missing serialization constructor.
77
78 2003-11-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
79
80         * AppDomainSetup.cs: Don't add an extra '/' at the end of 
81         ApplicationBase. The tests pass now with mono.
82
83 2003-11-18  Zoltan Varga  <vargaz@freemail.hu>
84
85         * ValueType.cs: New optimized implementation for Equals and GetHashCode.
86
87 2003-11-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
88
89         * Environment.cs: use Directory in CurrentDirectory property.
90         We were not throwing any exception when setting the directory to an
91         invalid path.
92
93 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
94
95         * Array.cs:
96         * Delegate.cs: implemented 1.1 stuff.
97
98         * Enum.cs:
99         * IntPtr.cs: removed extra attribute.
100         * PlatformID.cs: added WinCE.
101
102 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
103
104         * ValueType.cs:
105         (Equals): compare the fields of structs too.
106         (GetHashCode): combine the hash code of all the fields.
107         Fixes bug #50901 (will remove the icall in a couple of days).
108
109 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
110
111         * Array.cs: fixed Clear for non-zero bounded arrays. Fixes bug #50968.
112
113 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
114
115         * DateTime.cs: handle century when we try to parse 4-digit years and
116         only 2 digits are present. Fixes bug #49394.
117
118 2003-11-13  Miguel de Icaza  <miguel@ximian.com>
119
120         * Console.cs: On utf-8 consoles, use unmarked output.
121
122 2003-11-13  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
123
124         * IAppDomainSetup.cs:
125         * _AppDomain.cs: 
126         * Object.cs:
127         * Type.cs: Added missing attribute
128
129 2003-11-12 Lluis Sanchez Gual <lluis@ximian.com>
130
131         * Environment.cs: Added internal method for getting the path to 
132         machine.config.
133         
134 2003-11-12 Jackson Harper <jackson@ximian.com>
135
136         * Environment.cs: Add MyMusic and MyPictures to the SpecialFolder
137         enum. This fixes the SWF build.
138         
139 2003-11-12  Miguel de Icaza  <miguel@ximian.com>
140
141         * PlatformID.cs: Remove Unix platform, we cant expose constants
142         that are not in the framework.
143
144         * OperatingSystem.cs: Adjust for the breakage.
145
146         * RuntimeMethodHandle.cs: Fix signature.
147
148         * Double.cs: Fix signature of TryParse.
149
150         * String.cs (Concat (object, object, object, object)): Add missing method.
151
152         * OperatingSystem.cs: Removed Equals, GetHashCode, they were not
153         in the .NET Framework.
154
155         * Enum.cs: Hide constructor.  
156
157         Fix ToUint16 to be explicitly implemented.
158
159         * Console.cs: Add couple of extra missing methods (Write and
160         WriteLine overloaded)
161
162 2003-11-11  Miguel de Icaza  <miguel@ximian.com>
163
164         * AppDomain.cs, Activator.cs: New unimplmented entry points from
165         1.1 (Com activation related).
166         
167         * Exception.cs: Formatting.
168         
169         * IServiceProvider.cs: Add ComVisible (true).
170
171         * AppDomainSetup.cs: Add a couple more properties from .NET 1.1 
172
173 2003-11-03  Lluis Sanchez Gual <lluis@ximian.com>
174
175         * AppDomain.cs: Added some null checks in Load methods. This fixes bug
176           #50356.
177
178 2003-11-01  Zoltan Varga  <vargaz@freemail.hu>
179
180         * AppDomain.cs: Make the SetDomain icalls private + call InternalInvoke
181         on MonoMethod instead of Invoke.
182
183 2003-11-01  Pedro Martínez Juliá  <yoros@wanadoo.es>
184
185         * DateTime.cs: Fixed Add* methods handling. Now it works properly
186         with extreme values (there is a bug with Overflow and Underflow in
187         long type).
188
189 2003-10-31  Pedro Martínez Juliá  <yoros@wanadoo.es>
190
191         * DateTime.cs: Fixed a few format bugs.
192
193 2003-10-31  Zoltan Varga  <vargaz@freemail.hu>
194
195         * AppDomain.cs (InternalPushDomainRef): New icalls.
196
197         * AppDomain.cs (InvokeInDomain): New method to execute code in a 
198         different appdomain.
199
200 2003-10-27  Zoltan Varga  <vargaz@freemail.hu>
201
202         * AppDomain.cs: Fix prototype of InternalIsFinalizingForUnload.
203
204 2003-10-25  Zoltan Varga  <vargaz@freemail.hu>
205
206         * AppDomain.cs (IsFinalizingForUnload): Implement.
207
208         * AppDomain.cs (Unload): Move the notification of OnUnload listeners
209         to unmanaged code.
210
211 2003-10-25  Martin Baulig  <martin@ximian.com>
212
213         * MonoType.cs: Don't make this sealed.
214
215 2003-10-24  Zoltan Varga  <vargaz@freemail.hu>
216
217         * AppDomain.cs: Add InternalInvokeInDomain[ByID] icalls.
218
219 2003-10-24  Pedro Martínez Juliá  <yoros@wanadoo.es>
220
221         * DateTime.cs: When handling '-' as a date separator, MS.NET uses
222         the same symbol in the parse (not DateTimeFormatInfo.DateSeparator).
223
224 2003-10-22  Dick Porter  <dick@ximian.com>
225
226         * DateTime.cs: Handle '-' as a date separator when parsing formats.
227
228 2003-10-20  Duncan Mak  <duncan@ximian.com>
229
230         * Delegate.cs (CreateDelegate): Avoid creating an extra Type array
231         and merge the two iterations into one.
232
233 2003-10-15  Zoltan Varga  <vargaz@freemail.hu>
234
235         * TypedReference.cs: Add new field used by the runtime.
236
237 2003-10-15  Martin Baulig  <martin@ximian.com>
238
239         * Type.cs (Type.DeclaringMethod): For a generic method's type
240         parameter, return this method - otherwise, return null.
241
242 2003-10-14  Martin Baulig  <martin@ximian.com>
243
244         The generics API has changed in the spec since it was added here;
245         these modifications make it match the spec again.
246
247         * Type.cs
248         (GetGenericParameters): Renamed to `GetGenericArguments'.
249         (HasGenericParameters): Renamed to `HasGenericArguments'.
250         (HasUnboundGenericParameters): Renamed to `ContainsGenericParameters'.
251         (IsGenericTypeDefinition): New property.
252         (IsUnboundGenericParameter): Renamed to `IsGenericParameter'.
253
254         * MonoType.cs (ContainsGenericParameters): Implement this here;
255         this is no interncall anymore.
256
257 2003-10-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
258
259         * Delegate.cs: add the method name to the exception when it cannot be
260         bound.
261         * Exception.cs: fix nullref in Source.
262
263 2003-10-10  Zoltan Varga  <vargaz@freemail.hu>
264
265         * Array.cs: Add argument checking to GetValue and SetValue.
266
267 2003-10-09  Miguel de Icaza  <miguel@ximian.com>
268
269         * DateTime.cs: Patch from Chris Turchin: the DateTime.MaxValue
270         should not be TimeSpan.MaxValue, because it overflow.  Set this to
271         be MAX_VALUE_TICKS
272
273 2003-10-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
274
275         * MonoCustomAttrs.cs: from_cache is now thread-safe. Yeah, I got a
276         duplicate entry exception.
277
278 2003-10-08 Ben Maurer  <bmaurer@users.sourceforge.net>
279
280         * DateTime.cs (ToString): Total rewrite, fixes #49358.
281
282 2003-10-03  Zoltan Varga  <vargaz@freemail.hu>
283
284         * AppDomain.cs: Change accessibility of DoTypeResolve to fix build.
285
286 2003-10-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
287
288         * Enum.cs:
289         (Equals): check that the object is an Enum before comparing the types.
290
291 2003-09-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
292
293         * Array.cs: reduced xsp allocated memory by 1/2.
294
295 2003-09-25  Martin Baulig  <martin@ximian.com>
296
297         * Type.cs (Type.IsGenericTypeDefinition): Removed this method
298         since it was identical to GetGenericTypeDefinition().
299         (Type.IsGenericInstance): New property.
300
301 2003-09-24  Duncan Mak  <duncan@ximian.com>
302
303         * Math.cs (Abs): Fix double Locale.GetText bug reported by
304         davejp@volny.cz. This fixes #48788.
305
306 2003-09-14  Pedro Martínez Juliá  <yoros@wanadoo.es>
307
308         * FloatingPointFormatter.cs: Add the necessary castings to char
309         conversions.
310
311 2003-09-13  Pedro Martínez Juliá  <yoros@wanadoo.es>
312
313         * FloatingPointFormatter.cs: Make the method calls more functional
314         for protecting the values from different threads (make it more
315         thread safe).
316
317 2003-09-13  Pedro Martínez Juliá  <yoros@wanadoo.es>
318
319         * FloatingPointFormatter.cs: Fix a bug with the negative value of
320         count parameter.
321
322 2003-09-12  Pedro Martínez Juliá  <yoros@wanadoo.es>
323
324         * FloatingPointFormatter.cs: Applied a lot of improvements in string
325         construction, make use of Append/Insert with the "count" parameter.
326     Thanks to Ben Maurer.
327
328 2003-09-10  Pedro Martínez Juliá  <yoros@wanadoo.es>
329
330         * FloatingPointFormatter.cs: Fix a bug with Custm Format.
331
332         * FloatingPointFormatter.cs: Fix a little bug I've introduced the
333         last change.
334
335 2003-09-10  Pedro Martínez Juliá  <yoros@wanadoo.es>
336
337         * DoubleFormatter.cs: A few optimizations. Now, only one object
338         is created to convert all double numbers.
339
340         * SingleFormatter.cs: A few optimizations. Now, only one object
341         is created to convert all float numbers.
342
343         * FloatingPointFormatter.cs: Split the "number type parameters" from
344         the "numver value and format parameters". The first ones are in the
345         constructor and the others are in a method.
346
347 2003-09-09  Zoltan Varga  <vargaz@freemail.hu>
348
349         * Array.cs: Added argument checking to some NET_1_1 methods.
350
351 2003-09-04  Martin Baulig  <martin@ximian.com>
352
353         * Type.cs (GetGenericTypeDefinition): Make this method virtual.
354
355 2003-08-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
356
357         * Array.cs: added the new overloaded CreateInstance, GetValue, SetValue
358         taking 'longs'. All tests pass.
359
360 2003-08-26 Ben Maurer  <bmaurer@users.sourceforge.net>
361
362         * Exception.cs: Add ClassInterface attr. Implement TargetSite and
363         Source. Remove MonoTODO attributes (class is 100% done). Also
364         passes all Rotor tests for Exception!
365
366 2003-08-26 Ben Maurer  <bmaurer@users.sourceforge.net>
367
368         * Enum.cs: Remove [MonoTODO]'s that had been completed.
369
370 2003-08-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
371
372         * String.cs: fixed bug #47802.
373
374 2003-08-21 Ben Maurer  <bmaurer@users.sourceforge.net>
375
376         * String.cs: Created method FormatHelper that does formatting,
377         using a StringBuilder.
378
379 2003-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
380
381         * Array.cs: patch by lb@lb.ods.org that fixes bug #47707.
382
383 2003-08-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
384
385         * Delegate.cs: CreteDelegate (Type, MethodInfo) only supports static
386         methods under MS.
387
388 2003-08-11  Duncan Mak  <duncan@ximian.com>
389
390         * Environment.cs (Version): Return the same numbers as the MS
391         implementation.
392
393 2003-08-10  Miguel de Icaza  <miguel@ximian.com>
394
395         * Array.cs: Applied patch from Thong (Tum) Nguyen;  Removed
396         replicated tests, and have a routine that does the heavy lifting.
397
398 2003-08-08  Lluis Sanchez Gual <lluis@ximian.com>
399
400         * DateTime.cs: Fixed DoParse. It was calling the wrong constructor
401           of DateTime.
402         * Environment.cs: return $HOME for ApplicationData folder.
403
404 2003-08-04  Duncan Mak  <duncan@ximian.com>
405
406         * FloatingPointFormatter.cs (Normalize): Apply a patch from Aleksey
407         Demakov <avd@openlinksw.com> to fix formatting for Big power of 10
408         floating point values. This fixes bug #46175.
409
410         * Convert.cs (ToUInt16): Throw an OverflowException correctly, as
411         noted by c5n4kh6u02@sneakemail.com in
412         http://bugzilla.ximian.com/show_bug.cgi?id=43098.
413
414 Sat Aug  2 13:01:46 BST 2003 Malte Hildingson <malte@amy.udd.htu.se>
415
416         * Double.cs: added icall Double.AssertEndianity.
417
418 Fri Aug 1 16:47:17 CEST 2003 Paolo Molaro <lupus@ximian.com>
419
420         * Type.cs, MonoType.cs: implemented generic-specific methods.
421
422 2003-07-29  Miguel de Icaza  <miguel@ximian.com>
423
424         * Buffer.cs: Add new internal MemCopy call.
425
426         Removed the above.
427
428 Tue Jul 29 12:13:16 CEST 2003 Paolo Molaro <lupus@ximian.com>
429
430         * Type.cs, MonoType.cs, ArgIterator.cs: pass the handles values
431         to icalls, to avoid special cases in some call conventions.
432
433 2003-07-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
434
435         * Enum.cs: added Serializable attribute.
436
437 2003-07-25  Duncan Mak  <duncan@ximian.com>
438
439         * AppDomain.cs (Equals):
440         (GetHashCode): Removed because they do not need to be defined
441         here.
442
443 2003-07-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
444
445         * TypeLoadException.cs: removed unused fields. TypeName returns "" if
446         cannot even get the type.
447
448 2003-07-24  Miguel de Icaza  <miguel@ximian.com>
449
450         * Type.cs: Added generics stubs.
451
452 2003-07-23  Duncan Mak  <duncan@ximian.com>
453
454         * Environment.cs (SpecialFolder): Added 'Desktop' and 'MyComputer'
455         as values for NET_1_1.
456         (GetFolderPath): Return the empty string ("") for values of
457         SpecialFolder that have no corresponding equivalents in
458         Linux. Return "$HOME/Desktop" for SpecialFolder.DesktopDirectory
459         and "$HOME" for SpecialFolder.Personal.
460
461         * IntPtr.cs (GetObjectData): Mark it as an interface
462         implementation, instead of a public method.
463
464         * Guid.cs (NewGuid): Remove MonoTODOAttribute.
465
466         * TypeLoadException.cs (GetObjectData):
467         Create stubs for the fields that are being serialized.
468
469         * UIntPtr.cs: Removed erroneous CLSCompliantAttributes.
470
471 2003-07-23  Lluis Sanchez Gual <lluis@ximian.com>
472         
473         * Enum.cs: Fixed enum formatting. For flag enums, if one of
474           the flags is unnamed, ToString() returns the integer value.
475
476 2003-07-22  Jerome Laban <jlaban@wanadoo.fr>
477
478         * Guid.cs: Fixed ToString (), was producing incorrect string.
479
480 2003-07-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
481
482         * AppDomainSetup.cs: fixed bug #46609.
483
484 Thu Jul 17 17:28:27 CEST 2003 Paolo Molaro <lupus@ximian.com>
485
486         * MonoType.cs: use an icall for IsPrimitiveImpl ().
487
488 Thu Jul 17 15:23:17 CEST 2003 Paolo Molaro <lupus@ximian.com>
489
490         * Guid.cs: faster ToString ().
491
492 2003-07-15  Pedro Martínez Juliá  <yoros@wanadoo.es>
493
494         * FloatingPointFormatter.cs: Few changes for get working Rotor
495         tests.
496
497 2003-07-13  Zoltan Varga  <vargaz@freemail.hu>
498
499         * Type.cs (IsAssignableFrom): Implement this as an icall since the
500         runtime already includes the neccessary logic.
501
502 2003-07-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
503
504         * AppDomainSetup.cs: remove the "file://" prefix from ApplicationBase
505         if it's present and get the full path for non-Uri paths.
506
507 2003-07-2  Lluis Sanchez Gual <lluis@ximian.com>
508
509         * DateTime.cs: Fixed formatting of fractions of second.
510
511 2003-06-30  Zoltan Varga  <vargaz@freemail.hu>
512
513         * Console.cs: Turn off buffering for the streams returned by
514         OpenStandardOutput () and OpenStandardError () if the buffer size is 0.
515
516 2003-06-28  Lluis Sanchez Gual <lluis@ximian.com>
517
518         * Random.cs: Changed behavior of Random to match MS.NET. When Next is
519           called with maxvalue==0 or minvalue==maxvalue, MS.NET internally generates
520           a new random number (although it is not needed), while mono did not. 
521           As a result, the sequence of random numbers could be different for the
522           same seed.
523
524 Thu Jun 26 16:06:35 CEST 2003 Paolo Molaro <lupus@ximian.com>
525
526         * FloatingPointFormatter.cs: use dec_len2 as default precision.
527
528 2003-06-26  Lluis Sanchez Gual <lluis@ximian.com>
529
530         * DateTime.cs: Modified constructor. Check for valid value of TimeSpan must
531           be done after the correspondig UTC offset has been applied.
532
533 2003-06-26  Lluis Sanchez Gual <lluis@ximian.com>
534
535         * Object.cs: Object must have the Serializable attribute.
536         * DateTime.cs: Fixed _DoParse() so it correctly applies the utc offset
537           to the resulting date. Also fixed _ToString so now correctly formates the
538           UTC offset.
539
540 Wed Jun 18 19:22:22 CEST 2003 Paolo Molaro <lupus@ximian.com>
541
542         * Enum.cs: fix race in cache (bug#41841).
543
544 Wed Jun 18 18:52:11 CEST 2003 Paolo Molaro <lupus@ximian.com>
545
546         * FloatingPointFormatter.cs: if the precision is not specified, use
547         the default precision for the data type.
548
549 Wed Jun 18 18:11:30 CEST 2003 Paolo Molaro <lupus@ximian.com>
550
551         * Array.cs: throw ArgumentOutOfRangeException in Copy if needed
552         (patch by tum@veridicus.com (Thong (Tum) Nguyen)).
553
554 2003-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
555
556         * MonoType.cs: don't throw nullref when the return type for a property
557         is specified and the property doesn't have a get accessor.
558
559 2003-06-10  Duncan Mak  <duncan@ximian.com>
560
561         * Array.cs (CreateInstance): Fixed a typo. It should throw
562         ArgumentNullException instead of ArgumentException.
563
564 2003-06-09  Duncan Mak  <duncan@ximian.com>
565
566         * Array.cs: Revert the last revert. I fixed it.
567         (Sort): Put a try-catch block around qsort, and wrap whatever
568         Exception we get into a InvalidOperationException.
569
570 2003-06-08 Jackson Harper <jackson@latitudegeo.com>
571
572         * Array.cs: Revert last patch, it broke some other functionality.
573                 
574 2003-06-08  Duncan Mak  <duncan@ximian.com>
575
576         * Array.cs: Throw more exceptions. This fixes the errors we see
577         from the Rotor testsuite.
578
579         (CreateInstance): Throw ArgumentNullException when the input are
580         null. Throw ArgumentOutOfRangeException when bounds + length is
581         greater than Int32.MaxValue.
582         (LastIndexOf): Throw ArgumentOutOfRangeException if index is outside
583         the valid range of indices of array.
584         (Sort): Throw InvalidOperationException when comparer is null and
585         none of the elements in keys implements IComparable.
586
587 2003-06-08  Duncan Mak  <duncan@ximian.com>
588
589         * Array.cs (CreateInstance): Throw a TypeLoadException if the
590         Length of the input array 'lengths' is greater than 255 so that we
591         won't see the g_assert that is in mono_array_class_get in class.c.
592
593         This fixes bug #44304.
594
595 2003-06-05  Nick Drochak  <ndrochak@gol.com>
596
597         * UnitySerializataionHolder.cs: Cleanups according to class status page
598
599 Wed Jun 4 16:59:39 CEST 2003 Paolo Molaro <lupus@ximian.com>
600
601         * ArgIterator.cs, TypedReference.cs, RuntimeArgumentHandle.cs,
602         RuntimeTypeHandle.cs: implemented the needed stuff to handle
603         vararg calls.
604
605 2003-06-02  Sebastien Pouliot  <spouliot@videotron.ca>
606
607         * Random.cs: New implementation based on Knuth ran3 to fix #43597.
608         See http://www.library.cornell.edu/nr/bookcpdf/c7-1.pdf. Commited
609         for Ben Maurer after review and testing.
610
611 2003-05-28  Ben Maurer <bmaurer@users.sourceforge.net>
612         
613         * Array.cs: Added better argument checking to Array.Sort ()
614         * DBNull.cs: Made the conversions throw like they do in MS.
615
616 2003-05-24  Philip Van Hoof  <me@freax.org>
617
618         * Math.cs: Add the MS.NET 1.1 methods (BigMul, DivRem, DivRem).
619
620 2003-05-21  Pedro Martínez Juliá  <yoros@wanadoo.es>
621
622         * FloatingPointFormatter.cs: Take care with the explicit precision
623         and round the number to that precision.
624
625         * DoubleFormatter.cs: Adapt to the two level precision (15 - 17).
626
627         * SingleFormatter.cs: Adapt to the two level precision (7 - 8).
628
629 2003-05-20  Philip Van Hoof <me@freax.org>
630
631         * DateTime.cs (FromOADate, GetDateTimeFormats, ToOADate):
632         Implemented.
633
634 2003-05-20  Zoltan Varga  <vargaz@freemail.hu>
635
636         * AppDomainSetup.cs: Added new field which is used to notify the
637         runtime that the search path has changed.
638
639 2003-05-18  Pedro Martínez Juliá  <yoros@wanadoo.es>
640
641         * FloatingPointFormatter.cs: Fixed NullReferenceException bug I've
642         introduced the last change I've done.
643
644 2003-05-17  Ben Maurer  <bmaurer@users.sourceforge.net>
645
646         * Array.cs: Fixed SyncRoot to behave like MS (return this). Removed 
647         MonoTODO from SyncRoot (because fixed) and IsSynchronized (it was
648         behaving correctly).
649         
650 2003-05-17  Pedro Martínez Juliá  <yoros@wanadoo.es>
651
652         * FloatingPointFormatter.cs: Fixed little format mismatches.
653
654 2003-05-16  Pedro Martínez Juliá  <yoros@wanadoo.es>
655
656         * FloatingPointFormatter.cs: Fixed "-0" result emited.
657
658 2003-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
659
660         * AppDomain.cs: Added null argument check in Load().
661         * Activator.cs: fixed bug #39926.
662
663 2003-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
664
665         * Enum.cs: fixed bugs #41522 and #42879.
666
667 2003-05-12  Zoltan Varga  <vargaz@freemail.hu>
668
669         * String.cs: Tweak IndexOf and LastIndexOf to match specification and
670         undocumented MS behaviour.
671
672 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
673
674         * Activator.cs: applied patch for bug #39926. Thanks to Jean Marc and
675         Jaime.
676
677 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
678
679         * String.cs: fixed bug #41411 and another similar problem in
680         LastIndexOf (string).
681
682 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
683
684         * String.cs: patch by Jean Marc <jean-marc.andre@polymtl.ca> that fixes
685         bug #42695.
686
687 2003-05-09  Zoltan Varga  <vargaz@freemail.hu>
688
689         * MulticastDelegate.cs (GetInvocationList): Avoid ArrayList 
690         construction if the delegate list only has one element.
691
692 2003-05-01  Pedro Martínez Juliá  <yoros@wanadoo.es>
693
694         * Environment.cs: Changed the method GetFolderPath because it must
695         return at least a directory name (not null).
696
697         * Convert.cs: In ToType, if the destination type is unknown, try to
698         cast the value to object (then, the calling method will downcast it
699         to the type it wants).
700
701 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
702
703         * Enum.cs: fixed bug #41522.
704
705 Tue Apr 29 13:58:16 CEST 2003 Paolo Molaro <lupus@ximian.com>
706
707         * Enum.cs: protect with the lock also the lookup (bug #41841).
708
709 Tue Apr 29 13:24:32 CEST 2003 Paolo Molaro <lupus@ximian.com>
710
711         * MonoType.cs: allow a null name if InvokeMember is called with
712         BindingFlags.CreateInstance set.
713
714 2003-04-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
715
716         * Enum.cs: reverted my previous patch.
717
718 2003-04-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
719
720         * Enum.cs: fixed bug #41841.
721
722 2003-04-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
723
724         * MonoType.cs:
725         (GetPropertyImpl): handle BindingFlags.IgnoreCase.
726
727 2003-04-22  Pedro Martínez Juliá  <yoros@wanadoo.es>
728
729         * FloatingPointFormatter.cs: Little fixes for get the same results
730         as MS.NET and show a message when something goes wrong with the
731         parser of Custom Formats.
732
733 2003-04-22  Nick Drochak  <ndrochak@gol.com>
734
735         * Double.cs (ToString):
736         * Single.cs (ToString): Handle case where param is a CultureInfo.
737
738 2003-04-18  Zoltan Varga  <vargaz@freemail.hu>
739
740         * Object.cs ValueType.cs: Make the Object::GetHashCode() and 
741         ValueType::Equals() icalls static non-virtual, so they can be called
742         by the code in RuntimeHelpers.
743
744 2003-04-18  Miguel de Icaza  <miguel@ximian.com>
745
746         * Delegate.cs (operator ==): Do not crash if the second argument
747         is null.  Bug fix submitted by Juan Cri.
748
749 2003-04-18  Eduardo Garcia Cebollero <kiwnix@yahoo.es>
750
751         * Array.cs: Deleted the exception in Array.Initialize(), it looks
752         like the method do nothing for C#, is still a MonoTODO until
753         we find a compiler that uses that.
754
755 2003-04-14  Miguel de Icaza  <miguel@ximian.com>
756
757         * Delegate.cs (Delegate): Seems like a typo, we were checking the
758         a field rather than the argument 
759
760         * MonoType.cs: Make GetNestedType an external method implementation.
761
762 2003-04-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
763
764         * Enum.cs: fixed bug #41294.
765
766 2003-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
767
768         * DateTime.cs: fixes bug #40910, part 2.
769
770 2003-04-11  Dietmar Maurer  <dietmar@ximian.com>
771
772         * String.cs (Equals): avoid the internal call, code cleanups
773
774 2003-04-11  Alan Tam <Tam@SiuLung.com>
775
776         * Convert.cs: fixed bug #41085.
777
778 2003-04-10  Lluis Sanchez Gual <lluis@ideary.com>
779
780         * AppDomain.cs: Added internal method for getting process guid.
781
782 2003-04-09  Ville Palo <vi64pa@kolumbus.fi>
783
784         * Array.cs: Little fix to compare () method.
785         
786 2003-04-09  Zoltan Varga  <vargaz@freemail.hu>
787
788         * String.cs (Equals): Add trivial optimization.
789
790 2003-04-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
791
792         * DateTime.cs: fixed bug #40910.
793
794 2003-04-05  Miguel de Icaza  <miguel@ximian.com>
795
796         * Console.cs: Make stderr, stdout and stdin use synchronized
797         versions of the their readers/writers.
798
799 2003-04-04  Dick Porter  <dick@ximian.com>
800
801         * Version.cs: Make operator== and operator!= cope with null
802         objects.  Didn't change operator<, operator<=, operator> or
803         operator>= because its not meaningful to use those to compare
804         against null, and throwing a NullReferenceException is probably
805         the best thing to do there anyway.
806
807         Fixes bug 40720.
808
809 2003-04-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
810
811         * AppDomain.cs: fixed InvalidCastException.
812
813 2003-03-30  Zoltan Varga  <vargaz@freemail.hu>
814
815         * Array.cs (Copy): Call FastCopy() earlier to avoid the expensive
816         type checks and let it decide whenever a fast copy is possible.
817
818 2003-03-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
819
820         * MonoType.cs:
821         (GetMethodImpl): support BindingFlags.IgnoreCase flag. Fixes bug #40322.
822
823 2003-03-25  Zoltan Varga  <vargaz@freemail.hu>
824
825         * Activator.cs (CreateInstance): Call GetConstructor with the right
826         arguments so the nonPublic argument is handled correctly.
827
828 2003-03-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
829
830         * Type.cs: fixed bug #40123.
831
832 2003-03-22  Pedro Martínez Juliá  <yoros@wanadoo.es>
833
834         * FloatingPointFormatter.cs: Fixed some bugs for get the same
835         results than MS.NET. Added simple error recovering, now ToString
836         will return a general format if there is any exception in the
837         process of formatting. This make the library more robust while the
838         formatters are refined.
839
840 2003-03-16  Pedro Martínez Juliá  <yoros@wanadoo.es>
841
842         * FloatingPointFormatter.cs: Added support for group separators.
843
844 2003-03-16  Pedro Martínez Juliá  <yoros@wanadoo.es>
845
846         * Single.cs:
847         * Double.cs: Apply changes of .ToString methods.
848         * SingleFormatter.cs:
849         * DoubleFormatter.cs: Simple wrappers to FloatingPointFormatter.
850         * FloatingPointFormatter.cs: New class. Implementation of double and
851         single formatters. It is unified now and parametrized with precission
852         values.
853
854 2003-03-15  Lluis Sanchez Gual <lluis@ideary.com>
855
856         * AppDomain.cs: fixes bugs #39380 and #39331.
857
858 2003-03-06  Nick Drochak  <ndrochak@gol.com>
859
860         * TimeSpan.cs (Negate): Throw exception when value is MinValue.
861
862 2003-03-04  Dick Porter  <dick@ximian.com>
863
864         * Single.cs:
865         * Double.cs: Temporarily reverted the Double and Single ToString()
866         change, because it broke nunit.
867
868
869 2003-03-04  Pedro Martínez Juliá  <yoros@wanadoo.es>
870
871         * Double.cs: Changed ToString method. Added NumberFormatInfo support
872         with DoubleFormatter class.
873         * Single.cs: Changed ToString method. Added NumberFormatInfo support
874         with SingleFormatter class.
875         * DoubleFormatter.cs: New class with Double formatting functions.
876         * SingleFormatter.cs: New class with Single formatting functions.
877
878 2003-03-03  Lluis Sanchez Gual <lluis@ideary.com>
879
880         * Activator.cs: Added support for activation using activation attributes.
881         * AppDomain.cs: Added internal method to get the default context from the runtime.
882
883 2003-02-28  Elan Feingold  <efeingold@mn.rr.com>
884
885         * DateTime.cs: FileTime is expressed in Universal time, and as such must
886         be converted before subtracting the magic offset.
887         * DateTime.cs: Strings in the format "2003-02-27T10:05:03-11:00" (note
888         the timezone at the end) *must* be parsed by DateTime.Parse() for
889         compatibility with Microsoft.
890
891 2003-02-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
892
893         * Attribute.cs:
894         * MonoCustomAttrs.cs: fix for the regression test failure (see bug
895         #38238).
896
897         * IntPtr.cs: added serialization .ctor
898
899 2003-02-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
900
901         * AppDomain.cs: check for null in Unload and changed method name.
902
903 2003-02-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
904
905         * MonoCustomAttrs.cs: fixed bug #38238.
906
907 2003-02-17  Martin Baulig  <martin@ximian.com>
908
909         * Exception.cs (Exception.ToString): Print a newline between the
910         exception message and the stack trace.
911
912 2003-02-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
913
914         * AppDomain.cs: implemented GetCurrentThreadId ().
915
916 2003-02-14  Patrik Torstensson
917
918         * Exception.cs: Fixed message output formating
919
920 2003-02-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
921
922         * Int32.cs:
923         (Parse): ignore everything after a \0 (MS parses: "512\0hola" as 512).
924
925 2003-02-12  Miguel de Icaza  <miguel@ximian.com>
926
927         * Type.cs: IsClass should return false for Enumerations
928
929 2003-02-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
930
931         * MonoCustomAttrs.cs: return the correct array type in the short case.
932         Fixes bug #37818.
933
934 2003-02-08  Pedro Martíenz Juliá  <yoros@wanadoo.es>
935
936         * Math.cs: Fix a few methods (like Round) and add with comments the
937         new methods: BigMul and DivRem that were in ECMA specs.
938
939 2003-02-07  Patrik Torstensson
940
941         * Exception.cs: Fixed formating
942
943 2003-02-05  Patrik Torstensson
944
945         * AppDomain.cs: Partly fixed the unload method 
946         
947 2003-02-04  Patrik Torstensson
948
949         * AppDomain.cs: Fixed lease issue with appdomain
950
951 2003-02-04  Lluis Sanchez Gual <lluis@ideary.com>
952
953         * MarshalByRefObject.cs: Implemented GetLifetimeService() and 
954           InitializeLifetimeService().
955
956 2003-02-03  Patrik Torstensson
957
958         * AppDomain.cs: New internalcalls for handling domain/context switches
959         * AppDomain.cs (CreateDomain): Return transparant proxy for appdomain object
960
961 2003-02-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
962
963         * AppDomain.cs: implemented AppendPrivatePath, ClearPrivatePath
964         and ClearShadowCopyPath and fixed GetType ().
965
966         * Attribute.cs: clean up.
967
968         * Console.cs: removed UnixConsoleEncoding. Use Default.
969
970 2003-02-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
971
972         * Attribute.cs: fixed all IsDefined overloads. Gotta fix
973         GetCustomAttributes later.
974
975 2003-01-31  Patrik Torstensson
976
977         * Buffer.cs: Changed access level of BlockCopyInternal
978
979 Thu Jan 30 19:54:30 CET 2003 Paolo Molaro <lupus@ximian.com>
980
981         * String.cs, IntegerFormatter.cs: use const where appropriate.
982
983 2003-01-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
984
985         * MonoCustomAttrs.cs: fixed GetBase () for Type. Thanks to Zoltan for
986         reporting.
987
988 2003-01-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
989
990         * MonoCustomAttrs.cs: fixed shortcut in GetCustomAttributes.
991         The argument ICustomAttributeProvider can be of other types different
992         from Type. Handle it.
993
994 2003-01-28  Zoltan Varga  <vargaz@freemail.hu>
995
996         * DateTime.cs: fix FromFileTime so the time returned by 
997         File::GetLastModificationTime etc. is in the correct timezone.
998
999 2003-01-28  Patrik Torstensson
1000         * Exception.cs: reverted formating/endline changes (sorry guys)
1001
1002 2003-01-28  Patrik Torstensson
1003
1004         * MarshalByRefObject.cs: implemented GetObjectIdentity
1005         * Exception.cs: added support for remote exceptions
1006
1007 2003-01-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1008
1009         * DateTime.cs: fixed bug #37225.
1010
1011 2003-01-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1012
1013         * Enum.cs: Clone the arrays in GetNames and GetValues. Thanks lupus!
1014
1015 2003-01-27  Zoltan Varga  <vargaz@freemail.hu>
1016
1017         * AppDomain.cs: Added DoTypeResolve method which will be called by
1018         the runtime to raise TypeResolve events.
1019
1020 2003-01-27  Duncan Mak  <duncan@ximian.com>
1021
1022         * Enum.cs (ToType): Implement this using Convert.ToType.
1023
1024 2003-01-21  Miguel de Icaza  <miguel@ximian.com>
1025
1026         * Math.cs: Remove Pow's implementation body as it was wrong.  The
1027         C code does the right thing.  The code was trying to handle a
1028         number of cases, and that was incorrect.
1029
1030 2003-01-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1031
1032         * CharEnumerator.cs: fix to Current by crainaj@hotmail.com. Closes
1033         bug #37113.
1034
1035 2003-01-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1036
1037         * Enum.cs: added caching to GetInfo.
1038
1039 2003-01-23  Dick Porter  <dick@ximian.com>
1040
1041         * Environment.cs (System): Implemented ExitCode
1042
1043 2003-01-23  Zoltan Varga  <vargaz@freemail.hu>
1044
1045         * Type.cs (IsInstanceOfType): fixed regression caused by the change
1046         to IsSubclassOf().
1047
1048 2003-01-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1049
1050         * MonoType.cs: re-added lines that were removed in the previous commit.
1051
1052 2003-01-16  Lluis Sanchez Gual <lsg@ctv.es>
1053
1054         * Type.cs: corrected property IsSerializable. It should always return
1055         true for enums and delegates
1056         * MonoType.cs: added serialization support.
1057         * Delegate.cs: added serialization support.
1058         * DBNull.cs: added serialization support.
1059         * UnitySerializationHolder.cs: supports serialization of Assembly,
1060         MonoType and DBNull.
1061         * DelegateSerializationHolder.cs: added.
1062
1063 2003-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1064
1065         * Exception.cs: changed default message to match MS one.
1066
1067 2003-01-12  Patrik Torstensson <totte@race-x-change.com>
1068
1069         * String.cs: Fixed bug with CompareOrdinal
1070
1071 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1072
1073         * Enum.cs: implements IFormattable.
1074
1075 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1076
1077         * AppDomain.cs: implemented DoCallBack method.
1078         * MonoType.cs:
1079         (GetConstructorImpl): when the flag is BindingFlags.Default, set it to
1080         Public, Instance.
1081
1082         NUnit2 tests start moving.
1083
1084 2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1085
1086         * Activator.cs: fixed bug #36052. Also added checks to avoid trying to
1087         instantiate an abstract class.
1088
1089 2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1090
1091         * Type.cs:
1092         (IsSubclassOf): return false when null. Use != instead of Equals.
1093
1094 2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1095
1096         * Type.cs: fixed IsSubclassOf. Patch from Zoltan Varga.
1097
1098 Fri Jan 3 20:18:51 CET 2003 Paolo Molaro <lupus@ximian.com>
1099
1100         * MonoType.cs: fixed Namespace property for nested types.
1101
1102 Fri Jan 3 16:18:27 CET 2003 Paolo Molaro <lupus@ximian.com>
1103
1104         * MonoCustomAttrs.cs: create properly typed arrays when returning
1105         arrays of attributes of a given type.
1106
1107 Fri Jan 3 11:10:14 CET 2003 Paolo Molaro <lupus@ximian.com>
1108
1109         * MonoType.cs: fixed MemberType property for nested types.
1110
1111 2003-01-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1112
1113         * String.cs: fixed bug #36209.
1114
1115 2002-12-20 Lluis Sanchez Gual <lsg@ctv.es>
1116
1117         * Activator.cs: implemented method GetObject.
1118
1119 2002-12-28  Marcus Urban <mathpup@mylinuxisp.com>
1120
1121         * Activator.cs: Since the documentation indicates the method
1122         either succeeds or throws one of the listed exceptions, we weren't
1123         expecting that CreateInstance might be returning null.
1124
1125         For more information on the bug, see http://bugs.ximian.com/show_bug.cgi?id=36109
1126
1127 2002-12-20 Lluis Sanchez Gual <lsg@ctv.es>
1128
1129         * MarshalByRefObject.cs: implemented CreateObjRef.
1130
1131 2002-12-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1132
1133         * DateTime.cs: fixed bug #30076.
1134         * TimeZone.cs: provide the parameter name in a exception.
1135
1136 2002-12-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1137
1138         * DecimalFormatter.cs: fixed bug #35560.
1139
1140 Wed Dec 4 16:04:28 CET 2002 Paolo Molaro <lupus@ximian.com>
1141
1142         * Type.cs: implemented GetInterfaceMap (needs an updated runtime).
1143
1144 2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1145
1146         * Array.cs: use Object.Equals (obj, obj) to compare objects to avoid
1147         nulls. Fixes #34909.
1148
1149 2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1150
1151         * AppDomain.cs: DoAssemblyResolve now returns when one of the handlers
1152         returns a non-null assembly.
1153
1154 2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1155
1156         * MulticastDelegate.cs: make GetInvocationList work for more than 1
1157         delegate.
1158
1159 2002-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1160
1161         * MulticastDelegate.cs: implemented GetInvocationList. I'll check later
1162         if this is the correct order of invocation.
1163
1164 2002-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1165
1166         * Type.cs: changed the signature of internal_from_name. Modified
1167         the overloads of GetType to use it and check the typeName argument.
1168         Implemented FindInterfaces.
1169
1170 2002-11-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1171
1172         * MarshalByRefObject.cs: undo latest changes. It breaks the build by
1173         some obscure reasons (try make -f makefile.gnu using a corlib which has
1174         the modified version).
1175
1176 2002-11-26  Miguel de Icaza  <miguel@ximian.com>
1177
1178         * String.cs (Concat): Reduce the number of compares required. 
1179
1180 Mon Nov 18 17:54:22 CET 2002 Paolo Molaro <lupus@ximian.com>
1181
1182         * Activator.cs: throw a MissingMethodException if the default
1183         constructor is not found in CreateInstance.
1184
1185 2002-11-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1186
1187         * String.cs:
1188         (Equals (str, str)): use 'as' instead of casting to object.
1189         (Equals (obj)): check the length of the strings (until now,
1190         "Hello".Equals ((object) "Hellow World!) was true!).
1191
1192 2002-11-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1193
1194         * MonoType.cs: implemented GetEvent (name, flags).
1195
1196 2002-11-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1197
1198         * AppDomain.cs: implemented a couple of methods called from the runtime
1199         to fire AssemblyLoad and AssemblyResolve events.
1200
1201 2002-10-31  Dick Porter  <dick@ximian.com>
1202
1203         * Environment.cs: MonoIO methods now have an error parameter
1204
1205 2002-10-29  Zoltan Varga  <vargaz@freemail.hu>
1206
1207         * Enum.cs: Added support for whitespaces in Enum:Parse().
1208
1209 2002-10-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1210
1211         * Type.cs: fixed GetProperty (string, Type []) and removed get_property
1212         internal call. Closes bug #32992.
1213
1214 2002-10-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1215
1216         * Exception.cs: display the inner exception, if any, in ToString ().
1217
1218 2002-10-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1219
1220         * Environment.cs: fixed StackTrace property.
1221
1222 2002-10-16  Nick Drochak  <ndrochak@gol.com>
1223
1224         * Enum.cs (Parse): Then fix the code so that it works too.
1225
1226 2002-10-15  Nick Drochak  <ndrochak@gol.com>
1227
1228         * Enum.cs (Parse): Use unsigned casts to avoid compiler warnings.
1229
1230 2002-10-12  Nick Drochak  <ndrochak@gol.com>
1231
1232         * IntegerFormatter.cs: Fix compiler warnings.
1233
1234 2002-10-11  Tim Haynes <thaynes@openlinksw.com>
1235
1236         * Type.cs (GetConstructors): Use the correct flags.
1237
1238 2002-10-09  Nick Drochak  <ndrochak@gol.com>
1239
1240         * IntegerFormatter.cs: Suppress insignificant leading zeros
1241
1242 Fri Sep 27 15:06:29 CEST 2002 Paolo Molaro <lupus@ximian.com>
1243
1244         * MonoCustomAttrs.cs: applied patch by "Si Jingnan"
1245         <stonewell@21cn.com> to return also derived types.
1246
1247 2002-09-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1248
1249         * Activator.cs: little fix in CreateInstance (Type, bool).
1250
1251 2002-09-19  Duncan Mak  <duncan@ximian.com>
1252
1253         * Array.cs (CopyTo): Revert back to 1.40, this is stopping
1254         I18N/Common from building right now.
1255
1256 2002-09-19  Nick Drochak  <ndrochak@gol.com>
1257
1258         * Array.cs (CopyTo): Account for Object type and base (primitive) types
1259         * Type.cs (IsAssignableFrom): return false for a null parameter
1260
1261 2002-09-19  Nick Drochak <ndrochak@gol.com>
1262
1263         * Array.cs (CopyTo): Check that source type can be cast automatically
1264         to the destination type.
1265
1266 2002-09-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1267
1268         * Type.cs: implemented IsAssignableFrom, DefaultBinder and
1269         GetDefaultMembers.
1270
1271 2002-09-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1272
1273         * Char.cs: implemented ToString (char)
1274         * IntegerFormatter.cs: made it internal.
1275
1276 2002-09-13  Nick Drochak  <ndrochak@gol.com>
1277
1278         * Enum.cs (Format): handle the "d" format for both signed and unsigned
1279         underlying types.
1280
1281 2002-09-12  Dick Porter  <dick@ximian.com>
1282
1283         * UIntPtr.cs: Remove the [StructLayout(LayoutKind.Auto)]
1284         attribute, as there doesn't appear to be any struct
1285         layout-depending code here (and corcompare says it should be
1286         LayoutKind.Sequential)
1287
1288         * Decimal.cs: Stub out missing methods, add
1289         [DecimalConstantAttribute] to the constant fields (as shown by
1290         corcompare).
1291
1292         * LocalDataStoreSlot.cs: 
1293         * Environment.cs: 
1294         * Char.cs: 
1295         * Array.cs: Stub out missing methods.
1296
1297         * TypedReference.cs: 
1298         * ArgIterator.cs: Stub out
1299
1300         * AppDomainSetup.cs: 
1301         * AppDomain.cs: Stub out missing methods, add missing
1302         ClassInterface(ClassInterfaceType.None) attribute.
1303
1304 2002-09-12  Nick Drochak  <ndrochak@gol.com>
1305
1306         * Double.cs (ToString): Throw exception when "X" format is passed in.
1307
1308 Wed Sep 11 15:26:34 CEST 2002 Paolo Molaro <lupus@ximian.com>
1309
1310         * MonoType.cs: implemented Module property.
1311
1312 Wed Sep 11 12:49:51 CEST 2002 Paolo Molaro <lupus@ximian.com>
1313
1314         * MonoType.cs, Type.cs: implemented InvokeMember.
1315
1316 Wed Sep 11 11:06:43 CEST 2002 Paolo Molaro <lupus@ximian.com>
1317
1318         * Delegate.cs: check the type passed to CreateDelegate is a Delegate
1319         type. Check the method signature matches.
1320
1321 Sat Sep 7 10:16:52 CEST 2002 Paolo Molaro <lupus@ximian.com>
1322
1323         * RuntimeMethodHandle.cs: implemented GetFunctionPointer().
1324
1325 2002-09-06  Miguel de Icaza  <miguel@ximian.com>
1326
1327         * Console.cs: Specify an encoder, otherwise we will get the UTF8
1328         encoder that by default emits the byte markers.
1329
1330 Fri Sep 6 20:14:04 CEST 2002 Paolo Molaro <lupus@ximian.com>
1331
1332         * Delegate.cs: look also for non-public methods until we have the
1333         security checks in place.
1334
1335 Fri Sep 6 12:20:06 CEST 2002 Paolo Molaro <lupus@ximian.com>
1336
1337         * MonoType.cs: consider also the full name in GetInterface.
1338
1339 Fri Sep 6 12:11:28 CEST 2002 Paolo Molaro <lupus@ximian.com>
1340
1341         * MonoType.cs: implemented GetMembers, GetConstructorImpl and
1342         GetMethodImpl using the binder.
1343         * Type.cs: GetConstructorImpl/GetConstructor fixes.
1344
1345 2002-09-03  Jonathan Pryor <jonpryor@vt.edu>
1346         * Enum.cs: Get rid of warning CS0162.
1347
1348 2002-09-04  Miguel de Icaza  <miguel@ximian.com>
1349
1350         * Double.cs, Single.cs, Char.cs, Boolean.cs: Use internal for the
1351         actual value instead of public.
1352
1353         * LocalDataStoreSlot.cs: Make constructor internal.
1354
1355         * Int16.cs, UInt16.cs, Int32.cs, UInt32.cs, Int64.cs, UInt64.cs,
1356         SByte.cs, Byte.cs, Char.cs: Use internal for the actual value
1357         instead of public.
1358
1359 2002-09-03  Jonathan Pryor <jonpryor@vt.edu>
1360         * Enum.cs: Fixed Enum.Format so that the "x" format specifier would work
1361                    properly.
1362
1363 2002-08-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1364
1365         * DateTime.cs: fixed buglet.
1366
1367 Tue Aug 27 16:39:47 CEST 2002 Paolo Molaro <lupus@ximian.com>
1368
1369         * MonoType.cs: speedup access to common data.
1370
1371 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1372
1373         * Double.cs: implemented TryParse.
1374
1375         * Math.cs: PowImpl is now private.
1376
1377         * MissingFieldException.cs: implemented Message.
1378
1379         * RuntimeMethodHandle.cs: stubbed GetFunctionPointer.
1380
1381         * _AppDomain.cs: Uncommented ToString.
1382
1383 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1384
1385         * Type.cs:
1386         (IsValueTypeImpl): it's virtual, not abstract. Implemented.
1387
1388 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1389
1390         * ArgumentException.cs: use the field instead of the property for
1391         param_name.
1392
1393         * ArgumentOutOfRangeException.cs: modified Message.
1394
1395         * DateTime.cs: 
1396         (_DoParse): throw out of range exception for year. Removed check
1397         for month (it's done in the constructor).
1398
1399 2002-08-21  Miguel de Icaza  <miguel@ximian.com>
1400
1401         * Environment.cs: Implemented OSVersion property.
1402
1403 2002-08-21  Dietmar Maurer  <dietmar@ximian.com>
1404
1405         * Exception.cs: set stack_trace to null
1406
1407 Wed Aug 21 13:02:20 CEST 2002 Paolo Molaro <lupus@ximian.com>
1408
1409         * AppDomain.cs: implemented ToString().
1410
1411 2002-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1412
1413         * AppDomain.cs: securityInfo can be null in CreateDomain.
1414
1415 2002-08-19  Dick Porter  <dick@ximian.com>
1416
1417         * MonoType.cs: Add a space before the Assembly name in
1418         AssemblyQualifiedName (needed for resource files so the MS runtime
1419         can load types)
1420
1421 2002-08-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1422
1423         * AppDomain.cs: parameter name when throwing ArgumentNullException.
1424
1425         * ArgumentException.cs: modified Message to do what MS does.
1426
1427         * ArgumentNullException.cs: don't use {0} in message.
1428
1429         * Exception.cs: use Message property in ToString ().
1430
1431 2002-08-14  Cesar Octavio Lopez Nataren <cesar@ciencias.unam.mx>
1432
1433         * WeakReference.cs: Changed the constructor and GetObjectData
1434         method needed for ISerializable implementation in order to be
1435         compatible with SOAP generated by MS.
1436
1437 Wed Aug 14 17:34:07 CEST 2002 Paolo Molaro <lupus@ximian.com>
1438
1439         * MonoType.cs, Type.cs: DeclaringType/ReflectedType fixes.
1440
1441 2002-08-12  Dietmar Maurer  <dietmar@ximian.com>
1442
1443         * Exception.cs (ToString): changed the ouput format.
1444
1445 2002-08-07  Dietmar Maurer  <dietmar@ximian.com>
1446
1447         * MonoType.cs: moved get_method icall to this class, we can
1448         remove it as soon someone provides a full featured GetMethodImpl.
1449
1450         * Type.cs: use GetMethodImpl everywhere.
1451
1452         * Delegate.cs: new CreateDelegate implementations.
1453
1454 2002-08-06  Tim Coleman <tim@timcoleman.com>
1455         * MonoType.cs: 
1456                 Fix bug #28582.  Now checks parameters for properties
1457                 in GetPropertyImpl.
1458
1459 2002-08-04  Nick Drochak  <ndrochak@gol.com>
1460
1461         * Buffer.cs: Throw correct exception in GetByte() and SetByte().
1462
1463 2002-08-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1464
1465         * String.cs:
1466         (FormatSpecifier): allow white space between the comman and the width
1467         specifier.
1468
1469 2002-07-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1470
1471         * Int32.cs:
1472         * Int64.cs:
1473         * UInt32.cs:
1474         * UInt64.cs: fixed bug #28050. May be a MS bug?
1475
1476 Thu Jul 18 14:47:03 CEST 2002 Paolo Molaro <lupus@ximian.com>
1477
1478         * MonoType.cs: fix IsArrayImpl.
1479
1480 2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1481
1482         * String.cs: make ToLower (culture) and ToUpper (culture) use the
1483         default ToLower and ToUpper and don't throw NotImplemented.
1484
1485 Sat Jul 13 15:09:01 CEST 2002 Paolo Molaro <lupus@ximian.com>
1486
1487         * Type.cs: make GettTypeCode an icall. Test implementation of
1488         GetMember().
1489
1490 2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1491
1492         * AppDomainSetup.cs: implemented LoaderOptimization.
1493
1494 2002-07-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1495
1496         * Activator.cs: some more intermediate results checking in
1497         in CreateInstance and CreateInstanceFrom and use GetConstructor and
1498         Invoke only with Type [] until the other overloaded versions work.
1499
1500 2002-07-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1501
1502         * Activator.cs: reformatted. Implemented CreateInstance* methods
1503         that return ObjectHandle.
1504
1505         * AppDomain.cs: implemented CreateInstance*AndUnwrap methods.
1506
1507 2002-07-03  Nick Drochak  <ndrochak@gol.com>
1508
1509         * Decimal.cs (Divide): Short cut the case where the dividend is 0 (and
1510         the divisor is not) and avoid the icall, which seems to have a bug.
1511
1512 2002-07-03  Nick Drochak  <ndrochak@gol.com>
1513
1514         * Double.cs (CompareTo): Correctly handle the case where the instance
1515         is NaN. Also return 0 if the values are equal.
1516
1517 2002/07/03  Nick Drochak <ndrochak@gol.com>
1518
1519         * MissingMethodException: Add missing Message property
1520         * MissingMemberException: Add missing Message property
1521
1522 2002-06-30  Nick Drochak  <ndrochak@gol.com>
1523
1524         * Double.cs (CompareTo): Just see which is bigger.  Don't use the
1525         subtraction trick, it doesn't work when the values have a diference of
1526         less than one.
1527
1528         * Single.cs (CompareTo): same
1529
1530 2002-06-27  Martin Baulig  <martin@gnome.org>
1531
1532         * UIntPtr.cs (UIntPtr.Zero): Use an explicit `u' suffix in the
1533         constructor argument.  [FIXME: The implicit conversion to an
1534         unsigned integer doesn't work with mcs.]
1535
1536 2002-06-26  Martin Baulig  <martin@gnome.org>
1537
1538         * DecimalFormatter.cs: Removed MSTEST stuff, use `System',
1539         not `S = System'.  This file now compiles with mcs.
1540
1541         * String.cs: Removed the already ifdef-outed __arglist Concat function
1542         to make it compile with mcs.
1543
1544 2002-06-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1545
1546         * IntegerFormatter.cs:
1547         (FormatParse.FormatNumber): fixed custom format for negative numbers.
1548
1549 2002-06-21  Martin Baulig  <martin@gnome.org>
1550
1551         * Double.cs: Replace the private `enum State' with constants since this
1552         will avoid some bigger headaches in mcs.
1553
1554 Thu Jun 20 17:51:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
1555
1556         * TimeSpan.cs: do not pollute the namespace with the
1557         System.Parser name.
1558
1559 2002-06-18  Nick Drochak  <ndrochak@gol.com>
1560
1561         * ArgumentException.cs: Use the message given in the constructor when
1562         accessing the Message property.  Thanks to Dietmar for the help with 
1563         "base".
1564
1565 2002-06-17  Dietmar Maurer  <dietmar@ximian.com>
1566
1567         * MonoType.cs: GetField is now a InternalCall
1568
1569 2002-06-13  Nick Drochak  <ndrochak@gol.com>
1570
1571         * DateTime.cs: (Parse): Accept dates that have no hour,min,sec. in the
1572         sortable format(s), e.g. "2002-02-25"
1573
1574 2002/06/12  Nick Drochak <ndrochak@gol.com>
1575
1576         * Random.cs (Next): Fix math error.  Return a number within the range.
1577
1578 2002-06-12  Nick Drochak  <ndrochak@gol.com>
1579
1580         * String.cs (IndexOf): Return -1 if start index is equal to string
1581         length.
1582
1583 2002-06-10  Duncan Mak  <duncan@ximian.com>
1584
1585         * Convert.cs (ToDouble): Remove rounding in ToDouble (float).
1586         (ToType): Added null field in conversionTable to avoid
1587         IndexOutOfRangeException. Changed what exceptions we throw to match
1588         the spec.
1589         
1590 2002-06-11  Nick Drochak  <ndrochak@gol.com>
1591
1592         * Int64.cs (Parse): Added unique strings to the messages where we throw
1593         a FormatException. Needed these to debug, so just left them in since
1594         they might be useful later. Fixed Currency parsing where we weren't
1595         looking at CurrencyDecimalSeparator, etc.
1596
1597 2002-06-09  Lawrence Pit  <loz@cable.a2000.nl>
1598
1599         * DateTime.cs: fixes to pass tests M0 to M6:
1600                 if yy pattern then year values >= 30 are in 20th century
1601                 rfc1123 pattern is always in GMT, therefor useutc must be false
1602         made GetNow() internal static so it can be called from TimeZone.
1603         * TimeZone.cs: removed dependency on year 2002 from initialization of 
1604         current timezone.
1605
1606 2002-06-09  Duncan Mak  <duncan@ximian.com>
1607
1608         * Convert.cs (ToType): Rearranged what Exceptions we throw to
1609         match MS behavior.
1610
1611 2002-06-08  Duncan Mak  <duncan@ximian.com>
1612
1613         * Decimal.cs: Added support for the IConvertible interface.
1614
1615 2002-06-08  Martin Baulig  <martin@gnome.org>
1616
1617         * Enum.cs (IsDefined): `value' may be of the enum's type itself, it
1618         doesn't necessarily need to be of the enum's underlying type.
1619
1620 2002/06/07  Nick Drochak <ndrochak@gol.com>
1621
1622         * String.cs: Add [Serializable] to class
1623         * SByte.cs (Parse): Add [CLSCompliant(false)] to all the overloads
1624
1625 2002-06-04  Nick Drochak  <ndrochak@gol.com>
1626
1627         * Double.cs (Parse): Recognize the group separator string, but still we
1628         don't check the format for the proper number of digits between
1629         separators. Also throw OverflowException when we get Pos or Neg
1630         Infinity from runtime.
1631
1632 2002-06-03  Duncan Mak  <duncan@ximian.com>
1633
1634         * Convert.cs (ToDouble): Fixed ToDouble (byte value).
1635
1636 Mon Jun 3 12:18:18 CEST 2002 Paolo Molaro <lupus@ximian.com>
1637
1638         * Type.cs: fixed GetTypeCode.
1639
1640 2002-06-02  Duncan Mak  <duncan@ximian.com>
1641
1642         * Convert.cs (ToInt16): use Convert.ToInt16 (int) instead of a direct
1643         cast from an int so that we throw OverFlowException correctly.
1644         
1645         (ToInt64): Use a new 64bit version of ConvertToBase.
1646         
1647         (ConvertToBase): Add checks for overflow (checks Int32.MinValue
1648         and Int32.MaxValue).
1649
1650         (ConvertFromBase64): New 64-bit version of ConvertFromBase.
1651
1652 2002-06-02  Nick Drochak  <ndrochak@gol.com>
1653
1654         * Convert.cs (ToSByte): Check for special value.
1655         * Single.cs (Parse): 
1656         * UInt16.cs (Parse):
1657         * UInt32.cs (Parse): Throw OverflowException if negative
1658
1659 2002-06-02  Duncan Mak  <duncan@ximian.com>
1660
1661         * Convert.cs (DBNull): Point it to DBNull.Value.
1662         (IsDBNull): Instead of checking typecodes, just check to see if
1663         it's the same as the DBNull field.
1664
1665 2002-06-02  Nick Drochak  <ndrochak@gol.com>
1666
1667         * Convert.cs (ConvertFromBase): Detect bad digits correctly.
1668
1669 2002-06-02  Duncan Mak  <duncan@ximian.com>
1670
1671         * Char.cs (Parse): Simplify the Exception handling.
1672
1673         * Convert.cs (ToDecimal): Remove call to Math.Round () when
1674         converting from a float.
1675
1676 2002-05-30  Martin Baulig  <martin@gnome.org>
1677
1678         * MonoType.cs (GetInterface): Implemented.
1679
1680 Thu May 23 17:17:28 CEST 2002 Paolo Molaro <lupus@ximian.com>
1681
1682         * Activator.cs: implemented CreateInstance ().
1683
1684 2002-05-22  Duncan Mak  <duncan@ximian.com>
1685
1686         * Convert.cs (ConvertToBase): Added new 64bit version.
1687         (BuildConvertedString64): New 64bit version of
1688         BuildConvertedString.
1689
1690         This fixes bug 25068.
1691
1692         (ConvertFromBase): Added additional test for checking if the
1693         digits are valid. Thanks to Miguel for coming up with this test.
1694
1695         This fixes bug 25071.
1696         
1697 2002-05-21  Duncan Mak  <duncan@ximian.com>
1698
1699         * Convert.cs (ToType): Rearranged to fit the new layout of
1700         conversionTable.
1701
1702         (conversionTable): Rearranged to fit the layout of the
1703         System.TypeCode enum.
1704
1705         This should fix bug 25075.
1706         
1707 2002-05-21  Duncan Mak  <duncan@ximian.com>
1708
1709         * Convert.cs (ToString): Fixed the ToString methods. Previously I had
1710         mixed up the two code paths, one for converting to a specific base
1711         (this case), another from converting from a foreign base to base10
1712         (used by ToInt16|32|64 (string, int)). This fixes bug 25068.
1713
1714         * Convert.cs (ToByte)
1715         (ToSByte): Fixed bug 25074. Added more bits to ConvertFromBase so
1716         that we won't confuse FormatException with OverflowException.
1717
1718 2002-05-22  Lawrence Pit  <loz@cable.a2000.nl>
1719
1720         * Environment.cs: CommandLine missed spaces between arguments.
1721         Implemented StackTrace. Returning MachineName in UserDomainName
1722         instead of null.
1723         
1724 Tue May 21 17:25:49 CEST 2002 Paolo Molaro <lupus@ximian.com>
1725
1726         * MonoCustomAttrs.cs: handle inherit argument.
1727
1728 2002-05-21  Nick Drochak  <ndrochak@gol.com>
1729
1730         * Math.cs (Pow): Change icall method name and insert parameter
1731         checks in for infinities and NaN.
1732
1733 2002-05-13  Miguel de Icaza  <miguel@ximian.com>
1734
1735         * Double.cs (Parse): Reimplement by cleaning up the string first,
1736         and then passing to strtof in the mono runtime.
1737
1738         * Single.cs (Parse): Use the Double implementation and cast to
1739         float. 
1740
1741 2002-05-21  Nick Drochak  <ndrochak@gol.com>
1742
1743         * Math.cs 
1744                 (Ceiling): Check for "special" values
1745                 (Floor): Check for "special" values
1746                 (Round): Fix off-by-one error on decimal shifting
1747
1748 2002-05-20  Lawrence Pit  <loz@cable.a2000.nl>
1749
1750         * DateTime.cs: ToString () using "G" format specifier 
1751
1752 2002-05-19  Martin Baulig  <martin@gnome.org>
1753
1754         * Convert.cs (FromBase64CharArray): Do correct exception handling.
1755
1756 2002-05-19  Martin Baulig  <martin@gnome.org>
1757
1758         * Convert.cs (FromBase64CharArray): Convert the char array using
1759         System.Text.UTF8Encoding, not UnicodeEncoding (which is UTF-16) to
1760         a byte array.
1761
1762 2002-05-17  Miguel de Icaza  <miguel@ximian.com>
1763
1764         * MonoType.cs: Style changes.
1765
1766         * Type.cs: Style changes.
1767
1768 2002-05-16  Piers Haken <piersh@friksit.com
1769
1770         * UInt64.cs: fix declaration of IConvertible.To* overrides.
1771
1772 2002-05-16  Nick Drochak  <ndrochak@gol.com>
1773
1774         * BitConverter.cs (ToString): Add parameter check for invalid start 
1775         index.
1776
1777         * Console.cs: Use AutoFlush on the StreamWriter for stdin and stdout
1778         now that StreamWriter uses buffering
1779
1780 2002-05-14  Miguel de Icaza  <miguel@ximian.com>
1781
1782         * Double.cs: Oops.  Also handle exponents without finding a dot.
1783
1784 2002-05-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1785
1786         * ChangeLog: removed empty entry at the top of the file.
1787
1788         * Int32.cs: made static functions used by Parse internal.
1789
1790         * Int64.cs:
1791         * UInt32.cs:
1792         * UInt64.cs: removed static fucntions used by Parse and use the ones
1793         in Int32.cs
1794
1795 2002-05-12  Daniel Morgan <danmorg@sc.rr.com>
1796
1797         * IServiceProvider.cs: added using System
1798
1799 2002-05-09  Daniel Morgan <danmorg@sc.rr.com>
1800
1801         * Single.cs: copied ToString() and Parse() methods from 
1802         Double to Single and modified a tiny bit for Single.  
1803         There is still a FIXME for Double and Single about
1804         passing the format and provider info to the icall too.
1805
1806 2002-05-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1807
1808         * Int32.cs:
1809         * Int64.cs:
1810         * UInt32.cs:
1811         * UInt64.cs (Parse): don't use Char.IsNumber to test for hex digits.
1812         Don't use a delegate to test for valid digits.
1813
1814 2002-05-01  Duncan Mak  <duncan@ximian.com>
1815
1816         * Convert.cs: 
1817         * Math.cs: Added missing CLSCompliant attributes where necessary.
1818         
1819 2002-04-30  Duncan Mak  <duncan@ximian.com>
1820
1821         * ArgumentException.cs (Message): 
1822         * ArgumentOutOfRangeException.cs (Message): Added.
1823
1824 2002-04-30  Nick Drochak  <ndrochak@gol.com>
1825
1826         * MonoType.cs: Remove unused variable and eliminate a compiler warning.
1827
1828 Mon Apr 29 15:32:02 CEST 2002 Paolo Molaro <lupus@ximian.com>
1829
1830         * Environment.cs: support for Exit(), CommandLine, CommandLineArgs ().
1831
1832 2002-04-28  Duncan Mak  <duncan@ximian.com>
1833
1834         * DivideByZeroException.cs: Added missing serialization constructor.
1835
1836         * UnauthorizedAccessException.cs: Added the missing Serializable attribute.
1837
1838 2002-04-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1839
1840         * Math.cs: fix Floor () and Round (). Closes #23960.
1841
1842 2002-04-27  Nick Drochak  <ndrochak@gol.com>
1843
1844         * Array.cs (IList.Contains): Should throw a RankException if this is 
1845         called on a Rank > 1 array. Not in the docs, but this is what the 
1846         MS.NET does.
1847
1848 2002-04-26  Duncan Mak  <duncan@ximian.com>
1849
1850         * MissingMemberException.cs: Made the message variable 'protected'
1851         instead of 'private', so that we can see it in
1852         MissingMethodException and MissingFieldException.
1853
1854         * MissingFieldException.cs:
1855         * MissingMethodException.cs: Added missing (string, string)
1856         constructor, and also the Message property.
1857
1858 2002-04-26  Martin Baulig  <martin@gnome.org>
1859
1860         * Enum.cs: Implemented the IConvertible methods.
1861
1862 2002-04-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1863
1864         * SByte.cs: little change in Parse (string) to avoid incorrect
1865         OverflowException thrown (reported by nickd).
1866
1867 2002-04-22  Miguel de Icaza  <miguel@ximian.com>
1868
1869         * ValueType.cs: Add Serializable attribute.
1870
1871         * String.cs: ifdef-out out the __arglist Concat function until I
1872         add support for that to mcs.
1873
1874 2002-04-24      Patrik Torstensson <patrik.torstensson@labs2.com>
1875
1876         * AppDomain.cs (GetValue): usage of the correct icall (bug)
1877
1878 Wed Apr 24 21:15:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
1879
1880         * GC.cs: implement most of the methods as icalls.
1881
1882 2002-04-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1883
1884         * DecimalFormatter.cs (ToString): return correct value when the
1885         decimal number is 0.
1886
1887 2002-04-24      Patrik Torstensson <patrik.torstensson@labs2.com>
1888         
1889         * Type.cs (GetProperty): fixed call syntax (needs an empty array not null)
1890         * MonoType.cs (GetPropertyImpl) : basic implementation (ignores types, bindingAttr, modifiers)
1891
1892 2002-04-24  Nick Drochak  <ndrochak@gol.com>
1893
1894         * Double.cs (Parse): Handle case where there are no digits before the 
1895         decimal point, such as ".1".
1896
1897 2002-04-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1898
1899         * Int32.cs:
1900         * UInt32.cs:
1901         * Int64.cs:
1902         * UInt64.cs: fixed bug #23738 (hex numbers parsed wrong).
1903
1904 2002-04-23      Patrik Torstensson <patrik.torstensson@labs2.com>
1905
1906         * String.cs (Split): fixed invalid split of count 0 and 1.
1907         
1908 2002-04-23      Patrik Torstensson <patrik.torstensson@labs2.com>
1909         
1910         * String.cs (LastIndexOf): fixed argument checking.
1911         * String.cs (Equals): made internal for performace.
1912
1913 2002-04-23  Nick Drochak  <ndrochak@gol.com>
1914
1915         * String.cs (Join): check argument and throw exception if needed
1916
1917 2002-04-23  Nick Drochak  <ndrochak@gol.com>
1918
1919         * String.cs (StartsWith): check argument and throw exception if needed
1920
1921 2002-04-22  Nick Drochak  <ndrochak@gol.com>
1922
1923         * String.cs (IndexOfAny): check arguments and throw exceptions as
1924         neccessary.  ALso remove some debug WriteLines.
1925
1926 2002-04-20  Dietmar Maurer  <dietmar@ximian.com>
1927
1928         * String.cs: use internal constructors
1929         buf fix in Concat.
1930
1931 Thu Apr 18 17:16:15 CEST 2002 Paolo Molaro <lupus@ximian.com>
1932
1933         * MonoType.cs: make GetElementType its own icall.
1934
1935 2002-04-18  Nick Drochak <ndrochak@gol.com>
1936
1937         * String.cs: Modified file. Re-add methods needed by the unit tests.
1938
1939 Thu Apr 18 12:38:32 CEST 2002 Paolo Molaro <lupus@ximian.com>
1940
1941         * String.cs: some code speedups and restored GetTypeCode().
1942
1943 2002-04-17      Patrik Torstensson <patrik.torstensson@labs2.com>
1944
1945         * String.cs: New implementation using internal calls.
1946         
1947 2002-04-16  Nick Drochak  <ndrochak@gol.com>
1948
1949         * DecimalFormatter.cs: Trim off excess null characters from the string
1950         that decimal2string gives back.
1951
1952 2002-04-16  Nick Drochak  <ndrochak@gol.com>
1953
1954         * String.cs (SubString): revert my change.  I can't reproduce the
1955         problem anymore.
1956
1957 2002-04-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1958
1959         * Attribute.cs: added GetHashCode and Equals.
1960
1961 2002-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1962
1963         * Enum.cs: little improvements to Format ().
1964
1965 Thu Apr 11 12:28:13 CEST 2002 Paolo Molaro <lupus@ximian.com>
1966
1967         * String.cs: internalcall GetHashCode().
1968         * Array.cS: optimize access to elements.
1969
1970 Wed Apr 10 21:20:19 CEST 2002 Paolo Molaro <lupus@ximian.com>
1971
1972         * String.cs: make IndexOfAny() use an internalcall.
1973
1974 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1975
1976         * Int32.cs:
1977         * UInt32.cs:
1978         * Int64.cs: 
1979         * UInt64.cs: fixed error when testing for validity of flags.
1980
1981 2002-04-11  Nick Drochak  <ndrochak@gol.com>
1982
1983         * Double.cs: Use an internal call for ToString(). This is just a simple
1984         implementation to get away from throwing a NotImplementedException.
1985
1986 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1987
1988         * Int32.cs:
1989         * UInt32.cs:
1990         * Int64.cs: 
1991         * UInt64.cs: changed Type.GetType () by typeof (), as suggested by
1992         lupus.
1993
1994         * Int32.cs:
1995         * Int64.cs: throw an OverFlowException when parsing a string 
1996         containing a dot followed by any non '0' number.
1997
1998 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1999
2000         * Byte.cs:
2001         * UInt16.cs:
2002         * UInt32.cs:
2003         * UInt64.cs: added complex Parse ().
2004
2005 2002-04-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2006
2007         * SByte.cs:
2008         * Int16.cs:
2009         * Int32.cs:
2010         * Int64.cs: added complex Parse ().
2011
2012 2002-04-09  Nick Drochak  <ndrochak@gol.com>
2013
2014         * Array.cs (BinarySearch): Add checks on paramters before using them
2015         and throw exceptions as needed.
2016
2017         * Enum.cs (Format): Check if [Flags] is applied to enum and convert
2018         "G" format to "F" if so.
2019
2020 Tue Apr 9 13:12:09 CEST 2002 Paolo Molaro <lupus@ximian.com>
2021
2022         * MonoCustomAttrs.cs: return arrays of type Attribute[]
2023         instead of object[].
2024
2025 2002/04/09  Nick Drochak <ndrochak@gol.com>
2026
2027         * String.cs (Substring): Copy only non-null characters to the new
2028         string.
2029
2030 2002-04-09  Nick Drochak  <ndrochak@gol.com>
2031
2032         * IntegerFormatter.cs: Don't use a format character to indicate a
2033         custom format was passed in. It was using 'z' to indicate a custom
2034         format, but really it should throw a format exception if the user
2035         tries to use "z" as the format string. Now it does.
2036
2037         * Activator.cs: New File.
2038
2039 2002-04-08  Nick Drochak  <ndrochak@gol.com>
2040
2041         * Enum.cs (ToString): Big ugly fix for the case where [Flags] is
2042         applied to an enum. Need to handle the different possible integer
2043         types of an enum somehow.  Can anyone say generics?
2044
2045 Mon Apr  8 06:22:42  2002 Piers Haken <piersh@friskit.com>
2046
2047         * Convert.cs: switched the To*(object) methods to use
2048         IConvertible directly instead of calling ChangeType
2049
2050 Sat Apr 6 20:08:41 CEST 2002 Paolo Molaro <lupus@ximian.com>
2051
2052         * ValueType.cs: make Equals() an internalcall.
2053
2054 Fri Apr 5 15:38:54 CEST 2002 Paolo Molaro <lupus@ximian.com>
2055
2056         * Type.cs: also look for nested types in FindMembers.
2057         * MonoType.cs: make GetNestedTypes() an internalcall.
2058
2059 2002-04-05  Nick Drochak  <ndrochak@gol.com>
2060
2061         * Enum.cs (Parse): Handle different underlying types.
2062
2063 2002/04/04 Nick Drochak <ndrochak@gol.com>
2064
2065         * Enum.cs (IsDefined): Throw exception when type of value to look for
2066         is not the correct one.  Attempt to have it work with string values
2067         too, but not sure if the unit tests are getting that far yet.
2068
2069 2002-04-04  Nick Drochak  <ndrochak@gol.com>
2070
2071         * Decimal.cs: Fix a couple of typos.
2072
2073 Wed Apr 3 19:46:00 CEST 2002 Paolo Molaro <lupus@ximian.com>
2074
2075         * Enum.cs: the values array is of the enum and not of the underlying
2076         type. Updates and some bug fixes.
2077         * MonoType.cs: make the internalcall return FullName instead of the
2078         assembly qualified name.
2079         * Type.cs: make ToString () simply return FullName.
2080
2081 2002-04-03  Nick Drochak  <ndrochak@gol.com>
2082
2083         * Type.cs (GetTypeCode): provide some of the implementation for this
2084         method.  It's still too simplistic to be considered complete.
2085
2086 2002-04-02  Dietmar Maurer  <dietmar@ximian.com>
2087
2088         * Object.cs: fixed FieldGetter/FieldSetter signature
2089
2090 2002-04-02  Nick Drochak  <ndrochak@gol.com>
2091
2092         * Environment.cs: add MonoTODO's on parts that should have it.
2093
2094 2002-04-01  Nick Drochak  <ndrochak@gol.com>
2095
2096         * Enum.cs: added reality checks (check parameters to most methods that
2097         need them).
2098
2099 2002-03-30  Dietmar Maurer  <dietmar@ximian.com>
2100
2101         * Object.cs: added FieldGetter/FieldSetter
2102
2103 2002-03-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2104
2105         * IntegerFormatter.cs: fixed initialization error in static
2106         constructor.
2107
2108 2002-03-28  Dietmar Maurer  <dietmar@ximian.com>
2109
2110         * Delegate.cs: added new field to store a trampoline function
2111
2112 2002-03-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2113
2114         * IntegerFormatter.cs: added workaround for bug #22668. First patch to
2115         make custom format strings work (not fully functional yet).
2116
2117 2002/03/28  Nick Drochak <ndrochak@gol.com>
2118
2119         * IntegerFormatter.cs: Change class from internal to public.  Add
2120         necessary [CLSCompliant(false)] attributes.
2121
2122 2002-03-27  Duco Fijma  <duco@lorentz.xs4all.nl>
2123         * _AppDomain.cs, AppDomain.cs: renamed method GetDate to GetData
2124         (was a typo)
2125
2126 2002-03-28  Nick Drochak  <ndrochak@gol.com>
2127
2128         * Type.cs: Added MonoTODO tags on members that have FIXME, etc.
2129
2130 2002-03-27  Dan Lewis  <dihlewis@yahoo.co.uk>
2131
2132         * Console.cs: Modified to get std handles from MonoIO.
2133         * Environment.cs: removed PAL dependencies.
2134
2135 2002-03-25  Miguel de Icaza  <miguel@ximian.com>
2136
2137         * String.cs (System): Removed internal enumeration, because
2138         bootstrapping the corlib at this point does not support
2139         enumerations. 
2140
2141         * IntPtr.cs: Temporary work-around until I fix the assembly
2142         attributes bug.
2143
2144 2002-03-24  Martin Baulig  <martin@gnome.org>
2145
2146         * Enum.cs (GetValues): According to the docu this is sorted after
2147         values, not names.
2148
2149         * String.cs (System): Removed enumeration, because it is pretty
2150         hard to support enumerations in /nostdlib mode for the core types.
2151
2152 Tue Mar 19 18:18:49 CET 2002 Paolo Molaro <lupus@ximian.com>
2153
2154         * Array.cs: move error handling in the catch block.
2155         * MulticastDelegate.cs: remove == and != operators that were
2156         removed with the delegate changes (when you add stuff, please do not
2157         remove existing functionality!).
2158         * Type.cs: if a property is not found in a type, search for it
2159         in the parent types, too.
2160
2161 2002-03-18  Dan Lewis <dihlewis@yahoo.co.uk>
2162         
2163         * Math.cs: changed to use icall instead of PAL.
2164
2165 2002-03-18  Dietmar Maurer  <dietmar@ximian.com>
2166
2167         * Double.cs: added check for NaN (Bug [22082])
2168
2169 2002-03-19  Nick Drochak  <ndrochak@gol.com>
2170
2171         * Enum.cs (Equals): check for null and throw if it is.
2172         * Enum.cs (Format): check for null parameters and throw if necessary.
2173         This method still needs more argument checking.
2174
2175 2002-03-18  Dietmar Maurer  <dietmar@ximian.com>
2176
2177         * Enum.cs (Equals): check if Enums are of the same type
2178
2179 2002-03-18  Nick Drochak  <ndrochak@gol.com>
2180
2181         * Double.cs: Explicitly handle comparisons in CompareTo() for
2182         Positive/Negative Infinity and NaN. Unit Test now passes on Linux.
2183
2184         * Enum.cs(CompareTo): Check types of values before trying to compare.
2185         Throw exceptions if types are invalid or don't match.
2186
2187 2002-03-14  Miguel de Icaza  <miguel@ximian.com>
2188
2189         * Array.cs: Add some extra debugging information.
2190
2191 2002-03-15  Nick Drochak  <ndrochak@gol.com>
2192
2193         * Array.cs: Added IList and IEnumerable. 
2194
2195 2002-03-14  Miguel de Icaza  <miguel@ximian.com>
2196
2197         * UInt64.cs, UInt32.cs, UInt16.cs: Mark public parse methods as
2198         NonCLSCompliant. 
2199
2200 2002-03-14  Dietmar Maurer  <dietmar@ximian.com>
2201
2202         * Delegate.cs (Equals): also compare method_ptr 
2203         (GetHashCode): returm method_ptr as hash
2204
2205 2002-03-13  Duco Fijma  <duco@lorentz.xs4all.n>
2206         * TimeSpan.cs: removed the use of Custom Numeric Format Strings,
2207         such as 42.ToString("0000000"), as these are (currently) not implemented
2208         in System.IntegerFormatter. TimeSpan luckely can do with Standard
2209         Numeric Format Strings, such as 42.ToString("D7").
2210
2211 2002-03-12  Duncan Mak  <duncan@ximian.com>
2212
2213         * FieldAccessException.cs: 
2214         * MethodAccessException.cs: 
2215         * PlatformNotSupportedException.cs: Inherit from
2216         MemberAccessException, not SystemException.
2217
2218         * ObsoleteAttribute.cs: Made Message and IsError properties
2219         instead of fields.
2220
2221 Tue Mar 12 19:21:18 CET 2002 Paolo Molaro <lupus@ximian.com>
2222
2223         * GC.cs: make SuppressFinalize() a nop.
2224         * Delegate.cs: fix == operator.
2225
2226 2002-03-13  Nick Drochak  <ndrochak@gol.com>
2227
2228         * Enum.cs: Add IConvertible methods. Cyclic dependancy fixed in the
2229         runtime that goes with this patch.
2230
2231 2002-03-10  Martin Baulig  <martin@gnome.org>
2232
2233         * Int32.cs (Parse): Correctly parse negative numbers.
2234
2235 2002-03-08  Martin Baulig  <martin@gnome.org>
2236
2237         * String.cs (Split): Really fix it this time. Also adding several new
2238         testcase to the testsuite.       
2239
2240 2002-03-08  Martin Baulig  <martin@gnome.org>
2241
2242         * Array.cs (Copy): Optimized: removed duplicate null check, removed
2243         two duplicate GetLowerBound() calls and one duplicate IsValueType.
2244
2245 Fri Mar 8 18:49:19 CET 2002 Paolo Molaro <lupus@ximian.com>
2246
2247         * Object.cs: commit my hacked GetHashCode(): it's good enough for now.
2248         * String.cs: use the dumb code for IndexOf(string): this is worth
2249         15-20 % speedup in mcs compile with mint.
2250
2251 Fri Mar 8 12:45:44 CET 2002 Paolo Molaro <lupus@ximian.com>
2252
2253         * String.cs: revert change to Split() that broke the compiler (hi martin!:-).
2254
2255 2002-03-07  Martin Baulig  <martin@gnome.org>
2256
2257         * String.cs (Join): Throw an ArgumentNullException.
2258         (LastIndexOf (string,int,int)): This method does a backwards search,
2259         so startIndex points to the end of value, not to its beginning. Don't
2260         throw an exception if startIndex equals this.Length. Always return -1
2261         if startIndex is smaller than the length of value.
2262         (Replace (string,string)): Replace all occurences of oldValue.
2263         If newValue is null, all occurences of oldValue are to be removed.
2264         (Split (char[],int)): Return an empty array if maxCount is zero, throw
2265         an ArgumentOutOfRangeException if it's less than zero. Return maxValue
2266         elements, not maxValue+1.
2267
2268 Thu Mar 7 17:16:06 CET 2002 Paolo Molaro <lupus@ximian.com>
2269
2270         * MonoType.cs: make GetEvents() an internal call.
2271         * MulticastDelegate.cs: copy the passed in array.
2272
2273 2002-03-06  Martin Baulig  <martin@gnome.org>
2274
2275         * Array.cs (Copy): Use FastCopy when appropriate and do correct
2276         exception handling.
2277
2278 2002-03-06  Duco Fijma  <duco@lorentz.xs4all.nl>
2279         * CharEnumerator.cs: fixes to CharEnumertor.MoveNext, fixing 
2280         some of the failures found be new tests (see ChangeLog in 
2281         Test/System). Comments added to this method, based on
2282         the representation invariant of this class, that (try to) explain
2283         why it now should be correct.
2284
2285 2002-03-06  Dietmar Maurer  <dietmar@ximian.com>
2286
2287         * Int64.cs (Parse): bug fix for max. negative value. 
2288
2289 2002-03-07  Nick Drochak  <ndrochak@gol.com>
2290
2291         * RuntimeTypeHandle.cs: Add Serializable attribute as the docs say.
2292         I need to understand what the difference between the attribute and
2293         the interface is.
2294
2295 2002-03-06  Martin Baulig  <martin@gnome.org>
2296
2297         * Array.cs (Copy): Always throw an ArrayTypeMismatchException, not
2298         an InvalidCastException if the widening conversion failed. See
2299         testcases #M94-#M96.
2300
2301         * Array.cs (CopyTo): Bug fix from Ajay Dwivedi, correctly handle
2302         arrays with non-zero lower bounds. Also adding testcases #F10-#F13
2303         for this.
2304
2305         * Array.cs (CopyTo): Reverted my last change, it was incorrect.
2306         (Copy): Actually allow copying multi-dimensional arrays.
2307
2308 2002-03-05  Duncan Mak  <duncan@ximian.com>
2309
2310         * Convert.cs:
2311         (DBNull) Added the missing field.
2312         (IsDBNull) Fixed typo.
2313         (ToByte (string, int)) Implemented.
2314         (ToString (byte, int)) Implemented.
2315         (ConvertToBase)
2316         (BuildConvertedString) internal functions used for converting values to
2317         a specific base.
2318
2319         * Int16.cs: 
2320         * Int32.cs:
2321         * Int64.cs:
2322         * Single.cs:
2323         * UInt16.cs: 
2324         * UInt32.cs: Implemented the IConvertible interface.    
2325
2326         * CharEnumerator.cs: Renamed to variables to be clearer and
2327         changed some of the tests to conform to the 1.0 spec.
2328
2329 2002-03-06  Martin Baulig  <martin@gnome.org>
2330
2331         * Array.cs (Copy): Calculate absolute array position here and use
2332         GetValueImpl() and SetValueImpl() with that position. We can now
2333         copy multi-dimensional arrays.
2334         (CopyTo): Small bug fix.
2335
2336 2002-03-05  Duco Fijma  <duco@lorentz.xs4all.nl>
2337
2338         * Version.cs: CompareTo changed according the LAMESPEC discovered by 
2339         Nick (See VersionTest.cs).
2340         * CharEnumerator.cs: fixed two bugs in MoveNext. It had an off-by-one
2341         error comparing the current position (idx) against the length of the
2342         string iterated and it set idx to an unrecognized special value (-2)
2343
2344 Tue Mar 5 17:34:14 CET 2002 Paolo Molaro <lupus@ximian.com>
2345
2346         * SByte.cs, UInt64.cs: implement IConvertible interface. Nobody wants
2347         to do this dirty work, but someone has to do it (and I need it to pass
2348         the "200 sample tests compiled on linux" mark).
2349
2350 2002-03-06  Nick Drochak  <ndrochak@gol.com>
2351
2352         * Attribute.cs
2353         * DecimalFormatter.cs
2354         * Delegate.cs
2355         * Double.cs
2356         * GC.cs
2357         * Int16.cs
2358         * Int32.cs
2359         * MonoType.cs
2360         * RuntimeMethodHandle.cs
2361         * RuntimeTypeHandle.cs
2362         * String.cs
2363         * Type.cs:
2364                 Add [MonoTODO]'s to places where we currently throw a
2365                 NotImplementedException.
2366
2367 2002-03-05  Dietmar Maurer  <dietmar@ximian.com>
2368
2369         * Int16.cs (Parse): do not overflow on max negative value
2370
2371         * Int32.cs (Parse): do not overflow on max negative value
2372
2373 Mon Mar 4 20:36:05 CET 2002 Paolo Molaro <lupus@ximian.com>
2374
2375         * Type.cs: fixed IsClass.
2376         * MonoType.cs: fixed MemberType, IsPrimitiveImpl, IsPointerImpl,
2377         IsByRefImpl. Added GetInterfaces().
2378         * IServiceProvider.cs: compilation fix.
2379
2380 Mon Mar 4 18:37:03 CET 2002 Paolo Molaro <lupus@ximian.com>
2381
2382         * Array.cs: allow copying an empty array to an empty array.
2383
2384 Mon Mar 4 17:59:16 CET 2002 Paolo Molaro <lupus@ximian.com>
2385
2386         * String.cs: fixed LastIndexOf (string) to do a bit of argument
2387         checking.
2388
2389 2002-03-04  Duco Fijma  <duco@lorentz.xs4all.nl>
2390         * Version.cs: many fixes to failures found by the newly created
2391         test cases for this class. Specifically, the CompareTo member
2392         returned wrong values due to the use of Int32.MaxValue as a special
2393         value indicating an "undefined" version component. Also implemented the
2394         missing operators (==, <, >, etc.), one missing constructor and
2395         and some exception throwing.
2396
2397 2002-03-04  Nick Drochak  <ndrochak@gol.com>
2398
2399         * IServiceProvider.cs: Add missing attribute: ComVisible(false)
2400         * Attribute.cs: Add missing attributes: Serializable and
2401         AttributeUsage(AttributeTargets.All)
2402
2403 Mon Mar 4 11:26:49 CET 2002 Paolo Molaro <lupus@ximian.com>
2404
2405         * MonoType.cs: implemented GetConstructors(), GetFields(),
2406         GetMethods(), GetProperties().
2407         * Object.cs: added debugging icall obj_address().
2408         * Type.cs: fixed the binding flags for some Get* methods.
2409         Implemented FindMembers() as calls to the specific GetMember
2410         methods.
2411
2412 2002-03-01  Duco Fijma  <duco@lorentz.xs4all.nl>
2413         * BitConverter.cs: fixed one little bug: ToString(s, n, 0) 
2414         should give an exception for n>=s.Length.
2415
2416 2002-03-01  Martin Baulig  <martin@gnome.org>
2417
2418         * Array.cs: More argument checking and bug fixing.
2419
2420 2002-03-01  Miguel de Icaza  <miguel@ximian.com>
2421
2422         * BitConverter.cs: Indentation match
2423
2424         * AppDomain.cs: Added MonoTODOs to this too.
2425
2426         * Buffer.cs: Added MonoTODOs to this.
2427
2428 2002-03-01  Martin Baulig  <martin@gnome.org>
2429
2430         * Array.cs: Added argument checking to all methods where it was missing.
2431
2432 2002-03-01  Duco Fijma  <duco@lorentz.xs4all.nl>
2433
2434         * BitConverter.cs: Fixed bugs in ToString methods
2435
2436 Fri Mar 1 15:20:00 CET 2002 Paolo Molaro <lupus@ximian.com>
2437
2438         * MulticastDelegate.cs: implement operators so mcs3 can be used on linux.
2439
2440 2002-03-01  Nick Drochak  <ndrochak@gol.com>
2441
2442         * BitConverter.cs: Throw ArgumentException like mscorlib, instead of
2443         ArgumentOutOfRangeException like the docs say.
2444
2445 2002-03-01  Martin Baulig  <martin@gnome.org>
2446
2447         * Enum.cs (CompareTo): Correctly override this method from IComparable.
2448
2449         * Console.cs (setIn, setOut, setError): It's called SetIn, SetOut, SetError.
2450
2451 2002-02-28  Martin Baulig  <martin@gnome.org>
2452
2453         * String.cs: This file now passes the testsuite on Linux :-)
2454         
2455         * String.cs (Intern, IsInterned): The interncalls are now called _Intern and _IsInterned;
2456         make them private and provide C# wrappers which do proper argument checking.
2457
2458         * String.cs (Format): Correctly handle escaped brackets.
2459
2460         * String.cs (_CompareChar): New internal function which compares two chars.
2461         (_Compare): Provide an internal compare method which can do all sorts of
2462         comparision and call it from all the Compare() methods. Also fixed a lot of
2463         bugs here, this code now actually passes the testsuite.
2464
2465 2002-02-28  Duncan Mak  <duncan@ximian.com>
2466
2467         * Convert.cs: Added the missing methods. The new class status page
2468         kicks ass, it even found my typos! Woohoo!
2469         (ConvertFromBase): Moved the Exception throwing in here and
2470         removed the other occurances so it's all centralized now.
2471         (ISDBNull): Implemented.
2472         (GetTypeCode): Implemented.
2473
2474 2002-02-27  Duco Fijma  <duco@lorentz.xs4all.nl>
2475         * Guid.cs: Guid.ToString("") and Guid.ToString(null) is now understood as Guid.ToString("D") 
2476         just as in mscorlib. There is (probably) a documentation bug in the MS FrameWork SDK, which
2477         states that a lacking format should be interpreted as "N".  
2478         Also added [Serializable] attribute
2479         * TimeSpan.cs: some formatting and added the [Serializable] attribute
2480
2481 2002-02-26  Duncan Mak  <duncan@ximian.com>
2482
2483         * WeakReference.cs: Committed for Ajay Kumar Dwivedi.   
2484
2485 2002-02-26  Martin Baulig  <martin@gnome.org>
2486
2487         * TimeZone.cs: Use an internal enum rather than magic numbers to access the
2488         fields of the interncall GetTimeZoneData.
2489
2490         * DateTime.cs: Implemented Parse and fixed a few bugs.
2491
2492         * String.cs (TrimStart): Small fix.
2493
2494 2002-02-26  Martin Baulig  <martin@gnome.org>
2495
2496         * DateTime.cs: ParseExact is now fully functional.
2497
2498         * String.cs (TrimEnd): Small fix.
2499
2500 2002-02-26  Duco Fijma <duco@lorentz.xs4all.nl>
2501         * TimeSpan.cs: Added method TimeSpan.FromMilliseconds, mysteriously 
2502         missing for about six months.
2503
2504 Tue Feb 26 14:21:19 CET 2002 Paolo Molaro <lupus@ximian.com>
2505
2506         * UInt64.cs: fixed Parse method () to handle some of the NumberStyle flags.
2507
2508 2002-02-26  Martin Baulig  <martin@gnome.org>
2509
2510         * DateTime.cs: Miguel already committed this, but there was still a
2511         ChangeLog entry for this missing ....
2512         We're now reusing functionality from TimeSpan, printing dates is
2513         fully implemented, currently working on parsing.
2514
2515         * TimeZone.cs: Fully implemented this. There's a new InternCall in the
2516         runtime for this.
2517
2518 Fri Feb 22 18:47:08 CET 2002 Paolo Molaro <lupus@ximian.com>
2519
2520         * MonoType.cs: disable constructor.
2521         * Object.cs: make GetType() an internalcall.
2522         * Type.cs: added correct bindingflags to GetMethods ().
2523         All such calls should be reviewed to use the correct flags.
2524
2525 Thu Feb 21 19:23:46 CET 2002 Paolo Molaro <lupus@ximian.com>
2526
2527         * Type.cs, MonoType.cs: type_is_subtype_of () changed to include extra
2528         argument.
2529
2530 Thu Feb 21 16:56:51 CET 2002 Paolo Molaro <lupus@ximian.com>
2531
2532         * Type.cs: implemented IsAssignableFrom.
2533
2534 2002-02-21  Duco Fijma <duco@lorentz.xs4all.nl>
2535         * Guid.cs: fixed Guid.Guid(string) ctor. Changed format:
2536         "{0xdddddddd,0xdddd,0xdddd,{0xdd},{0xdd},{0xdd},{0xdd},{0xdd},{0xdd}}" 
2537         to "{0xdddddddd,0xdddd,0xdddd,{0xdd,0xdd,0xdd,0xdd,0xdd,0xdd}}" 
2538         The former is documented by Microsoft. The latter is how they
2539         actually implemented it in mscorlib:-)
2540
2541 Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>
2542
2543         * MonoCustomAttrs.cs: hooks to get the custom attributes from the
2544         runtime.
2545         * MonoType.cs: Implemented custom attributes methods.
2546
2547
2548 2002-02-21  Duco Fijma <duco@lorentz.xs4all.nl>
2549         * Guid.cs: 
2550
2551 Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>
2552
2553         * MonoCustomAttrs.cs: hooks to get the custom attributes from the
2554         runtime.
2555         * MonoType.cs: Implemented custom attributes methods.
2556
2557 2002-02-19  Dietmar Maurer  <dietmar@ximian.com>
2558
2559         * Array.cs (CopyTo): use GetLength() instead of GetUpperBound() 
2560
2561 2002-02-19  Duncan Mak  <duncan@ximian.com>
2562
2563         * Convert.cs: Finished up the missing methods in Convert. Added a
2564         new private method ConvertFromBase.
2565
2566 2002-02-19  Dietmar Maurer  <dietmar@ximian.com>
2567
2568         * String.cs: impl. IConvertible interface
2569
2570 2002-02-18  Duco Fijma <duco@lorentz.xs4all.nl>
2571         * Guid.cs: actual implementation for Guid.Guid(string) Ctor
2572
2573 2002-02-18  Duncan Mak  <duncan@ximian.com>
2574
2575         * Convert.cs: Changed from using Type.GetType (string) to just
2576         typeof (). Probably will speed things up a bit?         
2577
2578 2002-02-18  Ajay Kumar Dwivedi <AjayKumar.Dwivedi@dresdner-bank.com>
2579
2580         * Array.cs:         
2581         1. Fix for GetUpperBound to return correct values
2582         2. made some Properties virtual
2583         3. Adds IsFixedSize and IsReadOnly properties.
2584         4. changes CreateInstance(Type,int[],int[]) to throw Exception
2585         when third arg is null. InternalCall CreateInstance changed to  
2586         CreateInstanceImpl
2587         5. Fixed array.GetUpperBound at a couple of places
2588         6. IndexOf and LastIndexOf now use Object.Equals instead of "=="
2589         7. Added two FIXME's in BinarySearch functions.
2590
2591 2002-02-17  Duncan Mak  <duncan@ximian.com>
2592
2593         * TimeZone.cs:  Applied the rest of Ajay's patch for    
2594         IsDaylightSavingTime. Thanks a lot for the nice explanation of how
2595         it works!
2596
2597 2002-02-17  Duco Fijma  <duco@lorentz.xs4all.nl>
2598         * Guid.cs: added stub for Guid(string) ctor
2599
2600 2002-02-17  Duncan Mak  <duncan@ximian.com>
2601
2602         * Convert.cs: Near-complete implementation of Convert.cs
2603
2604         Added all the To* methods taking (object) and
2605         (object, IFormatProvider) as parameters.
2606
2607         Added [CLSCompliant (false)] attributes to methods dealing with
2608         unsigned types.
2609
2610         Added the missing section on converting to and from DateTime. Only
2611         6 missing methods, all marked with MonoTODOs. Will tackle them later.           
2612
2613 2002-02-16  Duncan Mak  <duncan@ximian.com>
2614
2615         * TimeZone.cs: patch from Ajay Kumar Dwivedi (adwiv@yahoo.com) to
2616         make IsDaylightSavingTime (DateTime) call 
2617         IsDaylightSavingTime (DateTime, DaylightTime).  
2618         
2619         Added internal class CurrentTimeZone from Ajay. It needs more work
2620         to fill in the appropriate internal calls.
2621         
2622 Sat Feb 16 12:41:41 CET 2002 Paolo Molaro <lupus@ximian.com>
2623
2624         * Type.cs: fix IsClass.
2625
2626 Sat Feb 16 12:02:02 CET 2002 Paolo Molaro <lupus@ximian.com>
2627
2628         * String.cs: fix Trim().
2629
2630 Fri Feb 15 21:02:46 CET 2002 Paolo Molaro <lupus@ximian.com>
2631
2632         * String.cs: fix more off by one errors.
2633
2634 Thu Feb 14 18:54:09 CET 2002 Paolo Molaro <lupus@ximian.com>
2635
2636         * MonoType.cs: fix IsValueTypeImpl.
2637         * Type.cs: fix IsEnum. Implement Equals methods.
2638
2639 Wed Feb 13 21:50:13 CET 2002 Paolo Molaro <lupus@ximian.com>
2640
2641         * Int32.cs: implement IConvertible interface.
2642         
2643 2002-02-12  Duncan Mak  <duncan@ximian.com>
2644
2645         * TimeZone.cs: Implemented and added to CVS.
2646
2647 2002-02-11  Duncan Mak  <duncan@ximian.com>
2648
2649         * Convert.cs: Implemented the ChangeType () methods.
2650
2651 Mon Feb 11 19:48:58 CET 2002 Paolo Molaro <lupus@ximian.com>
2652
2653         * Array.cs: make Clone() an internal call.
2654
2655 2002-02-09  Duco Fijma <duco@lorentz.xs4all.nl>
2656         * Changed Guid.NewGuid so that it can use both System.Random and 
2657           System.Security.Cryptography.RandomNumberGenerator
2658
2659 2002-02-09  Duco Fijma <duco@lorentz.xs4all.nl>
2660         * First version of Guid.NewGuid
2661
2662 2002-02-08  Duncan Mak  <duncan@ximian.com>
2663
2664         * RuntimeArgumentHandle.cs: Added to CVS.
2665
2666 Fri Feb 8 19:14:54 CET 2002 Paolo Molaro <lupus@ximian.com>
2667
2668         * CrossAppDomainDelegate.cs, AssemblyLoadEventHandler.cs,
2669         UnhandledExceptionEventHandler.cs: added delegates.
2670
2671 Fri Feb 8 18:06:20 CET 2002 Paolo Molaro <lupus@ximian.com>
2672
2673         * MarshalByRefObject.cs: add ToString () method
2674         (apparently needed by nunit).
2675         * _AppDomain.cs: uncomment ToString(): dietmar fixed the bug triggered
2676         by it in the runtime.
2677
2678 2002-02-08  Dan Lewis <dihlewis@yahoo.co.uk>
2679         
2680         * String.cs (Format): implemented
2681
2682 2002-02-07  Duncan Mak  <duncan@ximian.com>
2683         
2684         * DuplicateWaitObjectException:
2685         * InvalidCastException:
2686         * NotImplementedException:
2687         * NotSupportedException:
2688         * NullReferenceException:
2689         * OutOfMemoryException:
2690         * OverflowException:
2691         * RankException:
2692         * StackOverflowException.cs:
2693         * UnauthorizedAccessException: Added missing constructor used for serialization.
2694
2695 2002-02-07  Dietmar Maurer  <dietmar@ximian.com>
2696
2697         * String.cs (System.Compare): bug fix 
2698
2699 2002-02-06  Dietmar Maurer  <dietmar@ximian.com>
2700
2701         * Enum.cs (Parse,  GetHashCode): impl. 
2702
2703 2002-02-05  Duncan Mak  <duncan@ximian.com>
2704
2705         * DBNull.cs: This is my first crack at the DBNull class. I think I
2706         actually got most of the IConvertible methods right, but I haven't
2707         done the research to test whether or not this is the correct
2708         behavior. IConvertible.ToType () is the most iffy of all, IMHO.
2709
2710         * DllNotFoundException.cs: Inherits from TypeLoadException, not SystemException.
2711
2712 2002-02-05  Dietmar Maurer  <dietmar@ximian.com>
2713
2714         * Enum.cs: added more functionality (GetName, ToObject, Equals)
2715
2716 2002-01-31  Duncan Mak  <duncan@ximian.com>
2717
2718         * InvalidOperationException.cs:
2719         * NotFiniteNumberException.cs:
2720         * ObjectDisposedException.cs:
2721         * TypeInitializationException.cs: Added missing bits for serialization/
2722         
2723         * AppDomainUnloadedException.cs:
2724         * ApplicationException.cs:
2725         * ArgumentOutOfRangeException.cs:
2726         * ArithmeticException.cs:
2727         * ArrayTypeMismatchException:
2728         * BadImageFormatException.cs:
2729         * Exception.cs:
2730         * MissingMemberException.cs:
2731         * TypeLoadException.cs: Added missing bits for serialization.
2732
2733 2002-01-30  Duco Fijma <duco@lorentz.xs4all.nl>
2734         * Guid.cs: implemented everything but Guid.NewGuid
2735
2736 Tue Jan 29 22:32:36 CET 2002 Paolo Molaro <lupus@ximian.com>
2737
2738         * _AppDomain.cs: remove ToString() method: it doesn't seem right 
2739         to have it in this interface and it screws up the method vtable setup.
2740
2741 2002-01-28  Andrei Zmievski <andrei@php.net>
2742
2743         * Double.cs: implemented IConvertible interface.
2744
2745 2002-01-28  Miguel de Icaza  <miguel@ximian.com>
2746
2747         * ArgumentException.cs: Implement serialization constructor.
2748         (GetObjectData): Implement serializer.
2749         
2750         * ArgumentNullException.cs: Implement serialization constructor.
2751
2752         * Exception.cs: Implement serialization constructor.
2753         (GetObjectData): Implement serializer.
2754
2755 2002-01-23  Miguel de Icaza  <miguel@ximian.com>
2756
2757         * DateTime.cs (UnixEpoch): The Begining of the Unix epoch.
2758
2759 2002-01-23  Duncan Mak  <duncan@ximian.com>
2760
2761         * EntryPointNotFoundException.cs:
2762         * FormatException: Added missing constructor and related bits.
2763
2764         * TypeLoadException: Added missing constructor, methods and properties.
2765
2766 2002-01-23  Miguel de Icaza  <miguel@ximian.com>
2767
2768         * AppDomain.cs (GetAssemblies): Use foreach construct instead of
2769         manually getting the enumerator.
2770
2771         (AppDomain.AppDomain): Prime the loaded assemblies with the
2772         assemblies loaded by the runtime in our behalf.
2773
2774         * AppDomainSetup.cs: Remove private keyword, that is the default.
2775         Add a new property DisallowPublisherPolicy.
2776
2777         * AppDomain.cs (AppDomain.GetAssemblies): Implement.
2778
2779 Tue Jan 22 22:51:48 CET 2002 Paolo Molaro <lupus@ximian.com>
2780
2781         * MonoType.cs, Type.cs: many updates, corrected implementation,
2782         completed stubs.
2783
2784 2002-01-20  Andrei Zmievski <andrei@php.net>
2785
2786         * Byte.cs:
2787         * Char.cs: implemented IConvertible interface.
2788
2789         * Boolean.cs: use our own ToString() method directly.
2790
2791 2002-01-20  Duncan Mak  <duncan@ximian.com>
2792
2793         * Files I commited recently: Fixed indentation style.
2794
2795 2002-01-20 Nick Drochak  <ndrochak@gol.com>
2796
2797         * SerializableAttribute.cs: this attrib can be used on enums, structs, 
2798         and delegates too. Added the appropriate usage flags.
2799
2800 2002-01-18  Duncan Mak  <duncan@ximian.com>
2801
2802         * CharEnumerator.cs: Implemented.
2803         * String.cs (System): Fixed the GetEnumerator () method(s).
2804
2805         * ObsoleteAttribute.cs:
2806         * STAThreadAttribute.cs:
2807         * MTAThreadAttribute.cs:
2808         * ThreadStaticAttribute.cs:
2809         * LoaderOptimizationAttribute.cs:
2810         * PlatformNotSupportedException.cs:
2811         * LoaderOptimization.cs: Added to CVS.
2812
2813 2002-01-18  Duncan Mak  <duncan@ximian.com>
2814
2815         * AppDomainUnloadedException.cs:
2816         * MethodAccessException.cs:
2817         * ContextMarshalException.cs:
2818         * CannotUnloadAppDomainException.cs:
2819         * DllNotFoundException.cs:
2820         * EntryPointNotFoundException.cs:
2821         * FieldAccessException.cs:
2822         * TypeUnloadedException.cs:
2823         * MissingFieldException.cs: Added to CVS.
2824
2825         * ApplicationException.cs: 
2826         * MemberAccessException.cs:
2827         * MissingMemberException.cs
2828         * MissingMethodException.cs:
2829         * SystemException.cs: Added [Serializable] attribute.
2830
2831         * Exception.cs: Added [Serializable] attribute, made properties
2832         'Message', 'Source' and 'StackTrace' virtual methods, per 1.0
2833         spec.
2834
2835         * ContextStaticAttribute.cs: Added [Serializable] attribute and
2836         put in the missing constructor.
2837
2838         * Environment.cs: Commented out references to
2839         EnvironmentPermissionAttribute, because they're just stubbed out
2840         right now and has no implementation.
2841
2842 2002-01-16  Andrei Zmievski <andrei@php.net>
2843
2844         * Boolean.cs: implemented IConvertible interface
2845
2846 2002-01-15  Nick Drochak  <ndrochak@gol.com>
2847
2848         * ResolveEventArgs.cs: class should derive from EventArgs.
2849
2850 2002-01-14  Miguel de Icaza  <miguel@ximian.com>
2851
2852         * String.cs (System): Use DefaultMemberName for the String class.
2853
2854 Mon Jan 14 17:06:40 CET 2002 Paolo Molaro <lupus@ximian.com>
2855
2856         * String.cs: use IndexerName in index char accessor.
2857
2858 Thu Jan 10 21:05:23 CET 2002 Paolo Molaro <lupus@ximian.com>
2859
2860         * MonoType.cs: add rank to MonoTypeInfo and implement GetArrayRank.
2861         * String.c: eliminate 64k+ method calls in search.
2862         * Type.cs: handle byref and array types in ToString ().
2863
2864 2002-01-09  Duco Fijma <duco@lorentz.xs4all.nl>
2865
2866         * Guid.cs: created first version
2867
2868 2002-01-10  Dietmar Maurer  <dietmar@ximian.com>
2869
2870         * MonoType.cs: added missing TypeAttributes to MonoTypeInfo 
2871
2872 Wed Jan 9 19:35:07 CET 2002 Paolo Molaro <lupus@ximian.com>
2873
2874         * MulticastDelegate.cs: add == and != operator stubs.
2875         * String.cs: check for null in == operator.
2876         * Type.cs: use a virtual method to get TypeAttributes.
2877
2878 Tue Jan  8 23:30:19 EST 2002 Matt Kimball <matt@kimball.net>
2879         * String.cs: Fixed several off-by-one errors in LastIndexOf* methods
2880
2881 2002-01-09  Nick Drochak  <ndrochak@gol.com>
2882         
2883         * Environment.cs: Comment out Security attribute and put a MonoTODO
2884         there as a reminder.  We need mcs magic to handle security attributes in
2885         corlib.
2886
2887 2002-01-07  Duco Fijma <duco@lorentz.xs4all.nl>
2888         * Created IAppDomainSetup.cs
2889
2890 2002-01-06  Duco Fijma <duco@lorentz.xs4all.nl>
2891         * Created System._AppDomain interface in _AppDomain.cs
2892
2893 2002-01-06  Nick Drochak  <ndrochak@gol.com>
2894
2895         * ResolveEventArgs.cs: New File, completely implemented! ;)
2896
2897 Sat Jan 5 15:53:50 CET 2002 Paolo Molaro <lupus@ximian.com>
2898
2899         * Enum.cs: dummy ToString impl.
2900         * String.cs: dummy format implementations to get compiler errors
2901         somewhat working.
2902         * Type.cs: implemented filter delegates. FindMembers runs the filter, now.
2903
2904 2002-01-05  Ravi Pratap  <ravi@ximian.com>
2905
2906         * TODOAttribute.cs : Augment some more; provide two constructors
2907         with support for a comment too.
2908
2909 2002-01-05  Nick Drochak  <ndrochak@gol.com>
2910
2911         * Uncommented those MonoTODO's now that Ravi's got
2912         the class in there
2913
2914 2001-01-04  Ravi Pratap  <ravi@ximian.com>
2915
2916         * TODOAttribute.cs : Actually add this time ;-)
2917
2918         Change name to MonoTODO.
2919
2920 2002-01-04  Jeffrey Stedfast  <fejj@ximian.com>
2921
2922         * String.cs (Trim): Fixed a few logic bugs in the code that
2923         calculated how much to trim off the end of the string.
2924
2925 2001-01-04  Nick Drochak  <ndrochak@gol.com>
2926         
2927         * Commented out the [TODO] attributes for now.  We don't have the
2928         class written.  Also changed it to [MonoTODO]
2929
2930 2002-01-04  Ravi Pratap  <ravi@ximian.com>
2931
2932         * TODOAttribute.cs : Add. We use this attribute to tag all bits in
2933         our class libraries that are incomplete.
2934
2935         * Array.cs : Apply attribute wherever we find a FIXME which says
2936         we need something to be implemented there.
2937
2938         * Int32.cs : Ditto.
2939
2940         * MulticastDelegate.cs : Ditto.
2941
2942         * RuntimeFieldHandler.cs, RuntimeMethodHandle.cs,
2943         RuntimeTypeHandle.cs : Ditto.
2944
2945         * String.cs : Ditto.
2946
2947         * Type.cs : Ditto.
2948
2949         * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs, Delegate.cs : Ditto.
2950
2951         * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs, Single.cs, 
2952         UInt16.cs, UInt32.cs, ValueType.cs: Ditto.
2953
2954         * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs,
2955         Delegate.cs : Ditto.
2956
2957         * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs,
2958         Single.cs, UInt16.cs, UInt32.cs, ValueType.cs: Ditto.
2959         
2960 Thu Jan 3 23:24:04 CET 2002 Paolo Molaro <lupus@ximian.com>
2961
2962         * Delegate.cs: add Remove() stub.
2963         * Enum.cs: add ToObject().
2964         * Type.cs: add IsEnum property.
2965
2966 2002-01-03  Kristian Rietveld  <kris@gtk.org>
2967
2968         * Convert.cs: add non-CLS-compliant ToBoolean methods for char,
2969         DateTime and object.
2970
2971 2001-12-30  Nick Drochak  <ndrochak@gol.com>
2972
2973         * Byte.cs (Parse): Add comments to aid in testing.
2974
2975 2001-12-21  Miguel de Icaza  <miguel@ximian.com>
2976
2977         * Char.cs (Parse): Implement.
2978
2979         * Byte.cs (Parse): Implement a fast parser.
2980         
2981         * SByte.cs (Parse): Implement a fast parser.
2982
2983         * UInt16.cs (Parse): Implement a fast parser.
2984         
2985         * Int16.cs (Parse): Implement a fast parser.
2986
2987         * UInt32.cs (Parse): Implement a fast parser.
2988
2989         * Int32.cs (Parse): Implement a fast parser.
2990
2991 Fri Dec 21 15:14:52 CET 2001 Paolo Molaro <lupus@ximian.com>
2992
2993         * Array.cs: fix null ref in sort code.
2994         * UInt64.cs: add bare-bones parse.
2995
2996 Thu Dec 20 15:29:52 CET 2001 Paolo Molaro <lupus@ximian.com>
2997         
2998         * Byte.cs: removed use of Regexes.
2999
3000 Tue Dec 18 18:39:54 CET 2001 Paolo Molaro <lupus@ximian.com>
3001
3002         * Enum.cs: implemented GetValues(), GetNames(), GetName(),
3003         IsDefined(), GetUnderlyingType().
3004         * String.cs: fix one instance of Compare().
3005         * Type.cs: implemented GetProperties(), GetProperty().
3006
3007 Thu Dec 13 20:10:57 CET 2001 Paolo Molaro <lupus@ximian.com>
3008
3009         * Array.cs: implement CopyTo ().
3010         * Char.cs: implement ToString ().
3011         * Exception.cs: bugfix.
3012         * Int32.cs: bare-bones Parse ().
3013         * MonoType.cs: query the needed info with an internalcall.
3014         * String.cs: speedups, bugfixes, reduced copies.
3015         * Type.cs: added missing fields. Implemented many of the Is*
3016         properties. Implemented GetMethod(), GetConstructor(), GetMethods(),
3017         GetFields(), FindMembers(), ToString().
3018         
3019 2001-12-11  Dick Porter  <dick@ximian.com>
3020
3021         * DateTime.cs: Implemented FromFileTime() and ToFileTime()
3022
3023         * Console.cs: Use handles rather than casting file descriptors
3024
3025 2001-12-08  Nick Drochak  <ndrochak@gol.com>
3026
3027         * Byte.cs (Parse): Start implementation. Parse(string) works, but
3028         now we need to handle other formats
3029
3030 2001-12-06  Dietmar Maurer  <dietmar@ximian.com>
3031
3032         * DateTime.cs: added an icall to GetNow()
3033
3034 2001-12-04  Dietmar Maurer  <dietmar@ximian.com>
3035
3036         * Double.cs: added the parse method from Bob Smith
3037
3038 2001-11-28  Miguel de Icaza  <miguel@ximian.com>
3039
3040         * UInt64.cs: ditto.
3041
3042         * UInt32.cs: ditto.
3043
3044         * Int32.cs (Int32.CompareTo): Fix because we can not just
3045         substract the values.
3046
3047         Return possitive value if the object is null.
3048
3049         * Boolean.cs: (Boolean.CompareTo): ditto.
3050
3051         * Int16.cs (Int16.CompareTo): ditto.
3052
3053         * Byte.cs (Byte.CompareTo): ditto.
3054
3055         * SByte.cs (SByte.CompareTo): ditto.
3056
3057         * Char.cs (Char.CompareTo): ditto.
3058         
3059         * Decimal.cs (Decimal.CompareTo): ditto.
3060
3061         * Int64.cs (Int64.CompareTo): ditto.
3062
3063         * Single.cs: Ditto.
3064
3065         * UInt16.cs: Ditto.
3066
3067 2001-11-28  Nick Drochak <ndrochak@gol.com>
3068
3069         * Byte.cs: Throw NotImplementedException for Parse.
3070
3071 2001-11-27  Derek Holden  <dholden@draper.com>
3072
3073         * IntegerFormatter.cs: Formatting of type "Number" was not
3074         using NumberFormatInfo.NumberNegativePattern.
3075
3076 2001-11-26  Dick Porter  <dick@ximian.com>
3077
3078         * LocalDataStoreSlot.cs: No need to delete a system TLS slot in
3079         the finalise routine any more
3080
3081 2001-11-21  Miguel de Icaza  <miguel@ximian.com>
3082
3083         * ApplicationException.cs: internationalize by adding calls to
3084         Locale.GetText ().  And throw NotImplementedExceptions on calls
3085         that we have to implement.
3086
3087         * Version.cs: Ditto.
3088
3089         * ValueType.cs: ditto.
3090
3091         * UnauthorizedAccessException.cs: ditto.
3092
3093         * UInt32.cs: ditto.
3094
3095         * UInt64.cs: ditto.
3096
3097         * UInt16.cs: ditto.
3098
3099         * TypeLoadException.cs: ditto
3100
3101         * TypeInitializationException.cs: ditto.
3102
3103         * Type.cs: ditto.
3104
3105         * TimeSpan.cs: ditto.
3106
3107         * SystemException.cs: ditto.
3108
3109         * String.cs: ditto.
3110
3111         * StackOverflowException.cs: ditto.x
3112
3113         * Single.cs: ditto.
3114
3115         * SByte.cs: ditto.
3116
3117         * RuntimeTypeHandle.cs: ditto.
3118
3119         * RuntimeMethodHandle.cs: ditto.
3120
3121         * RuntimeFieldHandle.cs: ditto.
3122
3123         * Random.cs: ditto.
3124
3125         * OutOfMemoryException.cs: ditto.
3126
3127         * OperatingSystem.cs: ditto.
3128
3129         * ObjectDisposedException.cs: ditto.
3130
3131         * NullReferenceException.cs: ditto.
3132
3133         * NotImplementedException.cs: ditto.
3134
3135         * NotFiniteNumberException.cs: ditto.o
3136
3137         * MulticastNotSupportedException.cs: ditto.
3138
3139         * MissingMethodException.cs: ditto.
3140
3141         * MemberAccessException.cs: ditto.
3142
3143         * Math.cs: ditto.
3144
3145         * InvalidCastException.cs: ditto.
3146
3147         * IntegerFormatter.cs: ditto.
3148
3149         * Int32.cs: ditto.
3150
3151         * Int16.cs: ditto.
3152
3153         * IndexOutOfRangeException.cs: ditto.
3154
3155         * Environment.cs: ditto
3156
3157         * Enum.cs: ditto.
3158
3159         * DuplicateWaitObjectException.cs: ditto.
3160
3161         * DivideByZeroException.cs: ditto.
3162
3163         * Delegate.cs: ditto
3164
3165         * DecimalFormatter.cs: ditto.
3166
3167         * Decimal.cs: ditto.
3168
3169         * DateTime.cs: ditto.
3170
3171         * Convert.cs: ditto.
3172
3173         * Char.cs: ditto.
3174
3175         * Byte.cs: ditto.
3176
3177         * Boolean.cs: ditto.
3178
3179         * ArrayTypeMismatchException.cs: ditto.
3180
3181         * ArithmeticException.cs: ditto.
3182
3183         * ArgumentOutOfRangeException.cs: ditto.
3184
3185         * ArgumentNullException.cs: ditto.
3186
3187         * Enum.cs: Make it derive from ValueType, add CompareTo method.
3188
3189         * Attribute.cs: Reformat.
3190
3191 2001-11-14  Miguel de Icaza  <miguel@ximian.com>
3192
3193         * Decimal.cs, Double.cs, Byte.cs, Char.cs, Int16, UInt16, Int32,
3194         UInt32, Int64, UInt64, SByte, Single (CompareTo): Throw the
3195         exception if the value is null too.
3196
3197         * Char.cs (CompareTo): ditto.
3198
3199         * ApplicationException.cs: Added constructor that does serialization.
3200
3201         * ParamArrayAttribute.cs: Define attribute correctly.
3202
3203 Wed Nov 14 16:31:19 CET 2001 Paolo Molaro <lupus@ximian.com>
3204
3205         * AppDomain.cs: rename dummy interface _AppDomain to AppDomain_Intf.
3206         * Array.cs: fix Array.Copy.
3207         * AssemblyLoadEventArgs.cs: rename field.
3208         * CLSCompliantAttribute.cs: use correct name for the class.
3209         * Char.cs: fix IsLetter.
3210         * Console.cs, DateTime.cs, Decimal.cs, IConvertible.cs, Math.cs,
3211         SByte.cs, UInt16.cs, UInt32.cs, UInt64.cs, UIntPtr.cs: CLSCompliant updates.
3212         * Convert.cs: CLSCompliant updates, add ChangeType() methods.
3213         * Delegate.cs: renamed target field to m_target.
3214         * Enum.cs: added missing methods.
3215         * MonoType.cs: add a constructor and some needed properties.
3216         * Object.cs: implement GetType().
3217         * String.cs: CLSCompliant updates. Fixes everywhere to remove the
3218         ending 0 char.
3219         * Type.cs: add missing methods/properties.
3220
3221 2001-11-10  Sean MacIsaac  <macisaac@ximian.com>
3222
3223         * AttributeUseage.cs: Should define AttributeUsageAttribute.
3224
3225         * CLSCompliant.cs: Marked with AttributeUsage attribute.
3226
3227         * Decimal.cs: Fixed CLSCompliant attributes.
3228
3229         * Type.cs: changed _impl to internal (needs to be accessable by
3230         subclasses).
3231
3232         (TypeHandle): Marked as abstract, implementation removed.
3233
3234         (IsNotPublic, IsPublic, GetMethods, GetPropery, GetConstructor,
3235         GetMethod): Added stub implementations so NUnit would link against
3236         corlib
3237
3238 Tue Nov 6 09:11:43 CET 2001 Paolo Molaro <lupus@ximian.com>
3239
3240         * AppDomain.cs: use an internal constructor for AssemblyBuilder.
3241
3242 2001-11-05  Miguel de Icaza  <miguel@ximian.com>
3243
3244         * NonSerializedAttribute.cs: Add AttributeUsage rules for this
3245         attribute. 
3246
3247 Fri Nov 2 18:23:15 CET 2001 Paolo Molaro <lupus@ximian.com>
3248
3249         * String.cs: fix a couple of bugs.
3250         * AppDomain.cs: use new AppBuilder constructor.
3251         * Buffer.cs, GC.cs, NonSerializedAttribute.cs,
3252         NotImplementedException.cs, ObjectDisposedException.cs,
3253         UnauthorizedAccessException.cs: add implementation.
3254         * OverflowException.cs: fix class name.
3255
3256 2001-10-28  Jeffrey Stedfast  <fejj@ximian.com>
3257
3258         * String.cs: Don't use a terminating nil char for our internal
3259         array.
3260
3261 2001-10-27  Miguel de Icaza  <miguel@ximian.com>
3262
3263         * Delegate.cs (Delegate.CombineImpl): Implement.
3264         (Delegate.Combine): Implement.
3265
3266         * MulticastDelegate.cs (MulticastDelegate.Equals): Implement.
3267
3268         (MulticastDelegate.CombineImpl): This was not as trivial as I
3269         thought. 
3270
3271         * ContextStaticAttribute.cs: Added AttributeUsage to
3272         ContextStaticAttribute. 
3273
3274         * FlagsAttribute.cs: Add AttributeUsage to FlagsAttribute
3275
3276 2001-10-15  Martin Weindel <martin.weindel@t-online.de>
3277
3278         * added Decimal.cs * added DecimalFormatter.cs (internal class
3279         used from System.Decimal)
3280
3281 2001-10-11  Thomas Neidhart <tome@sbox.tugraz.at>
3282
3283         * Convert.cs: Added methods for Base64 transforming just used the
3284           existing System.Security.Cryptography.ToBase64Transform, should
3285           be changed to use a stand-alone class, e.g. Base64Encoder
3286           
3287 2001-10-10  Derek Holden  <dholden@draper.com>
3288
3289         * IntegerFormatter.cs: Added. Implements ToString for all the
3290         integer data types for all the format types.
3291
3292         * Byte.cs: Using IntegerFormatter for ToString's.
3293
3294         * SByte.cs: Using IntegerFormatter for ToString's.
3295
3296         * Int16.cs: Using IntegerFormatter for ToString's.
3297
3298         * Int32.cs: Using IntegerFormatter for ToString's.
3299
3300         * Int64.cs: Using IntegerFormatter for ToString's.
3301
3302         * UInt16.cs: Using IntegerFormatter for ToString's.
3303
3304         * UInt32.cs: Using IntegerFormatter for ToString's.
3305
3306         * UInt64.cs: Using IntegerFormatter for ToString's.
3307
3308 2001-10-07  Miguel de Icaza  <miguel@ximian.com>
3309
3310         * Exception.cs: Implement bits of serialization.
3311
3312         * RuntimeFieldHandle.cs: Implement Serialization features.
3313
3314         * Type.cs: Implement TypeHandle property.
3315
3316 2001-09-28  Dick Porter  <dick@ximian.com>
3317
3318         * LocalDataStoreSlot.cs: Implemented
3319
3320 Tue Sep 25 19:58:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
3321
3322         * String.cs: fix off-by-one error in Trim().
3323
3324 Tue Sep 25 18:52:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
3325
3326         * Type.cs: added GetType () method.
3327
3328 Tue Sep 25 17:29:02 CEST 2001 Paolo Molaro <lupus@ximian.com>
3329
3330         * MissingMethodException.cs, MissingMemberException.cs,
3331         MemberAccessException.cs: added.
3332
3333 Tue Sep 25 16:46:43 CEST 2001 Paolo Molaro <lupus@ximian.com>
3334
3335         * String.cs: don't access the string array out of bounds in
3336         LastIndexOf.  * Type.cs: fix return type of the Assembly property.
3337
3338 Mon Sep 24 20:35:24 CEST 2001 Paolo Molaro <lupus@ximian.com>
3339
3340         * String.cs: make Intern and IsIntern internalcalls.
3341
3342 2001-09-13  Dick Porter  <dick@ximian.com>
3343
3344         * Type.cs: Added a stub for the IsValueType property.
3345
3346         * SystemException.cs (System): Added the other constructor, so
3347         that System.Threading exceptions can inherit it.
3348
3349 2001-09-08  Jeffrey Stedfast  <fejj@ximian.com>
3350
3351         * String.cs (TrimStart): Don't keep looping through the trimchars
3352         once we've found a match.
3353         (TrimEnd): Same here.
3354         (Trim): And finally here.
3355
3356 2001-09-07  Ravi Pratap  <ravi@ximian.com>
3357
3358         * Char.cs (IsLetterOrDigit): Implement.
3359         (IsLower): Implement, but we need to be Unicode aware.
3360         (IsNumber): Implement.
3361         (IsPunctuation): Implement.
3362         (IsWhiteSpace): Implement.
3363         (ToUpper): Fix to subtract 32 from the ASCII value, not 33 :)
3364         (ToLower): Same here.
3365
3366 2001-09-04  Miguel de Icaza  <miguel@ximian.com>
3367
3368         * Object.cs: Shortcut, if (a == b) then return true.
3369
3370 Fri Sep 7 18:34:48 CEST 2001 Paolo Molaro <lupus@ximian.com>
3371
3372         * Delegate.cs: we need a pointer to the method thunk in
3373         the delegate object.
3374
3375 Fri Sep 7 12:28:01 CEST 2001 Paolo Molaro <lupus@ximian.com>
3376
3377         * AsyncCallback.cs, common.src: add AsyncCallback delegate.
3378
3379 2001-09-06  Jeffrey Stedfast  <fejj@ximian.com>
3380
3381         * String.cs (System): Don't mix uint and int.
3382
3383 2001-09-04  Jeffrey Stedfast  <fejj@ximian.com>
3384
3385         * String.cs (BoyerMoore): Modified to not use pointers and to instead
3386         use indexes.
3387         (IndexOf): Use BoyerMoore.
3388
3389 2001-09-02  Miguel de Icaza  <miguel@ximian.com>
3390
3391         * All over: Use the autogenerated enumerations from the ECMA
3392         documentation that Sergey wrote.
3393         
3394         * PlatformID.cs: Add Unix definition.
3395
3396         * OperatingSystem.cs: Use Unix instead of Linux here.
3397
3398         * MarshalByRefObject.cs: Mark class as [Serializable].
3399
3400 2001-08-28  Dietmar Maurer  <dietmar@ximian.com>
3401
3402         * Console.cs: impl. (write only)
3403         implemented the stdin stuff
3404
3405         * Int32.cs: impl. real op_Equal
3406
3407 2001-08-24  Miguel de Icaza  <miguel@ximian.com>
3408
3409         * (common.src): Removed IAsyncResult as it is not on CVS yet.
3410
3411         * UIntPtr.cs: Removed CLSCompliant attribute before the namespace,
3412         as it breaks the build.
3413
3414 2001-08-23  Michael Lambert <michaellambert@email.com>
3415
3416         * IntPtr.cs: Optimized unsafe declaration, implemented GetObjectData, 
3417         added CLSCompliant attribute
3418
3419         * IAsyncResult.cs: Added
3420
3421         * common.src: Added IAsyncResult.cs
3422
3423 2001-08-23  Michael Lambert <michaellambert@email.com>
3424
3425         * UIntPtr.cs: Added
3426
3427         * common.src: Added UIntPtr.cs
3428
3429 2001-08-20  Dietmar Maurer  <dietmar@ximian.com>
3430
3431         * Attribute.cs: uncomment some code to make it compile again
3432
3433         * mono.src: removed duplicated Attribute.cs
3434
3435 2001-08-16  Nick Drochak <ndrochak@gol.com>
3436
3437         * Attribute.cs: implemented all methods except GetHashCode()
3438
3439         * common.src: added Attribute.cs so it would compile in
3440
3441 2001-08-10  Dietmar Maurer  <dietmar@ximian.com>
3442
3443         * Object.cs: changed MemberWiseClone to MemberwiseClone, and
3444         marked it as InternalCall
3445         
3446         * common.src: removed UriFormatException.cs because the file is
3447         not there.
3448
3449         * RuntimeTypeHandle.cs: replaced IntrPtr with IntPtr
3450         * Char.cs: replaced byte with char
3451
3452         * Array.cs: make it work with the mono interpreter
3453
3454 2001-08-06  Miguel de Icaza  <miguel@ximian.com>
3455
3456         * Version.cs: Make the class sealed
3457
3458 2001-08-08  Bob Smith  <bob@thestuff.net>
3459
3460         * Random.cs: Many compile fixes.
3461         * Random.cs: I read a bad spec. Class updated to match real spec.
3462
3463 2001-08-06  Miguel de Icaza  <miguel@ximian.com>
3464
3465         * IntPtr.cs: Added and Completed implementation.
3466
3467         * Uri.cs: Add a note.
3468
3469 2001-08-06  Bob Smith  <bob@thestuff.net>
3470
3471         * Random.cs: Compile fix. Needs more testing.
3472
3473 2001-08-06 Garrett Rooney <rooneg@electricjellyfish.net>
3474
3475         * Uri.cs: Initial Implementation.  Parsing needs to be fixed to take 
3476         into account IPv6 addresses, url encoding needs to be implemented, and 
3477         various minor methods need to be written, but this is a decent start.
3478
3479 2001-08-06  Dietmar Maurer  <dietmar@ximian.com>
3480
3481         * common.src: added Object.cs
3482
3483         * mono.src: added ValueType.cs
3484
3485 2001-08-02  Dietmar Maurer  <dietmar@ximian.com>
3486
3487         * Math.cs: replaced libc with libm
3488
3489 2001-08-02  Bob Smith  <bob@thestuff.net>
3490
3491         * Random.cs: Implemented. Needs testing.
3492
3493 2001-08-02  Miguel de Icaza  <miguel@ximian.com>
3494
3495         * IServiceProvider.cs, EventHandler.cs: New files.
3496
3497 2001-08-02  Marcel Narings  <marcel@narings.nl>
3498         
3499         * DateTime.cs: Cleaned up a bit. Added the Add* family members.
3500         Added exceptions. Added IConvertible. Still needs some platform 
3501         dependend stuff, the Parse and ToString members
3502
3503 2001-08-01  Dietmar Maurer  <dietmar@ximian.com>
3504
3505         * Type.cs (GetTypeFromHandle): added placeholder 
3506
3507 2001-07-24  Derek Holden  <dholden@draper.com>
3508
3509         * Boolean.cs: Formatted to code style standard. Added GetTypeCode
3510         which is really an IConvertible defined method.
3511
3512         * Byte.cs: Added a missing Parse method. Put in Parse and ToString
3513         behavior, still need to do the main Parse and ToString.
3514
3515         * Char.cs: Added a bunch of missing ECMA methods. Commented a
3516         specification discrepency. Still didn't any unicode stuff, though
3517         every IsFoo(char c) method has an IsFoo(string, index)
3518         counterpart, added wrappers for those.
3519         
3520         * Convert.cs: Fixed NaN/Inf checking and double/float
3521         rounding. Added ToType for IConvertible classes
3522
3523         * Double.cs: Fixed ECMA min and max values. Added IsInfinity /
3524         IsNaN methods. Changed Inf/NaN internals.
3525
3526         * IConvertible.cs: Added comments for using
3527         Convert.ToType. Changed return values to draft base values.
3528
3529         * Int16.cs: Added a missing Parse statement. Put in behavior for
3530         overloaded ToString and Parse methods.
3531
3532         * Int32.cs: Added a missing Parse statement. Put in behavior for
3533         overloaded ToString and Parse methods.
3534
3535         * Int64.cs: Added a missing Parse statement. Put in behavior for
3536         overloaded ToString and Parse methods.
3537         
3538         * Single.cs: Put in ECMA epsilon value. Added IsInfinity / IsNaN
3539         methods. Changed Inf/NaN internals.
3540
3541         * SByte.cs: Added a missing Parse method. Put in Parse and
3542         ToString behavior, still need to do the main Parse and ToString.
3543
3544         * UInt16.cs: Added a missing Parse statement. Put in behavior for
3545         overloaded ToString and Parse methods.
3546
3547         * UInt32.cs: Added a missing Parse statement. Put in behavior for
3548         overloaded ToString and Parse methods.
3549
3550         * UInt64.cs: Added a missing Parse statement. Put in behavior for
3551         overloaded ToString and Parse methods.
3552         
3553 2001-07-20  Miguel de Icaza  <miguel@ximian.com>
3554
3555         * MulticastDelegate.cs: New File.
3556
3557         * Delegate.cs: New file.
3558
3559         * Enum.cs: New file.
3560
3561         * Attribute.cs: New file.
3562
3563         * Type.cs: New file.
3564
3565         * ParamArrayAttribute.cs: New file.
3566
3567         * RuntimeTypeHandle.cs: New file.
3568
3569         * MulticastDelegate.cs: Added.
3570
3571         * DateTime.cs: Added
3572
3573         * Delegate.cs: Added
3574
3575 2001-07-18  Michael Lambert <michaellambert@email.com>
3576
3577         * AttributeTargets.cs: Add.
3578
3579 2001-07-19  Jeffrey Stedfast  <fejj@ximian.com>
3580
3581         * Char.cs: Made ToUpper and ToLower public methods.
3582
3583         * String.cs: Lots and lots of compile fixes - just need to write
3584         DateTime.cs and this should build completely now.
3585
3586 2001-07-19  Bob Smith (bob@thestuff.net)
3587
3588         * Math.cs: Implemented. 
3589
3590 2001-07-19  Miguel de Icaza  <miguel@ximian.com>
3591
3592         * String.cs: Removed tolower and toupper.
3593
3594         * Char.cs: Moved ToLower and ToUpper from string to here. 
3595
3596         * Convert.cs ToByte (float value), ToByte (double value) Use IsNan
3597         instead of comparing the value to Nan.
3598
3599 2001-07-19  Duco Fijma (duco@lorentz.xs4all.nl)
3600
3601         * TimeSpan.cs: New implementation.
3602
3603 2001-07-18  Scott Sanders <scott@stonecobra.com>
3604
3605          * UriFormatExcpetion.cs: Add - 85% complete
3606
3607 2001-07-17  Jeffrey Stedfast  <fejj@ximian.com>
3608
3609         * String.cs (IndexOf): Slight optimization that allows skipping
3610         over a few chars here and there. This isn't as good as using my
3611         Boyer-Moore implementation, however, Boyer-Moore is only really
3612         good for long strings (I plan on making the code decide which
3613         string search algorithm it should use on-the-fly at some point).
3614         (LastIndexOf): Fix to work correctly.
3615         (BoyerMoore): Took out some unneeded code and fixed an edge-case.
3616
3617 2001-07-16  Michael Lambert <michaellambert@email.com>
3618
3619         * EventArgs.cs: Add.
3620         
3621 2001-07-16  Miguel de Icaza  <miguel@ximian.com>
3622
3623         * Version.cs: Remove my buggy comment.
3624
3625 2001-07-15  Sean MacIsaac  <macisaac@ximian.com>
3626
3627         * String.cs: Spelling error of IComparable, object's
3628         MemberwiseClone cannot be overridden.  Made indexer valid for now,
3629         but not sure what to do about this in the long run.  Seems to be a
3630         couple bugs in csc.exe having to do with multiple pointer defs in
3631         the same statement, and returning subclasses of a class in the
3632         return type of an interface function implementation.  Also moved
3633         operators inside of class definition.
3634
3635 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
3636
3637         * String.cs: A tom of compile fixes, although we still don't compile.
3638
3639         * IConvertible.cs: The To*Int64() methods return *Int64's, not
3640         *Int32's. Also, it's ToDateTime() not ToDateType().
3641
3642 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
3643
3644         * String.cs: Apparently I needed to at least write stubs for the
3645         IConvertible interfaces. *sigh*
3646
3647 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
3648
3649         * String.cs: Many logic/other fixes and better usage of the
3650         features of c#
3651         (tolower): New convenience method to help condense code.
3652         (toupper): Another new helper method.
3653         (Compare): Use the new helper methods.
3654         (ToLower): use tolower().
3655         (ToUpper): use toupper().
3656         (LastIndexOfAny): Implemented.
3657         (BoyerMoore): New private helper method that implements a modified
3658         version of the Boyer-Moore search algorithm. Noothing uses it yet
3659         as I'm not 100% sure it even works properly with unicode strings
3660         not to mention it uses a huge lookup-table :-)
3661         (Split): Implemented.
3662
3663 2001-07-13  Jeffrey Stedfast  <fejj@ximian.com>
3664
3665         * TODO: Added things that need to be finished in System.String
3666
3667         * String.cs: New source file implementing the System.String class
3668
3669 2001-07-12  Sean MacIsaac  <macisaac@ximian.com>
3670
3671         * TypeCode.cs: UInt64 was UInt63.
3672
3673         * Object.cs: Fixed a numer of compiler errors.
3674
3675         * Array.cs: Fixed some compiler errors.
3676
3677         * IComparable.cs: Fixed some compiler errors.
3678
3679         * ICloneable.cs: Fixed some compiler errors.
3680
3681         * IConvertible.cs: Fixed some compiler errors.
3682
3683         * IFormattable.cs: Fixed a compiler error.
3684
3685         * IFormatProvider.cs: Fixed a compiler error.
3686
3687         * IDisposable.cs: Fixed a compiler error.
3688
3689         * IFormatProvider.cs: Added public accesability type to
3690         IFormatProvider.
3691
3692         * Exception.cs: Added a using statement to remove compile time
3693         error.
3694
3695         * ApplicationException.cs: Removed a ; that was causing a compiler
3696         error.
3697
3698         * Int16.cs: Fixed some compiler errors.
3699
3700         * Int32.cs: Fixed some compiler errors.
3701
3702         * Int64.cs: Fixed some compiler errors.
3703
3704         * SystemException.cs: Fixed a compiler error.
3705
3706         * UInt16.cs: Fixed some compiler errors.
3707
3708         * UInt32.cs: Fixed some compiler errors.
3709
3710         * UInt64.cs: Fixed some compiler errors.
3711
3712         * Void.cs: Fixed a compiler error.      
3713
3714 2001-07-12  Joe Shaw  <joe@ximian.com>
3715
3716         * Array.cs: Fix backwards parameters to Array.SetValue()
3717         throughout.
3718         (BinarySearch): Fix backward logic surrounding whether to call
3719         value.CompareTo or comparer.Compare.
3720         (LastIndexOf): Stop being stupid. I am so not used to strongly
3721         bounded arrays...
3722         (Sort): Implement a quicksort.
3723
3724 2001-07-11  Joe Shaw  <joe@ximian.com>
3725
3726         * Array.cs: Change all instances of trying to access an array with
3727         the index operator to calls to GetValue and SetValue, and add
3728         InternalGetValue and InternalSetValue which are internal calls
3729         into the runtime. Ew.
3730
3731 2001-07-10  Joe Shaw  <joe@ximian.com>
3732
3733         * Array.cs: Implemented everything but Sort().
3734
3735 2001-07-09  Jeffrey Stedfast  <fejj@ximian.com>
3736
3737         * Object.cs (Object::Equals): Object variable name is `o'.
3738
3739 2001-07-06  Joe Shaw  <joe@ximian.com>
3740
3741         * Int16.cs, Int32.cs, Int64.cs, UInt16.cs, UInt32.cs, UInt64.cs:
3742         Implement the IComparable and IFormattable interfaces. Fix a typo
3743         (publig -> public)
3744
3745         * ApplicationException.cs, ArgumentException.cs,
3746         ArgumentNullException.cs, ArgumentOutOfRangeException.cs,
3747         ArtithmeticException.cs, ArrayTypeMismatchException.cs,
3748         DivideByZeroException.cs, DuplicateWaitObjectException.cs,
3749         ExecutionEngineException.cs, FormatException.cs,
3750         IndexOutOfRangeException.cs, InvalidCastException.cs,
3751         InvalidOperationException.cs, InvalidProgramException.cs,
3752         MulticateNotSupportedException.cs, NotFiniteNumberException.cs,
3753         NotSupportedException.cs, NullReferenceException.cs,
3754         OutOfMemoryException.cs, OverflowException.cs, RankException.cs,
3755         StackOverflowException.cs, SystemException.cs,
3756         TypeInitializationException.cs: Added all of the exceptions
3757         specified by the language spec. Mmmm... bloat.
3758
3759 2001-07-06  Miguel de Icaza  <miguel@ximian.com>
3760
3761         * Int64.cs, Int32.cs: Put.  Parsing and ToString missing.  Should
3762         do a generic routine all of these guys use.
3763
3764         * Int16.cs: identified missing methods.
3765
3766         * UInt16.cs, UInt32.cs, UInt64.cs: Add.
3767
3768 2001-06-26  Miguel de Icaza  <miguel@ximian.com>
3769
3770         * TypeCode.cs: Implement
3771
3772         * Void.cs: Implement.
3773
3774         * TODO: Add file to keep track of pending tasks.
3775
3776         * Object.cs, ValueType.cs: Implement.