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