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