7e45498bb7d457b421113ae1c188b6c154622324
[mono.git] / mcs / class / corlib / System / ChangeLog
1 2002-06-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2
3         * IntegerFormatter.cs:
4         (FormatParse.FormatNumber): fixed custom format for negative numbers.
5
6 2002-06-21  Martin Baulig  <martin@gnome.org>
7
8         * Double.cs: Replace the private `enum State' with constants since this
9         will avoid some bigger headaches in mcs.
10
11 Thu Jun 20 17:51:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
12
13         * TimeSpan.cs: do not pollute the namespace with the
14         System.Parser name.
15
16 2002-06-18  Nick Drochak  <ndrochak@gol.com>
17
18         * ArgumentException.cs: Use the message given in the constructor when
19         accessing the Message property.  Thanks to Dietmar for the help with 
20         "base".
21
22 2002-06-17  Dietmar Maurer  <dietmar@ximian.com>
23
24         * MonoType.cs: GetField is now a InternalCall
25
26 2002-06-13  Nick Drochak  <ndrochak@gol.com>
27
28         * DateTime.cs: (Parse): Accept dates that have no hour,min,sec. in the
29         sortable format(s), e.g. "2002-02-25"
30
31 2002/06/12  Nick Drochak <ndrochak@gol.com>
32
33         * Random.cs (Next): Fix math error.  Return a number within the range.
34
35 2002-06-12  Nick Drochak  <ndrochak@gol.com>
36
37         * String.cs (IndexOf): Return -1 if start index is equal to string
38         length.
39
40 2002-06-10  Duncan Mak  <duncan@ximian.com>
41
42         * Convert.cs (ToDouble): Remove rounding in ToDouble (float).
43         (ToType): Added null field in conversionTable to avoid
44         IndexOutOfRangeException. Changed what exceptions we throw to match
45         the spec.
46         
47 2002-06-11  Nick Drochak  <ndrochak@gol.com>
48
49         * Int64.cs (Parse): Added unique strings to the messages where we throw
50         a FormatException. Needed these to debug, so just left them in since
51         they might be useful later. Fixed Currency parsing where we weren't
52         looking at CurrencyDecimalSeparator, etc.
53
54 2002-06-09  Lawrence Pit  <loz@cable.a2000.nl>\r
55 \r
56         * DateTime.cs: fixes to pass tests M0 to M6:\r
57                 if yy pattern then year values >= 30 are in 20th century\r
58                 rfc1123 pattern is always in GMT, therefor useutc must be false\r
59         made GetNow() internal static so it can be called from TimeZone.\r
60         * TimeZone.cs: removed dependency on year 2002 from initialization of \r
61         current timezone.\r
62 \r
63 2002-06-09  Duncan Mak  <duncan@ximian.com>
64
65         * Convert.cs (ToType): Rearranged what Exceptions we throw to
66         match MS behavior.
67
68 2002-06-08  Duncan Mak  <duncan@ximian.com>
69
70         * Decimal.cs: Added support for the IConvertible interface.
71
72 2002-06-08  Martin Baulig  <martin@gnome.org>
73
74         * Enum.cs (IsDefined): `value' may be of the enum's type itself, it
75         doesn't necessarily need to be of the enum's underlying type.
76
77 2002/06/07  Nick Drochak <ndrochak@gol.com>
78
79         * String.cs: Add [Serializable] to class
80         * SByte.cs (Parse): Add [CLSCompliant(false)] to all the overloads
81
82 2002-06-04  Nick Drochak  <ndrochak@gol.com>
83
84         * Double.cs (Parse): Recognize the group separator string, but still we
85         don't check the format for the proper number of digits between
86         separators. Also throw OverflowException when we get Pos or Neg
87         Infinity from runtime.
88
89 2002-06-03  Duncan Mak  <duncan@ximian.com>
90
91         * Convert.cs (ToDouble): Fixed ToDouble (byte value).
92
93 Mon Jun 3 12:18:18 CEST 2002 Paolo Molaro <lupus@ximian.com>
94
95         * Type.cs: fixed GetTypeCode.
96
97 2002-06-02  Duncan Mak  <duncan@ximian.com>
98
99         * Convert.cs (ToInt16): use Convert.ToInt16 (int) instead of a direct
100         cast from an int so that we throw OverFlowException correctly.
101         
102         (ToInt64): Use a new 64bit version of ConvertToBase.
103         
104         (ConvertToBase): Add checks for overflow (checks Int32.MinValue
105         and Int32.MaxValue).
106
107         (ConvertFromBase64): New 64-bit version of ConvertFromBase.
108
109 2002-06-02  Nick Drochak  <ndrochak@gol.com>
110
111         * Convert.cs (ToSByte): Check for special value.
112         * Single.cs (Parse): 
113         * UInt16.cs (Parse):
114         * UInt32.cs (Parse): Throw OverflowException if negative
115
116 2002-06-02  Duncan Mak  <duncan@ximian.com>
117
118         * Convert.cs (DBNull): Point it to DBNull.Value.
119         (IsDBNull): Instead of checking typecodes, just check to see if
120         it's the same as the DBNull field.
121
122 2002-06-02  Nick Drochak  <ndrochak@gol.com>
123
124         * Convert.cs (ConvertFromBase): Detect bad digits correctly.
125
126 2002-06-02  Duncan Mak  <duncan@ximian.com>
127
128         * Char.cs (Parse): Simplify the Exception handling.
129
130         * Convert.cs (ToDecimal): Remove call to Math.Round () when
131         converting from a float.
132
133 2002-05-30  Martin Baulig  <martin@gnome.org>
134
135         * MonoType.cs (GetInterface): Implemented.
136
137 Thu May 23 17:17:28 CEST 2002 Paolo Molaro <lupus@ximian.com>
138
139         * Activator.cs: implemented CreateInstance ().
140
141 2002-05-22  Duncan Mak  <duncan@ximian.com>
142
143         * Convert.cs (ConvertToBase): Added new 64bit version.
144         (BuildConvertedString64): New 64bit version of
145         BuildConvertedString.
146
147         This fixes bug 25068.
148
149         (ConvertFromBase): Added additional test for checking if the
150         digits are valid. Thanks to Miguel for coming up with this test.
151
152         This fixes bug 25071.
153         
154 2002-05-21  Duncan Mak  <duncan@ximian.com>
155
156         * Convert.cs (ToType): Rearranged to fit the new layout of
157         conversionTable.
158
159         (conversionTable): Rearranged to fit the layout of the
160         System.TypeCode enum.
161
162         This should fix bug 25075.
163         
164 2002-05-21  Duncan Mak  <duncan@ximian.com>
165
166         * Convert.cs (ToString): Fixed the ToString methods. Previously I had
167         mixed up the two code paths, one for converting to a specific base
168         (this case), another from converting from a foreign base to base10
169         (used by ToInt16|32|64 (string, int)). This fixes bug 25068.
170
171         * Convert.cs (ToByte)
172         (ToSByte): Fixed bug 25074. Added more bits to ConvertFromBase so
173         that we won't confuse FormatException with OverflowException.
174
175 2002-05-22  Lawrence Pit  <loz@cable.a2000.nl>
176
177         * Environment.cs: CommandLine missed spaces between arguments.
178         Implemented StackTrace. Returning MachineName in UserDomainName\r
179         instead of null.\r
180         \r
181 Tue May 21 17:25:49 CEST 2002 Paolo Molaro <lupus@ximian.com>
182
183         * MonoCustomAttrs.cs: handle inherit argument.
184
185 2002-05-21  Nick Drochak  <ndrochak@gol.com>
186
187         * Math.cs (Pow): Change icall method name and insert parameter
188         checks in for infinities and NaN.
189
190 2002-05-13  Miguel de Icaza  <miguel@ximian.com>
191
192         * Double.cs (Parse): Reimplement by cleaning up the string first,
193         and then passing to strtof in the mono runtime.
194
195         * Single.cs (Parse): Use the Double implementation and cast to
196         float. 
197
198 2002-05-21  Nick Drochak  <ndrochak@gol.com>
199
200         * Math.cs 
201                 (Ceiling): Check for "special" values
202                 (Floor): Check for "special" values
203                 (Round): Fix off-by-one error on decimal shifting
204
205 2002-05-20  Lawrence Pit  <loz@cable.a2000.nl>\r
206 \r
207         * DateTime.cs: ToString () using "G" format specifier \r
208 \r
209 2002-05-19  Martin Baulig  <martin@gnome.org>
210
211         * Convert.cs (FromBase64CharArray): Do correct exception handling.
212
213 2002-05-19  Martin Baulig  <martin@gnome.org>
214
215         * Convert.cs (FromBase64CharArray): Convert the char array using
216         System.Text.UTF8Encoding, not UnicodeEncoding (which is UTF-16) to
217         a byte array.
218
219 2002-05-17  Miguel de Icaza  <miguel@ximian.com>
220
221         * MonoType.cs: Style changes.
222
223         * Type.cs: Style changes.
224
225 2002-05-16  Piers Haken <piersh@friksit.com
226
227         * UInt64.cs: fix declaration of IConvertible.To* overrides.
228
229 2002-05-16  Nick Drochak  <ndrochak@gol.com>
230
231         * BitConverter.cs (ToString): Add parameter check for invalid start 
232         index.
233
234         * Console.cs: Use AutoFlush on the StreamWriter for stdin and stdout
235         now that StreamWriter uses buffering
236
237 2002-05-14  Miguel de Icaza  <miguel@ximian.com>
238
239         * Double.cs: Oops.  Also handle exponents without finding a dot.
240
241 2002-05-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
242
243         * ChangeLog: removed empty entry at the top of the file.
244
245         * Int32.cs: made static functions used by Parse internal.
246
247         * Int64.cs:
248         * UInt32.cs:
249         * UInt64.cs: removed static fucntions used by Parse and use the ones
250         in Int32.cs
251
252 2002-05-12  Daniel Morgan <danmorg@sc.rr.com>
253
254         * IServiceProvider.cs: added using System
255
256 2002-05-09  Daniel Morgan <danmorg@sc.rr.com>
257
258         * Single.cs: copied ToString() and Parse() methods from 
259         Double to Single and modified a tiny bit for Single.  
260         There is still a FIXME for Double and Single about
261         passing the format and provider info to the icall too.\r
262
263 2002-05-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
264
265         * Int32.cs:
266         * Int64.cs:
267         * UInt32.cs:
268         * UInt64.cs (Parse): don't use Char.IsNumber to test for hex digits.
269         Don't use a delegate to test for valid digits.
270
271 2002-05-01  Duncan Mak  <duncan@ximian.com>
272
273         * Convert.cs: 
274         * Math.cs: Added missing CLSCompliant attributes where necessary.
275         
276 2002-04-30  Duncan Mak  <duncan@ximian.com>
277
278         * ArgumentException.cs (Message): 
279         * ArgumentOutOfRangeException.cs (Message): Added.
280
281 2002-04-30  Nick Drochak  <ndrochak@gol.com>
282
283         * MonoType.cs: Remove unused variable and eliminate a compiler warning.
284
285 Mon Apr 29 15:32:02 CEST 2002 Paolo Molaro <lupus@ximian.com>
286
287         * Environment.cs: support for Exit(), CommandLine, CommandLineArgs ().
288
289 2002-04-28  Duncan Mak  <duncan@ximian.com>
290
291         * DivideByZeroException.cs: Added missing serialization constructor.
292
293         * UnauthorizedAccessException.cs: Added the missing Serializable attribute.
294
295 2002-04-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
296
297         * Math.cs: fix Floor () and Round (). Closes #23960.
298
299 2002-04-27  Nick Drochak  <ndrochak@gol.com>
300
301         * Array.cs (IList.Contains): Should throw a RankException if this is 
302         called on a Rank > 1 array. Not in the docs, but this is what the 
303         MS.NET does.
304
305 2002-04-26  Duncan Mak  <duncan@ximian.com>
306
307         * MissingMemberException.cs: Made the message variable 'protected'
308         instead of 'private', so that we can see it in
309         MissingMethodException and MissingFieldException.
310
311         * MissingFieldException.cs:
312         * MissingMethodException.cs: Added missing (string, string)
313         constructor, and also the Message property.
314
315 2002-04-26  Martin Baulig  <martin@gnome.org>
316
317         * Enum.cs: Implemented the IConvertible methods.
318
319 2002-04-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
320
321         * SByte.cs: little change in Parse (string) to avoid incorrect
322         OverflowException thrown (reported by nickd).
323
324 2002-04-22  Miguel de Icaza  <miguel@ximian.com>
325
326         * ValueType.cs: Add Serializable attribute.
327
328         * String.cs: ifdef-out out the __arglist Concat function until I
329         add support for that to mcs.
330
331 2002-04-24      Patrik Torstensson <patrik.torstensson@labs2.com>
332
333         * AppDomain.cs (GetValue): usage of the correct icall (bug)
334
335 Wed Apr 24 21:15:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
336
337         * GC.cs: implement most of the methods as icalls.
338
339 2002-04-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
340
341         * DecimalFormatter.cs (ToString): return correct value when the
342         decimal number is 0.
343
344 2002-04-24      Patrik Torstensson <patrik.torstensson@labs2.com>
345         
346         * Type.cs (GetProperty): fixed call syntax (needs an empty array not null)
347         * MonoType.cs (GetPropertyImpl) : basic implementation (ignores types, bindingAttr, modifiers)
348
349 2002-04-24  Nick Drochak  <ndrochak@gol.com>
350
351         * Double.cs (Parse): Handle case where there are no digits before the 
352         decimal point, such as ".1".
353
354 2002-04-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
355
356         * Int32.cs:
357         * UInt32.cs:
358         * Int64.cs:
359         * UInt64.cs: fixed bug #23738 (hex numbers parsed wrong).
360
361 2002-04-23      Patrik Torstensson <patrik.torstensson@labs2.com>
362
363         * String.cs (Split): fixed invalid split of count 0 and 1.
364         
365 2002-04-23      Patrik Torstensson <patrik.torstensson@labs2.com>
366         
367         * String.cs (LastIndexOf): fixed argument checking.
368         * String.cs (Equals): made internal for performace.
369
370 2002-04-23  Nick Drochak  <ndrochak@gol.com>
371
372         * String.cs (Join): check argument and throw exception if needed
373
374 2002-04-23  Nick Drochak  <ndrochak@gol.com>
375
376         * String.cs (StartsWith): check argument and throw exception if needed
377
378 2002-04-22  Nick Drochak  <ndrochak@gol.com>
379
380         * String.cs (IndexOfAny): check arguments and throw exceptions as
381         neccessary.  ALso remove some debug WriteLines.
382
383 2002-04-20  Dietmar Maurer  <dietmar@ximian.com>
384
385         * String.cs: use internal constructors
386         buf fix in Concat.
387
388 Thu Apr 18 17:16:15 CEST 2002 Paolo Molaro <lupus@ximian.com>
389
390         * MonoType.cs: make GetElementType its own icall.
391
392 2002-04-18  Nick Drochak <ndrochak@gol.com>
393
394         * String.cs: Modified file. Re-add methods needed by the unit tests.
395
396 Thu Apr 18 12:38:32 CEST 2002 Paolo Molaro <lupus@ximian.com>
397
398         * String.cs: some code speedups and restored GetTypeCode().
399
400 2002-04-17      Patrik Torstensson <patrik.torstensson@labs2.com>
401
402         * String.cs: New implementation using internal calls.
403         
404 2002-04-16  Nick Drochak  <ndrochak@gol.com>
405
406         * DecimalFormatter.cs: Trim off excess null characters from the string
407         that decimal2string gives back.
408
409 2002-04-16  Nick Drochak  <ndrochak@gol.com>
410
411         * String.cs (SubString): revert my change.  I can't reproduce the
412         problem anymore.
413
414 2002-04-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
415
416         * Attribute.cs: added GetHashCode and Equals.
417
418 2002-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
419
420         * Enum.cs: little improvements to Format ().
421
422 Thu Apr 11 12:28:13 CEST 2002 Paolo Molaro <lupus@ximian.com>
423
424         * String.cs: internalcall GetHashCode().
425         * Array.cS: optimize access to elements.
426
427 Wed Apr 10 21:20:19 CEST 2002 Paolo Molaro <lupus@ximian.com>
428
429         * String.cs: make IndexOfAny() use an internalcall.
430
431 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
432
433         * Int32.cs:
434         * UInt32.cs:
435         * Int64.cs: 
436         * UInt64.cs: fixed error when testing for validity of flags.
437
438 2002-04-11  Nick Drochak  <ndrochak@gol.com>
439
440         * Double.cs: Use an internal call for ToString(). This is just a simple
441         implementation to get away from throwing a NotImplementedException.
442
443 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
444
445         * Int32.cs:
446         * UInt32.cs:
447         * Int64.cs: 
448         * UInt64.cs: changed Type.GetType () by typeof (), as suggested by
449         lupus.
450
451         * Int32.cs:
452         * Int64.cs: throw an OverFlowException when parsing a string 
453         containing a dot followed by any non '0' number.
454
455 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
456
457         * Byte.cs:
458         * UInt16.cs:
459         * UInt32.cs:
460         * UInt64.cs: added complex Parse ().
461
462 2002-04-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
463
464         * SByte.cs:
465         * Int16.cs:
466         * Int32.cs:
467         * Int64.cs: added complex Parse ().
468
469 2002-04-09  Nick Drochak  <ndrochak@gol.com>
470
471         * Array.cs (BinarySearch): Add checks on paramters before using them
472         and throw exceptions as needed.
473
474         * Enum.cs (Format): Check if [Flags] is applied to enum and convert
475         "G" format to "F" if so.
476
477 Tue Apr 9 13:12:09 CEST 2002 Paolo Molaro <lupus@ximian.com>
478
479         * MonoCustomAttrs.cs: return arrays of type Attribute[]
480         instead of object[].
481
482 2002/04/09  Nick Drochak <ndrochak@gol.com>
483
484         * String.cs (Substring): Copy only non-null characters to the new
485         string.
486
487 2002-04-09  Nick Drochak  <ndrochak@gol.com>
488
489         * IntegerFormatter.cs: Don't use a format character to indicate a
490         custom format was passed in. It was using 'z' to indicate a custom
491         format, but really it should throw a format exception if the user
492         tries to use "z" as the format string. Now it does.
493
494         * Activator.cs: New File.
495
496 2002-04-08  Nick Drochak  <ndrochak@gol.com>
497
498         * Enum.cs (ToString): Big ugly fix for the case where [Flags] is
499         applied to an enum. Need to handle the different possible integer
500         types of an enum somehow.  Can anyone say generics?
501
502 Mon Apr  8 06:22:42  2002 Piers Haken <piersh@friskit.com>
503
504         * Convert.cs: switched the To*(object) methods to use
505         IConvertible directly instead of calling ChangeType
506
507 Sat Apr 6 20:08:41 CEST 2002 Paolo Molaro <lupus@ximian.com>
508
509         * ValueType.cs: make Equals() an internalcall.
510
511 Fri Apr 5 15:38:54 CEST 2002 Paolo Molaro <lupus@ximian.com>
512
513         * Type.cs: also look for nested types in FindMembers.
514         * MonoType.cs: make GetNestedTypes() an internalcall.
515
516 2002-04-05  Nick Drochak  <ndrochak@gol.com>
517
518         * Enum.cs (Parse): Handle different underlying types.
519
520 2002/04/04 Nick Drochak <ndrochak@gol.com>
521
522         * Enum.cs (IsDefined): Throw exception when type of value to look for
523         is not the correct one.  Attempt to have it work with string values
524         too, but not sure if the unit tests are getting that far yet.
525
526 2002-04-04  Nick Drochak  <ndrochak@gol.com>
527
528         * Decimal.cs: Fix a couple of typos.
529
530 Wed Apr 3 19:46:00 CEST 2002 Paolo Molaro <lupus@ximian.com>
531
532         * Enum.cs: the values array is of the enum and not of the underlying
533         type. Updates and some bug fixes.
534         * MonoType.cs: make the internalcall return FullName instead of the
535         assembly qualified name.
536         * Type.cs: make ToString () simply return FullName.
537
538 2002-04-03  Nick Drochak  <ndrochak@gol.com>
539
540         * Type.cs (GetTypeCode): provide some of the implementation for this
541         method.  It's still too simplistic to be considered complete.
542
543 2002-04-02  Dietmar Maurer  <dietmar@ximian.com>
544
545         * Object.cs: fixed FieldGetter/FieldSetter signature
546
547 2002-04-02  Nick Drochak  <ndrochak@gol.com>
548
549         * Environment.cs: add MonoTODO's on parts that should have it.
550
551 2002-04-01  Nick Drochak  <ndrochak@gol.com>
552
553         * Enum.cs: added reality checks (check parameters to most methods that
554         need them).
555
556 2002-03-30  Dietmar Maurer  <dietmar@ximian.com>
557
558         * Object.cs: added FieldGetter/FieldSetter
559
560 2002-03-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
561
562         * IntegerFormatter.cs: fixed initialization error in static
563         constructor.
564
565 2002-03-28  Dietmar Maurer  <dietmar@ximian.com>
566
567         * Delegate.cs: added new field to store a trampoline function
568
569 2002-03-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
570
571         * IntegerFormatter.cs: added workaround for bug #22668. First patch to
572         make custom format strings work (not fully functional yet).
573
574 2002/03/28  Nick Drochak <ndrochak@gol.com>
575
576         * IntegerFormatter.cs: Change class from internal to public.  Add
577         necessary [CLSCompliant(false)] attributes.
578
579 2002-03-27  Duco Fijma  <duco@lorentz.xs4all.nl>
580         * _AppDomain.cs, AppDomain.cs: renamed method GetDate to GetData
581         (was a typo)
582
583 2002-03-28  Nick Drochak  <ndrochak@gol.com>
584
585         * Type.cs: Added MonoTODO tags on members that have FIXME, etc.
586
587 2002-03-27  Dan Lewis  <dihlewis@yahoo.co.uk>
588
589         * Console.cs: Modified to get std handles from MonoIO.
590         * Environment.cs: removed PAL dependencies.
591
592 2002-03-25  Miguel de Icaza  <miguel@ximian.com>
593
594         * String.cs (System): Removed internal enumeration, because
595         bootstrapping the corlib at this point does not support
596         enumerations. 
597
598         * IntPtr.cs: Temporary work-around until I fix the assembly
599         attributes bug.
600
601 2002-03-24  Martin Baulig  <martin@gnome.org>
602
603         * Enum.cs (GetValues): According to the docu this is sorted after
604         values, not names.
605
606         * String.cs (System): Removed enumeration, because it is pretty
607         hard to support enumerations in /nostdlib mode for the core types.
608
609 Tue Mar 19 18:18:49 CET 2002 Paolo Molaro <lupus@ximian.com>
610
611         * Array.cs: move error handling in the catch block.
612         * MulticastDelegate.cs: remove == and != operators that were
613         removed with the delegate changes (when you add stuff, please do not
614         remove existing functionality!).
615         * Type.cs: if a property is not found in a type, search for it
616         in the parent types, too.
617
618 2002-03-18  Dan Lewis <dihlewis@yahoo.co.uk>
619         
620         * Math.cs: changed to use icall instead of PAL.
621
622 2002-03-18  Dietmar Maurer  <dietmar@ximian.com>
623
624         * Double.cs: added check for NaN (Bug [22082])
625
626 2002-03-19  Nick Drochak  <ndrochak@gol.com>
627
628         * Enum.cs (Equals): check for null and throw if it is.
629         * Enum.cs (Format): check for null parameters and throw if necessary.
630         This method still needs more argument checking.
631
632 2002-03-18  Dietmar Maurer  <dietmar@ximian.com>
633
634         * Enum.cs (Equals): check if Enums are of the same type
635
636 2002-03-18  Nick Drochak  <ndrochak@gol.com>
637
638         * Double.cs: Explicitly handle comparisons in CompareTo() for
639         Positive/Negative Infinity and NaN. Unit Test now passes on Linux.
640
641         * Enum.cs(CompareTo): Check types of values before trying to compare.
642         Throw exceptions if types are invalid or don't match.
643
644 2002-03-14  Miguel de Icaza  <miguel@ximian.com>
645
646         * Array.cs: Add some extra debugging information.
647
648 2002-03-15  Nick Drochak  <ndrochak@gol.com>
649
650         * Array.cs: Added IList and IEnumerable. 
651
652 2002-03-14  Miguel de Icaza  <miguel@ximian.com>
653
654         * UInt64.cs, UInt32.cs, UInt16.cs: Mark public parse methods as
655         NonCLSCompliant. 
656
657 2002-03-14  Dietmar Maurer  <dietmar@ximian.com>
658
659         * Delegate.cs (Equals): also compare method_ptr 
660         (GetHashCode): returm method_ptr as hash
661
662 2002-03-13  Duco Fijma  <duco@lorentz.xs4all.n>
663         * TimeSpan.cs: removed the use of Custom Numeric Format Strings,
664         such as 42.ToString("0000000"), as these are (currently) not implemented
665         in System.IntegerFormatter. TimeSpan luckely can do with Standard
666         Numeric Format Strings, such as 42.ToString("D7").
667
668 2002-03-12  Duncan Mak  <duncan@ximian.com>
669
670         * FieldAccessException.cs: 
671         * MethodAccessException.cs: 
672         * PlatformNotSupportedException.cs: Inherit from
673         MemberAccessException, not SystemException.
674
675         * ObsoleteAttribute.cs: Made Message and IsError properties
676         instead of fields.
677
678 Tue Mar 12 19:21:18 CET 2002 Paolo Molaro <lupus@ximian.com>
679
680         * GC.cs: make SuppressFinalize() a nop.
681         * Delegate.cs: fix == operator.
682
683 2002-03-13  Nick Drochak  <ndrochak@gol.com>
684
685         * Enum.cs: Add IConvertible methods. Cyclic dependancy fixed in the
686         runtime that goes with this patch.
687
688 2002-03-10  Martin Baulig  <martin@gnome.org>
689
690         * Int32.cs (Parse): Correctly parse negative numbers.
691
692 2002-03-08  Martin Baulig  <martin@gnome.org>
693
694         * String.cs (Split): Really fix it this time. Also adding several new
695         testcase to the testsuite.       
696
697 2002-03-08  Martin Baulig  <martin@gnome.org>
698
699         * Array.cs (Copy): Optimized: removed duplicate null check, removed
700         two duplicate GetLowerBound() calls and one duplicate IsValueType.
701
702 Fri Mar 8 18:49:19 CET 2002 Paolo Molaro <lupus@ximian.com>
703
704         * Object.cs: commit my hacked GetHashCode(): it's good enough for now.
705         * String.cs: use the dumb code for IndexOf(string): this is worth
706         15-20 % speedup in mcs compile with mint.
707
708 Fri Mar 8 12:45:44 CET 2002 Paolo Molaro <lupus@ximian.com>
709
710         * String.cs: revert change to Split() that broke the compiler (hi martin!:-).
711
712 2002-03-07  Martin Baulig  <martin@gnome.org>
713
714         * String.cs (Join): Throw an ArgumentNullException.
715         (LastIndexOf (string,int,int)): This method does a backwards search,
716         so startIndex points to the end of value, not to its beginning. Don't
717         throw an exception if startIndex equals this.Length. Always return -1
718         if startIndex is smaller than the length of value.
719         (Replace (string,string)): Replace all occurences of oldValue.
720         If newValue is null, all occurences of oldValue are to be removed.
721         (Split (char[],int)): Return an empty array if maxCount is zero, throw
722         an ArgumentOutOfRangeException if it's less than zero. Return maxValue
723         elements, not maxValue+1.
724
725 Thu Mar 7 17:16:06 CET 2002 Paolo Molaro <lupus@ximian.com>
726
727         * MonoType.cs: make GetEvents() an internal call.
728         * MulticastDelegate.cs: copy the passed in array.
729
730 2002-03-06  Martin Baulig  <martin@gnome.org>
731
732         * Array.cs (Copy): Use FastCopy when appropriate and do correct
733         exception handling.
734
735 2002-03-06  Duco Fijma  <duco@lorentz.xs4all.nl>
736         * CharEnumerator.cs: fixes to CharEnumertor.MoveNext, fixing 
737         some of the failures found be new tests (see ChangeLog in 
738         Test/System). Comments added to this method, based on
739         the representation invariant of this class, that (try to) explain
740         why it now should be correct.
741
742 2002-03-06  Dietmar Maurer  <dietmar@ximian.com>
743
744         * Int64.cs (Parse): bug fix for max. negative value. 
745
746 2002-03-07  Nick Drochak  <ndrochak@gol.com>
747
748         * RuntimeTypeHandle.cs: Add Serializable attribute as the docs say.
749         I need to understand what the difference between the attribute and
750         the interface is.
751
752 2002-03-06  Martin Baulig  <martin@gnome.org>
753
754         * Array.cs (Copy): Always throw an ArrayTypeMismatchException, not
755         an InvalidCastException if the widening conversion failed. See
756         testcases #M94-#M96.
757
758         * Array.cs (CopyTo): Bug fix from Ajay Dwivedi, correctly handle
759         arrays with non-zero lower bounds. Also adding testcases #F10-#F13
760         for this.
761
762         * Array.cs (CopyTo): Reverted my last change, it was incorrect.
763         (Copy): Actually allow copying multi-dimensional arrays.
764
765 2002-03-05  Duncan Mak  <duncan@ximian.com>
766
767         * Convert.cs:
768         (DBNull) Added the missing field.
769         (IsDBNull) Fixed typo.
770         (ToByte (string, int)) Implemented.
771         (ToString (byte, int)) Implemented.
772         (ConvertToBase)
773         (BuildConvertedString) internal functions used for converting values to
774         a specific base.
775
776         * Int16.cs: 
777         * Int32.cs:
778         * Int64.cs:
779         * Single.cs:
780         * UInt16.cs: 
781         * UInt32.cs: Implemented the IConvertible interface.    
782
783         * CharEnumerator.cs: Renamed to variables to be clearer and
784         changed some of the tests to conform to the 1.0 spec.
785
786 2002-03-06  Martin Baulig  <martin@gnome.org>
787
788         * Array.cs (Copy): Calculate absolute array position here and use
789         GetValueImpl() and SetValueImpl() with that position. We can now
790         copy multi-dimensional arrays.
791         (CopyTo): Small bug fix.
792
793 2002-03-05  Duco Fijma  <duco@lorentz.xs4all.nl>
794
795         * Version.cs: CompareTo changed according the LAMESPEC discovered by 
796         Nick (See VersionTest.cs).
797         * CharEnumerator.cs: fixed two bugs in MoveNext. It had an off-by-one
798         error comparing the current position (idx) against the length of the
799         string iterated and it set idx to an unrecognized special value (-2)
800
801 Tue Mar 5 17:34:14 CET 2002 Paolo Molaro <lupus@ximian.com>
802
803         * SByte.cs, UInt64.cs: implement IConvertible interface. Nobody wants
804         to do this dirty work, but someone has to do it (and I need it to pass
805         the "200 sample tests compiled on linux" mark).
806
807 2002-03-06  Nick Drochak  <ndrochak@gol.com>
808
809         * Attribute.cs
810         * DecimalFormatter.cs
811         * Delegate.cs
812         * Double.cs
813         * GC.cs
814         * Int16.cs
815         * Int32.cs
816         * MonoType.cs
817         * RuntimeMethodHandle.cs
818         * RuntimeTypeHandle.cs
819         * String.cs
820         * Type.cs:
821                 Add [MonoTODO]'s to places where we currently throw a
822                 NotImplementedException.
823
824 2002-03-05  Dietmar Maurer  <dietmar@ximian.com>
825
826         * Int16.cs (Parse): do not overflow on max negative value
827
828         * Int32.cs (Parse): do not overflow on max negative value
829
830 Mon Mar 4 20:36:05 CET 2002 Paolo Molaro <lupus@ximian.com>
831
832         * Type.cs: fixed IsClass.
833         * MonoType.cs: fixed MemberType, IsPrimitiveImpl, IsPointerImpl,
834         IsByRefImpl. Added GetInterfaces().
835         * IServiceProvider.cs: compilation fix.
836
837 Mon Mar 4 18:37:03 CET 2002 Paolo Molaro <lupus@ximian.com>
838
839         * Array.cs: allow copying an empty array to an empty array.
840
841 Mon Mar 4 17:59:16 CET 2002 Paolo Molaro <lupus@ximian.com>
842
843         * String.cs: fixed LastIndexOf (string) to do a bit of argument
844         checking.
845
846 2002-03-04  Duco Fijma  <duco@lorentz.xs4all.nl>
847         * Version.cs: many fixes to failures found by the newly created
848         test cases for this class. Specifically, the CompareTo member
849         returned wrong values due to the use of Int32.MaxValue as a special
850         value indicating an "undefined" version component. Also implemented the
851         missing operators (==, <, >, etc.), one missing constructor and
852         and some exception throwing.
853
854 2002-03-04  Nick Drochak  <ndrochak@gol.com>
855
856         * IServiceProvider.cs: Add missing attribute: ComVisible(false)
857         * Attribute.cs: Add missing attributes: Serializable and
858         AttributeUsage(AttributeTargets.All)
859
860 Mon Mar 4 11:26:49 CET 2002 Paolo Molaro <lupus@ximian.com>
861
862         * MonoType.cs: implemented GetConstructors(), GetFields(),
863         GetMethods(), GetProperties().
864         * Object.cs: added debugging icall obj_address().
865         * Type.cs: fixed the binding flags for some Get* methods.
866         Implemented FindMembers() as calls to the specific GetMember
867         methods.
868
869 2002-03-01  Duco Fijma  <duco@lorentz.xs4all.nl>
870         * BitConverter.cs: fixed one little bug: ToString(s, n, 0) 
871         should give an exception for n>=s.Length.
872
873 2002-03-01  Martin Baulig  <martin@gnome.org>
874
875         * Array.cs: More argument checking and bug fixing.
876
877 2002-03-01  Miguel de Icaza  <miguel@ximian.com>
878
879         * BitConverter.cs: Indentation match
880
881         * AppDomain.cs: Added MonoTODOs to this too.
882
883         * Buffer.cs: Added MonoTODOs to this.
884
885 2002-03-01  Martin Baulig  <martin@gnome.org>
886
887         * Array.cs: Added argument checking to all methods where it was missing.
888
889 2002-03-01  Duco Fijma  <duco@lorentz.xs4all.nl>
890
891         * BitConverter.cs: Fixed bugs in ToString methods
892
893 Fri Mar 1 15:20:00 CET 2002 Paolo Molaro <lupus@ximian.com>
894
895         * MulticastDelegate.cs: implement operators so mcs3 can be used on linux.
896
897 2002-03-01  Nick Drochak  <ndrochak@gol.com>
898
899         * BitConverter.cs: Throw ArgumentException like mscorlib, instead of
900         ArgumentOutOfRangeException like the docs say.
901
902 2002-03-01  Martin Baulig  <martin@gnome.org>
903
904         * Enum.cs (CompareTo): Correctly override this method from IComparable.
905
906         * Console.cs (setIn, setOut, setError): It's called SetIn, SetOut, SetError.
907
908 2002-02-28  Martin Baulig  <martin@gnome.org>
909
910         * String.cs: This file now passes the testsuite on Linux :-)
911         
912         * String.cs (Intern, IsInterned): The interncalls are now called _Intern and _IsInterned;
913         make them private and provide C# wrappers which do proper argument checking.
914
915         * String.cs (Format): Correctly handle escaped brackets.
916
917         * String.cs (_CompareChar): New internal function which compares two chars.
918         (_Compare): Provide an internal compare method which can do all sorts of
919         comparision and call it from all the Compare() methods. Also fixed a lot of
920         bugs here, this code now actually passes the testsuite.
921
922 2002-02-28  Duncan Mak  <duncan@ximian.com>
923
924         * Convert.cs: Added the missing methods. The new class status page
925         kicks ass, it even found my typos! Woohoo!
926         (ConvertFromBase): Moved the Exception throwing in here and
927         removed the other occurances so it's all centralized now.
928         (ISDBNull): Implemented.
929         (GetTypeCode): Implemented.
930
931 2002-02-27  Duco Fijma  <duco@lorentz.xs4all.nl>
932         * Guid.cs: Guid.ToString("") and Guid.ToString(null) is now understood as Guid.ToString("D") 
933         just as in mscorlib. There is (probably) a documentation bug in the MS FrameWork SDK, which
934         states that a lacking format should be interpreted as "N".  
935         Also added [Serializable] attribute
936         * TimeSpan.cs: some formatting and added the [Serializable] attribute
937
938 2002-02-26  Duncan Mak  <duncan@ximian.com>
939
940         * WeakReference.cs: Committed for Ajay Kumar Dwivedi.   
941
942 2002-02-26  Martin Baulig  <martin@gnome.org>
943
944         * TimeZone.cs: Use an internal enum rather than magic numbers to access the
945         fields of the interncall GetTimeZoneData.
946
947         * DateTime.cs: Implemented Parse and fixed a few bugs.
948
949         * String.cs (TrimStart): Small fix.
950
951 2002-02-26  Martin Baulig  <martin@gnome.org>
952
953         * DateTime.cs: ParseExact is now fully functional.
954
955         * String.cs (TrimEnd): Small fix.
956
957 2002-02-26  Duco Fijma <duco@lorentz.xs4all.nl>
958         * TimeSpan.cs: Added method TimeSpan.FromMilliseconds, mysteriously 
959         missing for about six months.
960
961 Tue Feb 26 14:21:19 CET 2002 Paolo Molaro <lupus@ximian.com>
962
963         * UInt64.cs: fixed Parse method () to handle some of the NumberStyle flags.
964
965 2002-02-26  Martin Baulig  <martin@gnome.org>
966
967         * DateTime.cs: Miguel already committed this, but there was still a
968         ChangeLog entry for this missing ....
969         We're now reusing functionality from TimeSpan, printing dates is
970         fully implemented, currently working on parsing.
971
972         * TimeZone.cs: Fully implemented this. There's a new InternCall in the
973         runtime for this.
974
975 Fri Feb 22 18:47:08 CET 2002 Paolo Molaro <lupus@ximian.com>
976
977         * MonoType.cs: disable constructor.
978         * Object.cs: make GetType() an internalcall.
979         * Type.cs: added correct bindingflags to GetMethods ().
980         All such calls should be reviewed to use the correct flags.
981
982 Thu Feb 21 19:23:46 CET 2002 Paolo Molaro <lupus@ximian.com>
983
984         * Type.cs, MonoType.cs: type_is_subtype_of () changed to include extra
985         argument.
986
987 Thu Feb 21 16:56:51 CET 2002 Paolo Molaro <lupus@ximian.com>
988
989         * Type.cs: implemented IsAssignableFrom.
990
991 2002-02-21  Duco Fijma <duco@lorentz.xs4all.nl>
992         * Guid.cs: fixed Guid.Guid(string) ctor. Changed format:
993         "{0xdddddddd,0xdddd,0xdddd,{0xdd},{0xdd},{0xdd},{0xdd},{0xdd},{0xdd}}" 
994         to "{0xdddddddd,0xdddd,0xdddd,{0xdd,0xdd,0xdd,0xdd,0xdd,0xdd}}" 
995         The former is documented by Microsoft. The latter is how they
996         actually implemented it in mscorlib:-)
997
998 Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>
999
1000         * MonoCustomAttrs.cs: hooks to get the custom attributes from the
1001         runtime.
1002         * MonoType.cs: Implemented custom attributes methods.
1003
1004
1005 2002-02-21  Duco Fijma <duco@lorentz.xs4all.nl>
1006         * Guid.cs: 
1007
1008 Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>
1009
1010         * MonoCustomAttrs.cs: hooks to get the custom attributes from the
1011         runtime.
1012         * MonoType.cs: Implemented custom attributes methods.
1013
1014 2002-02-19  Dietmar Maurer  <dietmar@ximian.com>
1015
1016         * Array.cs (CopyTo): use GetLength() instead of GetUpperBound() 
1017
1018 2002-02-19  Duncan Mak  <duncan@ximian.com>
1019
1020         * Convert.cs: Finished up the missing methods in Convert. Added a
1021         new private method ConvertFromBase.
1022
1023 2002-02-19  Dietmar Maurer  <dietmar@ximian.com>
1024
1025         * String.cs: impl. IConvertible interface
1026
1027 2002-02-18  Duco Fijma <duco@lorentz.xs4all.nl>
1028         * Guid.cs: actual implementation for Guid.Guid(string) Ctor
1029
1030 2002-02-18  Duncan Mak  <duncan@ximian.com>
1031
1032         * Convert.cs: Changed from using Type.GetType (string) to just
1033         typeof (). Probably will speed things up a bit?         
1034
1035 2002-02-18  Ajay Kumar Dwivedi <AjayKumar.Dwivedi@dresdner-bank.com>
1036
1037         * Array.cs:         
1038         1. Fix for GetUpperBound to return correct values
1039         2. made some Properties virtual
1040         3. Adds IsFixedSize and IsReadOnly properties.
1041         4. changes CreateInstance(Type,int[],int[]) to throw Exception
1042         when third arg is null. InternalCall CreateInstance changed to  
1043         CreateInstanceImpl
1044         5. Fixed array.GetUpperBound at a couple of places
1045         6. IndexOf and LastIndexOf now use Object.Equals instead of "=="
1046         7. Added two FIXME's in BinarySearch functions.
1047
1048 2002-02-17  Duncan Mak  <duncan@ximian.com>
1049
1050         * TimeZone.cs:  Applied the rest of Ajay's patch for    
1051         IsDaylightSavingTime. Thanks a lot for the nice explanation of how
1052         it works!
1053
1054 2002-02-17  Duco Fijma  <duco@lorentz.xs4all.nl>
1055         * Guid.cs: added stub for Guid(string) ctor
1056
1057 2002-02-17  Duncan Mak  <duncan@ximian.com>
1058
1059         * Convert.cs: Near-complete implementation of Convert.cs
1060
1061         Added all the To* methods taking (object) and
1062         (object, IFormatProvider) as parameters.
1063
1064         Added [CLSCompliant (false)] attributes to methods dealing with
1065         unsigned types.
1066
1067         Added the missing section on converting to and from DateTime. Only
1068         6 missing methods, all marked with MonoTODOs. Will tackle them later.           
1069
1070 2002-02-16  Duncan Mak  <duncan@ximian.com>
1071
1072         * TimeZone.cs: patch from Ajay Kumar Dwivedi (adwiv@yahoo.com) to
1073         make IsDaylightSavingTime (DateTime) call 
1074         IsDaylightSavingTime (DateTime, DaylightTime).  
1075         
1076         Added internal class CurrentTimeZone from Ajay. It needs more work
1077         to fill in the appropriate internal calls.
1078         
1079 Sat Feb 16 12:41:41 CET 2002 Paolo Molaro <lupus@ximian.com>
1080
1081         * Type.cs: fix IsClass.
1082
1083 Sat Feb 16 12:02:02 CET 2002 Paolo Molaro <lupus@ximian.com>
1084
1085         * String.cs: fix Trim().
1086
1087 Fri Feb 15 21:02:46 CET 2002 Paolo Molaro <lupus@ximian.com>
1088
1089         * String.cs: fix more off by one errors.
1090
1091 Thu Feb 14 18:54:09 CET 2002 Paolo Molaro <lupus@ximian.com>
1092
1093         * MonoType.cs: fix IsValueTypeImpl.
1094         * Type.cs: fix IsEnum. Implement Equals methods.
1095
1096 Wed Feb 13 21:50:13 CET 2002 Paolo Molaro <lupus@ximian.com>
1097
1098         * Int32.cs: implement IConvertible interface.
1099         
1100 2002-02-12  Duncan Mak  <duncan@ximian.com>
1101
1102         * TimeZone.cs: Implemented and added to CVS.
1103
1104 2002-02-11  Duncan Mak  <duncan@ximian.com>
1105
1106         * Convert.cs: Implemented the ChangeType () methods.
1107
1108 Mon Feb 11 19:48:58 CET 2002 Paolo Molaro <lupus@ximian.com>
1109
1110         * Array.cs: make Clone() an internal call.
1111
1112 2002-02-09  Duco Fijma <duco@lorentz.xs4all.nl>
1113         * Changed Guid.NewGuid so that it can use both System.Random and 
1114           System.Security.Cryptography.RandomNumberGenerator
1115
1116 2002-02-09  Duco Fijma <duco@lorentz.xs4all.nl>
1117         * First version of Guid.NewGuid
1118
1119 2002-02-08  Duncan Mak  <duncan@ximian.com>
1120
1121         * RuntimeArgumentHandle.cs: Added to CVS.
1122
1123 Fri Feb 8 19:14:54 CET 2002 Paolo Molaro <lupus@ximian.com>
1124
1125         * CrossAppDomainDelegate.cs, AssemblyLoadEventHandler.cs,
1126         UnhandledExceptionEventHandler.cs: added delegates.
1127
1128 Fri Feb 8 18:06:20 CET 2002 Paolo Molaro <lupus@ximian.com>
1129
1130         * MarshalByRefObject.cs: add ToString () method
1131         (apparently needed by nunit).
1132         * _AppDomain.cs: uncomment ToString(): dietmar fixed the bug triggered
1133         by it in the runtime.
1134
1135 2002-02-08  Dan Lewis <dihlewis@yahoo.co.uk>
1136         
1137         * String.cs (Format): implemented
1138
1139 2002-02-07  Duncan Mak  <duncan@ximian.com>
1140         
1141         * DuplicateWaitObjectException:
1142         * InvalidCastException:
1143         * NotImplementedException:
1144         * NotSupportedException:
1145         * NullReferenceException:
1146         * OutOfMemoryException:
1147         * OverflowException:
1148         * RankException:
1149         * StackOverflowException.cs:
1150         * UnauthorizedAccessException: Added missing constructor used for serialization.
1151
1152 2002-02-07  Dietmar Maurer  <dietmar@ximian.com>
1153
1154         * String.cs (System.Compare): bug fix 
1155
1156 2002-02-06  Dietmar Maurer  <dietmar@ximian.com>
1157
1158         * Enum.cs (Parse,  GetHashCode): impl. 
1159
1160 2002-02-05  Duncan Mak  <duncan@ximian.com>
1161
1162         * DBNull.cs: This is my first crack at the DBNull class. I think I
1163         actually got most of the IConvertible methods right, but I haven't
1164         done the research to test whether or not this is the correct
1165         behavior. IConvertible.ToType () is the most iffy of all, IMHO.
1166
1167         * DllNotFoundException.cs: Inherits from TypeLoadException, not SystemException.
1168
1169 2002-02-05  Dietmar Maurer  <dietmar@ximian.com>
1170
1171         * Enum.cs: added more functionality (GetName, ToObject, Equals)
1172
1173 2002-01-31  Duncan Mak  <duncan@ximian.com>
1174
1175         * InvalidOperationException.cs:
1176         * NotFiniteNumberException.cs:
1177         * ObjectDisposedException.cs:
1178         * TypeInitializationException.cs: Added missing bits for serialization/
1179         
1180         * AppDomainUnloadedException.cs:
1181         * ApplicationException.cs:
1182         * ArgumentOutOfRangeException.cs:
1183         * ArithmeticException.cs:
1184         * ArrayTypeMismatchException:
1185         * BadImageFormatException.cs:
1186         * Exception.cs:
1187         * MissingMemberException.cs:
1188         * TypeLoadException.cs: Added missing bits for serialization.
1189
1190 2002-01-30  Duco Fijma <duco@lorentz.xs4all.nl>
1191         * Guid.cs: implemented everything but Guid.NewGuid
1192
1193 Tue Jan 29 22:32:36 CET 2002 Paolo Molaro <lupus@ximian.com>
1194
1195         * _AppDomain.cs: remove ToString() method: it doesn't seem right 
1196         to have it in this interface and it screws up the method vtable setup.
1197
1198 2002-01-28  Andrei Zmievski <andrei@php.net>
1199
1200         * Double.cs: implemented IConvertible interface.
1201
1202 2002-01-28  Miguel de Icaza  <miguel@ximian.com>
1203
1204         * ArgumentException.cs: Implement serialization constructor.
1205         (GetObjectData): Implement serializer.
1206         
1207         * ArgumentNullException.cs: Implement serialization constructor.
1208
1209         * Exception.cs: Implement serialization constructor.
1210         (GetObjectData): Implement serializer.
1211
1212 2002-01-23  Miguel de Icaza  <miguel@ximian.com>
1213
1214         * DateTime.cs (UnixEpoch): The Begining of the Unix epoch.
1215
1216 2002-01-23  Duncan Mak  <duncan@ximian.com>
1217
1218         * EntryPointNotFoundException.cs:
1219         * FormatException: Added missing constructor and related bits.
1220
1221         * TypeLoadException: Added missing constructor, methods and properties.
1222
1223 2002-01-23  Miguel de Icaza  <miguel@ximian.com>
1224
1225         * AppDomain.cs (GetAssemblies): Use foreach construct instead of
1226         manually getting the enumerator.
1227
1228         (AppDomain.AppDomain): Prime the loaded assemblies with the
1229         assemblies loaded by the runtime in our behalf.
1230
1231         * AppDomainSetup.cs: Remove private keyword, that is the default.
1232         Add a new property DisallowPublisherPolicy.
1233
1234         * AppDomain.cs (AppDomain.GetAssemblies): Implement.
1235
1236 Tue Jan 22 22:51:48 CET 2002 Paolo Molaro <lupus@ximian.com>
1237
1238         * MonoType.cs, Type.cs: many updates, corrected implementation,
1239         completed stubs.
1240
1241 2002-01-20  Andrei Zmievski <andrei@php.net>
1242
1243         * Byte.cs:
1244         * Char.cs: implemented IConvertible interface.
1245
1246         * Boolean.cs: use our own ToString() method directly.
1247
1248 2002-01-20  Duncan Mak  <duncan@ximian.com>
1249
1250         * Files I commited recently: Fixed indentation style.
1251
1252 2002-01-20 Nick Drochak  <ndrochak@gol.com>
1253
1254         * SerializableAttribute.cs: this attrib can be used on enums, structs, 
1255         and delegates too. Added the appropriate usage flags.
1256
1257 2002-01-18  Duncan Mak  <duncan@ximian.com>
1258
1259         * CharEnumerator.cs: Implemented.
1260         * String.cs (System): Fixed the GetEnumerator () method(s).
1261
1262         * ObsoleteAttribute.cs:
1263         * STAThreadAttribute.cs:
1264         * MTAThreadAttribute.cs:
1265         * ThreadStaticAttribute.cs:
1266         * LoaderOptimizationAttribute.cs:
1267         * PlatformNotSupportedException.cs:
1268         * LoaderOptimization.cs: Added to CVS.
1269
1270 2002-01-18  Duncan Mak  <duncan@ximian.com>
1271
1272         * AppDomainUnloadedException.cs:
1273         * MethodAccessException.cs:
1274         * ContextMarshalException.cs:
1275         * CannotUnloadAppDomainException.cs:
1276         * DllNotFoundException.cs:
1277         * EntryPointNotFoundException.cs:
1278         * FieldAccessException.cs:
1279         * TypeUnloadedException.cs:
1280         * MissingFieldException.cs: Added to CVS.
1281
1282         * ApplicationException.cs: 
1283         * MemberAccessException.cs:
1284         * MissingMemberException.cs
1285         * MissingMethodException.cs:
1286         * SystemException.cs: Added [Serializable] attribute.
1287
1288         * Exception.cs: Added [Serializable] attribute, made properties
1289         'Message', 'Source' and 'StackTrace' virtual methods, per 1.0
1290         spec.
1291
1292         * ContextStaticAttribute.cs: Added [Serializable] attribute and
1293         put in the missing constructor.
1294
1295         * Environment.cs: Commented out references to
1296         EnvironmentPermissionAttribute, because they're just stubbed out
1297         right now and has no implementation.
1298
1299 2002-01-16  Andrei Zmievski <andrei@php.net>
1300
1301         * Boolean.cs: implemented IConvertible interface
1302
1303 2002-01-15  Nick Drochak  <ndrochak@gol.com>
1304
1305         * ResolveEventArgs.cs: class should derive from EventArgs.
1306
1307 2002-01-14  Miguel de Icaza  <miguel@ximian.com>
1308
1309         * String.cs (System): Use DefaultMemberName for the String class.
1310
1311 Mon Jan 14 17:06:40 CET 2002 Paolo Molaro <lupus@ximian.com>
1312
1313         * String.cs: use IndexerName in index char accessor.
1314
1315 Thu Jan 10 21:05:23 CET 2002 Paolo Molaro <lupus@ximian.com>
1316
1317         * MonoType.cs: add rank to MonoTypeInfo and implement GetArrayRank.
1318         * String.c: eliminate 64k+ method calls in search.
1319         * Type.cs: handle byref and array types in ToString ().
1320
1321 2002-01-09  Duco Fijma <duco@lorentz.xs4all.nl>
1322
1323         * Guid.cs: created first version
1324
1325 2002-01-10  Dietmar Maurer  <dietmar@ximian.com>
1326
1327         * MonoType.cs: added missing TypeAttributes to MonoTypeInfo 
1328
1329 Wed Jan 9 19:35:07 CET 2002 Paolo Molaro <lupus@ximian.com>
1330
1331         * MulticastDelegate.cs: add == and != operator stubs.
1332         * String.cs: check for null in == operator.
1333         * Type.cs: use a virtual method to get TypeAttributes.
1334
1335 Tue Jan  8 23:30:19 EST 2002 Matt Kimball <matt@kimball.net>
1336         * String.cs: Fixed several off-by-one errors in LastIndexOf* methods
1337
1338 2002-01-09  Nick Drochak  <ndrochak@gol.com>
1339         
1340         * Environment.cs: Comment out Security attribute and put a MonoTODO
1341         there as a reminder.  We need mcs magic to handle security attributes in
1342         corlib.
1343
1344 2002-01-07  Duco Fijma <duco@lorentz.xs4all.nl>
1345         * Created IAppDomainSetup.cs
1346
1347 2002-01-06  Duco Fijma <duco@lorentz.xs4all.nl>
1348         * Created System._AppDomain interface in _AppDomain.cs
1349
1350 2002-01-06  Nick Drochak  <ndrochak@gol.com>
1351
1352         * ResolveEventArgs.cs: New File, completely implemented! ;)
1353
1354 Sat Jan 5 15:53:50 CET 2002 Paolo Molaro <lupus@ximian.com>
1355
1356         * Enum.cs: dummy ToString impl.
1357         * String.cs: dummy format implementations to get compiler errors
1358         somewhat working.
1359         * Type.cs: implemented filter delegates. FindMembers runs the filter, now.
1360
1361 2002-01-05  Ravi Pratap  <ravi@ximian.com>
1362
1363         * TODOAttribute.cs : Augment some more; provide two constructors
1364         with support for a comment too.
1365
1366 2002-01-05  Nick Drochak  <ndrochak@gol.com>
1367
1368         * Uncommented those MonoTODO's now that Ravi's got
1369         the class in there
1370
1371 2001-01-04  Ravi Pratap  <ravi@ximian.com>
1372
1373         * TODOAttribute.cs : Actually add this time ;-)
1374
1375         Change name to MonoTODO.
1376
1377 2002-01-04  Jeffrey Stedfast  <fejj@ximian.com>
1378
1379         * String.cs (Trim): Fixed a few logic bugs in the code that
1380         calculated how much to trim off the end of the string.
1381
1382 2001-01-04  Nick Drochak  <ndrochak@gol.com>
1383         
1384         * Commented out the [TODO] attributes for now.  We don't have the
1385         class written.  Also changed it to [MonoTODO]
1386
1387 2002-01-04  Ravi Pratap  <ravi@ximian.com>
1388
1389         * TODOAttribute.cs : Add. We use this attribute to tag all bits in
1390         our class libraries that are incomplete.
1391
1392         * Array.cs : Apply attribute wherever we find a FIXME which says
1393         we need something to be implemented there.
1394
1395         * Int32.cs : Ditto.
1396
1397         * MulticastDelegate.cs : Ditto.
1398
1399         * RuntimeFieldHandler.cs, RuntimeMethodHandle.cs,
1400         RuntimeTypeHandle.cs : Ditto.
1401
1402         * String.cs : Ditto.
1403
1404         * Type.cs : Ditto.
1405
1406         * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs, Delegate.cs : Ditto.
1407
1408         * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs, Single.cs, 
1409         UInt16.cs, UInt32.cs, ValueType.cs: Ditto.
1410
1411         * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs,
1412         Delegate.cs : Ditto.
1413
1414         * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs,
1415         Single.cs, UInt16.cs, UInt32.cs, ValueType.cs: Ditto.
1416         
1417 Thu Jan 3 23:24:04 CET 2002 Paolo Molaro <lupus@ximian.com>
1418
1419         * Delegate.cs: add Remove() stub.
1420         * Enum.cs: add ToObject().
1421         * Type.cs: add IsEnum property.
1422
1423 2002-01-03  Kristian Rietveld  <kris@gtk.org>
1424
1425         * Convert.cs: add non-CLS-compliant ToBoolean methods for char,
1426         DateTime and object.
1427
1428 2001-12-30  Nick Drochak  <ndrochak@gol.com>
1429
1430         * Byte.cs (Parse): Add comments to aid in testing.
1431
1432 2001-12-21  Miguel de Icaza  <miguel@ximian.com>
1433
1434         * Char.cs (Parse): Implement.
1435
1436         * Byte.cs (Parse): Implement a fast parser.
1437         
1438         * SByte.cs (Parse): Implement a fast parser.
1439
1440         * UInt16.cs (Parse): Implement a fast parser.
1441         
1442         * Int16.cs (Parse): Implement a fast parser.
1443
1444         * UInt32.cs (Parse): Implement a fast parser.
1445
1446         * Int32.cs (Parse): Implement a fast parser.
1447
1448 Fri Dec 21 15:14:52 CET 2001 Paolo Molaro <lupus@ximian.com>
1449
1450         * Array.cs: fix null ref in sort code.
1451         * UInt64.cs: add bare-bones parse.
1452
1453 Thu Dec 20 15:29:52 CET 2001 Paolo Molaro <lupus@ximian.com>
1454         
1455         * Byte.cs: removed use of Regexes.
1456
1457 Tue Dec 18 18:39:54 CET 2001 Paolo Molaro <lupus@ximian.com>
1458
1459         * Enum.cs: implemented GetValues(), GetNames(), GetName(),
1460         IsDefined(), GetUnderlyingType().
1461         * String.cs: fix one instance of Compare().
1462         * Type.cs: implemented GetProperties(), GetProperty().
1463
1464 Thu Dec 13 20:10:57 CET 2001 Paolo Molaro <lupus@ximian.com>
1465
1466         * Array.cs: implement CopyTo ().
1467         * Char.cs: implement ToString ().
1468         * Exception.cs: bugfix.
1469         * Int32.cs: bare-bones Parse ().
1470         * MonoType.cs: query the needed info with an internalcall.
1471         * String.cs: speedups, bugfixes, reduced copies.
1472         * Type.cs: added missing fields. Implemented many of the Is*
1473         properties. Implemented GetMethod(), GetConstructor(), GetMethods(),
1474         GetFields(), FindMembers(), ToString().
1475         
1476 2001-12-11  Dick Porter  <dick@ximian.com>
1477
1478         * DateTime.cs: Implemented FromFileTime() and ToFileTime()
1479
1480         * Console.cs: Use handles rather than casting file descriptors
1481
1482 2001-12-08  Nick Drochak  <ndrochak@gol.com>
1483
1484         * Byte.cs (Parse): Start implementation. Parse(string) works, but
1485         now we need to handle other formats
1486
1487 2001-12-06  Dietmar Maurer  <dietmar@ximian.com>
1488
1489         * DateTime.cs: added an icall to GetNow()
1490
1491 2001-12-04  Dietmar Maurer  <dietmar@ximian.com>
1492
1493         * Double.cs: added the parse method from Bob Smith
1494
1495 2001-11-28  Miguel de Icaza  <miguel@ximian.com>
1496
1497         * UInt64.cs: ditto.
1498
1499         * UInt32.cs: ditto.
1500
1501         * Int32.cs (Int32.CompareTo): Fix because we can not just
1502         substract the values.
1503
1504         Return possitive value if the object is null.
1505
1506         * Boolean.cs: (Boolean.CompareTo): ditto.
1507
1508         * Int16.cs (Int16.CompareTo): ditto.
1509
1510         * Byte.cs (Byte.CompareTo): ditto.
1511
1512         * SByte.cs (SByte.CompareTo): ditto.
1513
1514         * Char.cs (Char.CompareTo): ditto.
1515         
1516         * Decimal.cs (Decimal.CompareTo): ditto.
1517
1518         * Int64.cs (Int64.CompareTo): ditto.
1519
1520         * Single.cs: Ditto.
1521
1522         * UInt16.cs: Ditto.
1523
1524 2001-11-28  Nick Drochak <ndrochak@gol.com>
1525
1526         * Byte.cs: Throw NotImplementedException for Parse.
1527
1528 2001-11-27  Derek Holden  <dholden@draper.com>
1529
1530         * IntegerFormatter.cs: Formatting of type "Number" was not
1531         using NumberFormatInfo.NumberNegativePattern.
1532
1533 2001-11-26  Dick Porter  <dick@ximian.com>
1534
1535         * LocalDataStoreSlot.cs: No need to delete a system TLS slot in
1536         the finalise routine any more
1537
1538 2001-11-21  Miguel de Icaza  <miguel@ximian.com>
1539
1540         * ApplicationException.cs: internationalize by adding calls to
1541         Locale.GetText ().  And throw NotImplementedExceptions on calls
1542         that we have to implement.
1543
1544         * Version.cs: Ditto.
1545
1546         * ValueType.cs: ditto.
1547
1548         * UnauthorizedAccessException.cs: ditto.
1549
1550         * UInt32.cs: ditto.
1551
1552         * UInt64.cs: ditto.
1553
1554         * UInt16.cs: ditto.
1555
1556         * TypeLoadException.cs: ditto
1557
1558         * TypeInitializationException.cs: ditto.
1559
1560         * Type.cs: ditto.
1561
1562         * TimeSpan.cs: ditto.
1563
1564         * SystemException.cs: ditto.
1565
1566         * String.cs: ditto.
1567
1568         * StackOverflowException.cs: ditto.x
1569
1570         * Single.cs: ditto.
1571
1572         * SByte.cs: ditto.
1573
1574         * RuntimeTypeHandle.cs: ditto.
1575
1576         * RuntimeMethodHandle.cs: ditto.
1577
1578         * RuntimeFieldHandle.cs: ditto.
1579
1580         * Random.cs: ditto.
1581
1582         * OutOfMemoryException.cs: ditto.
1583
1584         * OperatingSystem.cs: ditto.
1585
1586         * ObjectDisposedException.cs: ditto.
1587
1588         * NullReferenceException.cs: ditto.
1589
1590         * NotImplementedException.cs: ditto.
1591
1592         * NotFiniteNumberException.cs: ditto.o
1593
1594         * MulticastNotSupportedException.cs: ditto.
1595
1596         * MissingMethodException.cs: ditto.
1597
1598         * MemberAccessException.cs: ditto.
1599
1600         * Math.cs: ditto.
1601
1602         * InvalidCastException.cs: ditto.
1603
1604         * IntegerFormatter.cs: ditto.
1605
1606         * Int32.cs: ditto.
1607
1608         * Int16.cs: ditto.
1609
1610         * IndexOutOfRangeException.cs: ditto.
1611
1612         * Environment.cs: ditto
1613
1614         * Enum.cs: ditto.
1615
1616         * DuplicateWaitObjectException.cs: ditto.
1617
1618         * DivideByZeroException.cs: ditto.
1619
1620         * Delegate.cs: ditto
1621
1622         * DecimalFormatter.cs: ditto.
1623
1624         * Decimal.cs: ditto.
1625
1626         * DateTime.cs: ditto.
1627
1628         * Convert.cs: ditto.
1629
1630         * Char.cs: ditto.
1631
1632         * Byte.cs: ditto.
1633
1634         * Boolean.cs: ditto.
1635
1636         * ArrayTypeMismatchException.cs: ditto.
1637
1638         * ArithmeticException.cs: ditto.
1639
1640         * ArgumentOutOfRangeException.cs: ditto.
1641
1642         * ArgumentNullException.cs: ditto.
1643
1644         * Enum.cs: Make it derive from ValueType, add CompareTo method.
1645
1646         * Attribute.cs: Reformat.
1647
1648 2001-11-14  Miguel de Icaza  <miguel@ximian.com>
1649
1650         * Decimal.cs, Double.cs, Byte.cs, Char.cs, Int16, UInt16, Int32,
1651         UInt32, Int64, UInt64, SByte, Single (CompareTo): Throw the
1652         exception if the value is null too.
1653
1654         * Char.cs (CompareTo): ditto.
1655
1656         * ApplicationException.cs: Added constructor that does serialization.
1657
1658         * ParamArrayAttribute.cs: Define attribute correctly.
1659
1660 Wed Nov 14 16:31:19 CET 2001 Paolo Molaro <lupus@ximian.com>
1661
1662         * AppDomain.cs: rename dummy interface _AppDomain to AppDomain_Intf.
1663         * Array.cs: fix Array.Copy.
1664         * AssemblyLoadEventArgs.cs: rename field.
1665         * CLSCompliantAttribute.cs: use correct name for the class.
1666         * Char.cs: fix IsLetter.
1667         * Console.cs, DateTime.cs, Decimal.cs, IConvertible.cs, Math.cs,
1668         SByte.cs, UInt16.cs, UInt32.cs, UInt64.cs, UIntPtr.cs: CLSCompliant updates.
1669         * Convert.cs: CLSCompliant updates, add ChangeType() methods.
1670         * Delegate.cs: renamed target field to m_target.
1671         * Enum.cs: added missing methods.
1672         * MonoType.cs: add a constructor and some needed properties.
1673         * Object.cs: implement GetType().
1674         * String.cs: CLSCompliant updates. Fixes everywhere to remove the
1675         ending 0 char.
1676         * Type.cs: add missing methods/properties.
1677
1678 2001-11-10  Sean MacIsaac  <macisaac@ximian.com>
1679
1680         * AttributeUseage.cs: Should define AttributeUsageAttribute.
1681
1682         * CLSCompliant.cs: Marked with AttributeUsage attribute.
1683
1684         * Decimal.cs: Fixed CLSCompliant attributes.
1685
1686         * Type.cs: changed _impl to internal (needs to be accessable by
1687         subclasses).
1688
1689         (TypeHandle): Marked as abstract, implementation removed.
1690
1691         (IsNotPublic, IsPublic, GetMethods, GetPropery, GetConstructor,
1692         GetMethod): Added stub implementations so NUnit would link against
1693         corlib
1694
1695 Tue Nov 6 09:11:43 CET 2001 Paolo Molaro <lupus@ximian.com>
1696
1697         * AppDomain.cs: use an internal constructor for AssemblyBuilder.
1698
1699 2001-11-05  Miguel de Icaza  <miguel@ximian.com>
1700
1701         * NonSerializedAttribute.cs: Add AttributeUsage rules for this
1702         attribute. 
1703
1704 Fri Nov 2 18:23:15 CET 2001 Paolo Molaro <lupus@ximian.com>
1705
1706         * String.cs: fix a couple of bugs.
1707         * AppDomain.cs: use new AppBuilder constructor.
1708         * Buffer.cs, GC.cs, NonSerializedAttribute.cs,
1709         NotImplementedException.cs, ObjectDisposedException.cs,
1710         UnauthorizedAccessException.cs: add implementation.
1711         * OverflowException.cs: fix class name.
1712
1713 2001-10-28  Jeffrey Stedfast  <fejj@ximian.com>
1714
1715         * String.cs: Don't use a terminating nil char for our internal
1716         array.
1717
1718 2001-10-27  Miguel de Icaza  <miguel@ximian.com>
1719
1720         * Delegate.cs (Delegate.CombineImpl): Implement.
1721         (Delegate.Combine): Implement.
1722
1723         * MulticastDelegate.cs (MulticastDelegate.Equals): Implement.
1724
1725         (MulticastDelegate.CombineImpl): This was not as trivial as I
1726         thought. 
1727
1728         * ContextStaticAttribute.cs: Added AttributeUsage to
1729         ContextStaticAttribute. 
1730
1731         * FlagsAttribute.cs: Add AttributeUsage to FlagsAttribute
1732
1733 2001-10-15  Martin Weindel <martin.weindel@t-online.de>
1734
1735         * added Decimal.cs * added DecimalFormatter.cs (internal class
1736         used from System.Decimal)
1737
1738 2001-10-11  Thomas Neidhart <tome@sbox.tugraz.at>
1739
1740         * Convert.cs: Added methods for Base64 transforming just used the
1741           existing System.Security.Cryptography.ToBase64Transform, should
1742           be changed to use a stand-alone class, e.g. Base64Encoder
1743           
1744 2001-10-10  Derek Holden  <dholden@draper.com>
1745
1746         * IntegerFormatter.cs: Added. Implements ToString for all the
1747         integer data types for all the format types.
1748
1749         * Byte.cs: Using IntegerFormatter for ToString's.
1750
1751         * SByte.cs: Using IntegerFormatter for ToString's.
1752
1753         * Int16.cs: Using IntegerFormatter for ToString's.
1754
1755         * Int32.cs: Using IntegerFormatter for ToString's.
1756
1757         * Int64.cs: Using IntegerFormatter for ToString's.
1758
1759         * UInt16.cs: Using IntegerFormatter for ToString's.
1760
1761         * UInt32.cs: Using IntegerFormatter for ToString's.
1762
1763         * UInt64.cs: Using IntegerFormatter for ToString's.
1764
1765 2001-10-07  Miguel de Icaza  <miguel@ximian.com>
1766
1767         * Exception.cs: Implement bits of serialization.
1768
1769         * RuntimeFieldHandle.cs: Implement Serialization features.
1770
1771         * Type.cs: Implement TypeHandle property.
1772
1773 2001-09-28  Dick Porter  <dick@ximian.com>
1774
1775         * LocalDataStoreSlot.cs: Implemented
1776
1777 Tue Sep 25 19:58:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
1778
1779         * String.cs: fix off-by-one error in Trim().
1780
1781 Tue Sep 25 18:52:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
1782
1783         * Type.cs: added GetType () method.
1784
1785 Tue Sep 25 17:29:02 CEST 2001 Paolo Molaro <lupus@ximian.com>
1786
1787         * MissingMethodException.cs, MissingMemberException.cs,
1788         MemberAccessException.cs: added.
1789
1790 Tue Sep 25 16:46:43 CEST 2001 Paolo Molaro <lupus@ximian.com>
1791
1792         * String.cs: don't access the string array out of bounds in
1793         LastIndexOf.  * Type.cs: fix return type of the Assembly property.
1794
1795 Mon Sep 24 20:35:24 CEST 2001 Paolo Molaro <lupus@ximian.com>
1796
1797         * String.cs: make Intern and IsIntern internalcalls.
1798
1799 2001-09-13  Dick Porter  <dick@ximian.com>
1800
1801         * Type.cs: Added a stub for the IsValueType property.
1802
1803         * SystemException.cs (System): Added the other constructor, so
1804         that System.Threading exceptions can inherit it.
1805
1806 2001-09-08  Jeffrey Stedfast  <fejj@ximian.com>
1807
1808         * String.cs (TrimStart): Don't keep looping through the trimchars
1809         once we've found a match.
1810         (TrimEnd): Same here.
1811         (Trim): And finally here.
1812
1813 2001-09-07  Ravi Pratap  <ravi@ximian.com>
1814
1815         * Char.cs (IsLetterOrDigit): Implement.
1816         (IsLower): Implement, but we need to be Unicode aware.
1817         (IsNumber): Implement.
1818         (IsPunctuation): Implement.
1819         (IsWhiteSpace): Implement.
1820         (ToUpper): Fix to subtract 32 from the ASCII value, not 33 :)
1821         (ToLower): Same here.
1822
1823 2001-09-04  Miguel de Icaza  <miguel@ximian.com>
1824
1825         * Object.cs: Shortcut, if (a == b) then return true.
1826
1827 Fri Sep 7 18:34:48 CEST 2001 Paolo Molaro <lupus@ximian.com>
1828
1829         * Delegate.cs: we need a pointer to the method thunk in
1830         the delegate object.
1831
1832 Fri Sep 7 12:28:01 CEST 2001 Paolo Molaro <lupus@ximian.com>
1833
1834         * AsyncCallback.cs, common.src: add AsyncCallback delegate.
1835
1836 2001-09-06  Jeffrey Stedfast  <fejj@ximian.com>
1837
1838         * String.cs (System): Don't mix uint and int.
1839
1840 2001-09-04  Jeffrey Stedfast  <fejj@ximian.com>
1841
1842         * String.cs (BoyerMoore): Modified to not use pointers and to instead
1843         use indexes.
1844         (IndexOf): Use BoyerMoore.
1845
1846 2001-09-02  Miguel de Icaza  <miguel@ximian.com>
1847
1848         * All over: Use the autogenerated enumerations from the ECMA
1849         documentation that Sergey wrote.
1850         
1851         * PlatformID.cs: Add Unix definition.
1852
1853         * OperatingSystem.cs: Use Unix instead of Linux here.
1854
1855         * MarshalByRefObject.cs: Mark class as [Serializable].
1856
1857 2001-08-28  Dietmar Maurer  <dietmar@ximian.com>
1858
1859         * Console.cs: impl. (write only)
1860         implemented the stdin stuff
1861
1862         * Int32.cs: impl. real op_Equal
1863
1864 2001-08-24  Miguel de Icaza  <miguel@ximian.com>
1865
1866         * (common.src): Removed IAsyncResult as it is not on CVS yet.
1867
1868         * UIntPtr.cs: Removed CLSCompliant attribute before the namespace,
1869         as it breaks the build.
1870
1871 2001-08-23  Michael Lambert <michaellambert@email.com>
1872
1873         * IntPtr.cs: Optimized unsafe declaration, implemented GetObjectData, 
1874         added CLSCompliant attribute
1875
1876         * IAsyncResult.cs: Added
1877
1878         * common.src: Added IAsyncResult.cs
1879
1880 2001-08-23  Michael Lambert <michaellambert@email.com>
1881
1882         * UIntPtr.cs: Added
1883
1884         * common.src: Added UIntPtr.cs
1885
1886 2001-08-20  Dietmar Maurer  <dietmar@ximian.com>
1887
1888         * Attribute.cs: uncomment some code to make it compile again
1889
1890         * mono.src: removed duplicated Attribute.cs
1891
1892 2001-08-16  Nick Drochak <ndrochak@gol.com>
1893
1894         * Attribute.cs: implemented all methods except GetHashCode()
1895
1896         * common.src: added Attribute.cs so it would compile in
1897
1898 2001-08-10  Dietmar Maurer  <dietmar@ximian.com>
1899
1900         * Object.cs: changed MemberWiseClone to MemberwiseClone, and
1901         marked it as InternalCall
1902         
1903         * common.src: removed UriFormatException.cs because the file is
1904         not there.
1905
1906         * RuntimeTypeHandle.cs: replaced IntrPtr with IntPtr
1907         * Char.cs: replaced byte with char
1908
1909         * Array.cs: make it work with the mono interpreter
1910
1911 2001-08-06  Miguel de Icaza  <miguel@ximian.com>
1912
1913         * Version.cs: Make the class sealed
1914
1915 2001-08-08  Bob Smith  <bob@thestuff.net>
1916
1917         * Random.cs: Many compile fixes.
1918         * Random.cs: I read a bad spec. Class updated to match real spec.
1919
1920 2001-08-06  Miguel de Icaza  <miguel@ximian.com>
1921
1922         * IntPtr.cs: Added and Completed implementation.
1923
1924         * Uri.cs: Add a note.
1925
1926 2001-08-06  Bob Smith  <bob@thestuff.net>
1927
1928         * Random.cs: Compile fix. Needs more testing.
1929
1930 2001-08-06 Garrett Rooney <rooneg@electricjellyfish.net>
1931
1932         * Uri.cs: Initial Implementation.  Parsing needs to be fixed to take 
1933         into account IPv6 addresses, url encoding needs to be implemented, and 
1934         various minor methods need to be written, but this is a decent start.
1935
1936 2001-08-06  Dietmar Maurer  <dietmar@ximian.com>
1937
1938         * common.src: added Object.cs
1939
1940         * mono.src: added ValueType.cs
1941
1942 2001-08-02  Dietmar Maurer  <dietmar@ximian.com>
1943
1944         * Math.cs: replaced libc with libm
1945
1946 2001-08-02  Bob Smith  <bob@thestuff.net>
1947
1948         * Random.cs: Implemented. Needs testing.
1949
1950 2001-08-02  Miguel de Icaza  <miguel@ximian.com>
1951
1952         * IServiceProvider.cs, EventHandler.cs: New files.
1953
1954 2001-08-02  Marcel Narings  <marcel@narings.nl>
1955         
1956         * DateTime.cs: Cleaned up a bit. Added the Add* family members.
1957         Added exceptions. Added IConvertible. Still needs some platform 
1958         dependend stuff, the Parse and ToString members
1959
1960 2001-08-01  Dietmar Maurer  <dietmar@ximian.com>
1961
1962         * Type.cs (GetTypeFromHandle): added placeholder 
1963
1964 2001-07-24  Derek Holden  <dholden@draper.com>
1965
1966         * Boolean.cs: Formatted to code style standard. Added GetTypeCode
1967         which is really an IConvertible defined method.
1968
1969         * Byte.cs: Added a missing Parse method. Put in Parse and ToString
1970         behavior, still need to do the main Parse and ToString.
1971
1972         * Char.cs: Added a bunch of missing ECMA methods. Commented a
1973         specification discrepency. Still didn't any unicode stuff, though
1974         every IsFoo(char c) method has an IsFoo(string, index)
1975         counterpart, added wrappers for those.
1976         
1977         * Convert.cs: Fixed NaN/Inf checking and double/float
1978         rounding. Added ToType for IConvertible classes
1979
1980         * Double.cs: Fixed ECMA min and max values. Added IsInfinity /
1981         IsNaN methods. Changed Inf/NaN internals.
1982
1983         * IConvertible.cs: Added comments for using
1984         Convert.ToType. Changed return values to draft base values.
1985
1986         * Int16.cs: Added a missing Parse statement. Put in behavior for
1987         overloaded ToString and Parse methods.
1988
1989         * Int32.cs: Added a missing Parse statement. Put in behavior for
1990         overloaded ToString and Parse methods.
1991
1992         * Int64.cs: Added a missing Parse statement. Put in behavior for
1993         overloaded ToString and Parse methods.
1994         
1995         * Single.cs: Put in ECMA epsilon value. Added IsInfinity / IsNaN
1996         methods. Changed Inf/NaN internals.
1997
1998         * SByte.cs: Added a missing Parse method. Put in Parse and
1999         ToString behavior, still need to do the main Parse and ToString.
2000
2001         * UInt16.cs: Added a missing Parse statement. Put in behavior for
2002         overloaded ToString and Parse methods.
2003
2004         * UInt32.cs: Added a missing Parse statement. Put in behavior for
2005         overloaded ToString and Parse methods.
2006
2007         * UInt64.cs: Added a missing Parse statement. Put in behavior for
2008         overloaded ToString and Parse methods.
2009         
2010 2001-07-20  Miguel de Icaza  <miguel@ximian.com>
2011
2012         * MulticastDelegate.cs: New File.
2013
2014         * Delegate.cs: New file.
2015
2016         * Enum.cs: New file.
2017
2018         * Attribute.cs: New file.
2019
2020         * Type.cs: New file.
2021
2022         * ParamArrayAttribute.cs: New file.
2023
2024         * RuntimeTypeHandle.cs: New file.
2025
2026         * MulticastDelegate.cs: Added.
2027
2028         * DateTime.cs: Added
2029
2030         * Delegate.cs: Added
2031
2032 2001-07-18  Michael Lambert <michaellambert@email.com>
2033
2034         * AttributeTargets.cs: Add.
2035
2036 2001-07-19  Jeffrey Stedfast  <fejj@ximian.com>
2037
2038         * Char.cs: Made ToUpper and ToLower public methods.
2039
2040         * String.cs: Lots and lots of compile fixes - just need to write
2041         DateTime.cs and this should build completely now.
2042
2043 2001-07-19  Bob Smith (bob@thestuff.net)
2044
2045         * Math.cs: Implemented. 
2046
2047 2001-07-19  Miguel de Icaza  <miguel@ximian.com>
2048
2049         * String.cs: Removed tolower and toupper.
2050
2051         * Char.cs: Moved ToLower and ToUpper from string to here. 
2052
2053         * Convert.cs ToByte (float value), ToByte (double value) Use IsNan
2054         instead of comparing the value to Nan.
2055
2056 2001-07-19  Duco Fijma (duco@lorentz.xs4all.nl)
2057
2058         * TimeSpan.cs: New implementation.
2059
2060 2001-07-18  Scott Sanders <scott@stonecobra.com>
2061
2062          * UriFormatExcpetion.cs: Add - 85% complete
2063
2064 2001-07-17  Jeffrey Stedfast  <fejj@ximian.com>
2065
2066         * String.cs (IndexOf): Slight optimization that allows skipping
2067         over a few chars here and there. This isn't as good as using my
2068         Boyer-Moore implementation, however, Boyer-Moore is only really
2069         good for long strings (I plan on making the code decide which
2070         string search algorithm it should use on-the-fly at some point).
2071         (LastIndexOf): Fix to work correctly.
2072         (BoyerMoore): Took out some unneeded code and fixed an edge-case.
2073
2074 2001-07-16  Michael Lambert <michaellambert@email.com>
2075
2076         * EventArgs.cs: Add.
2077         
2078 2001-07-16  Miguel de Icaza  <miguel@ximian.com>
2079
2080         * Version.cs: Remove my buggy comment.
2081
2082 2001-07-15  Sean MacIsaac  <macisaac@ximian.com>
2083
2084         * String.cs: Spelling error of IComparable, object's
2085         MemberwiseClone cannot be overridden.  Made indexer valid for now,
2086         but not sure what to do about this in the long run.  Seems to be a
2087         couple bugs in csc.exe having to do with multiple pointer defs in
2088         the same statement, and returning subclasses of a class in the
2089         return type of an interface function implementation.  Also moved
2090         operators inside of class definition.
2091
2092 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
2093
2094         * String.cs: A tom of compile fixes, although we still don't compile.
2095
2096         * IConvertible.cs: The To*Int64() methods return *Int64's, not
2097         *Int32's. Also, it's ToDateTime() not ToDateType().
2098
2099 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
2100
2101         * String.cs: Apparently I needed to at least write stubs for the
2102         IConvertible interfaces. *sigh*
2103
2104 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
2105
2106         * String.cs: Many logic/other fixes and better usage of the
2107         features of c#
2108         (tolower): New convenience method to help condense code.
2109         (toupper): Another new helper method.
2110         (Compare): Use the new helper methods.
2111         (ToLower): use tolower().
2112         (ToUpper): use toupper().
2113         (LastIndexOfAny): Implemented.
2114         (BoyerMoore): New private helper method that implements a modified
2115         version of the Boyer-Moore search algorithm. Noothing uses it yet
2116         as I'm not 100% sure it even works properly with unicode strings
2117         not to mention it uses a huge lookup-table :-)
2118         (Split): Implemented.
2119
2120 2001-07-13  Jeffrey Stedfast  <fejj@ximian.com>
2121
2122         * TODO: Added things that need to be finished in System.String
2123
2124         * String.cs: New source file implementing the System.String class
2125
2126 2001-07-12  Sean MacIsaac  <macisaac@ximian.com>
2127
2128         * TypeCode.cs: UInt64 was UInt63.
2129
2130         * Object.cs: Fixed a numer of compiler errors.
2131
2132         * Array.cs: Fixed some compiler errors.
2133
2134         * IComparable.cs: Fixed some compiler errors.
2135
2136         * ICloneable.cs: Fixed some compiler errors.
2137
2138         * IConvertible.cs: Fixed some compiler errors.
2139
2140         * IFormattable.cs: Fixed a compiler error.
2141
2142         * IFormatProvider.cs: Fixed a compiler error.
2143
2144         * IDisposable.cs: Fixed a compiler error.
2145
2146         * IFormatProvider.cs: Added public accesability type to
2147         IFormatProvider.
2148
2149         * Exception.cs: Added a using statement to remove compile time
2150         error.
2151
2152         * ApplicationException.cs: Removed a ; that was causing a compiler
2153         error.
2154
2155         * Int16.cs: Fixed some compiler errors.
2156
2157         * Int32.cs: Fixed some compiler errors.
2158
2159         * Int64.cs: Fixed some compiler errors.
2160
2161         * SystemException.cs: Fixed a compiler error.
2162
2163         * UInt16.cs: Fixed some compiler errors.
2164
2165         * UInt32.cs: Fixed some compiler errors.
2166
2167         * UInt64.cs: Fixed some compiler errors.
2168
2169         * Void.cs: Fixed a compiler error.      
2170
2171 2001-07-12  Joe Shaw  <joe@ximian.com>
2172
2173         * Array.cs: Fix backwards parameters to Array.SetValue()
2174         throughout.
2175         (BinarySearch): Fix backward logic surrounding whether to call
2176         value.CompareTo or comparer.Compare.
2177         (LastIndexOf): Stop being stupid. I am so not used to strongly
2178         bounded arrays...
2179         (Sort): Implement a quicksort.
2180
2181 2001-07-11  Joe Shaw  <joe@ximian.com>
2182
2183         * Array.cs: Change all instances of trying to access an array with
2184         the index operator to calls to GetValue and SetValue, and add
2185         InternalGetValue and InternalSetValue which are internal calls
2186         into the runtime. Ew.
2187
2188 2001-07-10  Joe Shaw  <joe@ximian.com>
2189
2190         * Array.cs: Implemented everything but Sort().
2191
2192 2001-07-09  Jeffrey Stedfast  <fejj@ximian.com>
2193
2194         * Object.cs (Object::Equals): Object variable name is `o'.
2195
2196 2001-07-06  Joe Shaw  <joe@ximian.com>
2197
2198         * Int16.cs, Int32.cs, Int64.cs, UInt16.cs, UInt32.cs, UInt64.cs:
2199         Implement the IComparable and IFormattable interfaces. Fix a typo
2200         (publig -> public)
2201
2202         * ApplicationException.cs, ArgumentException.cs,
2203         ArgumentNullException.cs, ArgumentOutOfRangeException.cs,
2204         ArtithmeticException.cs, ArrayTypeMismatchException.cs,
2205         DivideByZeroException.cs, DuplicateWaitObjectException.cs,
2206         ExecutionEngineException.cs, FormatException.cs,
2207         IndexOutOfRangeException.cs, InvalidCastException.cs,
2208         InvalidOperationException.cs, InvalidProgramException.cs,
2209         MulticateNotSupportedException.cs, NotFiniteNumberException.cs,
2210         NotSupportedException.cs, NullReferenceException.cs,
2211         OutOfMemoryException.cs, OverflowException.cs, RankException.cs,
2212         StackOverflowException.cs, SystemException.cs,
2213         TypeInitializationException.cs: Added all of the exceptions
2214         specified by the language spec. Mmmm... bloat.
2215
2216 2001-07-06  Miguel de Icaza  <miguel@ximian.com>
2217
2218         * Int64.cs, Int32.cs: Put.  Parsing and ToString missing.  Should
2219         do a generic routine all of these guys use.
2220
2221         * Int16.cs: identified missing methods.
2222
2223         * UInt16.cs, UInt32.cs, UInt64.cs: Add.
2224
2225 2001-06-26  Miguel de Icaza  <miguel@ximian.com>
2226
2227         * TypeCode.cs: Implement
2228
2229         * Void.cs: Implement.
2230
2231         * TODO: Add file to keep track of pending tasks.
2232
2233         * Object.cs, ValueType.cs: Implement.