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