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