2008-08-02 Marek Safar <marek.safar@gmail.com>
[mono.git] / mcs / class / corlib / System / ChangeLog
1 2008-08-02  Marek Safar  <marek.safar@gmail.com>
2
3         * Type.cs: Removed _MemberInfo from base classes list.
4         
5 2008-07-28  Marek Safar  <marek.safar@gmail.com>
6
7         * KnownTerminals.cs: Don't initialize rarely used static data.
8
9 2008-07-24  Zoltan Varga  <vargaz@gmail.com>
10
11         * Delegate.cs: Move the rarely used fields to a separate object, add
12         'method_code' field.
13
14         * Environment.cs: Bump corlib version.
15
16         * ConsoleDriver.cs: Remove unused Suspend icall.
17
18 2008-07-21  Marek Safar  <marek.safar@gmail.com>
19
20         * AppDomain.cs (Load): Check for 0-length assembly name.
21
22 2008-07-21  Rodrigo Kumpera  <rkumpera@novell.com>
23
24         * Enum.cs (GetHashCode): Use new icall get_hashcode to
25         avoid allocating a boxed version of the enum basetype.
26
27 2008-07-17  Marek Safar  <marek.safar@gmail.com>
28
29         * String.cs: reverted GetHashCode changes.
30
31 2008-07-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
32
33         * Char.cs: Remove obsolete lamespecs (it implements IConvertible, small formatting)
34
35 2008-07-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
36
37         * Char.cs: Optimize some Is* checks
38
39 2008-07-06  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
40
41         * DateTimeOffset.cs: Fix parameter name
42
43 2008-07-06  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
44
45         * DateTimeOffset.cs: Remove public, make implicit method
46
47 2008-07-06  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
48
49         * Environment.cs: Add missing attribute
50
51 2008-07-04  Rodrigo Kumpera  <rkumpera@novell.com>
52
53         * Delegate.cs (get_Method): Use the internal version
54         of GetMethodFromHandle to avoid the generic class check.
55
56 2008-07-04  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
57
58         * GCCollectionMode.cs: Add attribute
59         * GC.cs: Add semi-stubbed missing method, remove obsolete Lamespec, hide non-public method
60
61 2008-07-04  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
62
63         * Delegate.cs: Fix parameter names for 2.0 profile
64         * Int64.cs: Fix parameter names
65
66 2008-07-04  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
67
68         * IntPtr.cs: Fix parameter names, change internal name to accomodate for parameter changes
69
70 2008-07-04  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
71
72         * Predicate.cs:
73         * Object.cs:
74         * Nullable.cs
75         * MultiCastDelegate.cs
76         * ModuleHandle.cs
77         * Math.cs
78         * MarshalByRefObject.cs
79         * Int64.cs
80         * Int32.cs
81         * Int16.cs
82         * Environment.cs
83         * Delegate.cs
84         * DateTimeOffset.cs
85         * ConsoleKeyInfo.cs
86         * Console.cs
87         * Array.cs
88         * AppDomain.cs: Fix parameter names
89
90 2008-07-03  Rodrigo Kumpera  <rkumpera@novell.com>
91
92         * Exception.cs (GetFullNameForStackTrace): Don't do string
93         concatenation.
94
95 2008-06-30  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
96
97         * ContextMarshalException.cs:
98         * DllNotFoundException.cs:
99         * EntryPointNotFoundException.cs:
100         * FieldAccessException.cs:
101         * MethodAccessException.cs:
102         * MissingFieldException.cs:
103         * PlatformNotSupportedException.cs: Fix parameter names
104
105 2008-06-30  Marek Safar  <marek.safar@gmail.com>
106
107         * String.cs: Tweaked hash code methods for better distibution, and speed-up.
108
109 2008-06-29  Zoltan Varga  <vargaz@gmail.com>
110
111         * MonoCustomAttrs.cs (IsDefined): Avoid calling the .Assembly property in some
112         cases.
113
114 2008-06-30  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
115
116         * Char.cs: Fix formatting, rename wrong named param, remove code duplication
117
118 2008-06-28  Zoltan Varga  <vargaz@gmail.com>
119
120         * Enum.cs (GetUnderlyingType): Implement this using an icall.
121         
122         * Enum.cs (Format): Call IsDefined with inherited=false.
123
124         * Exception.cs: Fix a warning.
125
126 2008-06-27  Zoltan Varga  <vargaz@gmail.com>
127
128         * Enum.cs (FindName): Avoid calling String.Compare for the !ignoreCase case.
129
130 2008-06-27  Rodrigo Kumpera  <rkumpera@novell.com>
131
132         * Exception.cs: Build method traces using the
133         stack trace StringBuilder.
134
135 2008-06-27  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
136
137         * Version.cs: Fix parameter names
138         * UInt64.cs: 
139         * UInt32.cs:
140         * UInt16.cs:
141         * Int64.cs: Fix parameter names
142         * Int32.cs: Fix parameter names; some small formatting
143         * Int16.cs: Fix parameter names
144         * Double.cs: Fix parameter names; small formatting
145         * Single.cs:
146         * SByte.cs:
147         * Byte.cs:
148         * Boolean.cs:
149         * DateTime.cs:
150         * Enum.cs:
151         * Decimal.cs: Fix parameter names
152
153 2008-06-14  Zoltan Varga  <vargaz@gmail.com>
154
155         * Environment.cs: Bump corlib version.
156
157 2008-06-10  Zoltan Varga  <vargaz@gmail.com>
158
159         * Math.cs (IEERemainder): Use the normal BitConverter.Int64BitsToDouble method
160         here to fix this on sparc.
161
162 2008-06-07  Marek Safar  <marek.safar@gmail.com>
163
164         * Array.cs (IndexOf, LastIndexOf): Fixed more array element comparers used
165         instead of tested value comparers.
166
167 2008-06-07  Zoltan Varga  <vargaz@gmail.com>
168
169         * Environment.cs: Bump corlib version.
170
171 2008-06-05  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
172
173         * String.cs: Managed replacement for Replace method ;)
174
175 2008-06-03  Zoltan Varga  <vargaz@gmail.com>
176
177         * Decimal.cs (Divide): Move expensive equality checks to unmanaged code.
178
179 2008-06-02  Ivan N. Zlatev  <contact@i-nz.net>
180
181         * MonoType.cs: For property reflection we should strictly match the return 
182         type if available.
183
184 2008-06-01  Juraj Skripsky  <js@hotfeet.ch>
185
186         * String.cs (Substring): Blocking bug #395904 has been fixed,
187         re-enable optimization.
188
189 2008-06-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
190
191         * String.cs: Replace Split IndexOf
192
193 2008-05-30  Marek Safar  <marek.safar@gmail.com>
194
195         * Array.cs (IndexOf): Use an array element comparer instead of tested value
196         comparer.
197
198 2008-05-28  Zoltan Varga  <vargaz@gmail.com>
199
200         * Console.cs (.cctor): Make sdout synchronized in the console case too.
201         Fixes #395069.
202
203 2008-05-27  Eyal Alaluf <eyala@mainsoft.com>
204
205         * NumberFormatter.jvm.cs: Fix tables to avoid arithemtic overflow
206           in Double.ToString as exposed by Bug #383531.
207
208 2008-05-24  Gert Driesen  <drieseng@users.sourceforge.net>
209
210         * String.cs: Comment out 2.0 compatibility fix for SubString, since it
211         causes regressions in System.Xml.
212
213 2008-05-24  Gert Driesen  <drieseng@users.sourceforge.net>
214
215         * String.cs: Changed exception to match MS. Fixed ToCharArray to use
216         startindex for source. In PadLeft and PadRight, only return current
217         string if totalWidth is less than length.
218
219 2008-05-24 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>
220
221         * Enum.cs: use Array.BinarySearch on the values in IsDefined and
222         GetName instead of looping through the list. Made the cache in
223         MonoEnumInfo thread static to avoid contention.
224
225 2008-05-20  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
226
227         * String.cs: Replace Split function
228
229 2008-05-19  Sebastien Pouliot  <sebastien@ximian.com>
230
231         * Boolean.cs,
232         * Double.cs,
233         * Enum.cs,
234         * Int64.cs,
235         * Single.cs,
236         * UInt32.cs,
237         * UInt64.cs: Avoid unboxing primitive types more than one time.
238         [Found using Gendarme]
239
240 2008-05-19  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
241
242         * String.cs: Update Trim functions
243
244 2008-05-19  Zoltan Varga  <vargaz@gmail.com>
245
246         * ConsoleDriver.cs: Avoid initializing the three driver classes when only one
247         is needed.
248
249 2008-05-18  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
250
251         * String.cs: Update Join and Pad functions
252
253 2008-05-18  Sebastien Pouliot  <sebastien@ximian.com>
254
255         * Environment.cs: Use String.IsNullOrEmpty inside 2.0 code.
256         [Found using Gendarme]
257
258 2008-05-16  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
259
260         * String.cs: Directly create charenumerator
261
262 2008-05-15  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
263
264         * String.cs: Resubmit uncritical parts of String patch
265
266 2008-05-15  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
267
268         * DateTime.cs: Fix parameter names
269
270 2008-05-15  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
271
272         * Decimal.cs: Fix parameter names
273
274 2008-05-15  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
275
276         * Decimal.cs: Tabbify/Format
277
278 2008-05-14  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
279
280         * Version.cs
281           UnhandledExceptionEventHandler.cs
282           UInt64.cs
283           UInt32.cs
284           UInt16.cs: Fix parameter names
285           Type.cs: Fix parameter names, formatting
286           TimeSpan.cs
287           StringComparer.cs
288           Single.cs
289           SByte.cs: Fix parameter names
290
291 2008-05-14  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
292
293         * Double.cs
294           Enum.cs
295           Exception.cs
296           IComparable.cs
297           IEquatable.cs
298           IFormatProvider.cs
299           IFormattable.cs
300           InsufficientMemoryException.cs: Fix parameter names
301
302 2008-05-14  Jb Evain  <jbevain@novell.com>
303
304         * Exception.cs (ToString): output a new line before the 
305         inner exception separator. Fixes #390150.
306
307 2008-05-12  Gert Driesen  <drieseng@users.sourceforge.net>
308
309         * Type.cs: Modifies exceptions to match MS. Changed GetTypeFromHandle
310         on 1.0 profile to throw ArgumentException when handle is invalid,
311
312 2008-05-08  Rodrigo Kumpera  <rkumpera@novell.com>
313
314         * Activator.cs (CreateInstance): Check for null types when creating
315         the error message.
316
317 2008-05-07  Robert Jordan  <robertj@gmx.net>
318
319         * RuntimeFieldHandle.cs, RuntimeTypeHandle.cs, RuntimeMethodHandle.cs:
320         Don't try to serialize uninitialized handles. Fixes #386641.
321
322 2008-05-06  Marek Safar  <marek.safar@gmail.com>
323
324         * IntPtr.cs (eplicit long, GetObjectData): Use ToInt64.
325
326 2008-05-05  Zoltan Varga  <vargaz@gmail.com>
327
328         * Type.cs (GetTypeFromHandle): Apparently, it is possible to create a 
329         RuntimeTypeHandle with a zero handle value by calling its ctor. Add an argument
330         check for that.
331
332         * IntPtr.cs (ToInt64): Use (long)(int) on 32 bit platforms to avoid the default
333         unsigned conversion done by the compiler. Fixes #386466.
334
335 2008-05-04  Zoltan Varga  <vargaz@gmail.com>
336
337         * Type.cs (UnderlyingSystemType): Add a comment pointing people to 
338         Enum.GetUnderlyingType ().
339
340 2008-04-26  Zoltan Varga  <vargaz@gmail.com>
341
342         * Array.cs (LastIndexOf): Return GetLowerBound (0) -1 instead of -1.
343         
344         * Array.cs (LastIndexOf): Fix handling of empty arrays. Fixes #383876.
345
346 2008-04-13  Zoltan Varga  <vargaz@gmail.com>
347
348         * String.cs (Split): Fix the handling of RemoveEmptyEntries when the separator
349         matches at the beginning of the string. Fixes #374511.
350
351 2008-04-13  Jb Evain  <jbevain@novell.com>
352
353         * ICloneable.cs: use the INSIDE_CORLIB pattern to
354         internalize code that is used outside the corlib.
355         Merged from the Moonlight 2 branch.
356
357 2008-04-04  Raja R Harinath  <harinath@hurrynot.org>
358
359         * String.cs (EndsWith) [CultureInfo variant]: Handle null 'culture'.
360         (StartsWith, EndsWith, IndexOf, LastIndexOf) [StringComparison variant]:
361         Throw exception on invalid StringComparison.
362
363 2008-04-01  Eyal Alaluf <eyala@mainsoft.com>
364
365         * NumberFormatter.cs NumberFormatter.jvm.cs: Performance optimizations.
366           Reuse a per thread instance to format all the primitive types. Modify
367           class accordingly so the same
368           instance can be used multiple times.
369         * Int16.cs UInt64.cs Double.cs SByte.cs UInt16.cs Byte.csDecimal.cs
370           TimeSpan.cs Int32.cs Int64.cs Single.cs UInt32.cs: Change use of
371           NumberFormatter to adapt to above changes in class interface.
372
373 2008-03-31  Mark Probst  <mark.probst@gmail.com>
374
375         * MonoType.cs: Don't do CAS security checks in CheckMethodSecurity
376         for 2.1 profile.
377
378 2008-03-28  Marek Safar  <marek.safar@gmail.com>
379
380         * Nullable.cs (Box): Do things explicitly and not rely on broken gmcs
381         behaviour.
382
383 2008-03-25  Zoltan Varga  <vargaz@gmail.com>
384
385         * AppDomain.cs: Update after MonoMethod.InternalInvoke signature change.
386
387         * Environment.cs: Bump corlib version.
388
389         * DateTime.cs: Fix a warning.
390
391 2008-03-21  Sebastien Pouliot  <sebastien@ximian.com>
392
393         * String.cs: Use "this" in Split method instead of calling ToString.
394         Found using Gendarme.
395
396 2008-03-06  Marek Safar  <marek.safar@gmail.com>
397
398         * MonoCustomAttrs (GetCustomAttributes): Type cannot be null with
399         typeof (MonoCustomAttrs) hack.
400
401 Wed Mar 5 19:39:01 CET 2008 Paolo Molaro <lupus@ximian.com>
402
403         * Type.cs: optimize GetTypeCode () for the common case
404         (fixes bug #367354).
405
406 2008-03-02  Roei Erez  <roeie@mainsoft.com>
407
408         * DateTime.cs: Improve the patch supplied by James Purcell to be
409           dotnet-compatible, and add support for RoundTripKind parsing. 
410           Fixed reopened bug #352210.
411
412
413 Tue Feb 26 17:50:17 CET 2008 Paolo Molaro <lupus@ximian.com>
414
415         * DateTime.cs: instroduce a method that returns ticks monotonically.
416
417 2008-02-26  Ivan N. Zlatev  <contact@i-nz.net>
418
419         * Attribute.cs, MonoCustomAttrs: MS ignores the inherit param in 
420         PropertyInfo's ICustomAttributeProvider implementation, but not 
421         in the Attributes, so directly get the attributes from 
422         MonoCustomAttrs instead of going throught the PropertyInfo's 
423         ICustomAttributeProvider.
424         [Fixes bugs #324472 and #322464]
425
426 2008-02-26  Atsushi Enomoto  <atsushi@ximian.com>
427
428         * DateTime.cs : fix roundtrip regression in Sys.Xml.XmlConvertTests,
429           patch by James Purcell (at #352210).
430
431 2008-02-25  Atsushi Enomoto  <atsushi@ximian.com>
432
433         * DateTime.cs, DateTimeUtils.cs : make Kind value from parse result
434           as dotnet-compatible. Patch by James Purcell, fixed bug #352210.
435
436 2008-02-18  Atsushi Enomoto  <atsushi@ximian.com>
437
438         * DBNull.cs : ToType(typeof(DBNull),...) should be allowed.
439
440 2008-02-16  Sebastien Pouliot  <sebastien@ximian.com>
441
442         * Object.cs: Fix parameter name to match MS implementation. Found
443         using Gendarme.
444         * ValueType.cs: Fix parameter name to match MS implementation. 
445         Found using Gendarme.
446
447 2008-02-14  Jb Evain  <jbevain@novell.com>
448
449         * Delegate.cs (CreateDelegate): refactor. DRY!
450
451 2008-02-12  Gert Driesen  <drieseng@users.sourceforge.net>
452
453         * Delegate.cs (CreateDelegate): Walk the inheritance change to find
454         matching method. Skip methods for which the return type does not match
455         the delegate. Fixes bug #360784.
456
457 2008-02-11  Eyal Alaluf <eyala@mainsoft.com>
458
459         * NumberFormatter.cs: Fix ToString("R") for +-Infinity & NaN.
460
461 2008-02-08  Sebastien Pouliot  <sebastien@ximian.com>
462
463         * Random.cs: Explain (and extend) special case in Next(min,max)
464
465 2008-02-08  Juraj Skripsky  <js@hotfeet.ch>
466
467         * Random.cs (Next): Use rounding (via implicit conversion) only on
468         positive values. Fixes bug 359918.
469
470 2008-02-03  Sebastien Pouliot  <sebastien@ximian.com>
471
472         * Environment.cs: Remove unused method found with Gendarme.
473
474 2008-02-02  Gert Driesen  <drieseng@users.sourceforge.net>
475
476         * Variant.cs: Fixed line endings.
477         * MonoType.cs: Fixed parameter name for ArgumentException to match MS.
478
479 2008-01-29  Zoltan Varga  <vargaz@gmail.com>
480
481         * Type.cs (MakeGenericType): Fix exception message.
482
483 2008-01-29  Jb Evain  <jbevain@novell.com>
484
485         * AppDomain.cs: add SL overload of DefineDynamicAssembly.
486
487 2008-01-29  Marek Safar  <marek.safar@gmail.com>
488
489         * Type.cs (MakeGenericType): More argument checks. Fixes #356863 by
490          Sanghyeon Seo.
491
492 2008-01-25  Rodrigo Kumpera  <rkumpera@novell.com>
493
494         * MonoType.cs (InvokeMember): Fixed exceptions arguments for last comit.
495
496 2008-01-24  Rodrigo Kumpera  <rkumpera@novell.com>
497
498         * MonoType.cs (InvokeMember): Check for parameters without default value which
499         the supplied argument is Missing.Value. Fixes one of the issues of #348522.
500
501 2008-01-21  Sebastien Pouliot  <sebastien@ximian.com>
502
503         * DateTimeOffset.cs: Avoid NRE on bad cast if null is provided to
504         Equals(object). Found using Gendarme.
505
506 2008-01-16  Zoltan Varga  <vargaz@gmail.com>
507
508         * DateTimeOffset.cs: Fix warnings.
509
510 2008-01-15  Stephane Delcroix  <sdelcroix@novell.com>
511
512         * DateTimeOffset.cs: ParseExact: parse f, F, s too.
513
514 2008-01-15  Stephane Delcroix  <sdelcroix@novell.com>
515
516         * DateTimeOffset.cs: ParseExact: honor the DateTimeStyles parameter.
517
518 2008-01-15  Zoltan Varga  <vargaz@gmail.com>
519
520         * AppDomainSetup.cs Buffer.cs Action.cs Array.cs BadImageFormatException.cs Byte.cs
521         Attribute.cs _AppDomain.cs Boolean.cs AppDomain.cs: Fix some argument names to be 
522         consistent with MS.
523
524 2008-01-14  Sephane Delcroix  <sdelcroix@novell.com>
525
526         * DateTimeOffset.cs: start refactoring DoParse.
527
528 2008-01-14  Zoltan Varga  <vargaz@gmail.com>
529
530         * Type.cs (GetConstructor): Use correct binding flags in type (Type[]) overload.
531         Fixes #353604.
532
533 2008-01-13  Eyal Alaluf <eyala@mainsoft.com>
534
535         * NumberFormatter.cs, Double.cs, Single.cs: Fix Single & Double default
536           ToString to handle +-Infinity & NaN.
537
538 2008-01-14  Sephane Delcroix  <sdelcroix@novell.com>
539
540         * DateTimeOffset.cs: ParseExact (string, string, IFormatProvider) 
541         implemented.
542
543
544 2008-01-14  Zoltan Varga  <vargaz@gmail.com>
545
546         * NumberFormatter.cs: Remove some redundant assignments.
547
548 2008-01-13  Gert Driesen  <drieseng@users.sourceforge.net>
549
550         * AppDomain.cs: Also fix bug #350530 for overload taking evidence and
551         args. On 1.0 profile, throw COMException to match MS and to allow
552         our unit tests to pass on MS.
553
554 2008-01-13  Eyal Alaluf <eyala@mainsoft.com>
555
556         * NumberFormatter.cs: Check in redesigned implementation. Improves
557           double.ToString performance by 2-3 orders of magnitude and other
558           primitive numeric types ToString performance.
559         * NumberFormatter.jvm.cs: The TARGET_JVM managed tables for NumberFormatter
560           class for reuse if a completely managed NumberFormatter is required.
561         * Int16.cs UInt64.cs Double.cs UInt16.cs SByte.cs Byte.cs TimeSpan.cs
562           Int32.cs Int64.cs Single.cs UInt32.cs: Adapt to new NumberFormatter.
563
564 2008-01-13  Zoltan Varga  <vargaz@gmail.com>
565
566         * AppDomain.cs: Check for a missing entry point in the ExecuteAssembly methods.
567         Fixes #350530.
568
569 2008-01-11  Stephane Delcroix  <sdelcroix@novell.com>
570
571         * DateTimeOffset.cs: Fixes the MinValue (was equal to MaxValue)...
572
573 2008-01-10  Zoltan Varga  <vargaz@gmail.com>
574
575         * Delegate.cs: Implement argument checking in CreateDelegate(Type,object,MethodInfo)
576         method. Make the CreateDelegate(Type,MethodInfo) overload calls this version.
577         Fixes #352805.
578
579 2008-01-10  Stephane Delcroix  <sdelcroix@novell.com>
580
581         * DateTimeOffset.cs: chain the Parse* methods together.
582
583 2008-01-09  Atsushi Enomoto  <atsushi@ximian.com>
584
585         * DateTime.cs : revert the previous fix. It caused regression on
586           the buildbot.
587
588 2008-01-09  Atsushi Enomoto  <atsushi@ximian.com>
589
590         * DateTime.cs : fixed bug #352210. Kind is unspecified by default,
591           while the tick is for local time by default. This fix also involved
592           special x509 handling.
593
594 2008-01-08  Marek Safar  <marek.safar@gmail.com>
595
596         * Array.cs (LastIndexOf<T>): Fixed bound checking.
597
598 2008-01-06  Zoltan Varga  <vargaz@gmail.com>
599
600         * AppDomain.cs: Move the assembly loading in ExecuteAssembly and 
601         ExecuteAssemblyByName to managed to as said by the MSDN docs. Fixes #350530.
602
603         * Environment.cs: Bump corlib version.
604         
605 2008-01-02  Marek Habersack  <mhabersack@novell.com>
606
607         * Array.cs: fix a typo to unbreak the build.
608
609 2008-1-1  Scott Peterson  <lunchtimemama@gmail.com>
610
611         * Array.cs: Slight improvement to the quicksort algorithm.
612
613 2007-12-28  Gert Driesen  <drieseng@users.sourceforge.net>
614
615         * Environment.cs: Bump corlib version.
616
617 2007-12-20  Gert Driesen  <drieseng@users.sourceforge.net>
618
619         * AppDomain.cs: Added check for null AssemblyName, and invalid
620         AssemblyName.Name to DefineDynamicAssembly overloads. Loosely based on
621         patch provided by Cedric Vivier. Fixes bug #349272.
622
623 2007-12-20  Stephane Delcroix  <sdelcroix@novell.com>
624
625         * DateTimeOffset.cs: set [Min|Max]Value to UTC. Fixes #349621.
626
627 2007-12-19  Stephane Delcroix  <sdelcroix@novell.com>
628
629         * DateTime.cs:
630         * DateTimeOffset.cs:
631         * DateTimeUtils.cs: factored out the common pieces of DT and DTO into DTU.
632
633 2007-12-18  Stephane Delcroix  <sdelcroix@novell.com>
634
635         * DateTimeOffset.cs: implementing the 4 ToString overloads by reusing
636         large chunks of System.DateTime code.
637
638 2007-12-16  Stephane Delcroix  <sdelcroix@novell.com>
639
640         * DateTimeOffset.cs: some bugfix discovered by unit tests.
641
642 2007-12-16  Stephane Delcroix  <sdelcroix@novell.com>
643
644         * DateTimeOffset.cs: almost complete implementation, still missing the
645         Parse* and ToString methods.
646
647 2007-12-11  Zoltan Varga  <vargaz@gmail.com>
648
649         * AppDomain.cs (DoAssemblyResolve): Fix detection of whenever there is a
650         reflection-only assembly resolve hook.
651
652 2007-12-10  Stephane Delcroix  <sdelcroix@novell.com>
653
654         * DateTimeOffset.cs: partial implementation. no longer just a stub.
655
656 2007-11-30  Zoltan Varga  <vargaz@gmail.com>
657
658         * Delegate.cs: Compute the Method property lazily.
659         
660         * Delegate.cs: Add a 'method' field.
661
662         * Environment.cs: Bump corlib version.
663
664 2007-11-21  Zoltan Varga  <vargaz@gmail.com>
665
666         * Array.cs: Make the InternalArray_... methods internal.
667
668         * Environment.cs: Bump corlib version.
669
670 2007-11-21  Atsushi Enomoto  <atsushi@ximian.com>
671
672         * AppDomain.cs : filled 2.0 API (extra ones are from 2.0 SP1).
673         * ContextMarshalException.cs : obsolete in 2.0.
674
675 2007-11-21  Atsushi Enomoto  <atsushi@ximian.com>
676
677         * MarshalByRefObject.cs : Added MemberwiseClose() stub.
678           GetLifetimeService() is not virtual (in both 2.0 and 1.1).
679         * Console.cs : implemented missing 2.0 key members.
680
681 2007-11-18  Gert Driesen  <drieseng@users.sourceforge.net>
682
683         * Enum.cs: Provided ParamName of Argument(Null)Exceptions. Rewrote
684         some exception messages.
685
686 2007-11-16  Gert Driesen  <drieseng@users.sourceforge.net>
687
688         * AppDomain.cs: Added some obsolete messages.
689
690 2007-11-15  Gert Driesen  <drieseng@users.sourceforge.net>
691
692         * MonoType.cs: Modified ParamName for ArgumentException to match
693         MS. Provide meaningful exception messages. On 2.0, throw ANE instead
694         of ArgumentException when args is null.
695
696 2007-11-15  Zoltan Varga  <vargaz@gmail.com>
697
698         * MonoType.cs (Invoke): Allow BindingFlags.SetField and
699         BindingFlags.SetProperty to be specified together. Fixes #321735.
700
701 2007-11-14  Miguel de Icaza  <miguel@novell.com>
702
703         * Console.cs, ConsoleDriver.cs, TermInfoDriver.cs,
704         TermInfoReader.cs, TermInfoNumber.cs, TermInfoStrings.cs,
705         CStreamReader.cs, CStreamWriter.cs, NullConsoleDriver.cs,
706         WindowsConsoleDriver.cs: In the 2.1 profile we do not need the
707         full-blown Console (the terminal-addressable console) so we shrink
708         it down to the basic 1.0 Console.
709
710 2007-11-14  Marek Safar  <marek.safar@gmail.com>
711
712         * Nullable.cs: Optimized to use generic comparers.
713
714 2007-11-14  Zoltan Varga  <vargaz@gmail.com>
715
716         * Array.cs (Copy): Throw InvalidCastException in more cases.
717
718 2007-11-13  Zoltan Varga  <vargaz@gmail.com>
719
720         * GCCollectionMode.cs GCLatencyMode.cs: New net 3.5 types.
721
722 2007-11-12  Atsushi Enomoto  <atsushi@ximian.com>
723
724         * NumberFormatter.cs : revert previous two changes. It does not
725           really work for float and hence will rather bring confusion.
726
727 2007-11-12  Atsushi Enomoto  <atsushi@ximian.com>
728
729         * NumberFormatter.cs : limit the situation that needs roundtrip
730           verification in the previous change to Double.
731
732 2007-11-12  Atsushi Enomoto  <atsushi@ximian.com>
733
734         * NumberFormatter.cs : applied a quick fix for bug #320433. It needs
735           true fix to avoid extra perf. loss.
736
737 2007-11-08  Sebastien Pouliot  <sebastien@ximian.com>
738
739         * TimeZone.cs: Under 2.0 we must return a Local DateTime.MinValue.
740         Fix the regression on the x86_64 bot which seems to be in it's own
741         timezone.
742
743 2007-11-07  Gert Driesen  <drieseng@users.sourceforge.net>
744
745         * Exception.cs: Cosmetic change to default exception message on
746         2.0 profile.
747
748 2007-11-05  Gert Driesen  <drieseng@users.sourceforge.net>
749
750         * Array.cs: Distinguish between notstarted and finished state when
751         throwing IOE in Current, and provide meaningful exception message.
752
753 2007-11-05  Sebastien Pouliot  <sebastien@ximian.com>
754
755         * Array.cs: Fix Enumerator<T>.Reset (#322248).
756
757 2007-11-05  Rodrigo Kumpera  <rkumpera@novell.com>
758
759         * Type.cs (MakeGenericType): fix for #331199. If an user-defined type
760         was used, the runtime would crash. Now we apply UnderlyingSystemType to
761         all types before handling to the runtime.
762
763 2007-11-05  Stephane Delcroix  <sdelcroix@novell.com>
764
765         * TimeZone.cs: fix for #323911. The our after DST.Start is already DST.
766
767 2007-11-03  Atsushi Enomoto  <atsushi@ximian.com>
768
769         * DateTime.cs : fix for #330085. for Local time, convert to Utc
770           before getting ticks.
771
772 2007-11-03  Gert Driesen  <drieseng@users.sourceforge.net>
773
774         * ArgumentException.cs: Change default message to match MS. Removed
775         unnecessary check from Message, since base.Message can never be null.
776
777 2007-11-01  Atsushi Enomoto  <atsushi@ximian.com>
778
779         * DateTime.cs : ParseExact() should ignore 'K' when there is no
780           character is left.
781
782 2007-11-01  Atsushi Enomoto  <atsushi@ximian.com>
783
784         * DateTime.cs : in roundtrip mode, 'Z' should turn the tick value to
785           utc time and should not result in different ticks.
786           Fixed bug #338064.
787
788 2007-10-30  Miguel de Icaza  <miguel@novell.com>
789
790         * UInt32.cs (Parse): Use Jeff Stedfast's parsing code which is
791         smaller and does not need checked() constructs. 
792
793         * Int64.cs, Int32.cs, Int16.cs: small tuneup: do not throw
794         exception, instead return the exception like every other place in
795         this code. 
796
797         * Int16.cs, Int32.cs, Int64.cs: Use the Jeff Stedfast parsing code
798         which is smaller.  We no longer use "checked" to check for
799         overflows, I refactored some stuff and cleaned up the rest and
800         fixes #331525.
801
802 2007-10-27  Zoltan Varga  <vargaz@gmail.com>
803
804         * MonoType.cs: Applied patch from Mario A Chavez 
805         <mario.chavez@gmail.com>. Add support for invoking members with the 
806         ParamArray attribute. Fixes #336841.
807
808 2007-10-26  Zoltan Varga  <vargaz@gmail.com>
809
810         * MonoType.cs (InvokeMember): Make sure one operation is passed in the binding
811         flags. Fixes #336936.
812
813 Fri Oct 26 19:43:09 CEST 2007 Paolo Molaro <lupus@ximian.com>
814
815         * Environment.cs, String.cs: patch from Tyler Larson
816         <mono-devel@tlarson.com> to fix the handling of the RemoveEmptyEntries
817         option in string.Split (bug #322375).
818
819 2007-10-26  Dick Porter  <dick@ximian.com>
820
821         * Environment.cs: Bump version because of Thread initialisation
822         changes
823
824 2007-10-25  Lluis Sanchez Gual  <lluis@novell.com>
825
826         * AppDomain.cs: In DefaultDomain, wrap the returned domain with
827         a proxy if the current domain is not the root domain.
828
829 2007-10-24  Atsushi Enomoto  <atsushi@ximian.com>
830
831         * Type.cs : implemented ReflectionOnlyGetType().
832
833 2007-10-19  Zoltan Varga  <vargaz@gmail.com>
834
835         * AppDomain.cs: Add NET 3.5 DefineDynamicAssembly () overloads.
836
837 2007-10-13  Zoltan Varga  <vargaz@gmail.com>
838
839         * Delegate.cs (CreateDelegate): Allow binding instance methods to 
840         delegates with an extra argument, a NET 2.0 feature. Fixes #333647.
841
842 Fri Oct 12 08:11:50 CEST 2007 Paolo Molaro <lupus@ximian.com>
843
844         * String.cs: reverted unapproved patch that breaks the build.
845
846 2007-10-11  Joel Reed  <joelwreed@comcast.com>
847
848         * String.cs: fix String.Split(char[],int,StringSplitOptions)
849         with StringSplitOptions.RemoveEmptyEntries option. The correct 
850         behavior is to remove empty entries while the string is being split, 
851         and always return the maximum number of elements possible.
852         Patch from: Tyler Larson <mono-devel@tlarson.com>
853         
854 2007-09-28  Jb Evain  <jbevain@novell.com>
855
856         * Object.cs: Make ToString return Type.ToString ()
857         by default instead of Type.FullName to match .net
858         behavior. Fix #329419.
859
860 2007-09-28  William Holmes  <billholmes54@gmail.com>
861
862         * DateTime.cs: Check for AssumeUniversal when parsing string.
863          Fixes bug #324845
864
865 2007-09-21  Gert Driesen  <drieseng@users.sourceforge.net>
866
867         * Enum.cs: Use regular single quotes in exception message.
868
869 2007-09-14  Paolo Molaro <lupus@ximian.com>
870
871         * String.cs: implemented all the string ctors using CreateString
872         methods, so they can run completely in managed code.
873
874 2007-09-13  Marek Safar  <marek.safar@gmail.com>
875
876         * DateTimeOffset.cs: Implemented few properties.
877
878 2007-09-13  Atsushi Enomoto  <atsushi@ximian.com>
879
880         * Decimal.cs, Math.cs : implemented midpoint rounding.
881
882 2007-09-13  Atsushi Enomoto  <atsushi@ximian.com>
883
884         * Activator.cs : implemented 2.0 CreateInstance()
885           and CreateInstanceFrom () overloads.
886
887 2007-09-12  Sebastien Pouliot  <sebastien@ximian.com>
888
889         * Decimal.cs: More explicit text in exception (old and almost 
890         forgetten patch on laptop ;-)
891
892 2007-09-10  Atsushi Enomoto  <atsushi@ximian.com>
893
894         * OperatingSystem.cs : implemented ISerializable.
895
896 2007-08-28  Zoltan Varga  <vargaz@gmail.com>
897
898         * DateTime.cs: Fix a warning.
899
900 2007-08-25  Robert Jordan  <robertj@gmx.net>
901
902         * DateTime.cs: Implement internal To/FromBinary for the 1.1 profile.
903
904 2007-08-25  Alan McGovern  <amcgovern@novell.com>
905
906         * DateTime.cs: Reverted DateTime changes.
907
908 2007-08-25  Robert Jordan  <robertj@gmx.net>
909
910         * DateTime.cs: Implement internal To/FromBinary for the 1.1 profile.
911
912 2007-08-24  Zoltan Varga  <vargaz@gmail.com>
913
914         * Array.cs: Fix min + max / 2 overflows in the BinarySearch and qsort methods.
915         Fixes #82469.
916
917 2007-08-23  Marek Safar  <marek.safar@gmail.com>
918
919         * DateTimeOffset.cs: New .NET 3.5 struct for 2.0 mscorlib.
920         
921 2007-08-23  Eyal Alaluf <eyala@mainsoft.com>
922
923         * DateTime.cs: Numerous improvements to DateTime.Parse. It handles a lot
924           more possible formats and more correctly at that. It is also now easier
925           to manage the formats DateTime.Parse supports.
926
927 2007-08-17  Zoltan Varga  <vargaz@gmail.com>
928
929         * Exception.cs: Make 1.0 and 2.0 object layout the same since this class is seen
930         by the runtime. Fixes #82459.
931
932 2007-08-16  Gert Driesen  <drieseng@users.sourceforge.net>
933
934         * MonoCustomAttrs.cs: In IsDefined, throw ArgumentNullException if
935         attributeType is null to avoid a SIGSEGV (and match MS). Only partial
936         fix for bug #82431 on 1.0 profile; it fully fixes the problem for the
937         1.0 profile, but more changes (in the runtime) are required for the
938         2.0 profile. Added a FIXME explaining the problem.
939
940 2007-08-15  Gert Driesen  <drieseng@users.sourceforge.net>
941
942         * MonoCustomAttrs.cs: In IsDefined, only walk inheritance chain if
943         both AttributeUsage.Inherited and inherit are true. Fixed bug #82431.
944
945 2007-08-13  Gert Driesen  <drieseng@users.sourceforge.net>
946
947         * ArgumentException.cs: Ignore zero-length ParamName for Message.
948         Use ParamName property instead of field, since the property is marked
949         virtual.
950         * Array.cs: Provide more meaningful exception message when destination
951         array is not long enough.
952
953 2007-08-11  Zoltan Varga  <vargaz@gmail.com>
954
955         * Array.cs: Implement InternalArray__set_Item. Fixes #82345.
956
957 2007-08-08  Atsushi Enomoto  <atsushi@ximian.com>
958
959         * IntPtr.cs : oops, do not ignore format in ToString(string).
960
961 2007-08-08  Atsushi Enomoto  <atsushi@ximian.com>
962
963         * GC.cs, Exception.cs, IntPtr.cs, Enum.cs, DateTime.cs, Convert.cs
964           ConsoleKeyInfo.cs, String.cs, Object.cs, Attribute.cs,
965           Version.cs : couple of cosmetic 2.0 API fixes.
966
967 2007-08-06  Aaron Bockover  <abockover@novell.com>
968
969         * Environment.cs (ReadXdgUserDir): Support the changes to the
970         xdg-user-dirs spec that allow $HOME to start the path; also allows
971         for quotes surrounding the path (Patch ported from Banshee,
972         BGO #461596)
973
974 2007-07-28  Miguel de Icaza  <miguel@novell.com>
975
976         * MulticastDelegate.cs (Equals): do not cast to avoid exceptions,
977         instead use the "as" operator, as pointed out by Jesse Jones'
978         tool. 
979
980 2007-07-21  Gert Driesen  <drieseng@users.sourceforge.net>
981
982         * BitConverter.cs: Fixed exceptions to match MS. Fixed invalid use
983         of ArgumentOutOfRangeException and ArgumentException ctors that take
984         both parameter name and message. In ToString throws ArgumentException
985         instead of ArgumentOutOfRangeException when length is negative, and
986         return zero-length string when length is 0.
987
988 2007-07-20  Atsushi Enomoto  <atsushi@ximian.com>
989
990         * AppDomainSetup.cs : fix serialization regression.
991
992 2007-07-20  Atsushi Enomoto  <atsushi@ximian.com>
993
994         * AppDomainSetup.cs :
995           MonoTODO AppDomainInitializer as its implementation is wrong.
996
997 2007-07-20  Atsushi Enomoto  <atsushi@ximian.com>
998
999         * AppDomainSetup.cs : added missing 2.0 members.
1000         * AppDomain.cs : support AppDomainInitializer.
1001
1002 2007-06-06  Miguel de Icaza  <miguel@novell.com>
1003
1004         * Int16.cs, UInt64.cs, SByte.cs, UInt16.cs, Byte.cs, Int32.cs,
1005         Int64.cs, UInt32.cs: Fix for 81775.
1006
1007         I removed Parse from a Byte.cs and UInt16.cs as in various cases
1008         they still depended on UInt32.cs for parsing, there is no reason
1009         to keep all of this code duplicated (UInt64 is a different case
1010         though). 
1011
1012         I was hoping for some feedback on whether my tests are correct,
1013         but so far no takers.
1014
1015 2007-07-14  Zoltan Varga  <vargaz@gmail.com>
1016
1017         * ModuleHandle.cs: Implement the generic versions of the ResolveXXXHandle () methods.
1018         
1019         * ModuleHandle.cs: Add stubs for generic ResolveXXXHandle () methods.
1020
1021 2007-07-10  Alan McGovern <amcgovern@novell.com>
1022
1023         * Guid.cs: All whitespace should be trimmed from before and
1024         after a string passed into the Guid constructor. Fixes #81958
1025
1026 2007-07-10  Zoltan Varga  <vargaz@gmail.com>
1027
1028         * RuntimeTypeHandle.cs: Fix signatures of == and != operators.
1029
1030         * ModuleHandle.cs: Add missing 2.0 stuff.
1031
1032 2007-07-08  Zoltan Varga  <vargaz@gmail.com>
1033
1034         * *.cs: Add missing ComVisible attributes.
1035
1036         * Delegate.cs: Add missing 2.0 CreateDelegate () methods.
1037
1038 2007-07-07  Gert Driesen  <drieseng@users.sourceforge.net>
1039
1040         * DateTime.cs: In ParseExact, throw ArgumentNullException if format
1041         is null; throw FormatException if formats array is empty or if one of
1042         items is null or a zero-length string.
1043
1044 2007-07-06  Rodrigo Kumpera  <rkumpera@novell.com>
1045
1046         * Double.cs (Parse): Fix for string ending in garbaga, it was just ignoring it
1047         instead of throwing FormatException. Fixes #81777
1048
1049 2007-07-06  Rodrigo Kumpera  <rkumpera@novell.com>
1050
1051         * Double.cs (Parse): Fix for whitespace only strings, it was returning zero 
1052         instead of throwing FormatException. Fixes #81630 
1053
1054 2007-07-06  Alan McGovern  <amcgovern@novell.com>
1055
1056         * DateTime.cs: If the format is null or empty, it should default to 'G'.
1057         Fixes bug 81778
1058
1059 2007-07-06  Jonathan Chambers  <joncham@gmail.com>
1060
1061         * __ComObject.cs: Support ExtensibleClassFactory.
1062
1063
1064 2007-07-06  Aaron Bockover  <abockover@novell.com>
1065
1066         * Environment.cs (InternalGetFolderPath): Try reading some
1067         paths from ~/.config/user-dirs.dirs (XDG user dirs spec);
1068         always return something for MyPictures
1069
1070 2007-07-04  Atsushi Enomoto  <atsushi@ximian.com>
1071
1072         * Type.cs : 2.0 TypeHandle and ContainsGenericParameters are virtual
1073           (required fix for 2.0 reflection API fixes).
1074
1075 2007-06-22  Jonathan Chambers  <joncham@gmail.com>
1076
1077         * __ComObject.cs: Move interface lookup to unmanaged.
1078
1079 2007-06-21  Zoltan Varga  <vargaz@gmail.com>
1080
1081         * Environment.cs: Bump corlib version.
1082
1083         * Delegate.cs: Applied patch from Robert Jordan (robertj@gmx.net). Keep
1084         the dynamic method referenced by a delegate alive.
1085
1086 2007-06-05  David Ferguson <davecferguson@gmail.com>
1087
1088         * DateTime.cs: Changed DateTime.Parse() to throw a FormatException
1089           instead of an ArgumentOutOfRangeException for .NET 2.0.  An
1090           ArgumentOutOfRangeException is still thrown for .NET 1.1.
1091           Fixes bug #77633
1092           
1093 Mon Jun 4 14:52:17 CEST 2007 Paolo Molaro <lupus@ximian.com>
1094
1095         * String.cs: optimized CompareOrdinal ().
1096
1097 2007-06-02  Zoltan Varga  <vargaz@gmail.com>
1098
1099         * MonoCustomAttrs.cs (GetBase): Revert last change as it breaks the build.
1100         
1101         * MonoCustomAttrs.cs (GetBase): Handle properties correctly. Fixes #81797.
1102
1103 2007-05-31  Zoltan Varga  <vargaz@gmail.com>
1104
1105         * Delegate.cs: Add invoke_impl field. Reorder fields for better cache behavior. Add
1106         SetMulticastDelegate icall.
1107
1108         * MulticastDelegate.cs (CombineImpl): Call SetMulticastDelegate () on newly created
1109         delegate.
1110
1111         * Environment.cs: Bump corlib version.
1112         
1113 2007-05-25  Jonathan Chambers  <joncham@gmail.com>
1114
1115         * __ComObject.cs: Add overload to GetInterface to allow
1116         not throwing exceptions. Fixes as and is operators for COM objects.
1117
1118 2007-05-23  Atsushi Enomoto  <atsushi@ximian.com>
1119
1120         * Array.cs : reverting Array.cs fixes since the runtime depends on
1121           those method attributes.
1122
1123 2007-05-23  Atsushi Enomoto  <atsushi@ximian.com>
1124
1125         * Int16.cs UInt64.cs UIntPtr.cs Double.cs CrossAppDomainDelegate.cs
1126           ResolveEventHandler.cs IntPtr.cs UnhandledExceptionEventHandler.cs
1127           Void.cs AssemblyLoadEventHandler.cs SByte.cs UInt16.cs DateTime.cs
1128           Byte.cs TimeSpan.cs Decimal.cs Int32.cs Delegate.cs
1129           AppDomainInitializer.cs MulticastDelegate.cs Int64.cs
1130           EventHandler.cs Single.cs UInt32.cs AsyncCallback.cs :
1131           cosmetic attribute fixes (ComVisible/Serializable).
1132
1133 2007-05-22  Atsushi Enomoto  <atsushi@ximian.com>
1134
1135         * Convert.cs : completed 2.0 (ToBase64CharArray).
1136         * String.cs : removed MonoTODO.
1137         * DataMisalignedException.cs : removed extra .ctor().
1138         * Array.cs : internalize extra members. Fixed reliability contract.
1139
1140 2007-05-17  Atsushi Enomoto  <atsushi@ximian.com>
1141
1142         * DateTime.cs : added support for 'K'.
1143
1144 2007-05-11  Jonathan Chambers  <joncham@gmail.com>
1145
1146         * __ComObject.cs: No need to call CoInitialize anymore since
1147         Thread.ApartmentState was implemented.
1148
1149 2007-05-11  Jeffrey Stedfast  <fejj@novell.com>
1150
1151         Fixes bug #81540
1152
1153         * TermInfoDriver.cs (WriteSpecialKey): Actually clear the screen
1154         and reset the cursor position to 0,0 when the key is
1155         ConsoleKey.Clear.
1156         (Clear): Reset the cursor position to 0,0
1157
1158 2007-05-09  Marek Safar  <marek.safar@gmail.com>
1159
1160         * MulticastDelegate.cs: Fixed operators logic.
1161
1162 2007-05-09  Marek Habersack  <mhabersack@novell.com>
1163
1164         * DateTime.cs: add a format used in ASP.NET QuickStarts 
1165           ("HH':'mm tt MM/dd/yyyy")
1166
1167 2007-04-30  Zoltan Varga  <vargaz@gmail.com>
1168
1169         * Type.cs (Equals): Allow a null argument.
1170
1171 2007-04-27  Zoltan Varga  <vargaz@gmail.com>
1172
1173         * Environment.cs (StackTrace): Avoid skipping a frame to be
1174         compatible with MS.
1175
1176 2007-04-25  Atsushi Enomoto  <atsushi@ximian.com>
1177
1178         * DateTimeTest.cs : looks like 'F' even removes preceding '.' ...
1179
1180 2007-04-25  Atsushi Enomoto  <atsushi@ximian.com>
1181
1182         * DateTime.cs : implemented new-2.0 'F' pattern letter.
1183
1184 2007-04-24  Jeffrey Stedfast  <fejj@novell.com>
1185
1186         Fixes the last of the bugs listed in bug #77525
1187
1188         * TermInfoDriver.cs (ctor): For known terminal types, set color16
1189         to true (since we know they support 16 colours).
1190         (Init): set the setlfgcolor and setlbgcolor format strings.
1191         (BackgroundColor): Use the appropriate formatter string for
1192         setting the bgcolor.
1193         (ForegroundColor): Use the appropriate formatter string for
1194         setting the fgcolor.
1195         (TranslateColor): Now takes (and sets appropriately) an output
1196         'bool light' argument.
1197
1198 2007-04-24  Marek Habersack  <mhabersack@novell.com>
1199
1200         * TermInfoDriver.cs: don't include debug stuff by default - it
1201         breaks multithreaded applications (they all attempt to open
1202         console.log and fail because of sharing violation).
1203
1204 2007-04-23  Jeffrey Stedfast  <fejj@novell.com>
1205
1206         * TermInfoDriver.cs (ReadKeyInternal): Since our input stream is
1207         buffered, check if it has more buffered input in addition to our
1208         timeout check. This makes it such that we will actually correctly
1209         match multi-char escape sequences.
1210         (Read): Changed the logic slightly wrt 'fresh' echoing. Once we
1211         encounter a fresh char, all chars afterward should also be
1212         considered 'fresh' even if 'fresh' is returned as false later.
1213         (ReadLine): Same logic here.
1214
1215 2007-04-23  Jeffrey Stedfast  <fejj@novell.com>
1216
1217         Fixes bug #80702 (via getting rid of the casting) and more.
1218
1219         The following change makes it such that even if an application
1220         calls Console.SetOut() with its own output stream, we can still
1221         properly echo user-input from stdin to the real stdout.
1222
1223         * TermInfoDriver.cs (ctor): Grab a reference to the original
1224         Console.stdout so we can be sure we always echo to console.
1225         (QueueEcho): No need to cast Console.stdout anymore.
1226         (EchoFlush): Same.
1227         (WriteConsole: Here too.
1228
1229 2007-04-20  Jeffrey Stedfast  <fejj@novell.com>
1230
1231         * TermInfoDriver.cs (QueueEcho): Renamed from Echo(char). Use
1232         CStreamWriter's new InternalWriteChars().
1233         (Echo): Since we can no longer go thru CStreamWriter's ::Write()
1234         method that does checks for special keys, do the checks here
1235         instead - if it is a special key, flush the echo buffer and then
1236         write the special key.
1237         (EchoFlush): Also updated to use CStreamWriter's new
1238         InternalWriteChars().
1239         (Read): Use the Echo(key) variety.
1240         (ReadKey): Same.
1241         (ReadLine): And here too.
1242
1243         * CStreamWriter.cs (InternalWriteChars): Write a char array
1244         directly to stdout. Do not pass Go, do not collect $200.
1245
1246 2007-04-19  Jeffrey Stedfast  <fejj@novell.com>
1247
1248         Optimization for echoing keypresses back to the console when the
1249         user pastes a block of text rather than manually typing text.
1250
1251         * TermInfoDriver.cs (Echo): A new convenience function for echoing
1252         characters/keys back to the console with an optimization twist and
1253         a bit of lime.
1254         (EchoFlush): Flush our pending echo queue
1255         (Read): Make use of Echo() both for convenience and for speed.
1256         (ReadLine): Same.
1257         (ReadKey): Make use of Echo()/EchoFlush() for simplicity of code,
1258         but we won't get the same optimization out of it.
1259
1260 2007-04-19  Jeffrey Stedfast  <fejj@novell.com>
1261
1262         Fix for bug #81373.
1263
1264         * TermInfoDriver.cs: Changed 'buffer' to be a char array instead
1265         of a byte array and stdin is now a StreamReader rather than a
1266         Stream.
1267         (Init): Setup stdin as a StreamReader using Console.InputEncoding
1268         as our encoding.
1269         (GetCursorPosition): Use stdin.Read() instead of the old
1270         ReadByte() code.
1271         (AddToBuffer): Updated to allocate the correct array type for
1272         'buffer'.
1273         (ReadKeyInternal): Updated to use stdin.Read() rather than
1274         stdin.ReadByte(). This is the main reason we needed to use chars
1275         instead of bytes. Characters entered by the user need to be
1276         represented as unicode chars and not bytes like before.
1277         (Match): Now takes a char[] buffer argument instad of byte[] and
1278         compares the input buffer to the byte-map as chars.
1279
1280 2007-04-18  Jeffrey Stedfast  <fejj@novell.com>
1281
1282         Fixes bug #81159: behave the same as mscorlib
1283
1284         * TermInfoDriver.cs (ReadKeyInternal): Now has an 'out bool fresh'
1285         argument which is used to tell our caller if the key was freshly
1286         read from the console or pre-buffered.
1287         (Read): New implementation of Console.In.Read(char[], int, int)
1288         that behaves exactly like mscorlib's implementation.
1289         (ReadKey): Updated for the ReadKeyInternal() API change - only
1290         echo if the key was fresh.
1291         (ReadLine): Same.
1292
1293         * CStreamReader.cs (Read): Call the new TermInfoDriver.Read()
1294
1295 2007-04-17  Jeffrey Stedfast  <fejj@novell.com>
1296
1297         * CStreamWriter.cs (Write): Optimized this some more, we don't
1298         need a temporary buffer. Just blit chunks of the src buffer
1299         instead.
1300
1301         * CStreamReader.cs (Read): Need to increment our array index so
1302         that we don't store each byte read into the same
1303         position. Discovered this while testing bug #81159 (which appears
1304         to work as expected with current svn, other than this buglet).
1305
1306         * TermInfoDriver.cs (CursorTop::set): SetCursorPosition() sets our
1307         internal cursorTop variable, so no need to explicitly set it again
1308         after calling SetCursorPosition().
1309         (CursorLeft::set): Same idea here.
1310
1311 2007-04-17  Jeffrey Stedfast  <fejj@novell.com>
1312
1313         * TermInfoDriver.cs (ReadLine): Implemented a workaround for
1314         IronPython going behind System.Console's back when writing text to
1315         the screen (it doesn't seem to use Console.stdout, instead it
1316         creates its own file stream or something which just so happens to
1317         write to the same file descriptor) by querying for the cursor
1318         position in ReadLine(), so we lose no real performance (since we
1319         have to wait for user input anyway).
1320
1321 2007-04-17  Jeffrey Stedfast  <fejj@novell.com>
1322
1323         * TermInfoDriver.cs (Init): SetEcho(false), we'll be manually
1324         echoing from now on (ReadLine() has already been doing this, might
1325         as well make ReadKey() behave the same).
1326         (GetCursorPosition): No longer need to disable/re-enable echo
1327         anymore since it is now always false.
1328         (ReadKey): Manually echo the key back to the console just like
1329         ReadLine() has been doing (in the interest of consistancy) if
1330         intercept is false.
1331         (ReadLine): No longer need to disable/re-enable echo, echo is
1332         always off now. Also, fixed what appears to have been a typo.
1333
1334 2007-04-17  Jeffrey Stedfast  <fejj@novell.com>
1335
1336         * TermInfoDriver.cs (IsSpecialKey): Oops, Enter should not be
1337         treated as a special key. Just update out cursor state here like
1338         we do with normal chars.
1339         (WriteSpecialKey): Enter is a no-op now because it is not treated
1340         as a special key anymore.
1341
1342         * CStreamWriter.cs (Write): Only flush our buffer if j > 0
1343
1344 2007-04-17  Jeffrey Stedfast  <fejj@gnome.org>
1345
1346         Turns out my last patch was broken wrt handling some special keys
1347         like Backspace and anything else that changed the cursor position
1348         in some non-standard way.
1349
1350         * CStreamWriter.cs (Write): Instead of calling NotifyWrite(), we
1351         instead need to check IsSpecialKey(), and, if so, flush whatever
1352         we have saved in our temporary buffer and then call
1353         WriteSpecialKey(). Otherwise go on as we did in the last patch.
1354
1355         * TermInfoDriver.cs (NotifyWrite): Broken up into 2 functions:
1356         (IsSpecialKey): Returns true if we need to do some special voodoo
1357         for this key
1358         (WriteSpecialKey): Write the special key (using whatever voodoo
1359         necessary)
1360
1361 2007-04-16  Jeffrey Stedfast  <fejj@gnome.org>
1362
1363         * CStreamWriter.cs (Write): Instead of writing 1 char at a time,
1364         copy the bytes into a temporary char array (with a fixed max size)
1365         so that we can minimize the number of Write() calls we make on the
1366         underlying stream (and thus on the write() system call).
1367
1368 2007-04-17  Alp Toker  <alp@atoker.com>
1369
1370         * Array.cs: Make GetRank() icall private. Subclasses should use the
1371         public Rank property.
1372
1373 2007-04-16  Jeffrey Stedfast  <fejj@novell.com>
1374
1375         * WindowsConsoleDriver.cs: Get rid of unused Echo property.
1376
1377         * NullConsoleDriver.cs: Get rid of Echo property.
1378
1379         * IConsoleDriver.cs: Get rid of Echo property.
1380
1381         * ConsoleDriver.cs (Echo::get/set): Removed, not needed.
1382
1383         * TermInfoDriver.cs (Echo::get/set): Removed, this isn't necessary
1384         and is confusing.
1385         (ReadKey): If we are intercepting the key, call SetEcho (false)
1386         and then reset back to true after reading the key.
1387         (ReadLine): Same idea here.
1388         (GetCursorPosition): We no longer need to keep track of the
1389         previous echo state, we no longer have it :)
1390
1391 2007-04-16  Jeffrey Stedfast  <fejj@novell.com>
1392
1393         Fix for bug #80710 (and a bug I introduced in my last fix due to
1394         this code assuming the underlying term echo state was always
1395         false) and other buglets that I noticed.
1396
1397         * TermInfoDriver.cs (ReadLine): Set (term) Echo to false as we do
1398         our own manual echoing which prevents ^H from getting displayed on
1399         the screen when the user hits backspace.
1400         (ReadLine): If the user hits Backspace and builder.Length is 0, DO
1401         NOT echo the backspace back to the console, ever.
1402         (ReadLine): Only echo characters back to the console if echo is
1403         set to true. Seems the Echo ConsoleDriver property is a Mono
1404         extension, and I'm assuming this is the intended behavior? I can't
1405         see what else the Echo property would be useful for...
1406
1407 2007-04-16  Jeffrey Stedfast  <fejj@novell.com>
1408
1409         Fixes bug #81050
1410
1411         * TermInfoDriver.cs: Renamed the noEcho variable to echo, makes
1412         the logic cleaner/simpler/etc. Plus it was never actually used
1413         other than in the property methods which are called Echo.
1414         (Init): Call ConsoleDriver.SetEcho() with the 'echo' value -
1415         allows for a slight optimization if called from within the
1416         Echo::set property.
1417         (GetCursorPosition): Instead of calling the Echo property methods,
1418         call ConsoleDriver.SetEcho() directly to toggle echo off (if echo
1419         isn't already off, and then back on once we're finished getting
1420         the position - assuming the echo state is on, of course) - this
1421         avoids calling back into Init() which just felt dirty.
1422         (Echo::set): If the Echo state differs from our current state,
1423         call ConsoleDriver.SetEcho() with the new state (this is the
1424         important piece of the fix for bug #81050).
1425         (ReadKey): Simplified the echo logic to make it a bit clearer.
1426         (ReadLine): Same.
1427
1428 2007-04-16  Marek Safar  <marek.safar@gmail.com>
1429
1430         * Char.cs (IsLetter): Faster version.
1431
1432 2007-04-15  Alp Toker  <alp@atoker.com>
1433
1434         * Decimal.cs: Provide 2.0 Round() overloads using System.Math.
1435
1436 2007-04-15  Alp Toker  <alp@atoker.com>
1437
1438         * Activator.cs: CreateInstance(Type,object[]) was not params before
1439         2.0.
1440
1441 2007-04-15  Alp Toker  <alp@atoker.com>
1442
1443         * NonSerializedAttribute.cs: Inherited=false in 2.0.
1444
1445 2007-04-05  Dick Porter  <dick@ximian.com>
1446
1447         * Environment.cs: Increment mono_corlib_version
1448
1449 2007-04-03  Alp Toker  <alp@atoker.com>
1450
1451         * Array.cs: CreateInstance(Type,int[]) is params.
1452         * AppDomain.cs: ExecuteAssemblyByName(string,Evidence,string[]) is
1453         params.
1454
1455 2007-04-03  Alp Toker  <alp@atoker.com>
1456
1457         * Convert.cs:
1458         * Math.cs: Should be static classes in 2.0.
1459
1460 2007-04-03  Alp Toker  <alp@atoker.com>
1461
1462         * Delegate.cs: DynamicInvoke(object[]) is params in 2.0.
1463
1464 2007-04-03  Alp Toker  <alp@atoker.com>
1465
1466         * Delegate.cs: Combine(Delegate[]) is params in 2.0.
1467
1468 2007-03-27  Dick Porter  <dick@ximian.com>
1469
1470         * Environment.cs: Increment mono_corlib_version;
1471
1472 2007-03-16  Miguel de Icaza  <miguel@novell.com>
1473
1474         * BitConverter.cs: Revert the patch from 72237 as that introduces
1475         a regression and we are not sure yet what we will be doing about
1476         that.
1477
1478         Introduce a new InternalInt64BitsToDouble method that provides the
1479         fixed functionality, mark it as internal.
1480
1481         Introduce a new SwappableToDouble method that includes the
1482         swapping ToDouble routine as introduced by Zoltan on 72237, this
1483         is used by InternalInt64BitsToDouble.
1484
1485         * Math.cs (IEEERemainder): Use the InternalInt64BitsToDouble
1486         routine here to preserve the semantics from Zoltan.  
1487
1488         The problem with BitConverter.cs is that it is completely hossed.
1489         In .NET 1.1 it is a bitwise copy, no attempt is ever done to do
1490         endian-specific swapping.   In .NET 2.0 it is *almost* like that,
1491         but it is subtly broken: if data is unaligned then endian
1492         conversions happen.  If the data is properly aligned it behaves
1493         like 1.0.
1494
1495         In general BitConverter is a sad class that offers little control,
1496         we will be introducing a new mono bit converter and encourage
1497         users to use that instead of the entirely broken
1498         System.BitConverter. 
1499
1500 2007-03-11  Gert Driesen  <drieseng@users.sourceforge.net>
1501
1502         * Delegate.cs: Fixed bootstrap build.
1503
1504 2007-03-08  Gert Driesen  <drieseng@users.sourceforge.net>
1505
1506         * StringComparer.cs: Renamed StringComparer classes and promoted them
1507         to top-level classes. Merged Ordinal and OrdinalIgnoreCase comparers.
1508         Fixes binary serialization compatibility with MS.
1509
1510 2007-03-06  Zoltan Varga  <vargaz@gmail.com>
1511   
1512         * Type.cs (Equals): Remove a useless check.
1513
1514         * Type.cs: Rename Type:Equals(Type) to EqualsInternal, and add support for checking
1515         UnderlyingSystemType. Fixes #81037.
1516
1517 2007-03-05 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>
1518
1519         * TermInfoDriver.cs: adjust buffer indexes after *every* read. Fixes
1520         bug #80329. Robert Jordan attached a similar patch to the bug report
1521         but I didn't see it until after my commit...
1522
1523 2007-03-05  Peter Dettman <peter.dettman@iinet.net.au>
1524
1525         * Enum.cs: The above patch makes the formatting for specifiers 'x'
1526         and 'X' behave like MS.NET, including the correct length for each
1527         possible underlying type, and correctly using capital letters for
1528         the 'X' case.
1529
1530         Patch also includes some more test cases in EnumTests.cs.
1531
1532 2007-02-25  Gert Driesen  <drieseng@users.sourceforge.net>
1533
1534         * AppDomainSetup.cs: If configuration file is not an absolute path,
1535         then throw a MemberAccessException if ApplicationBase is not set,
1536         or otherwise consider it as a path relative to ApplicationBase.
1537         Fixes bug #80934. Patch provided by Jamie Cansdale.
1538         * AppDomain.cs: In CreateDomain, construct AppDomain with
1539         ApplicationBase of default domain if not explicitly set in specified
1540         AppDomainSetup. If config file is not set, then use filename of the
1541         default domain config file. Base on patch provided by Jamie Cansdale.
1542
1543 2007-02-16  Sebastien Pouliot  <sebastien@ximian.com>
1544
1545         * Random.cs: Fix exception messages ("then" -> "than"). Spotted by
1546         Mark A. Nicolosi (#80873).
1547
1548 2007-02-12  Miguel de Icaza  <miguel@novell.com>
1549
1550         * CStreamWriter.cs (Write with char []): take the lock once for
1551         all characters and call manually the InternalWriteChar properly to
1552         speed things up.
1553
1554         (Write with string parameter): same thing, if the driver is not
1555         initialized use a fast path.
1556
1557         If the driver has not been initialized, use a fast path instead. 
1558
1559 Mon Feb 12 21:54:57 CET 2007 Paolo Molaro <lupus@ximian.com>
1560
1561         * MonoType.cs: patch from Cedric Vivier <cedricv@neonux.com> to
1562         get correctly non-public fields from generic types.
1563
1564 2007-02-08  Jonathan Chambers  <joncham@gmail.com>
1565
1566         * __ComObject.cs: Add IUnknown field to object. Cleanup icalls.
1567         
1568 2007-02-03  Zoltan Varga  <vargaz@gmail.com>
1569
1570         * BitConverter.cs (ToDouble): Fix this on big-endian machines.
1571
1572 2007-01-30  Atsushi Enomoto  <atsushi@ximian.com>
1573
1574         * TimeZone.cs: According to the docs, we should not throw when
1575         converting to Localtime if we are a negative value.  Instead we
1576         return DateTime.MinValue.
1577
1578 2007-01-25  Atsushi Enomoto  <atsushi@ximian.com>
1579
1580         * DateTime.cs : copy Kind in those members that return DateTime.
1581           Fixed bug #80614.
1582
1583 2007-01-20  Miguel de Icaza  <miguel@novell.com>
1584
1585         * Array.cs (InternalArray__ICollection_Contains,
1586         InternalArray__IndexOf): Cope with null values in the array (See
1587         bug #80563).
1588
1589 2007-01-19  Marek Habersack  <grendello@gmail.com>
1590
1591         * AppDomain.cs: Make sure that domain
1592         SetupInformation.ConfigurationFile is never null. MS.NET by
1593         default copies the default domain's ConfigurationFile value
1594         there. Fixes bug #80547.
1595
1596 2007-01-14  Jensen Somers <jensen.somers@gmail.com>
1597
1598         * ArraySegment.cs: Added Equals() method, operator == and !=
1599         overloading and GetHashCode().
1600
1601 2007-01-10  Andy Hume <andyhume32@yahoo.co.uk>
1602
1603         * Fixes to a number of exception classes.
1604         
1605         A project of mine uses #ctor(String,Exception) on 
1606         ObjectDisposedException, so I looked at adding that, and any 
1607         other similar constructors missing as per the class status report.
1608         
1609         I also spotted inconsistent setting of HResult, and fixed 
1610         those too.  For instance, ArgumentNullException sets HResult 
1611         only in three out of the four constuctors; not setting it in 
1612         the v2 (String,Exception) one -- and correctly not in the 
1613         Serialization constructor.
1614         
1615         
1616         So, I fixed the remaining missing (String,Exception) 
1617         constructors in corlib (2 of), and fixed the Hresult setting 
1618         in all exceptions there (4 of).
1619         
1620         The remaining Exception constructor omission listed was 
1621         InvalidCastException.ctor(System.String, System.Int32).  MSDN   says:
1622         "This constructor supplies an HRESULT value that is 
1623         accessible to inheritors of the InvalidCastException class, 
1624         via the protected HResult property of the Exception class."
1625         I added that method too, setting the HResult property from 
1626         the Int32 argument.
1627
1628 2007-01-10  Atsushi Enomoto  <atsushi@ximian.com>
1629
1630         * String.cs, StringComparer.cs : avoid extra string creation in
1631           StringComparer.OrdinalIgnoreCase.
1632
1633 2007-01-05  Sebastien Pouliot  <sebastien@ximian.com>
1634
1635         * DateTime.cs: Under 2.0 fix ParseExact to set DateTimeKind.Utc when
1636         DateTimeStyles.AdjustToUniversal is used.
1637
1638 2007-01-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1639
1640         * TermInfoDriver.cs: honor the backspace in ReadLine.
1641
1642 2006-12-30  Marek Safar  <marek.safar@gmail.com>
1643
1644         * String.cs: Character based method only.
1645         (IndexOf, LastIndexOf, Replace, IndexOfAny): Performance improvements.
1646         (Substring): Returns same instance when index is 0.
1647
1648 2006-12-30  Alp Toker  <alp@atoker.com>
1649
1650         * Decimal.cs:
1651         * Math.cs: Implement missing Decimal.Ceiling methods for 2.0.
1652         Closes #80384.
1653
1654 2006-12-22  Sebastien Pouliot  <sebastien@ximian.com> 
1655
1656         * DateTime.cs: Implement missing [To|From]Binary methods for 2.0.
1657         * OperatingSystem.cs: Implement missing ServicePack and VersionString
1658         properties (2.0).
1659         * Version.cs: Add missing Major|MinorRevision properties for 2.0.
1660
1661 2006-12-14  Raja R Harinath  <rharinath@novell.com>
1662
1663         * Type.cs (MakeGenericType): Can only be called on a generic type
1664         definition.
1665
1666 2006-12-03  Miguel de Icaza  <miguel@novell.com>
1667
1668         * DateTime.cs: Fix this on the 2.0 profile, return the
1669         DateTimeKind for the Now property
1670
1671 2006-12-01  Duncan Mak  <duncan@a-chinaman.com>
1672
1673         * ArgumentOutOfRangeException.cs (.ctor): 
1674         * NotFiniteNumberException.cs (.ctor): Add the 2.0 constructor
1675         that takes a string and an inner Exception.
1676
1677 2006-12-01  Atsushi Enomoto  <atsushi@ximian.com>
1678
1679         * DateTime.cs :
1680           When comparing enumerations, two or more enumeration values might
1681           match. Thus basically we should do complete matching, but right
1682           now just do reverse order search since only numbered abbrev month
1683           names matter (and full iteration is a mess). Fixed bug #80094.
1684
1685 2006-12-01  Atsushi Enomoto  <atsushi@ximian.com>
1686
1687         * DateTime.cs :
1688           use new internal clone-less DateTimeFormatInfo members.
1689
1690 2006-11-29  Martin Baulig  <martin@ximian.com>
1691
1692         * INullableValue.cs: Removed.
1693
1694 2006-11-28  Duncan Mak  <duncan@novell.com>
1695
1696         * ArgumentNullException.cs (.ctor): Added new constructor that's
1697         new in .NET 2.0.
1698
1699         * InsufficientMemoryException.cs: Added missing 2.0 exception.
1700         
1701 2006-11-27  Jonathan Chambers  <joncham@gmail.com>
1702
1703         * __ComObject.cs: Removed IDispatchMono.
1704         
1705 2006-11-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1706
1707         * TermInfoDriver.cs:
1708         * Console.cs: lazy initialization of Console 2.0 (also when
1709         CancelKeyPress is used).
1710
1711 2006-11-27  Miguel de Icaza  <miguel@novell.com>
1712
1713         * Exception.cs (GetType): New method in 2.x, Another Moma catch. 
1714
1715 Mon Nov 27 19:34:16 CET 2006 Paolo Molaro <lupus@ximian.com>
1716
1717         * GC.cs: implemented the needed methods with icalls.
1718
1719 2006-11-26  Miguel de Icaza  <miguel@novell.com>
1720
1721         * Math.cs: Add Floor(Decimal d), for CreativeDocs.NET.
1722
1723         Go Moma!  http://www.mono-project.com/Moma
1724
1725         * Decimal.cs: Refactor code to implement TryParse.
1726
1727         Also, avoid initializing messages on every call to stripStyles
1728
1729 2006-11-22  Miguel de Icaza  <miguel@novell.com>
1730
1731         * DateTime.cs: A small performance hit, we store the actual time
1732         span in a boxed object.   This way, it can be updated from other
1733         threads if necessary.   We always unbox to get the value before
1734         any potential updates. 
1735
1736         Thanks to Gonzalo for catching this.
1737
1738 2006-11-21  Miguel de Icaza  <miguel@novell.com>
1739
1740         * TimeZone.cs (CurrentSystemTimeZone): Cache the current year
1741         daylight savings time in static variables.
1742
1743         (CurrentSystemTimeZone.OnDeserialization): Initialize
1744         this_year_dlt and this_year on this method.
1745
1746         (TimeZone): init statically the currentTimeZone instead of
1747         delaying that to the static property, avoiding a compare. 
1748
1749 2006-11-22  Lluis Sanchez Gual  <lluis@novell.com>
1750
1751         * Array.cs: (compare<T>) if a comparer is provided, it has
1752           priority over other comparison methods.
1753
1754 2006-11-14  Miguel de Icaza  <miguel@novell.com>
1755
1756         * Array.cs: TODOs will from now on be used to flag information
1757         that will be developer-visible, not to flag internal information
1758         that none of us reads or bothers about.
1759
1760         For those, use "FIXME" strings in the source code instead. 
1761
1762         * AppDomain.cs: Update to be more useful.
1763
1764 2006-11-13  Atsushi Enomoto  <atsushi@ximian.com>
1765
1766         * String.cs : fixed incorrect startIndex/length count in
1767           IndexOf(string,StringComparison).
1768
1769 2006-11-07  Marek Safar  <marek.safar@gmail.com>
1770
1771         * String.cs (LastIndexOf): If value is Empty, the return value is
1772         the start index position in value.
1773
1774 2006-10-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1775
1776         * TermInfoDriver.cs: prevent an invalid cast.
1777
1778 2006-10-26  Marek Safar  <marek.safar@seznam.cz>
1779
1780         * String.cs (Concat): Add fast-path for empty strings.
1781
1782 2006-10-20  Jonathan Chambers  <joncham@gmail.com>
1783
1784         * Variant.cs: Add support for bool and interfaces.
1785         
1786 2006-10-18  Kornél Pál  <kornelpal@gmail.com>
1787
1788         * Type.cs: Removed is_subtype_of because IsSubclassOf should be used
1789           that is public and virtual. IsClass: Checking for ValueType is
1790           unnecessary. IsEnum: UnderlyingSystemType is not used anymore so
1791           no EnumBuilder hack is necessary. Checking for Enum is
1792           unnecessary. IsSerializable: Walk BaseType for user defined types.
1793           IsSubclassOf: Walk BaseType for user defined types.
1794
1795         * MonoType.cs: IsValueTypeImpl is unnecessary. IsSubclassOf: Unlike
1796           Type system types throw ArgumentNullException on null Type
1797           argument.
1798
1799 2006-10-14  Gert Driesen  <drieseng@users.sourceforge.net>
1800
1801         * BadImageFormatException.cs: Changed message for default ctor to
1802         match MS. Use internal message field of Exception to check whether
1803         Message is null. Match MS default messages when no message is 
1804         set. Fixed ToString to match MS.
1805
1806 2006-10-09  Miguel de Icaza  <miguel@novell.com>
1807
1808         * Environment.cs: Handle SpecialFolder.MyMusic
1809
1810 2006-10-07 Gert Driesen <drieseng@users.sourceforge.net>
1811
1812         * Enum.cs: Use different exception message depending on whether the
1813         type of the passed in value is an Enum or not. Avoid looking up the
1814         enum's underlying type twice in case of "D" or "d" format specifier.
1815
1816 2006-10-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1817
1818         * TermInfoDriver.cs: don't allow backspace if we're at the beginning
1819         position for a ReadLine.
1820
1821 2006-10-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1822
1823         * TermInfoDriver.cs: ironpython autocompletion works now.
1824
1825 2006-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1826
1827         * Console.cs: avoid casting on windows.
1828
1829 2006-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1830
1831         * ConsoleDriver.cs:
1832         * TermInfoDriver.cs:
1833         * IConsoleDriver.cs:
1834         * CStreamWriter.cs:
1835         * ConsoleKeyInfo.cs:
1836         * NullConsoleDriver.cs:
1837         * Console.cs:
1838         * CStreamReader.cs:
1839         * WindowsConsoleDriver.cs: initial changes to handle cursor position
1840         and screen buffers.
1841
1842 2006-09-21  Gert Driesen  <drieseng@users.sourceforge.net>
1843
1844         * ArithmeticException.cs: Modified default message to match MS, to
1845         ensure a local regression test passes on both Mono and .NET.
1846
1847 2006-09-21  Gert Driesen  <drieseng@users.sourceforge.net>
1848
1849         * Exception.cs: Marked message internal to allow derived classes to
1850         access the raw message (without changing the public API).
1851
1852 2006-09-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1853
1854         * ConsoleDriver.cs:
1855         * TermInfoDriver.cs:
1856         * IConsoleDriver.cs:
1857         * Console.cs:
1858         * WindowsConsoleDriver.cs: don't switch to the alternate window.
1859         Trigger the cancel event. Retrieve the cursor position at the
1860         beginning, as we're going to keep track of it instead of querying it
1861         all the time.
1862
1863 2006-09-14  Jonathan Chambers  <joncham@gmail.com>
1864
1865         * Environment.cs (ProcessorCount): Implement as icall.
1866         Patch by Jason McFall.
1867
1868 2006-09-05  Raja R Harinath  <rharinath@novell.com>
1869
1870         * DateTime.cs (Today) [NET_2_0]: Set kind to Local.
1871
1872 2006-09-02  Zoltan Varga  <vargaz@gmail.com>
1873
1874         * Enum.cs (Equals): Use the generic Equals implementation from ValueType which
1875         is faster and avoids allocations.
1876
1877 2006-09-01  Martin Baulig  <martin@ximian.com>
1878
1879         * Array.cs (Array.InternalArray): Removed the helper class;
1880         instead we use private generic methods in System.Array which are
1881         inserted into the vtable at runtime.
1882
1883 2006-08-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1884
1885         * ConsoleCancelEventArgs.cs: fix my build.
1886
1887 2006-08-22  Miguel de Icaza  <miguel@novell.com>
1888
1889         * MulticastDelegate.cs: Make DynamicInvokeImpl internal in 2.0 
1890
1891         * Converter.cs: update signature to final.
1892
1893         * ModuleHandle.cs: Removed the [Obsolete] flags as they removed
1894         those in the final 2.0
1895
1896         * DateTime.cs: Fixed the signature. 
1897
1898         * Convert.cs: Removed API calls that were deprecated in final 2.0
1899
1900         * Enum.cs: Updated to use the obsoletes flagged in 2.0.
1901
1902         * ConsoleCancelEventArgs.cs: Updated to 2.0
1903
1904 2006-08-19  Miguel de Icaza  <miguel@novell.com>
1905
1906         * Attribute.cs: This needs to do a deep compare, not a shallow
1907         one.   Ran into this bug with the VBNC compiler that compares two
1908         separate attributes for equality using this.
1909
1910         * String.cs (StartsWith): Fix the overloaded constructor that
1911         takes a CultureInfo, if that is null, it means to use the current
1912         culture. 
1913
1914         * TermInfoDriver.cs: Do not throw exceptions on the driver for
1915         SetWindowSize and SetWindowPosition, they can be treated as nops.
1916
1917 2006-08-18  Zoltan Varga  <vargaz@gmail.com>
1918
1919         * *.cs: Use String.Empty instead of "" in a lot of places.
1920
1921 2006-08-17  Sebastien Pouliot  <sebastien@ximian.com>
1922
1923         * DateTime.cs: Remove last patch to DateTime as the fix wasn't correct
1924         and made most x.509 unit tests fails. However the original problem is 
1925         back (only on 2.0).
1926
1927 2006-08-14  Raja R Harinath  <rharinath@novell.com>
1928
1929         Fix #78943
1930         * Activator.cs (CreateInstance): Throw ArgumentException on open
1931         generic types.
1932
1933 2006-08-14  Miguel de Icaza  <miguel@novell.com>
1934
1935         * MonoType.cs: Do the argument testinf for SetField later,
1936         otherwise the implicit (and not documented, but already considered
1937         side effect of checking SetProperty) did not work.
1938
1939         Bug fix #79023
1940
1941 2006-08-13  Atsushi Enomoto  <atsushi@ximian.com>
1942
1943         * String.cs : Normalize() and IsNormalized() implementation.
1944
1945 2006-08-10  Jonathan Chambers  <joncham@gmail.com>
1946
1947         * __ComObject.cs: Added defintion of IDispatch interface, and
1948         property. Get CLSID of supertype for creation if class not
1949         ComImport attributed (allows for inheritance of RCW).
1950         * MonoType.cs: Implement IsCOMObjectImpl.
1951
1952 2006-08-09  Atsushi Enomoto  <atsushi@ximian.com>
1953
1954         * DateTime.cs : fixed X509Certificate() case that regressed only
1955           under NET_2_0.
1956
1957 2006-08-07  Kornél Pál  <kornelpal@gmail.com>
1958
1959         * Console.cs: Use correct code pages on Windows and initialize
1960           InputEncoding and OutputEncoding to the actual encodings used.
1961
1962 2006-08-05  Duncan Mak  <duncan@novell.com>
1963
1964         * Char.cs (TryParse): Implemented missing 2.0 method, which fixed
1965         bug #79007.
1966
1967 2006-07-28  Jonathan Chambers  <joncham@gmail.com>
1968
1969         * __ComObject.cs: Added support for marshalling objects.
1970         
1971 2006-07-24  Atsushi Enomoto  <atsushi@ximian.com>
1972
1973         * Char.cs : implemented utf32 conversion methods thus fixed bug #78856.
1974
1975 2006-07-19  John Luke  <john.luke@gmail.com>
1976
1977         * TermInfoDriver.cs: switch order of alt and control when
1978         calling new ConsoleKeyInfo()
1979
1980 2006-07-19  Kornél Pál  <kornelpal@gmail.com>
1981
1982         * String.cs: Improve CreateString () performance when length is zero.
1983
1984 2006-07-18  Kornél Pál  <kornelpal@gmail.com>
1985
1986         * String.cs: Added CreateString () methods. Constructors with matching
1987           argument list are redirected to these methods that improves
1988           performance as well as fixes bug #78703.
1989
1990 2006-07-15  Jonathan Chambers  <joncham@gmail.com>
1991
1992         * __ComObject.cs: Begin implementing COM Interop.
1993         * Environment.cs: Increment corlib version.
1994         
1995 2006-07-12  Zoltan Varga  <vargaz@gmail.com>
1996
1997         * Delegate.cs (DynamicInvokeImpl): Add support for bound delegates in Net 2.0.
1998
1999 2006-07-11  Zoltan Varga  <vargaz@gmail.com>
2000
2001         * Double.cs (Parse): Fix handling of inner whitespace.
2002
2003 2006-07-09  Zoltan Varga  <vargaz@gmail.com>
2004
2005         * Int32.cs: Fix a warning.
2006
2007 2006-07-07  Atsushi Enomoto  <atsushi@ximian.com>
2008
2009         * TimeZone.cs : consider DateTimeKind in ToLocalTime() and 
2010           ToUniversalTime(). Fixed bug #78784. Patch by Thong Nguyen.
2011         * DateTime.cs : DateTimeKind for UtcNow should be Utc.
2012
2013 2006-06-28  Kornél Pál  <kornelpal@gmail.com>
2014
2015         * Char.cs: Implemented IsHighSurrogate and IsLowSurrogate methods.
2016
2017 2006-06-27  Atsushi Enomoto  <atsushi@ximian.com>
2018
2019         * Double.cs : don't throw Exception in TryParse() for 'E'.
2020           Fixed bug #78546.
2021
2022 2006-06-20  Jb Evain  <jbevain@gmail.com>
2023
2024         * Math.cs: implement Math.Truncate.
2025
2026 2006-06-13  Atsushi Enomoto  <atsushi@ximian.com>
2027
2028         * DateTime.cs :
2029           Another lame win32 dependent pattern. Fixed bug #78618.
2030
2031 2006-06-09  Jonathan Chambers  <jonathan.chambers@ansys.com>
2032
2033         * Environment.cs: Implement Set/GetEnvironmentVariable for User/Machine.        
2034
2035 2006-06-07  Kornél Pál  <kornelpal@gmail.com>
2036
2037         * Environment.cs: Use Consts.FxFileVersion for Environment.Version
2038           as Consts.RuntimeVersion was removed.
2039
2040 2006-06-05  Jonathan Chambers  <jonathan.chambers@ansys.com>
2041
2042         * Variant.cs: Added.
2043         * Environment.cs: Incremented corlib version since adding Variant.      
2044         
2045 2006-06-01  Raja R Harinath  <rharinath@novell.com>
2046
2047         * Nullable.cs (operator==, operator!=): Remove.
2048
2049 2006-05-31  Zoltan Varga  <vargaz@gmail.com>
2050
2051         * MonoDummy.cs: Removed as it is no longer needed.
2052
2053         * Environment.cs: Bump corlib version.
2054         
2055         * Environment.cs: Revert the last change.
2056         
2057         * Environment.cs: Bump corlib version.
2058
2059         * MonoAsyncCall.cs: New file.
2060
2061 2006-05-30  Gert Driesen  <drieseng@users.sourceforge.net>
2062
2063         * Char.cs: Removed duplicate (explicit) interface implementation.
2064         * String.cs: Removed duplicate (explicit) interface implemenation.
2065         * MulticastDelegate.cs: Fixed API mismatches.
2066
2067 2006-05-29 Paolo Molaro <lupus@ximian.com>
2068
2069         * String.cs: make sure that the chars truncated by a stringbuilder
2070         are zeroed.
2071
2072 2006-05-29  Martin Baulig  <martin@ximian.com>
2073
2074         * Exception.cs
2075         (Exception.StackTrace): Use the new stack trace format which is
2076         very similar to the one of MS.NET - method name goes first,
2077         file / line number last and in the method name, we separate class
2078         and method name by `.'.
2079
2080         * Environment.cs
2081         (Environment.StackTrace): Enable line-number information.
2082
2083 2006-05-24  Atsushi Enomoto  <atsushi@ximian.com>
2084
2085         * DateTime.cs :
2086           Implement 2.0 TryParseExact(). Patch by Seo Sanghyeon.
2087
2088 2006-05-17  Kazuki Oikawa  <kazuki@panicode.com>
2089
2090         * Array.cs : added internal sort method used
2091           in System.Collections.Generics.List<T>.Sort(Comparison<T>).
2092
2093 2006-05-15  Zoltan Varga  <vargaz@gmail.com>
2094
2095         * Environment.cs: Bump corlib version.
2096
2097 2006-05-10  Zoltan Varga  <vargaz@gmail.com>
2098
2099         * MonoType.cs (GetMethodImpl): Fix a warning.
2100
2101 2006-05-08  Atsushi Enomoto  <atsushi@ximian.com>
2102
2103         * ArrayTest.cs : use proper comparer in IndexOf() and LastIndexOf().
2104           Patch by Kazuki Oikawa. Fixed bug #77277.
2105
2106 2006-05-07  Zoltan Varga  <vargaz@gmail.com>
2107
2108         * Nullable.cs (Equals): Fix comparison to null. Fixes #78322.
2109
2110 2006-04-28  Atsushi Enomoto  <atsushi@ximian.com>
2111
2112         * Nullable.cs : updated Nullable<T> API to 2.0 RTM.
2113
2114 2006-04-26  Atsushi Enomoto  <atsushi@ximian.com>
2115
2116         * Double.cs : (Parse) handle currency symbol when
2117           AllowCurrencySymbol is passed as part of the style. Patch by
2118           nede@aliquant.com, modified to eliminate redundant Substring().
2119           This fixes bug #77721.
2120
2121 2006-04-26  Atsushi Enomoto  <atsushi@ximian.com>
2122
2123         * MonoType.cs : (GetMethod) when zero-length type[] is explicitly
2124           passed, don't return methods with some arguments. Fixed bug #77367.
2125
2126 2006-04-21  Gert Driesen  <drieseng@users.souceforge.net>
2127
2128         * Enum.cs: Provide meaningful message when type of passed in value
2129         does not match enum type.
2130
2131 2006-04-19  Raja R Harinath  <rharinath@novell.com>
2132
2133         * Char.cs (Equals): Don't access 'm_value' field of other
2134         instances.  Cast directly to 'char'.
2135
2136 2006-04-13  Atsushi Enomoto  <atsushi@ximian.com>
2137
2138         * DateTime.cs : implement SpecifyKind(). Patch by Thong Nguyen.
2139
2140 2006-04-13  Atsushi Enomoto  <atsushi@ximian.com>
2141
2142         * NumberFormatter.cs : general performance improvements. Avoid 
2143           extraneous evaluation for simple formatting. Details are seen in 
2144           bug #77792. Patch by Kazuki Oikawa.
2145
2146 2006-04-13  Atsushi Enomoto  <atsushi@ximian.com>
2147
2148         * DateTime.cs : implement IsDaylightSavingTime().
2149           Patch by Seo Sanghyeon <tinuviel@sparcs.kaist.ac.kr>.
2150
2151 2006-04-04  Atsushi Enomoto  <atsushi@ximian.com>
2152
2153         * Array.cs :
2154           added some more [ReliabilityContract].
2155           removed some [CLSCompliant].
2156           renamed generic method parameter names.
2157
2158 2006-03-31  Zoltan Varga  <vargaz@gmail.com>
2159
2160         * Environment.cs (SetEnvironmentVariable): Implement.
2161
2162 2006-03-28  Atsushi Enomoto  <atsushi@ximian.com>
2163
2164         * Array.cs : oops, the last change caused regression. The array must
2165           be transparent to ReadOnlyCollection, not create another list.
2166
2167 2006-03-28  Atsushi Enomoto  <atsushi@ximian.com>
2168
2169         * Array.cs : AsReadOnly<T>() in RTM returns ReadOnlyCollection<T>.
2170           Thus removed ReadOnlyArray<T> and ReadOnlyArrayEnumerator<T>.
2171           In 2.0 some members became non-virtual.
2172
2173 2006-03-23  Atsushi Enomoto  <atsushi@ximian.com>
2174
2175         * String.cs : oops, NET_2_0.
2176
2177 2006-03-23  Atsushi Enomoto  <atsushi@ximian.com>
2178
2179         * String.cs : added new IndexOf() and LastIndexOf() overloads, and
2180           IEnumerable<char>.GetEnumerator().
2181
2182 2006-03-21  Kornél Pál  <kornelpal@gmail.com>
2183
2184         * String.cs: Make memcpy4 private as it is a helper method.
2185           Make memcpy internal to can be used from UnicodeEncoding.
2186
2187 2006-03-19  Marek Safar  <marek.safar@seznam.cz>
2188
2189         * Nullable.cs (Compare, Equals): Added constrain as gmcs now correctly
2190         reports an error here.
2191
2192 2006-03-16  Atsushi Enomoto  <atsushi@ximian.com>
2193
2194         * Double.cs : (Parse) reject String.Empty.
2195
2196 Wed Mar 15 16:30:51 CET 2006 Paolo Molaro <lupus@ximian.com>
2197
2198         * LocalDataStoreSlot.cs: implement as index in an array.
2199         Implemented finalizer and allow it to remove the data stored
2200         in the slot.
2201
2202 2006-03-15  Zoltan Varga  <vargaz@gmail.com>
2203
2204         * Environment.cs: Bump corlib version.
2205
2206 2006-03-10  Zoltan Varga  <vargaz@gmail.com>
2207
2208         * MonoCustomAttrs.cs (IsDefined): Avoid a runtime assert if a type
2209         overwrites GetCustomAttributes () but not IsDefined ().
2210
2211 2006-03-07  Peter Dennis Bartok  <pbartok@novell.com>
2212
2213         * Environment.cs: Bumped corlib version to 48 (due to r57532)
2214
2215 2006-03-07  Martin Baulig  <martin@ximian.com>
2216
2217         * String.cs (String.FormatHelper): Try getting an `ICustomFormatter'
2218         from the `provider' if possible.
2219
2220 2006-02-26  Gert Driesen  <drieseng@users.souceforge.net>
2221
2222         * DecimalFormatter.cs: Removed obsolete class, as it has been replaced
2223         by NumberFormatter.
2224         * DoubleFormatter.cs: Same.
2225         * SingleFormatter.cs: Same.
2226
2227 2006-02-21  Marek Safar  <marek.safar@seznam.cz>
2228
2229         * String.cs (Equals): Optimized for speed.
2230
2231 2006-02-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2232
2233         * TermInfoDriver.cs: patch by Mike Hull that fixes bug #77518.
2234
2235 Mon Feb 20 11:19:54 CET 2006 Paolo Molaro <lupus@ximian.com>
2236
2237         * MonoType.cs: patch from Joachim Ante <joe@otee.dk> to
2238         improve error messages.
2239
2240 2006-02-15  Martin Baulig  <martin@ximian.com>
2241
2242         * Type.cs (Type.IsGenericInstance): Removed.
2243
2244 2006-02-14  Ankit Jain  <jankit@novell.com>
2245             Raja R Harinath  <rharinath@novell.com>
2246  
2247         * ArraySegment.cs (.ctor): Fix bounds check. Rename param 'length' to
2248         'count'.
2249
2250 2006-02-11  Zoltan Varga  <vargaz@gmail.com>
2251
2252         * TermInfoDriver.cs (CreateKeyInfoFromInt): Fix handling of tab and its
2253         friends.
2254         
2255         * TermInfoDriver.cs (GetWindowDimensions): Obtain the exact terminal
2256         size using an icall.
2257         (GetCursorPosition): Convert the row and column to 0 based indexing. 
2258         Also fix reading of large values.
2259         (CreateKeyInfoFromInt): Convert LF to ConsoleKey.Enter.
2260
2261         * ConsoleDriver.cs (GetTtySize): New icall.
2262
2263 2006-02-10  Zoltan Varga  <vargaz@gmail.com>
2264
2265         * Array.cs: Fix some methods which previously returned Nullable<T>.
2266
2267         * Nullable.cs: Add T: struct constraint and fix constructor.
2268
2269 Fri Feb 3 11:01:46 CET 2006 Paolo Molaro <lupus@ximian.com>
2270
2271         * String.cs: changed StartsWith/EndsWith to faster versions.
2272
2273 2006-02-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2274
2275         * String.cs: implement 2.0 StartsWith and EndsWith new overloads. Based
2276         on a patch by Thong Nguyen.
2277
2278 2006-01-31  Zoltan Varga  <vargaz@gmail.com>
2279
2280         * String.cs: Implement one of the new net 2.0 Split methods.
2281
2282 2006-01-31  Atsushi Enomoto  <atsushi@ximian.com>
2283
2284         * String.cs : (LastIndexOf) Fixed bug #77412. It should not expect
2285           that value length is bigger than its index.
2286
2287 2006-01-27  Zoltan Varga  <vargaz@gmail.com>
2288
2289         * DateTime.cs: Add some 2.0 methods and properties.
2290
2291 2006-01-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2292
2293         * Console.cs: if InternalCodePage returns -1, use the default encoding.
2294         Also match the UTF8 one properly. Patch by wall_john@sohu.com.
2295
2296 2006-01-19  Atsushi Enomoto  <atsushi@ximian.com>
2297
2298         * ModuleHandle.cs : GetPEKind() is not public in 2.0 RTM.
2299
2300 2006-01-16  Alp Toker  <alp@atoker.com>
2301
2302         * TimeSpan.cs: Simple implementation of NET 2.0 TryParse() using
2303         try/catch
2304
2305 2006-01-05  Raja R Harinath  <rharinath@novell.com>
2306
2307         Fix regressions introduced by the fix to #71300.
2308         * Activator.cs (CreateInstance): Use Binder.SelectMethod instead
2309         of home-grown FindBestCtor.
2310         (FindBestCtor): Delete.
2311
2312 2006-01-03  Zoltan Varga  <vargaz@gmail.com>
2313
2314         * Nullable.cs: Update to Net 2.0 RTM.
2315         
2316         * Nullable.cs: Add comments about runtime dependencies on the layout of
2317         this type.
2318
2319 2006-01-02  Sebastien Pouliot  <sebastien@ximian.com>
2320
2321         * Activator.cs: Now find the best ctor when null are used for 
2322         paramaters. Fix bug #71300. Added checks for specific types (void,
2323         TypedReference, ArgIterator and RuntimeArgumentHandle).
2324         * Console.cs: Re-use Environment logic to detect Windows.
2325         * Type.cs: Re-applied r45150 as the real bug was in Activator.
2326
2327 2006-01-02  Zoltan Varga  <vargaz@gmail.com>
2328
2329         * Activator.cs: Add a 'params' to one of the CreateInstance overloads.
2330
2331         * RuntimeTypeHandle.cs RuntimeMethodHandle.cs RuntimeFieldHandle.cs:
2332         Add == and != operators.
2333
2334 2005-12-23  Sebastien Pouliot  <sebastien@ximian.com>
2335
2336         * Environment.cs: Bump corlib version to 46.
2337         * TimeZone.cs: Partial fix for #76094. Added [Serializable] attribute 
2338         and renamed internal CurrentTimeZone class to CurrentSystemTimeZone 
2339         (like MS). This allows serialization roundtrip to work in Mono but 
2340         there's still an issue when deserializing a stream from MS. 
2341
2342 2005-12-23  Sebastien Pouliot  <sebastien@ximian.com> 
2343  
2344         * NumberFormatter.cs: Fixed rounding for float and the string output
2345         now includes all the precision (not counting preceding zeros). This
2346         fix the DecimalTest.TestConstructSingleRounding_NotWorking test cases.
2347
2348 2005-12-21  Sebastien Pouliot  <sebastien@ximian.com> 
2349  
2350         * Array.cs: Fixed Sort<T> with IComparable (generic or not) bug #77039
2351
2352 2005-12-20  Carlos Alberto Cortez <calberto.cortez@gmail.com>
2353
2354         * Array.cs: Added the Sort<T> methods (generics). 
2355
2356 2005-12-19  Sebastien Pouliot  <sebastien@ximian.com> 
2357  
2358         * Array.cs: Fixed BinarySearch when the array is empty (#77030). Added
2359         some null check which throws ArgumentNullException under 2.0.
2360
2361 2005-12-15  Sebastien Pouliot  <sebastien@ximian.com>
2362
2363         * DateTime.cs: Added MonoTODO to ctor accepting a Calandar instance.
2364         * Double.cs: Under 2.0 throw a ArgumentException when parsing with
2365          NumberStyles.AllowHexSpecifier. Partial fix for #72221. Added the
2366         second, simpler, TryParse method (2.0).
2367         * Single.cs: Added the TryParse methods for 2.0.
2368
2369 2005-12-15  Raja R Harinath  <rharinath@novell.com>
2370
2371         * Type.cs (IsGenericType): Make virtual.
2372
2373 2005-12-08  Sebastien Pouliot  <sebastien@ximian.com> 
2374
2375         * AppDomainSetup.cs: ApplicationBase throw exception on get (not on 
2376         set). New behaviour is more like MS - but most issues (unit tests)
2377         were really path issues. Fix bug #71291.
2378         * DateTime.cs: Add more information when throwing an exception in 
2379         ctor(long). Useful for debugging.
2380
2381 2005-12-07  Zoltan Varga  <vargaz@gmail.com>
2382
2383         * Single.cs Double.cs: Fix warnings.
2384
2385 2005-12-06  Sebastien Pouliot  <sebastien@ximian.com> 
2386  
2387         * Convert.cs: ToBase64String method didn't use the option parameter so
2388         we always included new lines. Fix bug #76876.
2389
2390 2005-12-06  Sebastien Pouliot  <sebastien@ximian.com>
2391
2392         * AppDomainSetup.cs: Added missing ComVisible and removed LAMESPEC 
2393         (the docs were fixed).
2394         * NumberFormatter.cs: Fixed the "NotWorking" case where 1.15 was 
2395         misrounded compared to MS implementation. Extra care is required when
2396         dealing with the extra 2 digits information (e.g. double precision is
2397         15 digits but 17 are kept - for a reason ;-)
2398
2399 2005-12-05  Ben Maurer  <bmaurer@ximian.com>
2400
2401         * Environment.cs: Bump version
2402
2403         * Nullable.cs: New Box and Unbox methods for the jit
2404
2405 2004-12-05  Peter Dennis Bartok <pbartok@novell.com>
2406
2407         * Enum.cs: Properly handle "No bits set" case even if the sorted numbers
2408           list does not have enum value 0 as the first item. Fixes #76921
2409
2410 2005-12-05  Sebastien Pouliot  <sebastien@ximian.com>
2411
2412         * AppDomain.cs: CreateComInstanceFrom isn't static in any profile.
2413
2414 Mon Dec 5 15:14:59 CET 2005 Paolo Molaro <lupus@ximian.com>
2415
2416         * Double.cs: remove unused icall.
2417         * BitConverter.cs: handle double binary format on ARM FPA.
2418
2419 2005-12-02  Alp Toker  <alp@atoker.com>
2420
2421         * MonoType.cs:
2422         * Type.cs: DeclaringMethod should return MethodBase, not MethodInfo
2423
2424 2005-12-02  Alp Toker  <alp@atoker.com>
2425
2426         * AppDomain.cs: ReflectionOnlyPreBindAssemblyResolve renamed to
2427         ReflectionOnlyAssemblyResolve in 2.0 final
2428
2429 2005-12-01  Alp Toker  <alp@atoker.com>
2430
2431         * String.cs: Add static and non-static Equals(... StringComparison) for
2432         2.0.
2433
2434 2005-12-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2435
2436         * TermInfoDriver.cs: special case for the escape key. Fixes bug #76781.
2437
2438 2005-11-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2439
2440         * TermInfoDriver.cs: if the cursor_address capability contains a %i, we
2441         have to add 1 to x and y when setting the cursor position.
2442         Fixes bug #76856.
2443
2444         * Convert.cs: remove unused variables.
2445
2446 Wed Nov 30 12:14:20 EST 2005 Paolo Molaro <lupus@ximian.com>
2447
2448         * NumberFormatter.cs: work around arch-specific ulong cast behaviour
2449         with large numbers.
2450
2451 Tue Nov 29 05:38:37 EST 2005 Paolo Molaro <lupus@ximian.com>
2452
2453         * Convert.cs: fix endianess issue when converting to base-8
2454         format. All the base code would need a rewrite for efficience.
2455
2456 2005-11-25  Sebastien Pouliot  <sebastien@ximian.com>
2457
2458         * String.cs: Added support for Compare(... StringComparison) in 2.0.
2459
2460 2005-11-25  Alp Toker  <alp@atoker.com>
2461
2462         * Type.cs (IsVisible): New 2.0 property, implemented recursively.
2463
2464 2005-11-17  Dick Porter  <dick@ximian.com>
2465
2466         * Environment.cs: Incremented corlib version
2467
2468 2005-11-14  Carlos Alberto Cortez <calberto.cortez@gmail.com>
2469
2470         * Int32.cs, UInt32.cs, Int16.cs, UInt16.cs, Int64.cs,
2471         UInt64.cs, Byte.cs, SByte.cs, Double.cs : Modify internal Parse
2472         methods to return the exception as an out parameter,
2473         instead of throwing it. This will be of special help
2474         to TryParse methods.
2475         * Environment.cs: Update corlib version to 42.
2476         
2477 2005-11-14  Raja R Harinath  <rharinath@novell.com>
2478
2479         * EventHandler.cs (EventHandler<TEventArgs>): Rename from EventHandler<T>.
2480
2481 2005-11-11  Zoltan Varga  <vargaz@gmail.com>
2482
2483         * Type.cs (GetPseudoCustomAttributes): Return ComImportAttribute as well.
2484
2485 2005-11-11  Lluis Sanchez Gual  <lluis@novell.com>
2486
2487         * TimeZone.cs: Removed incorrect double-check lock and unneeded
2488         hashtable access.
2489
2490 2005-11-11  Marek Safar  <marek.safar@seznam.cz>
2491
2492         * Type.cs: IsNested implemented, signature fixes.
2493
2494 2005-11-11  Raja R Harinath  <rharinath@novell.com>
2495
2496         * Array.cs (Resize<T>) [2-argument variant]: Fix nullref.
2497
2498 2005-11-10  Zoltan Varga  <vargaz@gmail.com>
2499
2500         * Array.cs (Resize<T>): New internal method which takes a 'length' argument
2501         as well to avoid copying the whole array.
2502
2503 2005-11-09  Atsushi Enomoto  <atsushi@ximian.com>
2504
2505         * Int64.cs : ditto for long.
2506
2507 2005-11-09  Atsushi Enomoto  <atsushi@ximian.com>
2508
2509         * Int32.cs : Parse("2147483648", format_provider) should be rejected.
2510
2511 2005-11-09  Sebastien Pouliot  <sebastien@ximian.com>
2512
2513         * AttributeTargets.cs: Added [ComVisible (true)] and [Serializable] 
2514         in 2.0 profile.
2515         * Base64FormattingOptions.cs: Added missing [Flags] attribute.
2516         * ConsoleKey.cs: Removed old BackSpace and WhiteSpace (they were 
2517         already replaced by Backspace and Whitespace)
2518         * DateTime.cs: Moved DayOfWeek enum to it's own file.
2519         * DateTimeKind.cs: New (2.0) enum.
2520         * DayOfWeek.cs: New file (extracted from DateTime.cs).
2521         * DomainManagerInitializationFlags.cs: Removed extra [Serializable].
2522         * EnvironmentVariableTarget.cs: Added [ComVisible (true)] and fixed 
2523         values (-1 to all of them).
2524         *  Exception.cs: Added a LinkDemand for SerializationFormatter on
2525         GetObjectData method.
2526         *  LoaderOptimization.cs: Added [ComVisible (true)] and [Serializable] 
2527         on enum and added [Obsolete] to DomainMask and DisallowBindings in 2.0
2528         profile.
2529         * PlatformID.cs: Added [ComVisible (true)] and [Serializable] in 2.0 
2530         profile.
2531         * StringComparison.cs: New (2.0) enum (needed for Uri).
2532         * TermInfoDriver.cs: Fixed BackSpace -> Backspace (see ConsoleKey.cs).
2533         * TypeCode.cs: Added [ComVisible (true)] and [Serializable] in 2.0 
2534         profile.
2535
2536 2005-11-08  Atsushi Enomoto  <atsushi@ximian.com>
2537
2538         * Type.cs : I forgot to mention, some '(' were missing in the
2539           improved patch ;-)
2540
2541 2005-11-08  Zoltan Varga  <vargaz@freemail.hu>
2542
2543         * Type.cs (GetPseudoCustomAttributes): Check for TypeAttributes.Serializable instead of
2544         IsSerializable property, since the latter returns true for delegates/enums.
2545
2546 2005-11-05  Kornél Pál  <kornelpal@hotmail.com>
2547
2548         * Environment.cs: Use Consts.RuntimeVersion as Environment.Version that
2549           makes maintenance easier.
2550
2551 2005-10-24  Martin Baulig  <martin@ximian.com>
2552
2553         * Type.cs (Type.IsGenericTypeDefinition): Make this virtual.
2554
2555 2005-10-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2556
2557         * String.cs: fix bound checkings for LastIndexOfAny. Closes bug #76519.
2558
2559 2005-10-20  Raja R Harinath  <rharinath@novell.com>
2560
2561         * Array.cs (Swapper): Remove NET_2_0 guards from nested declaration.
2562
2563 2005-10-16  Michal Moskal  <malekith@nemerle.org>
2564
2565        * TermInfoDriver.cs: Call Init () in Background/ForegroundColor.
2566
2567 2005-10-14  Atsushi Enomoto  <atsushi@ximian.com>
2568
2569         * DateTime.cs : another crappy Windows dependent format.
2570
2571 2005-10-14  Ben Maurer  <bmaurer@ximian.com>
2572
2573         * DateTime.cs: Speed up when parsing date time objects by not
2574         duplicating cultureinfo arrays.
2575
2576 2005-10-13  Zoltan Varga  <vargaz@gmail.com>
2577
2578         * Type.cs (GetTypeCode): Applied patch from 
2579         Mike Welham <mwelham@gmail.com>. Return TypeCode.Empty when null is
2580         passed in.
2581
2582 2005-10-07  Zoltan Varga  <vargaz@gmail.com>
2583
2584         * Delegate.cs: Add support for delegate covariance and contravariance
2585         from net 2.0.
2586
2587 2005-10-03  Atsushi Enomoto  <atsushi@ximian.com>
2588
2589         * StringComparer.cs : (OrdinalIgnoreCaseComparer.Equals()) reverse.
2590
2591 2005-09-26  Zoltan Varga  <vargaz@gmail.com>
2592
2593         * String.cs (ParseFormatSpecifier): Fix skipping of whitespace. Fixes
2594         #76204.
2595
2596 2005-09-23  Miguel de Icaza  <miguel@novell.com>
2597
2598         * Decimal.cs: Fix typo, patch from Tomas Kukol <tomas.kukol@gmail.com>
2599
2600 2005-09-19  Zoltan Varga  <vargaz@gmail.com>
2601
2602         * MonoCustomAttrs.cs (GetCustomAttributesInternal): Add
2603         attributeType parameter.
2604         (IsDefined): New icall.
2605
2606         * MonoCustomAttrs.cs: Avoid instantiating all custom attrs of an
2607         object when only a specific attribute type is requested. Fixes #76062.
2608
2609         * Environment.cs: Bump corlib version.
2610
2611 2005-09-09  Zoltan Varga  <vargaz@gmail.com>
2612
2613         * TypeLoadException.cs MissingMethodException.cs MissingFieldException.cs: Add new ctors called by the runtime. Improve Message property.
2614
2615 2005-09-14  Atsushi Enomoto  <atsushi@ximian.com>
2616
2617         * DateTime.cs : (_DoParse) don't check ticks range before computing
2618           the actual value. Fixed bug #76082.
2619
2620 2005-09-14  Atsushi Enomoto  <atsushi@ximian.com>
2621
2622         * TimeZone.cs : When the target DateTime is in the range of
2623           DST end to DST + delta, don't adjust UtcOffset gap between that of
2624           DST and that of STD. This should fix bug #75985.
2625
2626 2005-09-06  Atsushi Enomoto  <atsushi@ximian.com>
2627
2628         * TimeZone.cs, DateTime.cs :
2629           - ToLocalTime() and ToUniversalTime() are moved to TimeZone.
2630           - Added more COM patterns. Patch by Ankit Jain. Fixed bug #72132.
2631           - use ToLocalTime() and don't depend on the own offset computation.
2632             Parse() with 'Z' pattern is closer to correct value on switching
2633             Daylight Saving Time. See bug #75985.
2634
2635 2005-09-06  Atsushi Enomoto  <atsushi@ximian.com>
2636
2637         * DateTime.cs : (DoParse) DateTimeStyles.AdjustToUniversal was not
2638           handled as expected and it kept time value as local one.
2639           Patch by Brion Vibber. Fixed bug #75995.
2640
2641 2005-09-06  Atsushi Enomoto  <atsushi@ximian.com>
2642
2643         * DateTime.cs : Literal escape (\) was not checking format as
2644           expected. Fixed bug #75213.
2645
2646 2005-09-05  Miguel de Icaza  <miguel@novell.com>
2647
2648         * MonoType.cs: Patch from Jonathan Chambers to implement
2649         Type.GUID. 
2650
2651 2005-09-05  Martin Baulig  <martin@ximian.com>
2652
2653         Reflect latest API changes in the August CTP.
2654
2655         * Type.cs (Type.HasGenericArguments): Removed.
2656         (Type.BindGenericParameters): Renamed to MakeGenericType().
2657
2658 2005-09-01  Atsushi Enomoto  <atsushi@ximian.com>
2659
2660         * DateTime.cs : another idiotic COM dependent format.
2661
2662 2005-09-01  Kornél Pál  <kornelpal@hotmail.com>
2663
2664         * __ComObject.cs: Fixed to be internal. Removed CLSCompliant attribute.
2665         Added some comments about the class.
2666
2667 2005-08-30  Sebastien Pouliot  <sebastien@ximian.com>
2668
2669         * AppDomain.cs: Use the more concise property syntax for declarative
2670         security.
2671         * AppDomainManager.cs: Default HostSecurityManager is null.
2672
2673 2005-08-25  Atsushi Enomoto  <atsushi@ximian.com>
2674
2675         * NumberFormatter.cs : eliminate non-ASCII character.
2676
2677 2005-08-25  Marek Safar  <marek.safar@seznam.cz>
2678
2679         * Enum.cs: Better exception message.
2680         
2681 2005-08-21  Gert Driesen  <drieseng@users.sourceforge.net>
2682
2683         * Convert.cs: In FromBase64String, return empty byte array for zero
2684         length string. Pass bool to InternalFromBase64String to control 
2685         whether to allow a whitespace-only string.
2686         * Environment.cs: Bump corlib version.
2687
2688 2005-08-20  Zoltan Varga  <vargaz@freemail.hu>
2689
2690         * Environment.cs: Bump corlib version.
2691
2692 2005-08-19  Zoltan Varga  <vargaz@freemail.hu>
2693
2694         * Math.cs: Implement a new 2.0 Round method.
2695
2696 2005-08-19  Gert Driesen  <drieseng@users.sourceforge.net>
2697
2698         * Convert.cs: Throw OverflowException if result is larger than
2699         ushort.MaxValue to match MS.NET. Remove commented code.
2700
2701 2005-08-17  Gert Driesen  <drieseng@users.sourceforge.net>
2702
2703         * Convert.cs: For now, do not throw OverflowException if hex prefixed
2704         value is negative for signed types (other than int64). Need to look
2705         into this further.      
2706
2707 2005-08-17  Gert Driesen  <drieseng@users.sourceforge.net>
2708
2709         * Convert.cs: Numerous fixed in overloads taking base to match 
2710         behaviour of MS.NET. Throw ArgumentOutOfRangeException is string is
2711         empty. If base is 16, 8 or 2, then throw ArgumentException if first 
2712         character is a negative sign. Throw OverflowException if hex prefixed 
2713         value is negative for signed types (other than int64) to match MS.NET. 
2714
2715 2005-08-16  Atsushi Enomoto  <atsushi@ximian.com>
2716
2717         * DateTime.cs : added another COM dependent pattern (rather to describe
2718           how it works on .NET than to add the pattern itself...).
2719
2720 2005-08-16  Atsushi Enomoto  <atsushi@ximian.com>
2721
2722         * DateTime.cs : added case for bug #53023.
2723
2724 2005-08-10  Zoltan Varga  <vargaz@freemail.hu>
2725
2726         * Type.cs: Add IsGenericType property from NET 2.0.
2727
2728 2005-08-10  Atsushi Enomoto  <atsushi@ximian.com>
2729
2730         * String.cs : added new StartsWith()/EndsWith() override, fixing
2731           existing EndsWith() which incorrectly assumed that both string
2732           lengths must be equivalent (they are not always equal).
2733         * StringComparer.cs : added Ordinal and OrdinalIgnoreCase.
2734
2735 2005-08-09  Zoltan Varga  <vargaz@freemail.hu>
2736
2737         * String.cs: Implement Split(String[]) methods.
2738
2739 2005-08-09  Miguel de Icaza  <miguel@novell.com>
2740
2741         * AppDomainSetup.cs: Full-pathization of the appBase should only
2742         be done on Windows, the ":" condition never applied to Linux.
2743
2744         * ConsoleKey.cs: Include a few aliases for a few values that were
2745         introduced recently.
2746
2747 2005-08-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2748
2749         * ConsoleKey.cs: added Backspace, which has the same value as BackSpace.
2750         Fixes bug #75697.
2751
2752 2005-08-08  Atsushi Enomoto  <atsushi@ximian.com>
2753
2754         * String.cs : (StartsWith) compared string lengths are not always the
2755           same in culture-sensitive comparison.
2756
2757 2005-08-05  Gert Driesen  <drieseng@users.sourceforge.net>
2758
2759         * Array.cs: Changed protected ctor to private. Fixes API compatibility
2760         with MS.NET.
2761         * RuntimeFieldHandle.cs: Equals methods and GetHashCode should only
2762         be exposed in 2.0 profile.
2763         * RuntimeMethodHandle.cs: Equals methods and GetHashCode should only
2764         be exposed in 2.0 profile.
2765         * RuntimeTypeHandle.cs: Equals methods and GetHashCode should only
2766         be exposed in 2.0 profile.
2767         * Type.cs: Added GetType method and implemented _Type interface.
2768         Fixes API compatibility with MS.NET.
2769
2770 2005-07-28  Marek Safar  <marek.safar@seznam.cz>
2771
2772         * StringComparer.cs: Add generics version of string interfaces.
2773
2774 2005-07-26  Atsushi Enomoto  <atsushi@ximian.com>
2775
2776         * StringComparer.cs : implemented StringCultureComparer.GetHashCode().
2777
2778 2005-07-26  Zoltan Varga  <vargaz@freemail.hu>
2779
2780         * StringSplitOptions.cs MidpointRounding.cs: New files.
2781
2782         * String.cs Math.cs: Add stubs for some new 2.0 APIs.
2783
2784 2005-07-26  Marek Safar  <marek.safar@seznam.cz>
2785
2786         * StringComparer.cs: New file.
2787
2788 2005-07-26  Raja R Harinath  <harinath@gmail.com>
2789
2790         * Enum.cs (GetValue): Make private.  Return an ulong.
2791         (Parse): Tighten scope of couple of variables.  Use ulong when
2792         twiddling bits.
2793
2794 2005-07-25  Raja R Harinath  <rharinath@novell.com>
2795
2796         * Enum.cs (FindName, GetValue): New.  Carved out of ...
2797         (Parse): ... this.  Refactor and simplify code.  Avoid incurring
2798         exceptions when parsing names.  Avoid allocating arrays unless
2799         necessary.  Avoid conversion of an enumeration constant to its own
2800         type.  (Incorporates ideas from a patch by Gonzalo Paniagua Javier.)
2801
2802 2005-07-13  Lluis Sanchez Gual  <lluis@novell.com>
2803
2804         * MarshalByRefObject.cs: GetLifetimeService() should be virtual.
2805         Fixes bug #75527.
2806
2807 2005-07-13  Miguel de Icaza  <miguel@novell.com>
2808
2809         * Array.cs: Patch from rodrigobamboo@gmail.com that fixes the
2810         signature for GetValue and SetValue to make the long [] argument
2811         be a params argument. 
2812
2813 2005-07-11  Pedro Martínez Juliá  <pedromj@gmail.com>
2814
2815         * Convert.cs: Fix the bug when Convert.ChangeType was using
2816         NumberFormatInfo instead of DateTimeFormatInfo when the type to
2817         change is a DateTime.
2818
2819 2005-07-11  Martin Baulig  <martin@ximian.com>
2820
2821         * Array.cs: Use Type.Equals() instead of `==' to compare type
2822         parameters.     
2823
2824 2005-07-10  Kamil Skalski <nazgul@nemerle.org>
2825
2826         * Type.cs: Mark BindGenericParameters as deprecated. Use
2827         MakeGenericType as default implementation with updated signature.
2828
2829 2005-07-09  Zoltan Varga  <vargaz@freemail.hu>
2830
2831         * Attribute.cs (IsDefined): Fix IsDefined for ParameterInfo's. Fixes
2832         #75514.
2833
2834 2005-07-05  Lluis Sanchez Gual  <lluis@novell.com>
2835
2836         * DelegateSerializationHolder.cs: When the deserialized target is
2837         a proxy, call IsInstanceOfType to force the proxy to load the
2838         real type of the remote object. This is needed to make sure that
2839         subsequent calls to GetType() return the expected type. This fixes
2840         bug #75447.
2841
2842 2005-07-03  Ben Maurer  <bmaurer@ximian.com>
2843
2844         * OperatingSystem.cs: patch from Aleksandar Dezelin to fix
2845         serialization.
2846
2847 2005-06-30  Sebastien Pouliot  <sebastien@ximian.com> 
2848
2849         * Guid.cs: Avoid code duplication between overriden methods (new in 
2850         2.0). Avoid exception processing when possible. Renamed parameters to
2851         match the framework. Added ComVisible to NET_2_0.
2852
2853 2005-06-28  Elliott Draper  <el@eldiablo.co.uk>
2854
2855         * Activator.cs: This implements the generic Activator.CreateInstance<T>()
2856         function for NET_2_0. It's full signature is:
2857                 public static T CreateInstance<T>();
2858
2859 2005-06-28  Lluis Sanchez Gual  <lluis@novell.com>
2860
2861         * Decimal.cs: Renamed internal fields for the sake of serialization
2862         interoperability with MS.NET.
2863         * Exception.cs: In the StackTrace property, return the stack trace
2864         if it has a value, even if the exception has not been thrown
2865         (it may have been deserialized).
2866
2867 2005-06-28  Martin Baulig  <martin@ximian.com>
2868
2869         * Array.cs (Array.InternalArray<T>): New nested class; derives
2870         from Array.  This is now used by the runtime for arrays; fixes #74953.
2871
2872 2005-06-27  Atsushi Enomoto  <atsushi@ximian.com>
2873
2874         * String.cs : added some extra whitespace characters for Trim().
2875           Fixed bug #75259.
2876
2877 2005-06-13  Michal Moskal <malekith@nemerle.org>
2878         
2879         * MonoType.cs: Don't use MethodHandle in GetMethod/GetConstructor,
2880         since it now throws on MethodBuilders. Don't use FieldHandle in
2881         GetField (throws on FieldBuilder) - just use the name.
2882
2883 2005-06-13  Martin Baulig  <martin@ximian.com>
2884
2885         * MonoType.cs
2886         (MonoType.getFullName): Added `bool assembly_qualified' argument.
2887         (MonoType.AssemblyQualifiedName): The interncall now adds the
2888         assembly name, so we don't need to do it here.
2889         (MonoType.FullName): Use the new getFullName() API.
2890
2891 2005-06-14  Sebastien Pouliot  <sebastien@ximian.com>
2892
2893         * Char.cs: ToLowerInvariant and ToUpperInvariant are now public in 
2894         NET_2_0. Added "new" white char and ComVisible for 2.0.
2895
2896 2005-06-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2897
2898         * Convert.cs: FromBase64String and FromBase64CharArray are now internal
2899         calls to avoid extra allocations.
2900
2901 2005-06-09  Kamil Skalski <nazgul@nemerle.org>
2902
2903         * Type.cs: Add MakeGenericType method form .NET 2.0 beta 2 API
2904
2905         * Type.cs MonoType.cs: Add internal virtual
2906         Get{Method,Constructor,Field} for obtaining instanciated *Info objects
2907         from non-instanciated counterparts
2908
2909 2005-06-09  Zoltan Varga  <vargaz@freemail.hu>
2910
2911         * ModuleHandle RuntimeMethodHandle.cs RuntimeTypeHandle.cs RuntimeFieldHandle.cs RuntimeArgumentHandle.cs: Add missing 2.0 attributes.
2912
2913 2005-06-08  Zoltan Varga  <vargaz@freemail.hu>
2914
2915         * Type.cs: Add missing 2.0 attributes.
2916
2917 2005-06-07  Carlos Alberto Cortez <calberto.cortez@gmail.com>
2918
2919         * MonoCustomAttrs.cs: Added GetCustomAttributesDataInternal icall, and
2920         also internal method GetCustomAttributesData, used by 
2921         System.Reflection.CustomAttributeData.
2922         
2923 2005-06-06  Sebastien Pouliot  <sebastien@ximian.com>
2924
2925         * Activator.cs: Added  _Activator interface (and members) for 1.1 and
2926         missing attributes (for both 1.1 and 2.0).
2927         * String.cs: Made internal To[Lower|Upper]Invariant methods public for
2928         2.0. Reworked Trim() to skip a useless call. Added missing attribute
2929         for 2.0.
2930         * Type.cs: Added  _Type, _MemberInfo interfaces (1.1/2.0). Added 
2931         missing attribute for 2.0. Hided some public/protected methods.
2932
2933 2005-06-06  Zoltan Varga  <vargaz@freemail.hu>
2934
2935         * ModuleHandle.cs: Update after PortableExecutableKinds name change.
2936
2937 2005-06-06  Sebastien Pouliot  <sebastien@ximian.com>
2938
2939         * _AppDomain.cs: Added new members in the interface (added in 1.1 SP1)
2940         * AppDomain.cs: Added new members from _AppDomain interface.
2941         * AppDomainManager.cs: Fixed flags and added attributes.
2942         * DomainManagerInitializationFlags.cs: The flag has been renamed to 
2943         AppDomainManagerInitializationOptions in beta2.
2944
2945 2005-06-06  Zoltan Varga  <vargaz@freemail.hu>
2946
2947         * Type.cs MonoCustomAttrs.cs: Return SerializableAttribute for types as well.
2948
2949 2005-06-06  Sebastien Pouliot  <sebastien@ximian.com>
2950
2951         * Exception.cs: Implements _Exception only for 2.0.
2952
2953 2005-06-06  Zoltan Varga  <vargaz@freemail.hu>
2954
2955         * GC.cs: Fix build.
2956         
2957         * GC.cs UnhandledExceptionEventArgs.cs IntPtr.cs RuntimeFieldHandle.cs 
2958           String.cs Object.cs Math.cs RuntimeMethodHandle.cs ModuleHandle.cs 
2959           RuntimeTypeHandle.cs AppDomain.cs: Add some missing 2.0 methods/attributes.
2960
2961 2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2962
2963         * Environment.cs:
2964         * AppDomain.cs: if the assembly is loaded from a byte array, Location
2965         returns "". Fixes bug #74958.
2966
2967 2005-06-04  Ben Maurer  <bmaurer@ximian.com>
2968
2969         * *.cs: More 2.0 API fixups
2970
2971         * *.cs: In beta 2, generics are no longer non-cls-compliant.
2972
2973 2005-06-05  Kazuki Oikawa  <kazuki@panicode.com>
2974
2975         * NumberFormatter.cs: Fixed the output of 0.ToString("00.00E00")
2976         that was different from MSFT.
2977         * String.cs: Fixed IndexOfAny thrown an exception
2978         when startIndex of arguments equals Length. (Closes bug #75083.)
2979
2980         * Decimal.cs: Changed to use NumberFormatter in ToString.
2981         * NumberFormatter.cs: Implemented decimal formatter.
2982
2983 2005-06-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2984
2985         * Type.cs: reverted wrong fix for bug #71300 in r45150. This makes SSL
2986         support in System.Net work again.
2987
2988 2005-06-01  Ben Maurer  <bmaurer@ximian.com>
2989
2990         * CharEnumerator.cs: add IEnumerable <char> support
2991
2992 2005-05-30  Sebastien Pouliot  <sebastien@ximian.com>
2993
2994         * Activator.cs: Added missing validation on parameters.
2995
2996 2005-05-28  Ben Maurer  <bmaurer@ximian.com>
2997
2998         * Type.cs: Check that the arguments of the `types' array are
2999         non-null. Fixes bug 71300
3000
3001 2005-05-28  Sebastien Pouliot  <sebastien@ximian.com>
3002
3003         * AppDomainSetup.cs: Added new 2,0 constructors and the 
3004         ActivationArguments property.
3005         * AppDomainManager.cs: Added using System.Runtime.Hosting as it is the
3006         new location for the ApplicationActivator class.
3007         * ApplicationActivator.cs: Moved to System.Runtime.Hosting namespace.
3008
3009 2005-05-27  Vladimir Vukicevic  <vladimir@pobox.com>
3010
3011         * Environment.cs: bump corlib version for bug #75060.
3012
3013 2005-05-27  Raja R Harinath  <rharinath@novell.com>
3014
3015         * Environment.cs (ExpandEnvironmentVariables): Rewrite
3016         sb.Append (s.SubString (a, b)) to sb.Append (s, a, b).
3017         * String.cs (FormatHelper): Rewrite sb.Append (s.SubString (a)) to
3018         sb.Append (s, a, s.Length - a).  Avoid allocating 'pad' string --
3019         StringBuilder has an appropriate Append overload.
3020
3021 2005-05-26  Zoltan Varga  <vargaz@freemail.hu>
3022
3023         * Type.cs (IsEnum): Special case EnumBuilder here.
3024
3025 2005-05-26  Sebastien Pouliot  <sebastien@ximian.com>
3026
3027         * MonoType.cs: Changed call from GetName to UnprotectedGetName to
3028         allow call to work with serialization under a restrictive policy.
3029         The code path (the protected information) isn't being used.
3030
3031 2005-05-25  Zoltan Varga  <vargaz@freemail.hu>
3032
3033         * Exception.cs: Use the new StackTrace ctor.
3034
3035         * Type.cs: Improve support for user defined type subclasses.
3036
3037 2005-05-25  Atsushi Enomoto  <atsushi@ximian.com>
3038
3039         * DateTime.cs : Added minimum digit parameter to ParseNumber() to
3040           reject 2 digit years for "yyyy".
3041           Use GetAllDateTimePatterns() instead of constant string.
3042           Fixed bug #72788.
3043
3044 2005-05-25  Atsushi Enomoto  <atsushi@ximian.com>
3045
3046         * DateTime.cs : next_not_digit prevented some valid parse.
3047           Just remove it, since now we pass max length to ParseNumber() and
3048           thus it is not needed anymore. Fixed bug 63137.
3049
3050 2005-05-24  Atsushi Enomoto  <atsushi@ximian.com>
3051
3052         * DateTime.cs : HH should not always block tt. Fixed bug #60912.
3053           Reset num after whitespace parsing.
3054           Added "M/d/yyyy HH':'mm':'ss tt" as an invariant pattern.
3055
3056 2005-05-24  Atsushi Enomoto  <atsushi@ximian.com>
3057
3058         * DateTime.cs : Allow ',' where whitespaces are allowed.
3059           Fixed bug #71289.
3060
3061 2005-05-22  Ben Maurer  <bmaurer@ximian.com>
3062
3063         * BitConverter.cs: Speed this up, fixing 74014. Patch from
3064         `Aleksandar Dezelin'.
3065
3066 2005-05-20  Zoltan Varga  <vargaz@freemail.hu>
3067
3068         * Type.cs: Add some helper methods needed by other classes.
3069
3070         * Array.cs: Improve support for user defined Type subclasses.   
3071         
3072         * Type.cs: Rename GetTypeCode icall to GetTypeCodeInternal and add a managed
3073         wrapper function, not used yet.
3074
3075         * Type.cs Array.cs: Revert this as it breaks the build.
3076
3077         * Type.cs Array.cs: Improve support for user defined Type subclasses.
3078
3079 2005-05-19  Ben Maurer  <bmaurer@ximian.com>
3080
3081         * Delegate.cs (Equals): Use `as' to protect in the case where !
3082         (obj is Delegate)
3083
3084 2005-05-19  Raja R Harinath  <rharinath@novell.com>
3085
3086         * Console.cs (Readline) [NET_2_0]: Avoid "uninitialized variable"
3087         error.
3088
3089 2005-05-19  Miguel de Icaza  <miguel@novell.com>
3090
3091         * TermInfoDriver.cs: Removed warning.
3092
3093         * Array.cs (Resize<T>, TrueForAll<T>, ConvertAll<TInput,TOutput>,
3094         FindLastIndex<T>: Parameter names are normative.        
3095         Fix coding style ("Method<T>" not "Method <T>")
3096         Throw argument exceptions per argument.
3097         
3098         (FindAll): Fix bug, actually return the values that were computed,
3099         not a short version of the original array.
3100         
3101 2005-05-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3102
3103         * Console.cs: fix error in the 2_0 side and split ReadLine in 2, one
3104         for each framework version.
3105
3106 2005-05-15  Andreas Nahr  <ClassDevelopment@A-SoftTech.com>
3107
3108         * Attribute.cs:
3109         * Exception.cs: .Net 1.1 already has these interfaces
3110
3111 Mon May 16 18:23:49 CEST 2005 Paolo Molaro <lupus@ximian.com>
3112
3113         * MonoCustomAttrs.cs, Type.cs: do not create a SerializableAttribute
3114         object on GetCustomAttributes (fixes bug #74717).
3115
3116 2005-05-15  Atsushi Enomoto  <atsushi@ximian.com>
3117
3118         * DateTime.cs : for 'z' next_not_digit didn't work as expected.
3119           Fixed bug #74775.
3120
3121 2005-05-15  Atsushi Enomoto  <atsushi@ximian.com>
3122
3123         * DateTime.cs : don't allow extraneous pattern characters also for
3124           non-exact parsing (ParseExact() was fine). Bug #74936 fixed
3125
3126 2005-05-13  Gert Driesen <drieseng@users.sourceforge.net>
3127
3128         * Activator.cs: Match exceptions thrown by MS.NET for
3129         CreateInstance overloads if type is abstract. Fixes bug #74861.
3130
3131 2005-05-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3132
3133         * OperatingSystem.cs: PlatformID.Unix.
3134
3135 2005-05-09  Sebastien Pouliot  <sebastien@ximian.com>
3136
3137         * Environment.cs: Patch from Gonzalo to fix Environment.OSVersion.
3138         Platform under NET_2_0 to return PlatformID.Unix. Fix bug #74841.
3139
3140 2005-05-07  Atsushi Enomoto  <atsushi@ximian.com>
3141
3142         * NumberFormatter.cs : roundtrip number is already rounded before
3143           FormatGeneral() and DefaultMaxPrecision was extraneous. This fixes
3144           bug #72955.
3145
3146 2005-05-07  Ben Maurer  <bmaurer@ximian.com>
3147
3148         * Array.cs (BinarySearch): Patch from kazuki to pass arguments to
3149         the comparer in the same order as msft. Fixes #70725
3150
3151 2005-05-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3152
3153         * Enum.cs: the hashtable don't need to be synchronized any more, since
3154         it's only accessed from withint a lock.
3155
3156         * Console.cs: stdin, stdout and stderr will never be finalized. Fixes
3157         bug 74768.
3158
3159 2005-05-06  Zoltan Varga  <vargaz@freemail.hu>
3160
3161         * Array.cs: Remove CLSCompliant (false) attributes.
3162
3163 2005-05-06  Martin Baulig  <martin@ximian.com>
3164
3165         * Predicate.cs, Action.cs, Comparision.cs, Converter.cs: Add
3166         [CLSCompliant(true)] attribute.
3167
3168 2005-05-04  Miguel de Icaza  <miguel@novell.com>
3169
3170         * Enum.cs (MonoEnumInfo): Based on a patch from James Willcox,
3171         initialize cache as a static method.  Fixes #74828.
3172
3173 2005-05-03  Marek Safar  <marek.safar@seznam.cz>
3174
3175         * Console.cs: CancelKeyPress is stubbed.
3176
3177 2005-04-25  Sebastien Pouliot  <sebastien@ximian.com>
3178
3179         * ActivationContext.cs: Updated for beta2.
3180         * AppDomainManager.cs: Updated for beta2.
3181         * ApplicationId.cs: Updated for beta2.
3182         * ApplicationIdentity.cs: Updated for beta2.
3183         * Exception.cs: Now use Assembly.UnprotectedGetName () as Exception 
3184         doesn't leak the code base from the returned AssemblyName.
3185
3186 2005-04-25  Martin Baulig  <martin@ximian.com>
3187
3188         * Environment.cs (Environment.Version): Changed to 2.0.50215.
3189
3190 2005-04-22  Sebastien Pouliot  <sebastien@ximian.com>
3191
3192         * Attribute.cs: Added _Attribute interface to NET_2_0 to reduce the 
3193         number of "missing" in the class status pages.
3194
3195 2005-04-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3196
3197         * MulticastDelegate.cs: (GetInvocationList) when building the list that
3198         is later traversed forward, mark 'this' as the end of the chain.
3199         Fixes bug #74607.
3200
3201 2005-04-19  Zoltan Varga  <vargaz@freemail.hu>
3202
3203         * Environment.cs: Bump corlib version.
3204
3205 2005-04-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3206
3207         * WindowsConsoleDriver.cs: ignore key release events.
3208
3209 2005-04-06  Atsushi Enomoto  <atsushi@ximian.com>
3210
3211         * Char.cs : ToUpper()/ToLower() comparison ranges were incorrect.
3212
3213 2005-04-05  Sebastien Pouliot  <sebastien@ximian.com>
3214
3215         * _AppDomain.cs: Add security checks to the interface. Declarative 
3216         security on events requires BOOTSTRAP_WITH_OLDLIB to work properly 
3217         with older MCS.
3218         * AppDomain.cs: Add some (not complete) security checks. Bug#74411 is
3219         blocking some cases from working properly. Declarative security on 
3220         events requires BOOTSTRAP_WITH_OLDLIB to work properly with older MCS.
3221
3222 2005-04-04  Sebastien Pouliot  <sebastien@ximian.com>
3223
3224         * AppDomain.cs: Use the PolicyLevel to resolve the granted permissions
3225         on the AppDomain. Added an internal property to get the granted set.
3226
3227 2005-04-04  Atsushi Enomoto  <atsushi@ximian.com>
3228
3229         * String.cs,
3230           Char.cs : use TextInfo for ToLower() and ToUpper().
3231
3232 2005-03-31  Sebastien Pouliot  <sebastien@ximian.com>
3233
3234         * Exception.cs: Added Assert for TypeInformation to GetObjectData and
3235         ToString methods (not required for 2.0 as TypeInformation will be 
3236         deprecated). Added null check for GetObjectData.
3237
3238 Tue Mar 29 11:47:19 CEST 2005 Paolo Molaro <lupus@ximian.com>
3239
3240         * Delegate.cs: allow IronPython 0.7 to compile.
3241
3242 2005-03-24  Miguel de Icaza  <miguel@novell.com>
3243
3244         * Delegate.cs: Add CreateDelegate with a target option, currently
3245         internal as it is not exposed by the framework yet.
3246
3247 2005-03-24  Zoltan Varga  <vargaz@freemail.hu>
3248
3249         * String.cs: Add some 2.0 methods.
3250
3251 2005-03-24  Sebastien Pouliot  <sebastien@ximian.com>
3252
3253         * Activator.cs: Now use the supplied evidences when loading 
3254         assemblies. Added LinkDemand for RemotingConfiguration on both
3255         GetObject methods.
3256         * Console.cs: Added Assert for UnmanagedCode on OpenStandard[Error|
3257         Input|Output] as they use a handle on a FileStream (which is
3258         restricted otherwise). Added Demand for UnmanagedCode for the
3259         Set[Error|In|Out] methods.
3260         * MarshalByRefObject.cs: Added LinkDemand for Infrastructure on 
3261         CreateObjRef, GetLifetimeService and InitializeLifetimeService.
3262         * RuntimeMethodHandle.cs: Added Demand for UnmanagedCode on 
3263         GetFunctionPointer method.
3264         * TypedReference.cs: Added LinkDemand for ReflectionPermission's
3265         MemberAccess on MakeTypedReference.
3266
3267 2005-03-14  Sebastien Pouliot  <sebastien@ximian.com>
3268
3269         * Environment.cs: Fix CAS unit tests for NET_1_1.
3270         * Exception.cs: Fix CAS unit tests for NET_1_1.
3271
3272 2005-03-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3273
3274         * Version.cs: don't ignore the last number. Fixes bug #73539.
3275
3276 2005-03-11  Sebastien Pouliot  <sebastien@ximian.com>
3277
3278         * MonoType.cs: When the security manager is active, constructors and
3279         methods will return null if a linkdemand fails during reflection 
3280         query.
3281
3282 2005-03-11  Zoltan Varga  <vargaz@freemail.hu>
3283
3284         * Array.cs (Sort): Bail out early if length <= 1. Fixes #72721.
3285
3286 2005-03-10  Zoltan Varga  <vargaz@freemail.hu>
3287
3288         * Environment.cs: Bump corlib version.
3289
3290 2005-03-10  Martin Baulig  <martin@ximian.com>
3291
3292         * Nullable.cs (Nullable<T>.ToString): Return an empty string if
3293         we're null.
3294
3295 2005-03-09  Zoltan Varga  <vargaz@freemail.hu>
3296
3297         * Activator.cs MonoType.cs: Applied patch from Carlos Alberto Cortez
3298         (carlos@unixmexico.org). Allow creation of valuetypes with no ctor.
3299         Fixes #73432.
3300
3301 2005-03-04  Zoltan Varga  <vargaz@freemail.hu>
3302
3303         * Environment.cs: Bump corlib version.
3304
3305         * Exception.cs (StackTrace): Return the wrapper info as well.
3306
3307 2005-03-02  Kazuki Oikawa  <kazuki@panicode.com>
3308
3309         * NumberFormatter.cs: Some internal classes was converted to structs,
3310         and improved some points.
3311
3312 2005-02-26  Kazuki Oikawa  <kazuki@panicode.com>
3313
3314         * NumberFormatter.cs: Improved performance and memory usage
3315         when integer standard format.
3316         * SByte.cs:
3317         * Int16.cs:
3318         * Int32.cs:
3319         * Int64.cs:
3320         * Byte.cs:
3321         * UInt16.cs:
3322         * UInt32.cs:
3323         * UInt64.cs:
3324         * Single.cs:
3325         * Double.cs:
3326         * TimeSpan.cs: Improved these directly call to NumberFormatter.
3327
3328 2005-02-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3329
3330         * TermInfoDriver.cs: set the xmit mode if available. Handle key input
3331         and translate them into a ConsoleKeyInfo.
3332         * TermInfoReader.cs: added a method to return the bytes of a string
3333         property.
3334         * ConsoleKeyInfo.cs: added copy constructor and setters.
3335
3336 2005-02-24  Zoltan Varga  <vargaz@freemail.hu>
3337
3338         * Array.cs: Add missing 2.0 attributes and correct some parameter names.
3339
3340 2005-02-24  Carlos Alberto Cortez <calberto.cortez@gmail.com>
3341
3342         * AppDomain.cs: Changed GetAssemblies, LoadAssembly, and Load signatures,
3343         and added some to support the reflection only methods. DoAssemblyResolve
3344         was modified to invoke the new PreBindAssemblyResolve event when the
3345         assembly is reflection only.
3346         
3347 2005-02-21  Zoltan Varga  <vargaz@freemail.hu>
3348
3349         * GC.cs Double.cs IntPtr.cs Array.cs Decimal.cs Math.cs Single.cs:
3350         Add net 2.0 ReliabilityContractAttributes.
3351
3352 2005-02-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3353
3354         * TermInfoDriver.cs: cygwin terminals are handled by the windows
3355         console driver.
3356
3357         * TermInfoReader.cs:
3358         * TermInfoNumbers.cs:
3359         * KnownTerminals.cs:
3360         * TermInfoBooleans.cs:
3361         * TermInfoStrings.cs: documented.
3362
3363 2005-02-19  Kazuki Oikawa <kazuki@panicode.com>
3364
3365         * Array.cs: Reverse the order in the Equals calls.
3366
3367 2005-02-18  Zoltan Varga  <vargaz@freemail.hu>
3368
3369         * Exception.cs (StackTrace): Implement this in managed code since it is
3370         needed by CAS. Fixes #72146.
3371
3372 2005-02-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3373
3374         * WindowsConsoleDriver.cs: implemented MoveBufferArea.
3375
3376 2005-02-14  Raja R Harinath  <rharinath@novell.com>
3377
3378         * Array.cs (Array.Swapper) [!BOOTSTRAP_WITH_OLDLIB]: Make nested.
3379         See #72015.
3380
3381 2005-02-12  Ben Maurer  <bmaurer@ximian.com>
3382
3383         * Version.cs (CompareTo, Equals): Make sure the versions for
3384         generics handle `null'. The non-generics versions now just call
3385         the regular versions, to reduce code duplication.
3386
3387         * Boolean.cs (CompareTo): make this really work for generics 
3388
3389         * Type.cs (GetProperty): Passing new Type [0] is different than
3390         null. null means `I don't care how many types this has,' while new
3391         Type [0] means `this must have 0 types.'
3392
3393 2005-02-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3394
3395         * corlib.dll.sources: added WindowsConsoleDriver.cs
3396
3397         * System/ConsoleDriver.cs: use WindowsConsoleDriver on windows and
3398         implemented the few missing properties/methods.
3399
3400         * System/IConsoleDriver.cs: uncommented all methods/properties.
3401         * System/TermInfoDriver.cs: implement changes from IConsoleDriver.
3402         * System/WindowsConsoleDriver.cs: implemented IConsoleDriver for
3403         windows. Only missing MoveBufferArea by now.
3404
3405 2005-02-11  Zoltan Varga  <vargaz@freemail.hu>
3406
3407         * Type.cs (IsAssignableFrom): Add support for TypeBuilders.
3408
3409         * Int32.cs AppDomain.cs: Fix warnings.
3410
3411 2005-02-10  Marek Safar  <marek.safar@seznam.cz>
3412
3413         * IServiceProvider.cs: Is not ComVisible.
3414
3415         * NonSerializedAttribute.cs: Fix AttributeUsage flags.
3416
3417         * Type.cs: Fix ClassInterface attribute.
3418
3419 Tue Feb 8 19:26:47 CET 2005 Paolo Molaro <lupus@ximian.com>
3420
3421         * Delegate.cs: remove the finalizer from Delegate: this
3422         is handled internally by the runtime now.
3423
3424 2005-02-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3425
3426         * Activator.cs: provide the Type name when throwing an exception.
3427
3428 2005-02-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3429
3430         * TimeZone.cs: lock on the static Hashtable instead of 'this'. Fixes
3431         bug #72238.
3432
3433 Fri Feb 4 15:46:04 CET 2005 Paolo Molaro <lupus@ximian.com>
3434
3435         * Array.cs: provide specialized versions of some methods.
3436
3437 Thu Feb 3 15:15:25 CET 2005 Paolo Molaro <lupus@ximian.com>
3438
3439         * String.cs: provide a managed memcpy and memset method
3440         for use both in corlib and from the JIT. Implement
3441         some methods with the managed helpers and remove some icalls.
3442
3443 2005-01-31  Sebastien Pouliot  <sebastien@ximian.com>
3444
3445         * Exception.cs: Added Data property for NET_2_0 (required for new
3446         unit tests).
3447
3448 2005-01-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3449
3450         * ConsoleDriver.cs:
3451         * TermInfoDriver.cs:
3452         * IConsoleDriver.cs:
3453         * Console.cs: added BufferWidth and BufferHeight.
3454
3455 2005-01-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3456
3457         * ConsoleDriver.cs:
3458         * Console.cs:
3459         * TermInfoDriver.cs:
3460         * IConsoleDriver.cs: added a few more properties and fixed cursor
3461         addressing.
3462
3463 2005-01-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3464
3465         * ConsoleDriver.cs: static class that forwards the Console 2.0 class
3466         calls to the proper driver.
3467         * TermInfoDriver.cs: terminfo based console driver.
3468         * IConsoleDriver.cs: interface implemented by console drivers.
3469
3470         * ConsoleCancelEventArgs.cs:
3471         * ConsoleCancelEventHandler.cs:
3472
3473         * ConsoleModifiers.cs: 
3474         * ConsoleSpecialKey.cs:
3475         * ConsoleColor.cs:
3476         * ConsoleKey.cs: new enumerations.
3477
3478         * ConsoleKeyInfo.cs: New file.
3479
3480         * TermInfoReader.cs: reader for terminfo capabilities files.
3481
3482         * TermInfoNumbers.cs:
3483         * TermInfoBooleans.cs:
3484         * TermInfoStrings.cs: enumations for terminfo property names.
3485
3486         * KnownTerminals.cs: byte arrays for selected terminals.
3487
3488         * Console.cs: added more 2.0 methods and implemented some of them.
3489
3490
3491 2005-01-30  Atsushi Enomoto  <atsushi@ximian.com>
3492
3493         * Int32.cs : (FindSign) IndexOf() is better than creating substring.
3494
3495 2005-01-27  Sebastien Pouliot  <sebastien@ximian.com>
3496
3497         * BadImageFormatException.cs: Protect the fusion (GAC) log from being
3498         disclosed unless code has ControlPolicy and ControlEvidence.
3499
3500 2005-01-27  Zoltan Varga  <vargaz@freemail.hu>
3501
3502         * Exception.cs: Compute stack trace on demand.
3503
3504 2005-01-26  Sebastien Pouliot  <sebastien@ximian.com>
3505
3506         * Environment.cs: Removed hack for static class (NET_2_0). Added 
3507         proper security for FailFast (documented in FDBK20543). Added new
3508         method IsRunningOnWindows to replace (Platform == 128) as the logic is
3509         gonna change in the future (Unix is id #4 in NET_2_0).
3510
3511 2005-01-24  Sebastien Pouliot  <sebastien@ximian.com>
3512
3513         * Environment.cs: Added CAS security (both declarative and imperative)
3514         as a test. This shouldn't affect execution unless --security is 
3515         specified.
3516
3517 2005-01-19  Rafael Teixeira  <rafaelteixeirabr@hotmail.com>
3518         * Type.cs: Corrected implementation for the Type.FilterNameIgnoreCase
3519         and Type.FilterName delegates They weren't dealing with the optional '*'
3520         at the end of the filter mask
3521
3522 2005-01-19  Zoltan Varga  <vargaz@freemail.hu>
3523
3524         * Array.cs: Fix a typo in the previous patch.
3525         
3526         * Array.cs: Fix some test failures in the generic methods.
3527
3528         * Array.cs: Implement AsReadOnly.
3529
3530 2005-01-13  Geoff Norton  <gnorton@customerdna.com>
3531
3532         * Guid.cs: Fix endian issues (use Mono.Security.BitConverterLE).  Fixes
3533         #71242
3534
3535 2005-01-11  Sebastien Pouliot  <sebastien@ximian.com>
3536
3537         * AppDomain.cs: Removed Activate and ActivateNewProcess methods. They
3538         have been removed from 2.0.
3539
3540 2005-01-11  Zoltan Varga  <vargaz@freemail.hu>
3541
3542         * Boolean.cs Char.cs Single.cs Double.cs: Implement IComparable<T> in
3543         NET 2.0.
3544
3545 2005-01-10  Sebastien Pouliot  <sebastien@ximian.com>
3546
3547         * ApplicationIdentity.cs: Throw ArgumentNullException if name is null.
3548         Add default culture (neutral) to the name when none is specified.
3549         * AppDomain.cs: Changed IsDefaultAppDomain (2.0). Is seems that we 
3550         can't trust Id ?
3551
3552 2005-01-09  Sebastien Pouliot  <sebastien@ximian.com>
3553
3554         * DateTime.cs: Reverted last patch for utc as it broke all certificate
3555         handling and another unit test in DateTime.
3556
3557 2005-01-09  Miguel de Icaza  <miguel@ximian.com>
3558
3559         * DateTime.cs: Return immediately if useutc is set to true, there
3560         is no need to do the extra computation (which also happened to
3561         create a new DateTime using the `use_localtime' constructor, which
3562         lead to the erroneous date returns when using 'u' or `U'
3563         formats).   
3564
3565         Fixes another bug in the regression test suite.
3566
3567 2005-01-08  Sebastien Pouliot  <sebastien@ximian.com> 
3568
3569         * AppDomain.cs: Fix the DefaultDomain property to return the root 
3570         domain (as it seems that the root's Id isn't always 0).
3571         * BitConverter.cs: The "special support" for ToString(new byte[0]) is
3572         only for NET_2_0 - previously this was an ArgumentOutOfRangeException.
3573
3574 2005-01-08  Miguel de Icaza  <miguel@ximian.com>
3575
3576         * IntegerFormatter.cs: The - sign inside the "negative" section in
3577         a multi-format string means `show the sign' only if it is the
3578         first token, not `copy verbatim'.  In the other sections it means
3579         `copy-verbatim'.
3580
3581         This makes things like:  (-34).ToString ("#;-#") show up as "-34"
3582         instead of "--34".
3583
3584         The bad news is that this code needs to be rewritten to handle all
3585         the formatting cases, see bug #71112 for details.
3586
3587         * Convert.cs (Convert.ToType): Throw an InvalidCastException if
3588         the conversion is invalid, not ArgumentException, this fixes
3589         another regression in our test suite.
3590
3591 2005-01-08  Sebastien Pouliot  <sebastien@ximian.com>
3592
3593         * AppDomain.cs: Add ApplicationIdentity property for 2.0;
3594         * AppDomainManager.cs: Remove HostRefusedSet support (it does not 
3595         exists anymore).
3596
3597 2005-01-08  Zoltan Varga  <vargaz@freemail.hu>
3598
3599         * DateTime.cs: Create MaxValue and MinValue using a different constructor to avoid static 
3600         initialization problems.
3601
3602 2005-01-02  Ben Maurer  <bmaurer@ximian.com>
3603
3604         * Int32.cs: NumberStyles.AllowExponent was supported by the
3605         Int32.Parse function. From Akira <mei@work.email.ne.jp>. Fixes bug
3606         70469.
3607
3608 2005-01-01  Atsushi Enomoto  <atsushi@ximian.com>
3609
3610         * Base64FormattingOptions.cs : it was not in System namespace.
3611
3612 2004-12-21  Atsushi Enomoto  <atsushi@ximian.com>
3613
3614         * DateTime.cs : If no progress on value string, don't regard as
3615           matched. This fixes bug #70707.
3616
3617 2004-12-20  Sebastien Pouliot  <sebastien@ximian.com>
3618
3619         * Environment.cs: Bump corlib version.
3620
3621 2004-12-16  Zoltan Varga  <vargaz@freemail.hu>
3622
3623         * Array.cs (DoBinarySearch): Fix a warning.
3624
3625 2004-12-08  Zoltan Varga  <vargaz@freemail.hu>
3626
3627         * Environment.cs: Bump corlib version.
3628
3629         * AppDomain.cs: Add new DefineInternalDynamicAssembly () method.
3630
3631 2004-12-06  Ben Maurer  <bmaurer@ximian.com>
3632
3633         * Exception.cs: Prevent stringifying the type name on the
3634         ctor. this gets called a few times on every execution to create a
3635         nullref exception.
3636
3637 2004-12-06  Martin Baulig  <martin@ximian.com>
3638
3639         * Decimal.cs: Decimal constant support has been merged into GMCS,
3640         removed the FIXME.
3641
3642 2004-12-06  Zoltan Varga  <vargaz@freemail.hu>
3643
3644         * Environment.cs: Bump corlib version.
3645         
3646         * Environment.cs: Bump corlib version.
3647
3648 2004-11-30  Zoltan Varga  <vargaz@freemail.hu>
3649
3650         * MonoType.cs (UnderlyingSystemType): Make this return this as in
3651         MS.NET. Fixes #56245.
3652
3653 2004-11-29  Atsushi Enomoto  <atsushi@ximian.com>
3654
3655         * GC.cs : Collect(generation) actually does not throw an exception
3656           even if generation > MaxGeneration (MS document bug).
3657
3658 2004-11-28  Zoltan Varga  <vargaz@freemail.hu>
3659
3660         * Exception.cs: Implement _Exception under NET_2_0.
3661
3662         * Byte.cs SByte.cs UInt16.cs Int16.cs: Make these compile under csc 2.0.
3663
3664         * AccessViolationException.cs DataMisalignedException.cs OperationCanceledException.cs
3665         NotCancelableException.cs TimeoutException.cs: New files.
3666
3667 2004-11-23  Raja R Harinath  <rharinath@novell.com>
3668
3669         * Decimal.cs [NET_2_0]: Use old code till GMCS imports decimal
3670         constant support.
3671
3672 2004-11-23  Raja R Harinath  <rharinath@novell.com>
3673
3674         * Decimal.cs [BOOTSTRAP_WITH_OLDLIB]: Use old code for compilers
3675         without decimal constant support.
3676
3677 2004-11-23  Marek Safar  <marek.safar@seznam.cz>
3678
3679         * Decimal.cs: Updated to use compiler decimal constant support.
3680
3681 2004-11-20  Zoltan Varga  <vargaz@freemail.hu>
3682
3683         * MonoType.cs: Revert last change since it breaks remoting.
3684
3685 2004-11-18  Zoltan Varga  <vargaz@freemail.hu>
3686
3687         * MonoType.cs (UnderlyingSystemType): Make this return this as in
3688         MS.NET. Fixes #56245.
3689
3690 2004-11-17  Carlos Alberto Cortez <carlos@unixmexico.org>
3691
3692         * INullable.cs: New interface added.
3693         * Nullable.cs: Methods added. Also a static Nullable class
3694         containing static methods.
3695         
3696 2004-11-15  Sebastien Pouliot  <sebastien@ximian.com>
3697
3698         * BitConverter.cs: Added support for special case when ToString is 
3699         called with (new byte [0]).
3700
3701 2004-11-10  Lluis Sanchez  <lluis@novell.com>
3702
3703         * Exception.cs: Added setter for StackTrace.
3704
3705 2004-11-07  Ben Maurer  <bmaurer@ximian.com>
3706
3707         * IntegerFormatter.cs: Avoid .ToCharArray
3708
3709 2004-11-06  Ben Maurer  <bmaurer@ximian.com>
3710
3711         * Single.cs, Double.cs (GetHashCode): Better hashcode impl
3712
3713 2004-11-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3714
3715         * InvalidOperationException.cs: make the message more meaningful and
3716         real. Fixes bug #69055.
3717
3718 2004-10-28  Ben Maurer  <bmaurer@ximian.com>
3719
3720         * String.cs: Rather than == String.Empty, use .Length == 0. It
3721         is a bit faster (avoids a method call, and the code is less complex).
3722
3723 2004-10-24  Fawad Halim  <fawad@fawad.net>
3724         * Environment.cs: If an Environment variable value isn't found, leave the trailing % of the reference for further matches.
3725         Add text between end of current lookup window and next % match if we just got a match, or add all text to the end if there are no further % matches.
3726         This fixes bug #64995.
3727
3728 2004-10-19  Lluis Sanchez  <lluis@novell.com>
3729
3730         * MarshalByRefObject.cs: Field _identity is not serializable.
3731         This fixes bug #68567.
3732
3733 2004-10-17  Ben Maurer  <bmaurer@ximian.com>
3734
3735         * DateTime.cs (ZeroPad): Use unsafe code to speed this up. We
3736         avoid entering slow integer formatting code.
3737
3738         (_ToString): Use ZeroPad here when possible, as it is faster.
3739
3740 2004-10-11  Martin Baulig  <martin@ximian.com>
3741
3742         * Environment.cs: Bump corlib version to 28.
3743
3744 2004-10-08  Zoltan Varga  <vargaz@freemail.hu>
3745
3746         * Convert.cs (ToType): Throw an exception when converting null to a
3747         valuetype. Fixes #67780.
3748
3749 2004-10-08  Atsushi Enomoto  <atsushi@ximian.com>
3750
3751         * DateTime.cs : Performance fix. ParseExact() implementation should
3752           avoid s = s.Substring(1).
3753
3754 2004-10-08  Atsushi Enomoto  <atsushi@ximian.com>
3755
3756         * DateTime.cs : When it it not exact parse, 'Z' is allowed as a suffix
3757           of m/s/t/z. This fixes bug 66723.
3758
3759 Wed Oct 6 12:37:54 CEST 2004 Paolo Molaro <lupus@ximian.com>
3760
3761         * String.cs: make GetHashCode() managed.
3762
3763 2004-10-04  Zoltan Varga  <vargaz@freemail.hu>
3764
3765         * AppDomain.cs: Make ThreadStatic variables static. Fixes #56614.
3766
3767         * Runtime*Handle.cs ModuleHandle.cs: Add Equals + GetHashCode.
3768
3769         * ModuleHandle.cs: Add missing methods.
3770
3771         * RuntimeTypeHandle.cs: Add GetModuleHandle () method.
3772
3773 2004-10-03  Zoltan Varga  <vargaz@freemail.hu>
3774
3775         * AttributeTargets.cs: Add 2.0 GenericParameter value.
3776
3777         * Environment.cs: Bump corlib version.
3778
3779 2004-10-02  Zoltan Varga  <vargaz@freemail.hu>
3780
3781         * Int32.cs UInt32.cs Byte.cs SByte.cs Int16.cs UInt16.cs Int64.cs UInt64.cs: Implement 2.0 TryParse methods.
3782
3783 2004-09-30  Geoff Norton  <gnorton@customerdna.com>
3784
3785         * Convert.cs: ConvertToBase* was not endian aware.  Implemented EndianSwap
3786         and swapping of all values before going into the BitConverter so that values
3787         are returned with proper endianess.
3788
3789 2004-09-23  Martin Garton  <martin@wrasse.demon.co.uk>
3790
3791         * Convert.cs: ToType was returning unconverted object when it should
3792         fail with an ArgumentException.
3793
3794 2004-09-27  Zoltan Varga  <vargaz@freemail.hu>
3795
3796         * Array.cs: Add stub for AsReadOnly<T>.
3797         
3798 2004-09-25  Zoltan Varga  <vargaz@freemail.hu>
3799
3800         * Type.cs: Add MakePointerType && stub for ReflectionOnlyGetType.
3801
3802         * MonoCustomAttrs.cs (GetCustomAttributesBase): Add support for
3803         parameters.
3804
3805 2004-09-24  Zoltan Varga  <vargaz@freemail.hu>
3806
3807         * MonoCustomAttrs.cs (GetCustomAttributesBase): Add support for
3808         methods and fields.
3809         
3810         * MonoCustomAttrs.cs: Beginnings of support for returning 2.0 pseudo
3811         custom attributes.
3812
3813         * MonoCustomAttrs.cs (RetrieveAttributeUsage): Avoid infinite recursion.
3814
3815         * MonoCustomAttrs.cs (GetCustomAttributes): Fix the 'attributeType is 
3816         sealed' optimization.
3817
3818         * Type.cs: Implement 2.0 StructLayoutAttribute property. 
3819
3820         * Type.cs Add GetPseudoCustomAttributes () method.
3821
3822 2004-09-24  Martin Baulig  <martin@ximian.com>
3823
3824         * Type.cs (Type.GetGenericParameterConstraints): New public method.
3825
3826 2004-09-23  Zoltan Varga  <vargaz@freemail.hu>
3827
3828         * MonoCustomAttrs.cs (GetCustomAttributes): Rename the icall to
3829         GetCustomAttributesInternal and add a 'pseudoAttrs' argument.
3830
3831         * Type.cs: Tweak Module property in 2.0 build.
3832
3833 2004-09-23  Martin Baulig  <martin@ximian.com>
3834
3835         * Type.cs (Type.GenericParameterAttributes): New public property.
3836
3837 2004-09-23  Martin Baulig  <martin@ximian.com>
3838
3839         * GenericParameterAttributes.cs: New file.
3840
3841 2004-09-22  Zoltan Varga  <vargaz@freemail.hu>
3842
3843         * ModuleHandle.cs: Updated after changes to Module class.
3844
3845 2004-09-21  Geoff Norton <gnorton@customerdna.com>
3846
3847         * Type.cs: BindingFlags.IgnoreCase was being ignored, this reimplements
3848         this filter. Fixes bug #65778.
3849
3850 2004-09-20  Zoltan Varga  <vargaz@freemail.hu>
3851
3852         * Environment.cs: Bump corlib version.
3853
3854 2004-09-19  Zoltan Varga  <vargaz@freemail.hu>
3855
3856         * ModuleHandle.cs: New file.
3857
3858         * RuntimeFieldHandle.cs: Add an internal ctor.
3859
3860 2004-09-19  Dick Porter  <dick@ximian.com>
3861
3862         * Console.cs: Use the internal wrappers for StreamReader and
3863         StreamWriter that catch IOException.
3864
3865 2004-09-16  Sebastien Pouliot  <sebastien@ximian.com>
3866
3867         * Environment.cs: Bumped mono_corlib_version to 25.
3868
3869 2004-09-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3870
3871         * AppDomain.cs: added SetupInformationNoCopy property, since
3872         SetupInformation creates a copy now, all updates to it should use the
3873         actual data. Fixes bug #61991 take 2.
3874
3875 2004-09-09  Tim Coleman <tim@timcoleman.com>
3876         * Base64FormattingOptions.cs: New enum
3877         * Convert.cs: Add new ToBase64String methods for Fx 2.0
3878
3879 2004-09-08  Marek Safar  <marek.safar@seznam.cz>
3880
3881         * Console.cs,
3882         * GC.cs: Class is static for NET_2_0.
3883
3884 2004-09-07 Ben Maurer  <bmaurer@users.sourceforge.net>
3885
3886         * Activator.cs: Make sure not to call .GetType on a
3887         null argument. fixes 63852
3888
3889 2004-09-06 Ben Maurer  <bmaurer@users.sourceforge.net>
3890
3891         * Array.cs (Clear): make this an icall.
3892
3893 2004-09-05 Ben Maurer  <bmaurer@users.sourceforge.net>
3894
3895         * MonoCustomAttribute.cs: Avoid the call to GetBase when possible.
3896
3897 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3898
3899         * Environment.cs: (ExpandEnvironmentVariables) don't nullify the case
3900         insensitive enironment variables hashtable once we create it.
3901
3902 2004-09-04  Sebastien Pouliot  <sebastien@ximian.com>
3903
3904         * AppDomain.cs: Changed 2 imperative security demands to declarative
3905         (unsupported) so it doesn't (for now) call the security runtime.
3906
3907 2004-09-02  Zoltan Varga  <vargaz@freemail.hu>
3908
3909         * Delegate.cs: Free the delegate trampoline in the finalizer.
3910
3911 2004-08-26  Sebastien Pouliot  <sebastien@ximian.com>
3912
3913         * ApplicationId.cs: Completed GetHashCode using information from MS
3914         (FDBK13339).
3915
3916 2004-08-23  Sebastien Pouliot  <sebastien@ximian.com>
3917
3918         * Boolean.cs: Added TryParse static method for NET_2_0 profile.
3919
3920 2004-08-19  Atsushi Enomoto  <atsushi@ximian.com>
3921
3922         * DateTime.cs : When hour format is "hh", MS.NET (maybe incorrectly)
3923           allows 12, that should not be accepted (13 is rejected) and
3924           interpreted as 0. This fixes bug 63376.
3925
3926 2004-08-17  Sebastien Pouliot  <sebastien@ximian.com>
3927
3928         * Version.cs: Fixed Clone so we can use it on versions with only
3929         major/minor or major/minor/build.
3930
3931 2004-08-17  Martin Baulig  <martin@ximian.com>
3932
3933         * MonoType.cs (MonoType.getFullName): Added `bool full_name'
3934         argument specifying whether or not to include the type arguments.
3935         (MonoType.FullName): Don't include the type arguments.
3936         (MonoType.ToString): Include them here.
3937
3938         * Environment.cs: Bumped mono_corlib_version to 24.
3939
3940 2004-08-16  Duncan Mak  <duncan@ximian.com>
3941
3942         * AttributeUsageAttribute.cs: Change the AttributeUsage to
3943         AttributeTargets.Class, from AttributeTargets.All, fixes Zoltan's
3944         bug #62895.
3945
3946 2004-08-11  Marek Safar  <marek.safar@seznam.cz>
3947
3948         * AppDomain.cs: Fixed typo of DefineDynamicAssembly argument.
3949         Added call to AddPermissionRequests to pass permissions
3950         arguments.
3951         * Environment.cs: Added a few Fx 2.0 methods
3952
3953 2004-08-09  Sebastien Pouliot  <sebastien@ximian.com>
3954
3955         * ApplicationId.cs: Fixed typo to fix NET_2_0 compilation.
3956         * AppDomain.cs: Fixed use of Evidence and AppDomainSetup (copies, not
3957         references). Added (non-obsolete) Fx 2.0 properties and methods.
3958         * AppDomainSetup.cs: Added internal copy constructor.
3959         * DomainManagerInitializationFlags.cs: Fixed values.
3960
3961 2004-08-08  Sebastien Pouliot  <sebastien@ximian.com>
3962
3963         * AppDomainInitializer.cs: New Fx 2.0 class for AppDomain.
3964         * AppDomainManager.cs: New Fx 2.0 class for AppDomain.
3965         * ApplicationActivator.cs: New Fx 2.0 class for AppDomain.
3966         * ApplicationId.cs: New Fx 2.0 class.
3967         * ApplicationIdentity.cs: Fixed ToString.
3968         * DomainManagerInitializationFlags.cs: New Fx 2.0 flags for AppDomain.
3969
3970 2004-08-05  Sebastien Pouliot  <sebastien@ximian.com>
3971
3972         * AppDomain.cs: Added a new icall, getDomainByID, to get the an 
3973         AppDomain using it's Id. Completed SetAppDomainPolicy.
3974         * Environment.cs: Bumped mono_corlib_version to 23.
3975
3976 2004-08-02  Martin Baulig  <martin@ximian.com>
3977
3978         * DateTime.cs, TimeSpan.cs, Guid.cs, Version.cs: Implement IComparable<T>.
3979
3980 2004-07-29  Atsushi Enomoto  <atsushi@ximian.com>
3981
3982         * Environment.cs : GacPath on windows is based on mscorlib.dll, and
3983           now its location is changed.
3984
3985 2004-07-21  Lluis Sanchez Gual  <lluis@novell.com>
3986
3987         * Environment.cs: Return the MS.NET 2.0 beta1 runtime version for the
3988           NET_2_0 profile.
3989         
3990 2004-07-18  Martin Baulig  <martin@ximian.com>
3991
3992         * Array.cs: Ben Maurer implemented all the new generic methods
3993         here :-)
3994
3995 2004-07-17  Martin Baulig  <martin@ximian.com>
3996
3997         * Decimal.cs: Implement IComparable<Decimal>.
3998
3999 2004-07-17  Martin Baulig  <martin@ximian.com>
4000
4001         * Byte.cs, Int16.cs, Int32.cs, Int64.cs, SByte.cs, String.cs,
4002         UInt16.cs, UInt32.cs, UInt64.cs: Implement IComparable<T>.      
4003
4004 2004-07-13  Sebastien Pouliot  <sebastien@ximian.com>
4005
4006         * ActivationContext.cs: New class in Fx 2.0. Required for 
4007         System.Security.Policy.
4008         * ApplicationIdentity.cs: New class in Fx 2.0. Required for 
4009         System.Security.Policy.
4010         * IApplicationDescription.cs: New interface in Fx 2.0. Required for 
4011         System.Security.Policy.
4012         * IHostContext.cs: New interface in Fx 2.0. Required for 
4013         System.Security.Policy.
4014
4015 2004-07-12  Geoff Norton <gnorton@customerdna.com>
4016
4017         * DateTime.cs: Patch for bug #61112.  Our DateTime wasn't roundtripping over timezone
4018           boundaries properly.  This patch checkes ToLocalTime() to see if we're tripping over a boundary
4019           and will add/subtract the hour if needed
4020
4021 2004-07-07  Geoff Norton <gnorton@customerdna.com>
4022
4023         * Monotype.cs: Patch for bug #58844.  Dont throw exceptions right away;
4024           pass through all the possibly BindingInfo's and keep a bool value as to the type
4025           of exception we might need to throw;
4026
4027 2004-07-07  Geoff Norton <gnorton@customerdna.com>
4028
4029         * Patch to fix bug #58973
4030
4031 2004-07-02  Jackson Harper  <jackson@ximian.com>
4032
4033         * PlatformID.cs: New 2.0 values.
4034         
4035 2004-06-25  Ben Maurer <bmaurer@ximian.com>
4036         
4037         * Environment.cs: GetFolderPath has new behavior. r=miguel
4038
4039 2004-06-23  Sebastien Pouliot  <sebastien@ximian.com>
4040
4041         * DateTime.cs: Throw ArgumentOutOfRangeException if the year is
4042         bigger than 9999. Fix bug #41845.
4043         * FloatingPointFormatter.cs: Applied correction from Jon Skeet on
4044         the "R"eversible format for negative numbers.
4045
4046 2004-06-21  Jackson Harper  <jackson@ximian.com>
4047
4048         * Decimal.cs: Make sure to use invariant culture when parsing
4049         floats stringified with the invariant culture. Patch by Rodrigo
4050         B. de Oliveira.
4051         
4052 2004-06-19  Atsushi Enomoto  <atsushi@ximian.com>
4053
4054         * FloatingPointFormatter.cs : Literal string should be kept in the
4055           output.
4056
4057 2004-06-18  Atsushi Enomoto  <atsushi@ximian.com>
4058
4059         * DateTime.cs : Concatenating whitespace removal was not working fine.
4060           Modified FormatException message (1 cent kindness).
4061
4062 2004-06-18  Ben Maurer  <bmaurer@ximian.com>
4063         
4064         * Action.cs, ArraySegment.cs, Comparison.cs, Converter.cs, Predicate.cs:
4065         new generics classes
4066         * IComparable.cs: add the new <T> version.
4067         * EventHandler.cs: new <T> version.
4068         
4069 2004-06-18  Dick Porter  <dick@ximian.com>
4070
4071         * String.cs: The icall can cope with embedded \0 now.
4072
4073 2004-06-18  Atsushi Enomoto  <atsushi@ximian.com>
4074
4075         * DateTime.cs :
4076           - Added new common pattern "yyyy/M/dZ"
4077           - empty string should not be compared in _ParseEnum()
4078           - Use culture independent string comparison in _ParseString()
4079           - Whitespace removal should be checked after '..' token check (some
4080             pattern such like es-ES LongDatePattern contains spaces in '..').
4081           - formats null check should be done (to throw ArgumentNullException)
4082             in ParseExact().
4083           - When specified one character format, dates are incorrectly regarded
4084             as to use invariant culture.
4085
4086 2004-06-18  Gert Driesen <drieseng@users.sourceforge.net>
4087
4088         * ArgIterator.cs: changed layout to Auto
4089         * DateTime.cs: changed layout to Auto
4090
4091 2004-06-18  Gert Driesen <drieseng@users.sourceforge.net>
4092
4093         * DateTime.cs: CRLF to LF
4094
4095 2004-06-17  Sebastien Pouliot  <sebastien@ximian.com>
4096
4097         * Decimal.cs: Fixed regression in System.Data caused by the recent 
4098         changes. Adapted (and moved) the code to correct the scale from 
4099         SqlMoney. Removed unused (and unusable) IsOne and fixed IsZero (where
4100         scale has no importance).
4101
4102 2004-06-17  Lluis Sanchez Gual  <lluis@ximian.com>
4103
4104         * Activator.cs: In CreateInstance(), use Public|Instance if access binding
4105           attributes are omitted.
4106
4107 2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>
4108
4109         * DateTime.cs : GetDateTimeFormats(char, IFormatProvider) should also
4110           check if the format character is valid.
4111
4112 2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>
4113
4114         * DateTime.cs : AddDays(double) rounds the input.
4115
4116 2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>
4117
4118         * DateTime.cs : Incorrect maxvalue comparison in ToUniversalTime().
4119           Fixed ToLocalTime() as well, but it does check range for MinValue.
4120
4121 2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>
4122
4123         * DateTime.cs : Added overflow check in ToUniversalTime() and
4124           ToLocalTime(). Fixed bug #60253.
4125
4126 2004-06-16  Sebastien Pouliot  <sebastien@ximian.com>
4127
4128         * FloatingPointFormatter.cs: Implemented "R" format using Jon Skeet
4129         source code (with permission). Fix (biggest) part of bug #60110.
4130         http://www.yoda.arachsys.com/csharp/floatingpoint.html
4131
4132 2004-06-15  Sebastien Pouliot  <sebastien@ximian.com>
4133
4134         * Decimal.cs: Fixed scale after Round (a different scale is correct 
4135         from a math point of view but affect the string representation of the
4136         value). Note: other operations also have scale problems!
4137         * DecimalFormatter.cs: Fixed FormatGeneral to match Fx 1.1 output.
4138         * FloatingPointFormatter.cs: Fixed ToString which doesn't use banker's
4139         rounding (which is the rounding provided by Math.Round). This fix bug
4140         #60111. The code (new Round methods) should be moved elsewhere (as it
4141         may also be required elsewhere) post Mono 1.0.
4142
4143 2004-06-15  Gert Driesen <drieseng@users.sourceforge.net>
4144
4145         * AppDomainSetup.cs: added TODO for serialization
4146         * ExecutionEngineException.cs: added missing serialization ctor
4147         * InvalidProgramException.cs: added missing serialization ctor
4148         * MulticastNotSupportedException.cs: added missing serialization ctor
4149         * ObsoleteAttribute.cs: fixed serialization compatibility with MS.NET
4150         * Random.cs: fixed serialization compatibility with MS.NET
4151
4152 2004-06-15  Paolo Molaro <lupus@ximian.com>
4153
4154         * Type.cs: removed unused (and non-existing) icall type_is_instance.
4155
4156 2004-06-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4157
4158         * Environment.cs: use internalGetHome instead of getting "HOME" as
4159         that variable may not be defined.
4160
4161 2004-06-14  Sebastien Pouliot  <sebastien@ximian.com>
4162
4163         * TimeSpan.cs: Fixed timespan with large values for hours or minutes
4164         (overflow is only checked for days but can also occurs in hours and
4165         minutes which uses Int32 when multiplying). The new results match MS
4166         implementation.
4167
4168 2004-06-14  Atsushi Enomoto  <atsushi@ximian.com>
4169
4170         * FloatingPointFormatter.cs : Recognize '%' and '\u2030' and replace
4171           them with matching NumberFormatInfo properties.
4172
4173 2004-06-14  Atsushi Enomoto  <atsushi@ximian.com>
4174
4175         * Double.cs : Use IFormatProvider.GetFormat() instead of literal '-'.
4176         * FloatingPointFormatter.cs :
4177           Use NumberFormatInfo.NegativeSign. This change saves many XSLT test
4178           failures.
4179           Format Permille pattern (It is undocumented but actually available,
4180           and used in xsl:format-number).
4181
4182 2004-06-14  Raja R Harinath  <rharinath@novell.com>
4183
4184         * Console.cs (Console.Write, Console.WriteLine): Disable __arglist
4185         version with BOOTSTRAP_WITH_OLDLIB.
4186         * String.cs (STring.Concat): Likewise.
4187
4188 2004-06-13  Atsushi Enomoto  <atsushi@ximian.com>
4189
4190         * FloatingPointFormatter.cs :
4191           - Don't format more than 15 fraction digits. Don't report to Pedro
4192             directly (removing the error message with his concent).
4193           - When format string starts with '.', it means integral part format 
4194             is not specified. Ignore '.' characters after the first
4195             appearance. Fixed bug #59890.
4196           - 0.0 is formatted only before the third ';' appearance.
4197
4198 2004-06-11  Sebastien Pouliot  <sebastien@ximian.com>
4199
4200         * DateTime.cs: Added a AddRoundedMilliseconds which use the "old Mono"
4201         rounding logic which worked for FromOADate (while the newer didn't).
4202         * TimeSpan.cs: Now throw an OverflowException when the timespan is
4203         over MaxValue or under MinValue.
4204
4205 2004-06-11  Martin Baulig  <martin@ximian.com>
4206
4207         * Console.cs (Write, WriteLine): Implemented the varargs versions.
4208
4209 2004-06-11  Martin Baulig  <martin@ximian.com>
4210
4211         * String.cs (Concat): Implemented the varargs version.
4212
4213 2004-06-10  Sebastien Pouliot  <sebastien@ximian.com>
4214
4215         * Decimal.cs: Hacked the Parse method to allow the runtime C code to
4216         decode it properly (i.e. matching MS results). Fixed the Round method
4217         for negative decimal numbers (moved code from Math.cs).
4218         * Math.cs: Now use Decimal class for Round(Decimal,int). Required to
4219         fix a bug when rounding a negative decimal.
4220
4221 2004-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4222
4223         * AppDomain.cs: set the _principal to null when changing the policy.
4224         * Console.cs: remove ClsCompliant attribute from a method marked as
4225         internal and added comment.
4226
4227 2004-06-10  Gert Driesen <drieseng@users.sourceforge.net>
4228
4229         * Delegate.cs: marked protected fields private to match public
4230         API of MS.NET, marked DynamicInvokeImpl and GetMethodImpl
4231         protected to fix public API
4232         * Enum.cs: marked ctor protected to match public API of MS.NET
4233         * MulticastDelegate.cs: marked DynamicInvokeImpl protected to
4234         match public API of MS.NET
4235
4236 2004-06-10  Atsushi Enomoto  <atsushi@ximian.com>
4237
4238         * DateTime.cs : Added more common patterns.
4239
4240 2004-06-09  Sebastien Pouliot  <sebastien@ximian.com>
4241
4242         * Decimal.cs: Fixed banker rounding by calling Math.Round. This won't
4243         be a performance winner (the actual Math code has a note to wait a
4244         better Decimal implementation) but it returns the correct results
4245         (without adding new code in corlib or the runtime). Fix #37744.
4246
4247 2004-06-09  Atsushi Enomoto  <atsushi@ximian.com>
4248
4249         * DateTime.cs :
4250           - A bunch of fixes (patch by Steven Brown). Fraction seconds are 
4251             now represented as double. Strict token check for 'Z'.
4252           - Pattern validity check in GetDateTimeFormats(char).
4253           - Fixed pattern "yyyy/M/d HH:mm:ss".
4254
4255 2004-06-09  Sebastien Pouliot  <sebastien@ximian.com>
4256
4257         * Decimal.cs: Fixed remainder (and optimized some cases not to call 
4258         unmanaged code). Simplified divide. Removed workaround for bug #59793.
4259         Fixed GetHashCode to return different result for X and -X.
4260
4261 2004-06-08  Atsushi Enomoto  <atsushi@ximian.com>
4262
4263         * DateTime.cs :
4264           - Now re-checked all common format patterns. They should be tried
4265             with both current culture and invariant culture. Since '/' covers
4266             '-', removed extraneous patterns. Added more common patterns
4267             such as "yyyy-MM-dd" and X509Certificate pattern (it is valid
4268             only after NET_1_1). Commented out 1 character format patterns.
4269           - The format patterns we should try should not be obtained by
4270             GetAllDateTimePatterns(). Just use 'd', 'D', 't', 'T', ... (one
4271             character patterns), to handle UTC correctly. Examined patterns
4272             are changed, to 1) common patterns with specified (or current)
4273             culture, 2) common patterns with invariant, 3) The above "one
4274             character patterns" with specified (or current) culture.
4275           - When trying to parse some kind of patterns such as RFC1123, 
4276             always use invariant DateTimeFormatInfo so that they can avoid
4277             parsing with culture-dependent calendar.
4278           - Check "GMT" only when doing Parse(). Don't it when ParseExact().
4279           - Removed extraneous '-' case. It is not special one.
4280           - When ParseExact(), allow only '/' for '/' pattern character.
4281           - When Parse(), allow any non-letter & non-number characters.
4282           - When pattern is not fully parsed, reject that format.
4283           - Added "exact" parameter to some ParseExact().
4284           - RFC1123 pattern is (again) now parsed in local time. I regressed
4285             some problems in previous fix.
4286
4287 2004-06-08  Sebastien Pouliot  <sebastien@ximian.com>
4288
4289         * Decimal.cs: Fixed cast to integer types to truncate (not round) the
4290         value.
4291
4292 2004-06-07  Duncan Mak  <duncan@ximian.com>
4293
4294         * Exception.cs (Source): This can return null.
4295
4296 2004-06-07  Sebastien Pouliot  <sebastien@ximian.com>
4297
4298         * DateTime.cs: Fixed FromFileTime for negative values. Fixed 
4299         constructor to limit range of milliseconds from 0,999. Fixed
4300         ToType method to work for object, string and DateTime.
4301
4302 2004-06-07  Sebastien Pouliot  <sebastien@ximian.com>
4303
4304         * DateTime.cs: Fixed OLE Automation date conversions: timezone 
4305         insensitive, wrong exception in FromOADate, handling of Min/Max 
4306         values, negative doubles where integer part is negative but 
4307         decimals are positive! Charming format ;-)
4308
4309 2004-06-06  Sebastien Pouliot  <sebastien@ximian.com>
4310
4311         * String.cs: Fixed Join in case separator parameter is null.
4312         * TimeSpan.cs: Cache format errors during parsing and throw 
4313         FormatException only if there was no overflow.
4314
4315 2004-06-06  Gert Driesen <drieseng@users.sourceforge.net>
4316
4317         * MonoCustomAttrs.cs: fixed issue where an empty array was 
4318         returned when GetCustomAttributes was invoked with null
4319         attribute type and there was only one result
4320
4321 2004-06-06  Sebastien Pouliot  <sebastien@ximian.com>
4322
4323         * Decimal.cs: Fixed ToString(String.Empty) to default ("G").
4324         * Int16.cs: Fixed ToString(String.Empty) to default ("G").
4325         * Int32.cs: Fixed ToString(String.Empty) to default ("G").
4326         * Int64.cs: Fixed ToString(String.Empty) to default ("G").
4327         * SByte.cs: Fixed ToString(String.Empty) to default ("G").
4328         * UInt16.cs: Fixed ToString(String.Empty) to default ("G").
4329         * UInt32.cs: Fixed ToString(String.Empty) to default ("G").
4330         * UInt64.cs: Fixed ToString(String.Empty) to default ("G").
4331
4332 2004-06-05  Sebastien Pouliot  <sebastien@ximian.com>
4333
4334         * Convert.cs: Fixed the convertion of negative integers (byte, short, 
4335         int and long) into string in a specific base (2, 8, 10 or 16).
4336
4337 2004-06-04  Sebastien Pouliot  <sebastien@ximian.com>
4338
4339         * Math.cs: Fixed IEEERemainder to return -0 (0x8000000000000000) when
4340         the dividend is negative and the result is 0 (remainder).
4341
4342 2004-06-03  Sebastien Pouliot  <sebastien@ximian.com>
4343
4344         * Delegate.cs: Fix the NullReferenceException in Combine(Delegate[]).
4345
4346 2004-06-02  Sebastien Pouliot  <sebastien@ximian.com>
4347
4348         * TimeSpan.cs: Fixed overflow issues when delaing with big (days) time
4349         spans. Fixed parsing when only days are presents in the string (which
4350         should be illegal according to the documentation but is supported).
4351
4352 2004-06-01  Sebastien Pouliot  <sebastien@ximian.com>
4353
4354         * TimeSpan.cs: Fixed exceptions in FromXXX methods as they are 
4355         somewhat different from the documentation.
4356
4357 2004-06-01  Gert Driesen <drieseng@users.sourceforge.net>
4358
4359         * Type.cs: added missing attributes on InvokeMember
4360
4361 2004-06-01  Miguel de Icaza  <miguel@ximian.com>
4362
4363         * String.cs: Flag concat with four arguments internal. 
4364
4365 2004-05-31  Sebastien Pouliot  <sebastien@ximian.com>
4366
4367         * Array.cs: Fixed legal case where value is null.
4368         * Byte.cs: Fixed ToString when format is an empty string (use "G").
4369         * Guid.cs: Renamed private fields (and changed some to signed) to 
4370         match MS implementation and allow serialization to work. Fix 
4371         bug #59113.
4372
4373 2004-05-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4374
4375         * DateTime.cs: adjust milliseconds for fraction specifier ('f').
4376
4377 2004-05-30  Miguel de Icaza  <miguel@ximian.com>
4378
4379         * Console.cs: Remove *again* the version of WriteLine with four
4380         arguments;  That should *not* be added.  
4381
4382         Flag it as internal as people migrate their code.
4383
4384 2004-05-29  Sebastien Pouliot  <sebastien@ximian.com>
4385
4386         * Convert.cs: Fixed ToSByte(string,IFormatProvider) to throw 
4387         ArgumentNullException (only case, all other returns 0). Fixed exception
4388         reporting for hex prefix only strings. Fixed ChangeTo where null could
4389         be misinterpreted between null and Empty.
4390
4391 2004-05-28  Sebastien Pouliot  <sebastien@ximian.com>
4392
4393         * Convert.cs: Fixed integer parsing for special cases (0x, 0X for base
4394         16), non-base 10 negative numbers ... see new unit tests. Fixed the 
4395         case when we parse Int64.MinValue (positive doesn't fit a signed long).
4396
4397 2004-05-28  Jackson Harper  <jackson@ximian.com>
4398
4399         * Environment.cs: Increment version number.
4400         
4401 2004-05-28  Zoltan Varga  <vargaz@freemail.hu>
4402
4403         * AppDomain.cs (Load): Try loading from assemblyRef.CodeBase if exists.
4404         Fixes #59189.
4405
4406 2004-05-28  Atsushi Enomoto <atsushi@ximian.com>
4407
4408         * DateTime.cs : I reverted my fix by accident :(
4409
4410 2004-05-28  Atsushi Enomoto <atsushi@ximian.com>
4411
4412         * DateTime.cs :
4413           - In ToString(), Don't use culture-dependent daynames to format
4414             Universal/RFC1123 date/time. Also, use FullDateTimePattern for 'U'.
4415           - Fixed GetDateTimeFormats () that generated incorrect 'U' value 
4416             (since the format string is the same as 'F').
4417
4418 2004-05-28  Atsushi Enomoto <atsushi@ximian.com>
4419
4420         * DateTime.cs : don't adjust utc value in ToString(). It must output
4421           the same time value, just adding 'Z' for UTC.
4422
4423 2004-05-28  Atsushi Enomoto <atsushi@ximian.com>
4424
4425         * DateTime.cs : in 'Z' case, remove the 'Z' char from input before
4426           proceeding.
4427
4428 2004-05-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4429
4430         * AppDomainSetup.cs: InitAppDomainSetup is not needed now.
4431
4432 2004-05-27  Sebastien Pouliot  <sebastien@ximian.com>
4433
4434         * Byte.cs: Fixed parsing for "-0" which is valid for unsigned types.
4435         * Convert.cs: Convert with a base parameter cannot parse negative 
4436         string numbers, even "-0".
4437         * UInt16.cs: Fixed parsing for "-0" which is valid for unsigned types.
4438         * UInt32.cs: Fixed parsing for "-0" which is valid for unsigned types.
4439         * UInt64.cs: Fixed parsing for "-0" which is valid for unsigned types.
4440
4441 2004-05-27  Atsushi Enomoto <atsushi@ximian.com>
4442
4443         * DateTime.cs : 
4444           - Added "yyyy/MM/dd HH:mm:ss 'GMT'" and "yyyy-MM-dd HH:mm:ss 'GMT'"
4445             to common formats (yes, I know it is nothing more than hack)
4446           - Fixed some GetDateTimeFormats() that just returned patterns.
4447           - For InvariantCulture, now try both supported formats and our
4448             predefined formats.
4449           - It was accepting incorrectly extraneous characters. That caused
4450             some UTC/non-UTC bug.
4451           - RFC1123 string should return universal time. Uncomment again (the
4452             problem should went away because of the extra characters fix above.
4453
4454             With some of the changes above, fixed bug #47720.
4455
4456 2004-05-27  Atsushi Enomoto <atsushi@ximian.com>
4457
4458         * DateTime.cs : quick revert 'Z' support for certificate verifications.
4459
4460 2004-05-26  Sebastien Pouliot  <sebastien@ximian.com>
4461
4462         * Array.cs: Removed duplicate condition if LastIndexOf.
4463
4464 2004-05-26  Atsushi Enomoto <atsushi@ximian.com>
4465
4466         * DateTime.cs :
4467           - Added "yyyy-MM-dd HH:mm:ss" to "compatible patterns".
4468             (Fixed bug #58938.)
4469           - As a quick remedy to accept more patterns, Parse() now also tries
4470             InvariantInfo patterns (this is because we have no more than one
4471             pattern for each pattern component.)
4472           - In _DoParse(), 'Z' should not be read as timezone specifier. Some
4473             culture uses 'Z' as AM/PM designer, and it should be recognized as
4474             part of the UTCpattern (if it actually UTC pattern for the culture
4475             contains 'Z').
4476
4477 2004-05-26  Gert Driesen (drieseng@users.sourceforge.net)
4478
4479         * MonoCustomAttrs.cs: Fixed issue with AllowMultiple, as MS
4480         seems to allow multiple attributes with AllowMultiple at
4481         runtime.
4482
4483 2004-05-26  Sebastien Pouliot  <sebastien@ximian.com>
4484
4485         * Byte.cs: Throw an OverflowException for negative numbers.
4486         * Convert.cs: Accept 0x and 0X as prefix when parsing base16 strings.
4487         * Environment.cs: Bumped mono_corlib_version to 20 (rng interface).
4488
4489 2004-05-25  Sebastien Pouliot  <sebastien@ximian.com>
4490
4491         * Array.cs: Fixed possible integer overflow.
4492         * BitConverter.cs: Fixed a possible integer overflow in ToString.
4493         * Guid.cs: Added an internal method to create a random Guid without
4494         using CryptoConfig (which is heavy on first use). This is only used
4495         in S.R.E.ModuleBuilder to speedup MCS compilation.
4496         * String.cs: Fixed reported exception for PadLeft|Right. Fixed 
4497         possible integer overflow in methods that takes index and count
4498         as parameters.
4499
4500 2004-05-25  Zoltan Varga  <vargaz@freemail.hu>
4501
4502         * String.cs: Add new Strcpy icalls which take a char array as 
4503         parameter.
4504
4505 2004-05-25  Atsushi Enomoto <atsushi@ximian.com>
4506
4507         * DateTime.cs : added more invariant format patterns. This should
4508           really fix bug #57656.
4509
4510 2004-05-25 14:14 CET Patrik Torstensson <totte@hiddenpeaks.com>
4511
4512         * BitConverter.cs (ToBoolean): Return true or false instead
4513         of unsafe returing byte as bool. Fixes bug #58874.
4514
4515 2004-05-25  Atsushi Enomoto <atsushi@ximian.com>
4516
4517         * DateTime.cs : In ToString(string, IFormatProvider), use "G" if
4518           string format argument is null.
4519
4520 2004-05-25  Lluis Sanchez Gual  <lluis@ximian.com>
4521
4522         * Version.cs: Rename of data fields to match those in Microsoft.NET.
4523           Patch by PAF@design.ru.
4524
4525 2004-05-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4526
4527         * DateTime.cs: allow double quotes in the formats. Don't set
4528         next_not_digit to true in presence of single or double quotes. Patch by
4529         Martin Probst.
4530
4531 2004-05-24  Zoltan Varga  <vargaz@freemail.hu>
4532
4533         * AppDomainSetup.cs (InitAppDomainSetup): This one returns void.
4534
4535 2004-05-23  Sebastien Pouliot  <sebastien@ximian.com>
4536
4537         * Array.cs: Fixed exception when we try to Clear outside bounds.
4538         * Boolean.cs: Fixed Equals for True!=True (see bugzilla #58874).
4539         * BitConverter.cs: Fixed negative index and integer overflow in
4540         To... methods.
4541         * Buffer.cs: Fixed integer overflow in BlockCopy.
4542
4543 2004-05-22  Sebastien Pouliot  <sebastien@ximian.com>
4544
4545         * Array.cs: Clear can now work on multidimentional arrays.
4546         * IntPtr.cs: We now only accept 32bits values in the long constructor
4547         unless we're on a 64 bits machine.
4548         * UIntPtr.cs: We now only accept 32bits unsigned values in the ulong 
4549         constructor unless we're on a 64 bits machine.
4550
4551 2004-05-22  Duncan Mak  <duncan@ximian.com>
4552
4553         * Convert.cs: The file was mostly in DOS endings already, for the
4554         sake of consistency, converted it all to DOS endings.
4555         (ToType): When value is null, immediately return null and don't
4556         ever throw a NullReferenceException. When conversionType is null,
4557         throw an InvalidCastException. Give a better error message when
4558         attempting to convert to a DBNull as well.
4559
4560 2004-05-21  Sebastien Pouliot  <sebastien@ximian.com>
4561
4562         * Decimal.cs: Fixed To... methods that needs to trunk the integer part
4563         of Decimal (and not use the banker's rounding like Convert.To...).
4564         * Single.cs: Fixed CompareTo and Equals (copied fix from Double) wrt
4565         to NaN compares (see new unit tests).
4566
4567 2004-05-20  Sebastien Pouliot  <sebastien@ximian.com>
4568
4569         * Convert.cs: Added checks for integer overflow for From|ToBase64Char.
4570         Also fixed the case where wide (16 bits) characters were converted to 
4571         bytes.
4572
4573 2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)
4574
4575         * ThreadStaticAttribute.cs
4576         * ContextStaticAttribute.cs
4577         * FlagsAttribute.cs
4578         * ObsoleteAttribute.cs : now that Inherited is false by
4579         default on AttributeUsageAttribute (as it should be) we
4580         need to explicitly set Inherited to false for those
4581         attributes should it be be false.
4582
4583 2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)
4584
4585         * AttributeUsageAttribute.cs: Inherited property should be
4586         true by defaultrs.cs: respect Inherited property, and
4587
4588 2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)
4589
4590         * MonoCustomAttrs.cs: respect Inherited property, and
4591         AllowMultiple property of a CustomAttribute. This fixes
4592         a major issue we had with respect to custom attributes.
4593
4594 2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)
4595
4596         * MonoType.cs: throw ArgumentNullException when type parameter in
4597         GetCustomAttributes(Type, bool) is null
4598
4599 2004-05-18  Sebastien Pouliot  <sebastien@ximian.com>
4600
4601         * Buffer.cs: Added checks for null source and destination. Fix failing
4602         CryptoStream unit test.
4603         * Guid.cs: Fixed thread-safety issue. Simplified implementation to use
4604         pseudo-random numbers to generate GUIDs (as per section 3.4 of the 
4605         spec). This removes the TODO to get the computer MAC address and
4606         the chances to get a duplicate GUID (across different machines).
4607
4608 2004-05-17  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4609
4610         * TimeSpan.cs: Only catch expected exceptions, if we get other exceptions
4611           than OverflowExceptions then something went wrong internally
4612
4613 2004-05-17  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4614
4615         * Char.cs: Fix long standing bug with ToLower/ToUpper not being
4616           culture - sensitive
4617
4618 2004-05-14  Zoltan Varga  <vargaz@freemail.hu>
4619
4620         * Buffer.cs: Optimize BlockCopy.
4621
4622         * Environment.cs: Bump corlib version.
4623
4624 2004-05-14  Atsushi Enomoto <atsushi@ximian.com>
4625
4626         * __ComObject.cs : This class is not regarded as CLSCompliant by csc.
4627           See also bug #58478.
4628
4629 2004-05-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4630
4631         * AppDomainSetup.cs: don't throw an exception if dynamic_base has not
4632         been set. Just return null as MS. Fixes bug #58120.
4633
4634 2004-05-14  Marek Safar  <marek.safar@seznam.cz>
4635
4636         * Boolean.cs, Byte.cs, Char.cs, DBNull.cs, DateTime.cs,
4637           Decimal.cs, Double.cs, Enum.cs, Int16.cs, Int32.cs,
4638           Int64.cs, IntegerFormatter.cs, SByte.cs, Single.cs,
4639           String.cs, UInt16.cs, UInt32.cs, UInt64.cs: Removed
4640           useless [CLSCompliant (false)]
4641
4642
4643 2004-05-13  Sebastien Pouliot  <sebastien@ximian.com>
4644
4645         * __ComObject.cs: To please corcompare (no implementation).
4646
4647 2004-05-13  Zoltan Varga  <vargaz@freemail.hu>
4648
4649         * Environment.cs: Bump corlib version.
4650
4651 2004-05-13  Sebastien Pouliot  <sebastien@ximian.com>
4652
4653         * Environement.cs: Removed two security attributes for CurrentDirectory
4654         that weren't documented (and anyway we don't support them).
4655
4656 2004-05-11  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4657
4658         * Char.cs: Fix exceptions
4659
4660 2004-05-11  Lluis Sanchez Gual  <lluis@ximian.com>
4661
4662         * MissingMemberException.cs: Fix in serialization constructor.
4663
4664 2004-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4665
4666         * Environment.cs: GetGacPath return value is resolved at runtime on
4667         windows.
4668
4669 2004-05-07  Sebastien Pouliot  <sebastien@ximian.com>
4670  
4671         * Convert.cs: ToBase64CharArray method was depending on a bug in 
4672         S.S.C.ToBase64Transform class to work. Added an internal method to 
4673         provide the same functionality (multiple block processing).
4674
4675 2004-05-06  Jackson Harper  <jackson@ximian.com>
4676
4677         * Environment.cs: Make $HOME the personal directory.
4678
4679 2004-05-06  Sebastien Pouliot  <sebastien@ximian.com>
4680  
4681         * Convert.cs: ToBase64String method was depending on a bug in 
4682         S.S.C.ToBase64Transform class to work. Added an internal method to 
4683         provide the same functionality (multiple block processing).
4684
4685 2004-05-05  Sebastien Pouliot  <sebastien@ximian.com>
4686  
4687         * Environment.cs: Completed OSVersion property.
4688         * Version.cs: Added internal CreateFromString() to "try" to build the
4689         best version number form the specified string.
4690  
4691 2004-05-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4692
4693         * TimeSpan.cs: Redid a lot of stuff in TimeSpan from scratch.
4694           Fixes several potential bugs and makes things way faster.
4695
4696 2004-05-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4697
4698         * TimeSpan.cs: Formatting changes
4699
4700 2004-04-29 Ben Maurer  <bmaurer@users.sourceforge.net>
4701
4702         * Activator.cs: change _flags to a const.
4703         * IntegerFormatter.cs: make tables readonly.
4704         * Convert.cs: tables readonly
4705         * DateTime.cs: ditto.
4706         * IntPtr.cs: avoid a cctor.
4707
4708 2004-04-29  Jackson Harper  <jackson@ximian.com>
4709
4710         * MonoType.cs: 
4711         * Type.cs: NET_2_0 now instead of 1_2. 
4712         
4713 2004-04-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4714
4715         * Environment.cs: implemented GetLogicalDrives.
4716
4717 2004-04-28  Miguel de Icaza  <miguel@ximian.com>
4718
4719         * Applied patch from Atsushi Enomoto that allows Synchronized
4720         writers to have a `dont close' flag, this fixes 52094
4721
4722 2004-04-29  Lluis Sanchez Gual  <lluis@ximian.com>
4723
4724         * MonoCustomAttrs.cs, MonoType.cs: Property.GetGetMethod() does not
4725         return the method if it is private (it did until now because of a
4726         bug). Make sure it works as it worked before the fix.
4727         * Type.cs: Implemented FilterAttribute delegate.
4728
4729 2004-04-28  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4730
4731         * IntegerFormatter.cs: Prevent the use of the explicit static constuctor
4732
4733 2004-04-27  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4734
4735         * IntegerFormatter.cs: Made functions internal (needed by other patches)
4736
4737 2004-04-27  Lluis Sanchez Gual  <lluis@ximian.com>
4738
4739         * DateTime.cs: TODO cleaning.
4740         * Delegate.cs: GetObjectData should be virtual.
4741         * IntegerFormatter.cs: Method factorization. I don't want to fix bugs in
4742           30 methods almost identical.
4743         * MulticastDelegate.cs: Implemented GetObjectData.
4744         
4745 2004-04-26  Jackson Harper  <jackson@ximian.com>
4746
4747         * Environment.cs: Things going bump in the night.
4748
4749 2004-04-25  Miguel de Icaza  <miguel@ximian.com>
4750
4751         * Convert.cs (toBase64Transform): Make private.
4752
4753 2004-04-25  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4754
4755         * Convert.cs:
4756         * Decimal.cs:
4757         * DecimalFormatter.cs:
4758         * FloatingPointFormatter.cs: Call invariant Char functions
4759         * Guid.cs: Call invariant Char and String functions
4760         * String.cs: Call invariant Char functions
4761
4762 2004-04-25  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4763
4764         * String.cs: Refactored the Invariant ToXXX into its own internal methods
4765           so they are directly callable within corlib (can prevent early
4766           construction of CultureInfo, InvariantCulture and related classes)
4767
4768 2004-04-24  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4769
4770         * String.cs: Managed impl. of Invariant parts of ToLower, ToUpper
4771         * Char.cs: Managed impl. of Invariant parts of ToLower, ToUpper
4772
4773 2004-04-24  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4774
4775         * String.cs: Check for null values
4776
4777 2004-04-23  Peter Bartok <pbartok@novell.com>
4778
4779         * Environment.cs: GetLogicalDrives now returns "/" instead of null. Gonzalo
4780           will do a better fix in the future, but this way apps can at least use it.
4781
4782 2004-04-23  Sebastien Pouliot  <sebastien@ximian.com>
4783
4784         * Environment.cs: Better support for GetFolderPath (same results as MS 
4785           on Windows).
4786
4787 2004-04-22  Lluis Sanchez Gual  <lluis@ximian.com>
4788
4789         * Activator.cs: Removed TODOs for finished methods.
4790         * AppDomainSetup.cs: When setting a relative path to ApplicationBase, it
4791           must be relative to the current directory, not the temp directory.
4792           Implemented DynamicBase.
4793         * Convert.cs: No need to create a ToBase64Transform instance at every call
4794           to ToBase64CharArray.
4795         * DateTime.cs: Implemented missing methods FromFileTimeUtc and 
4796           ToFileTimeUtc.
4797         * Decimal.cs: Implemented FromOACurrency and ToOACurrency.
4798         * Delegate.cs: Removed class TODO.
4799         * IntegerFormatter.cs: Use Char.IsLetter and Char.IsDigit instead of ad-hoc
4800           methods.
4801         * Type.cs: Removed TODOs for things already implemented.
4802         
4803 2004-04-21  Lluis Sanchez Gual  <lluis@ximian.com>
4804
4805         * Char.cs: Implemented culture-dependent ToLower and ToUpper methods.
4806         * MulticastDelegate.cs: Removed unused code.
4807
4808 2004-04-19  Lluis Sanchez Gual  <lluis@ximian.com>
4809
4810         * AppDomain.cs: Implemented DynamicDirectory and SetDynamicBase.
4811         * Array.cs: Removed some TODOs in CreateInstance and IndexOf.
4812         * BadImageFormatException.cs: TODO reformat.
4813         * DateTime.cs: Implemented GetDateTimeFormats and GetDateTimeFormats.
4814         * DelegateSerializationHolder.cs: Made class internal.
4815         * Enum.cs: Removed TODO for localization, since this is something that has
4816           to be done for all classes.
4817         * Environment.cs: Removed TODO.
4818         * Exception.cs: Changed ToString to use StringBuilder.
4819         * MonoDummy.cs: Made class internal.
4820         * UnitySerializationHolder.cs: Added support for modules.
4821
4822 2004-04-16  David Sheldon <dave-mono@earth.li>
4823
4824         * DecimalFormatter.cs: Don't append a decimal point after the
4825           end of a number. ((decimal)1).ToString("P0") should be "100 %", not
4826           "100. %"
4827
4828 2004-04-09  Miguel de Icaza  <miguel@ximian.com>
4829
4830         * OutOfMemoryException.cs: Removed the call to Locale.GetText from
4831           this.
4832
4833 2004-04-10  Gert Driesen (drieseng@users.sourceforge.net)
4834
4835         * MonoDummy.cs: added MonoTODO to make sure we remove this class
4836           when its no longer needed
4837
4838 2004-04-09  David Sheldon <dave-mono@earth.li>
4839
4840         * Convert.cs: Allow + signs in strings for ToInt32, and
4841           - if it is base 10.
4842
4843 2004-04-08  Atsushi Enomoto  <atsushi@ximian.com>
4844
4845         * Nullable.cs : usingdecl should also be conditional.
4846
4847 2004-04-07  Martin Baulig  <martin@ximian.com>
4848
4849         * Nullable.cs: New file.
4850
4851 2004-04-07  Martin Baulig  <martin@ximian.com>
4852
4853         * Type.cs (Type.GetGenericArguments): Make this abstract.
4854
4855 2004-04-07  Jackson Harper  <jackson@ximian.com>
4856
4857         * Environment.cs: Increase corlib version number.
4858         
4859 2004-04-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4860
4861         * Environment.cs:
4862         (ExpandEnvironmentVariables): on windows, env. vars. are case
4863         insensitive.
4864
4865 2004-04-06  Sebastien Pouliot  <sebastien@ximian.com>
4866
4867         * AppDomain.cs: Added static to [ThreadStatic] _principal field. 
4868         Removed [ThreadStatic] for _principalPolicy (not required).
4869
4870 2004-04-06  Miguel de Icaza  <miguel@ximian.com>
4871
4872         * Guid.cs: Flag as Sequential.
4873
4874 2004-04-02  Dick Porter  <dick@ximian.com>
4875
4876         * String.cs: More sanity checks in Replace().  Fixes bug 55822.
4877
4878 2004-04-02  Sebastien Pouliot  <sebastien@ximian.com>
4879
4880         * Environment.cs: Implement ExpandEnvironmentVariables static method.
4881         Now call the runtime to get the username (fix #56144).
4882
4883 2004-04-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4884
4885         * MonoType.cs: AssemblyQualifiedName now displays culture, version...
4886         Fixes bug #56341.
4887
4888 2004-03-29  Miguel de Icaza  <miguel@ximian.com>
4889
4890         * Console.cs: If we fail to open stdin/stdout/stderr, create
4891         readers with a NullStream.  This can happen if our caller does not
4892         setup stdin/stoud/stderr file handles.  #56158 exposed this, but
4893         it will happen elsewhere.
4894
4895 2004-03-29  Lluis Sanchez Gual <lluis@ximian.com>
4896
4897         * Convert.cs: In ToSingle(double), removed checks for Single.MaxValue
4898         and Single.MinValue. MS.NET don't do it. This fixes bug #56005.
4899         * Guid.cs: Added support for guid strings in the "N" and "P" formats in
4900           the constructor. This fixes bug #54019.
4901
4902 2004-03-23  Lluis Sanchez Gual <lluis@ximian.com>
4903
4904         * FloatingPointFormatter.cs: Made the class thread safe. Had to move some
4905           internal variables to structures that are moved around methods.
4906           Factorized some common formatting code into FormatNumberInternal.
4907           
4908 2004-03-23  Dick Porter  <dick@ximian.com>
4909
4910         * DateTime.cs: Allow any character for DateSeparator when parsing,
4911         except TimeSeparator, a digit or a letter.  Fixes bug 54047.  Also
4912         deleted the previous fix for 54721, because this covers it too.
4913         
4914 2004-03-23  Dick Porter  <dick@ximian.com>
4915
4916         * DateTime.cs: Check the date string for too many digits when
4917         parsing.  Fixes bugs 53023 and 53025.
4918
4919 2004-03-22  Dick Porter  <dick@ximian.com>
4920
4921         * String.cs: Use the provider when converting strings to other
4922         types.
4923
4924         * DateTime.cs: Add MM-dd-yyyy to the list of standard date parsing
4925         formats.  Fixes bug 54721.
4926
4927 2004-03-22  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4928
4929         * Console.cs: Styled, optimized calls
4930         * CrossAppDomainDelegate.cs: Small header fix
4931         * Buffer.cs: Style, improve errors
4932         * BitConverter.cs: Style, improve errors, remove obsolete comment
4933         * Attribute.cs: Style, improve errors, small fix
4934         * Array.cs: Style, improve errors, small fix, added TODOs
4935         * Activator.cs: Style, localized errors, added error checks
4936         * Byte.cs: Style, localized errors, fixed wrong exception parameters
4937         * Char.cs: Style
4938         * Boolean.cs: Style
4939         * AppDomainSetup.cs: Style
4940         * AppDomain.cs: Style, implemented two methods (redirect)
4941
4942 2004-03-21  Jackson Harper  <jackson@ximian.com>
4943
4944         * FloatingPointFormatter.cs: Set precision from number format info
4945         when it is not specified. This fixes bug #54983.
4946         
4947 2004-03-18  Nick Drochak <ndrochak@ieee.org>
4948
4949         * Math.cs: Use IsNaN() method not "x == NaN".
4950
4951 2004-03-16  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4952
4953         * EntryPointNotFoundException.cs
4954         * DuplicateWaitObjectException.cs
4955         * DllNotFoundException.cs
4956         * DivideByZeroException.cs
4957         * ContextMarshalException.cs
4958         * CannotUnloadAppDomainException.cs
4959         * BadImageFormatException.cs
4960         * ArrayTypeMismatchException.cs
4961         * ArithmeticException.cs
4962         * ArgumentOutOfRangeException.cs
4963         * ArgumentNullException.cs
4964         * ArgumentException.cs
4965         * ApplicationException.cs
4966         * AppDomainUnloadedException.cs: Added missing HResult overrides
4967
4968         * BadImageFormatException.cs: Improved/ Fixed implementation
4969
4970 2004-03-15  Sebastien Pouliot  <sebastien@ximian.com>
4971
4972         * Random.cs: Corrected random value when Next is called with a 
4973         negative value. Testing indictae that our results aren't exactly the 
4974         same as MS, we have a +/- 1 (probably rounding errors due to 
4975         different implementation).
4976
4977 2004-03-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4978
4979         * Environment.cs: updated corlib version.
4980
4981 2004-03-15  Lluis Sanchez Gual <lluis@ximian.com>
4982
4983         * Boolean.cs, Byte.cs, Char.cs, Double.cs, Int16.cs, Int32.cs, Int64.cs,
4984           SByte.cs, Single.cs, UInt16.cs, UInt32.cs, UInt64.cs: Renamed internal
4985           field "value" to "m_value", so it is interoperable with MS.NET when 
4986           serializing and deserializing data. Based on the patch from Daniel
4987           Keep.
4988
4989 2004-03-14  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4990
4991         * TypeInitializationException.cs
4992         * SystemException.cs
4993         * StackOverflowException.cs
4994         * RankException.cs
4995         * OverflowExceptionException.cs
4996         * OutOfMemoryException.cs
4997         * NullReferenceException.cs
4998         * NotSupportedException.cs
4999         * NotFiniteNumberException.cs
5000         * InvalidOperationException.cs
5001         * InvalidCastException.cs
5002         * IndexOutOfRangeException.cs
5003         * FormatException.cs
5004         * ExecutionEngineException.cs: improved parameter names
5005
5006 2004-03-13  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5007
5008         * Enum.cs
5009         * EntryPointNotFoundException.cs
5010         * DuplicateWaitObjectException.cs
5011         * DoubleFormatter.cs
5012         * DllNotFoundException.cs
5013         * DivideByZeroException.cs
5014         * DelegateSerializationHolder.cs
5015         * Delegate.cs
5016         * DBNull.cs
5017         * ContextStaticAttribute.cs
5018         * ContextMarshalException.cs
5019         * ContextBoundObject.cs
5020         * CLSCompliantAttribute.cs
5021         * CharEnumerator.cs
5022         * CannotUnloadAppDomainException.cs
5023         * BadImageFormatException.cs
5024         * AttributeUsageAttribute.cs
5025         * AttributeTargets.cs
5026         * AsyncCallback.cs
5027         * AssemblyLoadEventHandler.cs
5028         * AssemblyLoadEventArgs.cs
5029         * ArrayTypeMismatchException.cs
5030         * ArithmeticException.cs
5031         * ArgumentOutOfRangeException.cs
5032         * ArgumentNullException.cs
5033         * ArgumentException.cs
5034         * ArgIterator.cs
5035         * ApplicationException.cs
5036         * AppDomainUnloadedException.cs
5037         * AppDomain.cs: Mono styled, fixed exceptions/ locales
5038           removed excess usings
5039
5040 2004-03-10  Sebastien Pouliot  <sebastien@ximian.com>
5041
5042         * Convert.cs: FromBase64 now ignore some characters (tab, LF, CR and
5043         spaces) which fixed #54939. Changed the way that the length is 
5044         validated (multiple of 4) because the ignored characters must not be
5045         included in the count.
5046
5047 2004-03-10  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5048
5049         * String.cs: Monostyled
5050
5051 2004-03-09  Jackson Harper  <jackson@ximian.com>
5052
5053         * Char.cs: Only use a byte for numeric data.
5054         
5055 2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5056
5057         * TypedReference.cs: Added missing Attributes
5058         * ParamArrayAttribute.cs: Small style fix
5059         * OperatingSystem.cs: Added .Net 1.1 member
5060
5061 2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5062
5063         * FieldAccessException.cs
5064         * FormatException.cs
5065         * InvalidCastException.cs
5066         * InvalidOperationException.cs
5067         * MemberAccessException.cs
5068         * MethodAccessException.cs
5069         * MissingFieldException.cs: Locale strings
5070         * MissingMemberException.cs: Locale strings
5071         * MissingMethodException.cs: Locale strings
5072         * NotFiniteNumberException.cs
5073         * NotImplementedException.cs
5074         * NotSupportedException.cs
5075         * NullReferenceException.cs
5076         * ObjectDisposedException.cs
5077         * OutOfMemoryException.cs
5078         * OverflowExceptionException.cs
5079         * PlatformNotSupportedException.cs
5080         * RankException.cs: Added missing HResult overrides
5081
5082 2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5083
5084         * RuntimeTypeHandle.cs
5085         * RuntimeMethodHandle.cs
5086         * RuntimeFieldHandle.cs: Implemented serialization (partially untested)
5087
5088 2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5089
5090         * EventArgs.cs
5091         * Exception.cs
5092         * ExecutionEngineException.cs
5093         * FieldAccessException.cs
5094         * FormatException.cs
5095         * GC.cs
5096         * Guid.cs
5097         * IndexOutOfRangeException.cs
5098         * IntPtr.cs
5099         * InvalidCastException.cs
5100         * InvalidOperationException.cs
5101         * InvalidProgramException.cs
5102         * IServiceProvider.cs
5103         * LoaderOptimization.cs
5104         * LoaderOptimizationAttribute.cs
5105         * MarshalByRefObject.cs
5106         * Math.cs
5107         * MemberAccessException.cs
5108         * MethodAccessException.cs
5109         * MissingFieldException.cs
5110         * MissingMemberException.cs
5111         * MissingMethodException.cs
5112         * MultiCastDelegate.cs
5113         * MulticastNotSupportedException.cs
5114         * NonSerializedAttribute.cs
5115         * NotFiniteNumberException.cs
5116         * NotImplementedException.cs
5117         * NotSupportedException.cs
5118         * NullReferenceException.cs
5119         * ObjectDisposedException.cs
5120         * ObsoleteAttribute.cs
5121         * OperatingSystem.cs
5122         * OutOfMemoryException.cs
5123         * OverflowExceptionException.cs
5124         * PlatformID.cs
5125         * PlatformNotSupportedException.cs
5126         * Random.cs
5127         * RankException.cs
5128         * ResolveEventArgs.cs
5129         * ResolveEventHandler.cs
5130         * RuntimeFieldHandle.cs
5131         * RuntimeMethodHandle.cs
5132         * RuntimeTypeHandle.cs: Mono styled, fixed exceptions/ locales
5133           removed excess usings
5134
5135 2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5136
5137         * SystemException.cs: Exceptions set the HResult
5138         * TypeLoadException.cs: Exceptions set the HResult, fixed wrong exception usage
5139         * SByte.cs: Implemented two missing methods, fix wrong parameters for ArgumentNullException
5140
5141 2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5142
5143         * TypedReference.cs
5144         * TypeLoadException.cs
5145         * TypeInitializationException.cs
5146         * TypeCode.cs
5147         * TimeZone.cs
5148         * ThreadStaticAttribute.cs
5149         * SystemException.cs
5150         * STAThreadAttribute.cs
5151         * StackOverflowException.cs
5152         * SingleFormatter.cs
5153         * Single.cs
5154         * SerializableAttribute.cs: Mono styled, fixed exceptions/ locales
5155           removed excess usings
5156
5157 2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5158
5159         * UnauthorizedAccessException.cs: Exceptions set the HResult
5160         * UInt64.cs: Implemented two missing methods
5161         * UInt32.cs: Fix wrong parameters for ArgumentNullException, simpler convert
5162         * UInt16.cs: Fix wrong parameters for ArgumentNullException, simpler convert
5163
5164 2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5165
5166         * WeakReference.cs
5167         * Void.cs
5168         * Version.cs
5169         * ValueType.cs
5170         * UnitySerializationHolder.cs
5171         * UnhandledExceptionEventHandler.cs
5172         * UnauthorizedAccessException.cs
5173         * UIntPtr.cs
5174         * UInt64.cs
5175         * UInt32.cs
5176         * UInt16.cs: Mono styled, Locale.GetText fixes, msg fixes
5177
5178 2004-03-04  Lluis Sanchez Gual <lluis@ximian.com>
5179
5180         * Environment.cs: Bump corlib version.
5181
5182 2004-03-04  Jackson Harper  <jackson@ximian.com>
5183
5184         * Char.cs: New managed implementation. Modified patch by Andreas Nahr.
5185         
5186 2004-02-27  Lluis Sanchez Gual <lluis@ximian.com>
5187
5188         * String.cs: Concat() fixed crash when one of the arguments is an object
5189           whose ToString() method returns null.
5190         * TypeLoadException.cs: Added some serialization fiels, needed for
5191           compatibility with MS.NET.
5192
5193 2004-02-23 Ben Maurer  <bmaurer@users.sourceforge.net>
5194
5195         * String.cs (Equals): Speed up this method by avoiding Array
5196          Bounds Checks and by comparing by 32 bit words rather than 16 bit chars.
5197
5198         This gives between 0x (for 1 char) and >2x (for large strings)
5199         factor of improvement.
5200
5201         A big thanks to Miguel, who suggested the integer compares.
5202
5203 2004-02-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5204
5205         * MonoType.cs: use the binder in GetPropertyImpl.
5206
5207 2004-02-22  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5208
5209         * Math.cs: MonoStyled, replaced space with tabs,
5210           speedup of some methods by avoiding method calls
5211
5212 2004-02-18  Atsushi Enomoto  <atsushi@ximian.com>
5213
5214         * Char.cs : optimized IsSeparator(), IsWhiteSpace() and IsDigit().
5215           (Moved from InternalCall to Managed code).
5216
5217 2004-02-17  Martin Baulig  <martin@ximian.com>
5218
5219         * MonoType.cs (GetConstructors): Renamed the interncall to
5220         GetConstructors_internal(), made it internal and added a `Type
5221         reflected_type' argument to it.
5222         (GetEvents, GetFields): Likewise.
5223         (GetMethodsByName): Added `Type reflected_type' argument.
5224         (GetPropertiesByName): Likewise.
5225
5226 2004-02-16  Jackson Harper  <jackson@ximian.com>
5227
5228         * FloatingPointFormater.cs: Allow precision to be up to the number
5229         of decimals without rounding.
5230         
5231 2004-02-14  Zoltan Varga  <vargaz@freemail.hu>
5232
5233         * Delegate.cs (Equals): Do not compare method_ptr, since it might
5234         point to a trampoline.
5235
5236 2004-02-12  Jackson Harper  <jackson@ximian.com>
5237
5238         * AppDomainSetup.cs: If relative paths are used they should be
5239         rooted in the temp directory.
5240         
5241 2004-02-11  Marek Safar  <marek.safar@seznam.cz>
5242
5243         * Type.cs (FilterNameIgnoreCase_impl): Added extra check for speedup.
5244
5245 2004-02-10  Zoltan Varga  <vargaz@freemail.hu>
5246
5247         * AppDomain.cs (Load): Check that assemblyRef.Name is not empty, to
5248         avoid an assert in the runtime.
5249
5250 2004-02-08  Duncan Mak  <duncan@ximian.com>
5251
5252         * Convert.cs (ToType): Always let a Convert.ChangeType call
5253         succeed if the source object is already of the destination type.
5254
5255         Patch by Ian MacLean (ianm@activestate.com).
5256
5257 2004-02-05  Sebastien Pouliot  <sebastien@ximian.com>
5258
5259         * AppDomain.cs: Implemented SetPrincipalPolicy and SetThreadPrincipal.
5260
5261 2004-02-02  Zoltan Varga  <vargaz@freemail.hu>
5262
5263         * Environment.cs: Bump corlib version.
5264
5265 2004-02-02  Sebastien Pouliot  <sebastien@ximian.ca>
5266
5267         * DateTime.cs: Corrected support for "Z" in the mask (Parse). This
5268         fix bug #53461.
5269
5270 2004-01-27  Sebastien Pouliot  <spouliot@videotron.ca>
5271
5272         * Exception.cs: Changed ToString to remove the \n when no stack trace
5273         is present (which fixed a unit test for SecurityException). Changed
5274         all \n to Environment.NewLine.
5275
5276 2004-01-27  Lluis Sanchez Gual <lluis@ximian.com>
5277
5278         * ContextBoundObject.cs: Removed TODO.
5279
5280 2004-01-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5281
5282         * TimeSpan.cs: fixed bug #52075. Days (int) don't rely on TotalDays
5283         (double), which might round up.
5284
5285 2004-01-19  Jackson Harper <jackson@ximian.com>
5286
5287         * FloatingPointFormatter.cs: Use the default decimal digits count
5288         if they are not specified. This fixes bug #52927.
5289         
5290 2004-01-19  Zoltan Varga  <vargaz@freemail.hu>
5291
5292         * Environment.cs: Bump version number.
5293
5294 2004-01-19  Lluis Sanchez Gual  <lluis@ximian.com>
5295
5296         * Type.cs: Added internal call for IsInstanceOfType. The old implementation
5297         uses IsAssignableFrom(o.GetType()), which is not always valid for 
5298         transparent proxies (because GetType will not return the type of the remote
5299         object if its assembly is not present).
5300
5301 2004-01-18  David Sheldon <dave-mono@earth.li>
5302
5303   * FloatingPointFormatter.cs: Skip the decimal point if we have an 
5304     integer mantassa. So: 1E+15, rather than 1.E+15.
5305
5306 2004-01-18  David Sheldon <dave-mono@earth.li>
5307
5308         * Array.cs (GetValue/SetValue): Throw NullRef exception like .NET 1.1, 
5309         even though docs say it should be an ArgumentNull. Two test cases now
5310   pass. See also nickd's commit of 2003-12-24.
5311
5312 2004-01-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5313
5314         * Environment.cs: increased corlib version.
5315
5316 2004-01-14  Lluis Sanchez Gual <lluis@ximian.com>
5317
5318         * MonoCustomAttrs.cs: Removed attribute cache. Attribute instances can't
5319         be reused because they could be modified. This fixes bug #52655.
5320
5321 2004-01-12  Patrik Torstensson
5322
5323         * Environment.cs: Bump corlib version number due to new StringBuilder
5324         
5325         * String.cs: New internal method to support the new StringBuilder that
5326         uses the string as a buffer (until ToString is called)
5327
5328 2004-01-12  Zoltan Varga  <vargaz@freemail.hu>
5329
5330         * Environment.cs: Bump corlib version number for real this time.
5331         
5332         * AppDomain.cs (LoadAssembly): Pass the assembly name as a string to
5333         the runtime, so it can take into account the Culture etc.
5334
5335         * Environment.cs: Bump corlib version number.
5336         
5337 2004-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5338
5339         * MonoType.cs: GetMethods renamed to GetMethodsByName. It takes a
5340         new parameter with the method name and a boolean for ignoring case.
5341         Removed some string comparisons no longer needed.
5342
5343 2004-01-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5344
5345         * MonoType.cs: GetProperties renamed to GetPropetiesByName. It takes a
5346         new parameter with the property name and a boolean for ignoring case.
5347         Fixes bug #52753.
5348
5349 2004-01-11  David Sheldon <dave-mono@earth.li>
5350
5351         * DateTime.cs: Correct processing of formats with multiple '-'s, fixing
5352         bug 52274.
5353
5354 2004-01-10  Zoltan Varga  <vargaz@freemail.hu>
5355
5356         * AppDomain.cs: Keep track of type resolve and assembly resolve 
5357         events in progress to prevent infinite recursion.
5358
5359 2004-01-06  Miguel de Icaza  <miguel@ximian.com>
5360
5361         * Console.cs: Test for UTF-8 being present anywhere on the
5362         string, also do ToUpper instead of ToLower, which will work even
5363         around the ICU bug with different locales (#52065), and addresses #52101
5364
5365 2004-01-05  Zoltan Varga  <vargaz@freemail.hu>
5366
5367         * Environment.cs: Bump version.
5368
5369 2003-12-24 Ben Maurer  <bmaurer@users.sourceforge.net>
5370
5371         * Type.cs (IsNotPublic): One would normally assume that
5372         IsNotPublic == !IsPublic, but this is not the case (note to MS,
5373         make better names ;-). Fixes #52547, `Type.IsNotPublic not 
5374         correct for Nested types'
5375
5376 2003-12-24  Nick Drochak  <ndrochak@ieee.org>
5377
5378         * Array.cs (CreateInstance): Throw NullRef exception like .NET 1.1, 
5379         even though docs say it should be an ArgumentNull. Sent email to MS
5380         about this "bug".
5381
5382 2003-12-23  Lluis Sanchez Gual  <lluis@ximian.com>
5383
5384         * Exception.cs: Several changes to make it compatible with MS.NET (needed
5385         for remoting interoperability): set a default value for hresult, added 
5386         initialization of class_name, serialization field RemoteStackTrace must
5387         be RemoteStackTraceString, added ser. field ExceptionMethod.
5388
5389         * IndexOutOfRangeException.cs: Added serialization constructor.
5390
5391 2003-12-22  Bernie Solomon  <bernard@ugsolutions.com>
5392
5393         * Int32 (Parse):
5394           Int64 (Parse): Fix overflow checking for AllowHexSpecifier
5395
5396 2003-12-20  Zoltan Varga  <vargaz@freemail.hu>
5397
5398         * MonoType.cs (GetMethodImpl): Only call FindMostDerivedMatch if the
5399         user supplied no parameter info, but not when the user supplied an
5400         empty parameter list. This fixes IKVM.
5401
5402         * Environment.cs: Bump corlib version.
5403
5404 2003-12-19  Dick Porter  <dick@ximian.com>
5405
5406         * String.cs: Added Compare shortcut for length==0.
5407
5408 2003-12-17  Zoltan Varga  <vargaz@freemail.hu>
5409
5410         * Environment.cs: Bump corlib version.
5411
5412 2003-12-17  Dick Porter  <dick@ximian.com>
5413
5414         * String.cs: Fix StartsWith and EndsWith when the argument is the
5415         empty string.  Fixes bug 52283.
5416
5417 2003-12-16  Zoltan Varga  <vargaz@freemail.hu>
5418
5419         * Environment.cs (HasShutdownStarted): Implement.
5420
5421 2003-12-15  Zoltan Varga  <vargaz@freemail.hu>
5422
5423         * Environment.cs (HasShutdownStarted): Make this static under NET 1.1.
5424         
5425         * Environment.cs: Bump version number.
5426
5427 2003-12-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5428
5429         * DateTime.cs: don't bail out with that year out of range error on
5430         stuff like "MM/dd/yyyy HH:MM:ss".
5431
5432 2003-12-13  Zoltan Varga  <vargaz@freemail.hu>
5433
5434         * Environment.cs: Make it a const instead.
5435         
5436         * Environment.cs: Make version field static.
5437
5438 2003-12-10  Zoltan Varga  <vargaz@freemail.hu>
5439
5440         * Type.cs: Make DefaultBindingFlags protected.
5441
5442         * Environment.cs: Applied patch from Todd Berman (tbermann@gentoo.org).
5443         Add new GacPath property + its associated icall.
5444
5445 2003-12-09 Anirban Bhattacharjee <banirban@novell.com>
5446
5447         * DateTime.cs : Bugs fixed (41845, 51422)
5448         * MonoType.cs : Exception message changed 
5449
5450 2003-12-08  Martin Baulig  <martin@ximian.com>
5451
5452         * Type.cs (MakeByRefType): New public method.
5453
5454 2003-12-08  Zoltan Varga  <vargaz@freemail.hu>
5455
5456         * Environment.cs: Add a version number for the corlib-runtime interface
5457         to make it easier to diagnose problems resulting from a mismatch 
5458         between the two.
5459
5460 2003-12-08  Patrik Torstensson   <p@rxc.se>
5461
5462         * Type.cs (GetMethod): Check type arguments within array
5463         * MonoType.cs (GetMethodImpl): Handle methods with a new slot
5464         (same signature but different classes (derived level)
5465
5466 2003-12-07  Zoltan Varga  <vargaz@freemail.hu>
5467
5468         * Type.cs (MakeArrayType): Add argument checking.
5469
5470 2003-12-06  Dick Porter  <dick@ximian.com>
5471
5472         * String.cs: Don't use CompareInfo for non-culture-sensitive
5473         IndexOf and LastIndexOf methods.
5474
5475 2003-12-06  Ravindra  <rkumar@novell.com>
5476
5477         * DateTime.cs: Made Parse(string, IFormatProvider) method to
5478         use second argument. Fixed bug #51464.
5479
5480 2003-12-04  Martin Baulig  <martin@ximian.com>
5481
5482         * Type.cs (Type.MakeArrayType): New public method.
5483
5484 2003-12-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5485
5486         * Buffer.cs:
5487         (BlockCopy): make the exception thrown helpful.
5488
5489 2003-12-03  Dick Porter  <dick@ximian.com>
5490
5491         * String.cs: Calling Replace on an empty string returns itself.
5492
5493 2003-12-03  Zoltan Varga  <vargaz@freemail.hu>
5494
5495         * MonoType.cs: Get rid of get_type_info, use a separate icall for
5496         each property instead.
5497
5498 2003-12-02  Dick Porter  <dick@ximian.com>
5499
5500         * Decimal.cs: Fix NumberFormatInfo lookup.  Patch by
5501         Mohammad DAMT (mdamt@cdl2000.com), fixes bug 51443.
5502
5503 2003-12-01  Dick Porter  <dick@ximian.com>
5504
5505         * String.cs: Make Compare, IndexOf, LastIndexOf, StartsWith,
5506         Replace, ToLower, ToUpper and Equals use the correct CultureInfo.
5507
5508 2003-11-28  Dick Porter  <dick@ximian.com>
5509
5510         * Type.cs: 
5511         * MonoType.cs: 
5512         * Enum.cs: 
5513         * Boolean.cs: Do string compares with the Invariant culture.
5514
5515 2003-11-27 Ben Maurer  <bmaurer@users.sourceforge.net>
5516
5517         * Array.cs: make the enumerator ICloneable
5518
5519 2003-11-27 Ben Maurer  <bmaurer@users.sourceforge.net>
5520
5521         * Decimal.cs (ToXXX): Call Convert.ToXXX.
5522
5523 2003-11-26  Zoltan Varga  <vargaz@freemail.hu>
5524
5525         * AppDomain.cs: Applied patch from ztashev@openlinksw.co.uk (Zdravko Tashev). 
5526         Implement Load(byte[]) methods.
5527
5528         * BadImageFormatException.cs: Fix ToString.
5529
5530 2003-11-24  Zoltan Varga  <vargaz@freemail.hu>
5531
5532         * MonoType.cs: Make Standard|HasThis match Standard in GetMethod and
5533         GetConstructor, as done by MS.
5534
5535 2003-11-19  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5536
5537         * FloatingPointFormatter.cs: Removed some unused variables to prevent csc compiler warnings
5538
5539 2003-11-18  Lluis Sanchez Gual  <lluis@ximian.com>
5540
5541         * TypeInitializationException.cs: Added missing serialization constructor.
5542
5543 2003-11-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5544
5545         * AppDomainSetup.cs: Don't add an extra '/' at the end of 
5546         ApplicationBase. The tests pass now with mono.
5547
5548 2003-11-18  Zoltan Varga  <vargaz@freemail.hu>
5549
5550         * ValueType.cs: New optimized implementation for Equals and GetHashCode.
5551
5552 2003-11-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5553
5554         * Environment.cs: use Directory in CurrentDirectory property.
5555         We were not throwing any exception when setting the directory to an
5556         invalid path.
5557
5558 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5559
5560         * Array.cs:
5561         * Delegate.cs: implemented 1.1 stuff.
5562
5563         * Enum.cs:
5564         * IntPtr.cs: removed extra attribute.
5565         * PlatformID.cs: added WinCE.
5566
5567 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5568
5569         * ValueType.cs:
5570         (Equals): compare the fields of structs too.
5571         (GetHashCode): combine the hash code of all the fields.
5572         Fixes bug #50901 (will remove the icall in a couple of days).
5573
5574 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5575
5576         * Array.cs: fixed Clear for non-zero bounded arrays. Fixes bug #50968.
5577
5578 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5579
5580         * DateTime.cs: handle century when we try to parse 4-digit years and
5581         only 2 digits are present. Fixes bug #49394.
5582
5583 2003-11-13  Miguel de Icaza  <miguel@ximian.com>
5584
5585         * Console.cs: On utf-8 consoles, use unmarked output.
5586
5587 2003-11-13  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5588
5589         * IAppDomainSetup.cs:
5590         * _AppDomain.cs: 
5591         * Object.cs:
5592         * Type.cs: Added missing attribute
5593
5594 2003-11-12 Lluis Sanchez Gual <lluis@ximian.com>
5595
5596         * Environment.cs: Added internal method for getting the path to 
5597         machine.config.
5598         
5599 2003-11-12 Jackson Harper <jackson@ximian.com>
5600
5601         * Environment.cs: Add MyMusic and MyPictures to the SpecialFolder
5602         enum. This fixes the SWF build.
5603         
5604 2003-11-12  Miguel de Icaza  <miguel@ximian.com>
5605
5606         * PlatformID.cs: Remove Unix platform, we cant expose constants
5607         that are not in the framework.
5608
5609         * OperatingSystem.cs: Adjust for the breakage.
5610
5611         * RuntimeMethodHandle.cs: Fix signature.
5612
5613         * Double.cs: Fix signature of TryParse.
5614
5615         * String.cs (Concat (object, object, object, object)): Add missing method.
5616
5617         * OperatingSystem.cs: Removed Equals, GetHashCode, they were not
5618         in the .NET Framework.
5619
5620         * Enum.cs: Hide constructor.  
5621
5622         Fix ToUint16 to be explicitly implemented.
5623
5624         * Console.cs: Add couple of extra missing methods (Write and
5625         WriteLine overloaded)
5626
5627 2003-11-11  Miguel de Icaza  <miguel@ximian.com>
5628
5629         * AppDomain.cs, Activator.cs: New unimplmented entry points from
5630         1.1 (Com activation related).
5631         
5632         * Exception.cs: Formatting.
5633         
5634         * IServiceProvider.cs: Add ComVisible (true).
5635
5636         * AppDomainSetup.cs: Add a couple more properties from .NET 1.1 
5637
5638 2003-11-03  Lluis Sanchez Gual <lluis@ximian.com>
5639
5640         * AppDomain.cs: Added some null checks in Load methods. This fixes bug
5641           #50356.
5642
5643 2003-11-01  Zoltan Varga  <vargaz@freemail.hu>
5644
5645         * AppDomain.cs: Make the SetDomain icalls private + call InternalInvoke
5646         on MonoMethod instead of Invoke.
5647
5648 2003-11-01  Pedro Martínez Juliá  <yoros@wanadoo.es>
5649
5650         * DateTime.cs: Fixed Add* methods handling. Now it works properly
5651         with extreme values (there is a bug with Overflow and Underflow in
5652         long type).
5653
5654 2003-10-31  Pedro Martínez Juliá  <yoros@wanadoo.es>
5655
5656         * DateTime.cs: Fixed a few format bugs.
5657
5658 2003-10-31  Zoltan Varga  <vargaz@freemail.hu>
5659
5660         * AppDomain.cs (InternalPushDomainRef): New icalls.
5661
5662         * AppDomain.cs (InvokeInDomain): New method to execute code in a 
5663         different appdomain.
5664
5665 2003-10-27  Zoltan Varga  <vargaz@freemail.hu>
5666
5667         * AppDomain.cs: Fix prototype of InternalIsFinalizingForUnload.
5668
5669 2003-10-25  Zoltan Varga  <vargaz@freemail.hu>
5670
5671         * AppDomain.cs (IsFinalizingForUnload): Implement.
5672
5673         * AppDomain.cs (Unload): Move the notification of OnUnload listeners
5674         to unmanaged code.
5675
5676 2003-10-25  Martin Baulig  <martin@ximian.com>
5677
5678         * MonoType.cs: Don't make this sealed.
5679
5680 2003-10-24  Zoltan Varga  <vargaz@freemail.hu>
5681
5682         * AppDomain.cs: Add InternalInvokeInDomain[ByID] icalls.
5683
5684 2003-10-24  Pedro Martínez Juliá  <yoros@wanadoo.es>
5685
5686         * DateTime.cs: When handling '-' as a date separator, MS.NET uses
5687         the same symbol in the parse (not DateTimeFormatInfo.DateSeparator).
5688
5689 2003-10-22  Dick Porter  <dick@ximian.com>
5690
5691         * DateTime.cs: Handle '-' as a date separator when parsing formats.
5692
5693 2003-10-20  Duncan Mak  <duncan@ximian.com>
5694
5695         * Delegate.cs (CreateDelegate): Avoid creating an extra Type array
5696         and merge the two iterations into one.
5697
5698 2003-10-15  Zoltan Varga  <vargaz@freemail.hu>
5699
5700         * TypedReference.cs: Add new field used by the runtime.
5701
5702 2003-10-15  Martin Baulig  <martin@ximian.com>
5703
5704         * Type.cs (Type.DeclaringMethod): For a generic method's type
5705         parameter, return this method - otherwise, return null.
5706
5707 2003-10-14  Martin Baulig  <martin@ximian.com>
5708
5709         The generics API has changed in the spec since it was added here;
5710         these modifications make it match the spec again.
5711
5712         * Type.cs
5713         (GetGenericParameters): Renamed to `GetGenericArguments'.
5714         (HasGenericParameters): Renamed to `HasGenericArguments'.
5715         (HasUnboundGenericParameters): Renamed to `ContainsGenericParameters'.
5716         (IsGenericTypeDefinition): New property.
5717         (IsUnboundGenericParameter): Renamed to `IsGenericParameter'.
5718
5719         * MonoType.cs (ContainsGenericParameters): Implement this here;
5720         this is no interncall anymore.
5721
5722 2003-10-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5723
5724         * Delegate.cs: add the method name to the exception when it cannot be
5725         bound.
5726         * Exception.cs: fix nullref in Source.
5727
5728 2003-10-10  Zoltan Varga  <vargaz@freemail.hu>
5729
5730         * Array.cs: Add argument checking to GetValue and SetValue.
5731
5732 2003-10-09  Miguel de Icaza  <miguel@ximian.com>
5733
5734         * DateTime.cs: Patch from Chris Turchin: the DateTime.MaxValue
5735         should not be TimeSpan.MaxValue, because it overflow.  Set this to
5736         be MAX_VALUE_TICKS
5737
5738 2003-10-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5739
5740         * MonoCustomAttrs.cs: from_cache is now thread-safe. Yeah, I got a
5741         duplicate entry exception.
5742
5743 2003-10-08 Ben Maurer  <bmaurer@users.sourceforge.net>
5744
5745         * DateTime.cs (ToString): Total rewrite, fixes #49358.
5746
5747 2003-10-03  Zoltan Varga  <vargaz@freemail.hu>
5748
5749         * AppDomain.cs: Change accessibility of DoTypeResolve to fix build.
5750
5751 2003-10-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5752
5753         * Enum.cs:
5754         (Equals): check that the object is an Enum before comparing the types.
5755
5756 2003-09-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5757
5758         * Array.cs: reduced xsp allocated memory by 1/2.
5759
5760 2003-09-25  Martin Baulig  <martin@ximian.com>
5761
5762         * Type.cs (Type.IsGenericTypeDefinition): Removed this method
5763         since it was identical to GetGenericTypeDefinition().
5764         (Type.IsGenericInstance): New property.
5765
5766 2003-09-24  Duncan Mak  <duncan@ximian.com>
5767
5768         * Math.cs (Abs): Fix double Locale.GetText bug reported by
5769         davejp@volny.cz. This fixes #48788.
5770
5771 2003-09-14  Pedro Martínez Juliá  <yoros@wanadoo.es>
5772
5773         * FloatingPointFormatter.cs: Add the necessary castings to char
5774         conversions.
5775
5776 2003-09-13  Pedro Martínez Juliá  <yoros@wanadoo.es>
5777
5778         * FloatingPointFormatter.cs: Make the method calls more functional
5779         for protecting the values from different threads (make it more
5780         thread safe).
5781
5782 2003-09-13  Pedro Martínez Juliá  <yoros@wanadoo.es>
5783
5784         * FloatingPointFormatter.cs: Fix a bug with the negative value of
5785         count parameter.
5786
5787 2003-09-12  Pedro Martínez Juliá  <yoros@wanadoo.es>
5788
5789         * FloatingPointFormatter.cs: Applied a lot of improvements in string
5790         construction, make use of Append/Insert with the "count" parameter.
5791     Thanks to Ben Maurer.
5792
5793 2003-09-10  Pedro Martínez Juliá  <yoros@wanadoo.es>
5794
5795         * FloatingPointFormatter.cs: Fix a bug with Custm Format.
5796
5797         * FloatingPointFormatter.cs: Fix a little bug I've introduced the
5798         last change.
5799
5800 2003-09-10  Pedro Martínez Juliá  <yoros@wanadoo.es>
5801
5802         * DoubleFormatter.cs: A few optimizations. Now, only one object
5803         is created to convert all double numbers.
5804
5805         * SingleFormatter.cs: A few optimizations. Now, only one object
5806         is created to convert all float numbers.
5807
5808         * FloatingPointFormatter.cs: Split the "number type parameters" from
5809         the "numver value and format parameters". The first ones are in the
5810         constructor and the others are in a method.
5811
5812 2003-09-09  Zoltan Varga  <vargaz@freemail.hu>
5813
5814         * Array.cs: Added argument checking to some NET_1_1 methods.
5815
5816 2003-09-04  Martin Baulig  <martin@ximian.com>
5817
5818         * Type.cs (GetGenericTypeDefinition): Make this method virtual.
5819
5820 2003-08-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5821
5822         * Array.cs: added the new overloaded CreateInstance, GetValue, SetValue
5823         taking 'longs'. All tests pass.
5824
5825 2003-08-26 Ben Maurer  <bmaurer@users.sourceforge.net>
5826
5827         * Exception.cs: Add ClassInterface attr. Implement TargetSite and
5828         Source. Remove MonoTODO attributes (class is 100% done). Also
5829         passes all Rotor tests for Exception!
5830
5831 2003-08-26 Ben Maurer  <bmaurer@users.sourceforge.net>
5832
5833         * Enum.cs: Remove [MonoTODO]'s that had been completed.
5834
5835 2003-08-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5836
5837         * String.cs: fixed bug #47802.
5838
5839 2003-08-21 Ben Maurer  <bmaurer@users.sourceforge.net>
5840
5841         * String.cs: Created method FormatHelper that does formatting,
5842         using a StringBuilder.
5843
5844 2003-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5845
5846         * Array.cs: patch by lb@lb.ods.org that fixes bug #47707.
5847
5848 2003-08-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5849
5850         * Delegate.cs: CreteDelegate (Type, MethodInfo) only supports static
5851         methods under MS.
5852
5853 2003-08-11  Duncan Mak  <duncan@ximian.com>
5854
5855         * Environment.cs (Version): Return the same numbers as the MS
5856         implementation.
5857
5858 2003-08-10  Miguel de Icaza  <miguel@ximian.com>
5859
5860         * Array.cs: Applied patch from Thong (Tum) Nguyen;  Removed
5861         replicated tests, and have a routine that does the heavy lifting.
5862
5863 2003-08-08  Lluis Sanchez Gual <lluis@ximian.com>
5864
5865         * DateTime.cs: Fixed DoParse. It was calling the wrong constructor
5866           of DateTime.
5867         * Environment.cs: return $HOME for ApplicationData folder.
5868
5869 2003-08-04  Duncan Mak  <duncan@ximian.com>
5870
5871         * FloatingPointFormatter.cs (Normalize): Apply a patch from Aleksey
5872         Demakov <avd@openlinksw.com> to fix formatting for Big power of 10
5873         floating point values. This fixes bug #46175.
5874
5875         * Convert.cs (ToUInt16): Throw an OverflowException correctly, as
5876         noted by c5n4kh6u02@sneakemail.com in
5877         http://bugzilla.ximian.com/show_bug.cgi?id=43098.
5878
5879 Sat Aug  2 13:01:46 BST 2003 Malte Hildingson <malte@amy.udd.htu.se>
5880
5881         * Double.cs: added icall Double.AssertEndianity.
5882
5883 Fri Aug 1 16:47:17 CEST 2003 Paolo Molaro <lupus@ximian.com>
5884
5885         * Type.cs, MonoType.cs: implemented generic-specific methods.
5886
5887 2003-07-29  Miguel de Icaza  <miguel@ximian.com>
5888
5889         * Buffer.cs: Add new internal MemCopy call.
5890
5891         Removed the above.
5892
5893 Tue Jul 29 12:13:16 CEST 2003 Paolo Molaro <lupus@ximian.com>
5894
5895         * Type.cs, MonoType.cs, ArgIterator.cs: pass the handles values
5896         to icalls, to avoid special cases in some call conventions.
5897
5898 2003-07-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5899
5900         * Enum.cs: added Serializable attribute.
5901
5902 2003-07-25  Duncan Mak  <duncan@ximian.com>
5903
5904         * AppDomain.cs (Equals):
5905         (GetHashCode): Removed because they do not need to be defined
5906         here.
5907
5908 2003-07-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5909
5910         * TypeLoadException.cs: removed unused fields. TypeName returns "" if
5911         cannot even get the type.
5912
5913 2003-07-24  Miguel de Icaza  <miguel@ximian.com>
5914
5915         * Type.cs: Added generics stubs.
5916
5917 2003-07-23  Duncan Mak  <duncan@ximian.com>
5918
5919         * Environment.cs (SpecialFolder): Added 'Desktop' and 'MyComputer'
5920         as values for NET_1_1.
5921         (GetFolderPath): Return the empty string ("") for values of
5922         SpecialFolder that have no corresponding equivalents in
5923         Linux. Return "$HOME/Desktop" for SpecialFolder.DesktopDirectory
5924         and "$HOME" for SpecialFolder.Personal.
5925
5926         * IntPtr.cs (GetObjectData): Mark it as an interface
5927         implementation, instead of a public method.
5928
5929         * Guid.cs (NewGuid): Remove MonoTODOAttribute.
5930
5931         * TypeLoadException.cs (GetObjectData):
5932         Create stubs for the fields that are being serialized.
5933
5934         * UIntPtr.cs: Removed erroneous CLSCompliantAttributes.
5935
5936 2003-07-23  Lluis Sanchez Gual <lluis@ximian.com>
5937         
5938         * Enum.cs: Fixed enum formatting. For flag enums, if one of
5939           the flags is unnamed, ToString() returns the integer value.
5940
5941 2003-07-22  Jerome Laban <jlaban@wanadoo.fr>
5942
5943         * Guid.cs: Fixed ToString (), was producing incorrect string.
5944
5945 2003-07-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5946
5947         * AppDomainSetup.cs: fixed bug #46609.
5948
5949 Thu Jul 17 17:28:27 CEST 2003 Paolo Molaro <lupus@ximian.com>
5950
5951         * MonoType.cs: use an icall for IsPrimitiveImpl ().
5952
5953 Thu Jul 17 15:23:17 CEST 2003 Paolo Molaro <lupus@ximian.com>
5954
5955         * Guid.cs: faster ToString ().
5956
5957 2003-07-15  Pedro Martínez Juliá  <yoros@wanadoo.es>
5958
5959         * FloatingPointFormatter.cs: Few changes for get working Rotor
5960         tests.
5961
5962 2003-07-13  Zoltan Varga  <vargaz@freemail.hu>
5963
5964         * Type.cs (IsAssignableFrom): Implement this as an icall since the
5965         runtime already includes the neccessary logic.
5966
5967 2003-07-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5968
5969         * AppDomainSetup.cs: remove the "file://" prefix from ApplicationBase
5970         if it's present and get the full path for non-Uri paths.
5971
5972 2003-07-2  Lluis Sanchez Gual <lluis@ximian.com>
5973
5974         * DateTime.cs: Fixed formatting of fractions of second.
5975
5976 2003-06-30  Zoltan Varga  <vargaz@freemail.hu>
5977
5978         * Console.cs: Turn off buffering for the streams returned by
5979         OpenStandardOutput () and OpenStandardError () if the buffer size is 0.
5980
5981 2003-06-28  Lluis Sanchez Gual <lluis@ximian.com>
5982
5983         * Random.cs: Changed behavior of Random to match MS.NET. When Next is
5984           called with maxvalue==0 or minvalue==maxvalue, MS.NET internally generates
5985           a new random number (although it is not needed), while mono did not. 
5986           As a result, the sequence of random numbers could be different for the
5987           same seed.
5988
5989 Thu Jun 26 16:06:35 CEST 2003 Paolo Molaro <lupus@ximian.com>
5990
5991         * FloatingPointFormatter.cs: use dec_len2 as default precision.
5992
5993 2003-06-26  Lluis Sanchez Gual <lluis@ximian.com>
5994
5995         * DateTime.cs: Modified constructor. Check for valid value of TimeSpan must
5996           be done after the correspondig UTC offset has been applied.
5997
5998 2003-06-26  Lluis Sanchez Gual <lluis@ximian.com>
5999
6000         * Object.cs: Object must have the Serializable attribute.
6001         * DateTime.cs: Fixed _DoParse() so it correctly applies the utc offset
6002           to the resulting date. Also fixed _ToString so now correctly formates the
6003           UTC offset.
6004
6005 Wed Jun 18 19:22:22 CEST 2003 Paolo Molaro <lupus@ximian.com>
6006
6007         * Enum.cs: fix race in cache (bug#41841).
6008
6009 Wed Jun 18 18:52:11 CEST 2003 Paolo Molaro <lupus@ximian.com>
6010
6011         * FloatingPointFormatter.cs: if the precision is not specified, use
6012         the default precision for the data type.
6013
6014 Wed Jun 18 18:11:30 CEST 2003 Paolo Molaro <lupus@ximian.com>
6015
6016         * Array.cs: throw ArgumentOutOfRangeException in Copy if needed
6017         (patch by tum@veridicus.com (Thong (Tum) Nguyen)).
6018
6019 2003-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6020
6021         * MonoType.cs: don't throw nullref when the return type for a property
6022         is specified and the property doesn't have a get accessor.
6023
6024 2003-06-10  Duncan Mak  <duncan@ximian.com>
6025
6026         * Array.cs (CreateInstance): Fixed a typo. It should throw
6027         ArgumentNullException instead of ArgumentException.
6028
6029 2003-06-09  Duncan Mak  <duncan@ximian.com>
6030
6031         * Array.cs: Revert the last revert. I fixed it.
6032         (Sort): Put a try-catch block around qsort, and wrap whatever
6033         Exception we get into a InvalidOperationException.
6034
6035 2003-06-08 Jackson Harper <jackson@latitudegeo.com>
6036
6037         * Array.cs: Revert last patch, it broke some other functionality.
6038                 
6039 2003-06-08  Duncan Mak  <duncan@ximian.com>
6040
6041         * Array.cs: Throw more exceptions. This fixes the errors we see
6042         from the Rotor testsuite.
6043
6044         (CreateInstance): Throw ArgumentNullException when the input are
6045         null. Throw ArgumentOutOfRangeException when bounds + length is
6046         greater than Int32.MaxValue.
6047         (LastIndexOf): Throw ArgumentOutOfRangeException if index is outside
6048         the valid range of indices of array.
6049         (Sort): Throw InvalidOperationException when comparer is null and
6050         none of the elements in keys implements IComparable.
6051
6052 2003-06-08  Duncan Mak  <duncan@ximian.com>
6053
6054         * Array.cs (CreateInstance): Throw a TypeLoadException if the
6055         Length of the input array 'lengths' is greater than 255 so that we
6056         won't see the g_assert that is in mono_array_class_get in class.c.
6057
6058         This fixes bug #44304.
6059
6060 2003-06-05  Nick Drochak  <ndrochak@gol.com>
6061
6062         * UnitySerializataionHolder.cs: Cleanups according to class status page
6063
6064 Wed Jun 4 16:59:39 CEST 2003 Paolo Molaro <lupus@ximian.com>
6065
6066         * ArgIterator.cs, TypedReference.cs, RuntimeArgumentHandle.cs,
6067         RuntimeTypeHandle.cs: implemented the needed stuff to handle
6068         vararg calls.
6069
6070 2003-06-02  Sebastien Pouliot  <spouliot@videotron.ca>
6071
6072         * Random.cs: New implementation based on Knuth ran3 to fix #43597.
6073         See http://www.library.cornell.edu/nr/bookcpdf/c7-1.pdf. Commited
6074         for Ben Maurer after review and testing.
6075
6076 2003-05-28  Ben Maurer <bmaurer@users.sourceforge.net>
6077         
6078         * Array.cs: Added better argument checking to Array.Sort ()
6079         * DBNull.cs: Made the conversions throw like they do in MS.
6080
6081 2003-05-24  Philip Van Hoof  <me@freax.org>
6082
6083         * Math.cs: Add the MS.NET 1.1 methods (BigMul, DivRem, DivRem).
6084
6085 2003-05-21  Pedro Martínez Juliá  <yoros@wanadoo.es>
6086
6087         * FloatingPointFormatter.cs: Take care with the explicit precision
6088         and round the number to that precision.
6089
6090         * DoubleFormatter.cs: Adapt to the two level precision (15 - 17).
6091
6092         * SingleFormatter.cs: Adapt to the two level precision (7 - 8).
6093
6094 2003-05-20  Philip Van Hoof <me@freax.org>
6095
6096         * DateTime.cs (FromOADate, GetDateTimeFormats, ToOADate):
6097         Implemented.
6098
6099 2003-05-20  Zoltan Varga  <vargaz@freemail.hu>
6100
6101         * AppDomainSetup.cs: Added new field which is used to notify the
6102         runtime that the search path has changed.
6103
6104 2003-05-18  Pedro Martínez Juliá  <yoros@wanadoo.es>
6105
6106         * FloatingPointFormatter.cs: Fixed NullReferenceException bug I've
6107         introduced the last change I've done.
6108
6109 2003-05-17  Ben Maurer  <bmaurer@users.sourceforge.net>
6110
6111         * Array.cs: Fixed SyncRoot to behave like MS (return this). Removed 
6112         MonoTODO from SyncRoot (because fixed) and IsSynchronized (it was
6113         behaving correctly).
6114         
6115 2003-05-17  Pedro Martínez Juliá  <yoros@wanadoo.es>
6116
6117         * FloatingPointFormatter.cs: Fixed little format mismatches.
6118
6119 2003-05-16  Pedro Martínez Juliá  <yoros@wanadoo.es>
6120
6121         * FloatingPointFormatter.cs: Fixed "-0" result emited.
6122
6123 2003-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6124
6125         * AppDomain.cs: Added null argument check in Load().
6126         * Activator.cs: fixed bug #39926.
6127
6128 2003-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6129
6130         * Enum.cs: fixed bugs #41522 and #42879.
6131
6132 2003-05-12  Zoltan Varga  <vargaz@freemail.hu>
6133
6134         * String.cs: Tweak IndexOf and LastIndexOf to match specification and
6135         undocumented MS behaviour.
6136
6137 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6138
6139         * Activator.cs: applied patch for bug #39926. Thanks to Jean Marc and
6140         Jaime.
6141
6142 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6143
6144         * String.cs: fixed bug #41411 and another similar problem in
6145         LastIndexOf (string).
6146
6147 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6148
6149         * String.cs: patch by Jean Marc <jean-marc.andre@polymtl.ca> that fixes
6150         bug #42695.
6151
6152 2003-05-09  Zoltan Varga  <vargaz@freemail.hu>
6153
6154         * MulticastDelegate.cs (GetInvocationList): Avoid ArrayList 
6155         construction if the delegate list only has one element.
6156
6157 2003-05-01  Pedro Martínez Juliá  <yoros@wanadoo.es>
6158
6159         * Environment.cs: Changed the method GetFolderPath because it must
6160         return at least a directory name (not null).
6161
6162         * Convert.cs: In ToType, if the destination type is unknown, try to
6163         cast the value to object (then, the calling method will downcast it
6164         to the type it wants).
6165
6166 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6167
6168         * Enum.cs: fixed bug #41522.
6169
6170 Tue Apr 29 13:58:16 CEST 2003 Paolo Molaro <lupus@ximian.com>
6171
6172         * Enum.cs: protect with the lock also the lookup (bug #41841).
6173
6174 Tue Apr 29 13:24:32 CEST 2003 Paolo Molaro <lupus@ximian.com>
6175
6176         * MonoType.cs: allow a null name if InvokeMember is called with
6177         BindingFlags.CreateInstance set.
6178
6179 2003-04-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6180
6181         * Enum.cs: reverted my previous patch.
6182
6183 2003-04-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6184
6185         * Enum.cs: fixed bug #41841.
6186
6187 2003-04-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6188
6189         * MonoType.cs:
6190         (GetPropertyImpl): handle BindingFlags.IgnoreCase.
6191
6192 2003-04-22  Pedro Martínez Juliá  <yoros@wanadoo.es>
6193
6194         * FloatingPointFormatter.cs: Little fixes for get the same results
6195         as MS.NET and show a message when something goes wrong with the
6196         parser of Custom Formats.
6197
6198 2003-04-22  Nick Drochak  <ndrochak@gol.com>
6199
6200         * Double.cs (ToString):
6201         * Single.cs (ToString): Handle case where param is a CultureInfo.
6202
6203 2003-04-18  Zoltan Varga  <vargaz@freemail.hu>
6204
6205         * Object.cs ValueType.cs: Make the Object::GetHashCode() and 
6206         ValueType::Equals() icalls static non-virtual, so they can be called
6207         by the code in RuntimeHelpers.
6208
6209 2003-04-18  Miguel de Icaza  <miguel@ximian.com>
6210
6211         * Delegate.cs (operator ==): Do not crash if the second argument
6212         is null.  Bug fix submitted by Juan Cri.
6213
6214 2003-04-18  Eduardo Garcia Cebollero <kiwnix@yahoo.es>
6215
6216         * Array.cs: Deleted the exception in Array.Initialize(), it looks
6217         like the method do nothing for C#, is still a MonoTODO until
6218         we find a compiler that uses that.
6219
6220 2003-04-14  Miguel de Icaza  <miguel@ximian.com>
6221
6222         * Delegate.cs (Delegate): Seems like a typo, we were checking the
6223         a field rather than the argument 
6224
6225         * MonoType.cs: Make GetNestedType an external method implementation.
6226
6227 2003-04-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6228
6229         * Enum.cs: fixed bug #41294.
6230
6231 2003-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6232
6233         * DateTime.cs: fixes bug #40910, part 2.
6234
6235 2003-04-11  Dietmar Maurer  <dietmar@ximian.com>
6236
6237         * String.cs (Equals): avoid the internal call, code cleanups
6238
6239 2003-04-11  Alan Tam <Tam@SiuLung.com>
6240
6241         * Convert.cs: fixed bug #41085.
6242
6243 2003-04-10  Lluis Sanchez Gual <lluis@ideary.com>
6244
6245         * AppDomain.cs: Added internal method for getting process guid.
6246
6247 2003-04-09  Ville Palo <vi64pa@kolumbus.fi>
6248
6249         * Array.cs: Little fix to compare () method.
6250         
6251 2003-04-09  Zoltan Varga  <vargaz@freemail.hu>
6252
6253         * String.cs (Equals): Add trivial optimization.
6254
6255 2003-04-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6256
6257         * DateTime.cs: fixed bug #40910.
6258
6259 2003-04-05  Miguel de Icaza  <miguel@ximian.com>
6260
6261         * Console.cs: Make stderr, stdout and stdin use synchronized
6262         versions of the their readers/writers.
6263
6264 2003-04-04  Dick Porter  <dick@ximian.com>
6265
6266         * Version.cs: Make operator== and operator!= cope with null
6267         objects.  Didn't change operator<, operator<=, operator> or
6268         operator>= because its not meaningful to use those to compare
6269         against null, and throwing a NullReferenceException is probably
6270         the best thing to do there anyway.
6271
6272         Fixes bug 40720.
6273
6274 2003-04-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6275
6276         * AppDomain.cs: fixed InvalidCastException.
6277
6278 2003-03-30  Zoltan Varga  <vargaz@freemail.hu>
6279
6280         * Array.cs (Copy): Call FastCopy() earlier to avoid the expensive
6281         type checks and let it decide whenever a fast copy is possible.
6282
6283 2003-03-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6284
6285         * MonoType.cs:
6286         (GetMethodImpl): support BindingFlags.IgnoreCase flag. Fixes bug #40322.
6287
6288 2003-03-25  Zoltan Varga  <vargaz@freemail.hu>
6289
6290         * Activator.cs (CreateInstance): Call GetConstructor with the right
6291         arguments so the nonPublic argument is handled correctly.
6292
6293 2003-03-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6294
6295         * Type.cs: fixed bug #40123.
6296
6297 2003-03-22  Pedro Martínez Juliá  <yoros@wanadoo.es>
6298
6299         * FloatingPointFormatter.cs: Fixed some bugs for get the same
6300         results than MS.NET. Added simple error recovering, now ToString
6301         will return a general format if there is any exception in the
6302         process of formatting. This make the library more robust while the
6303         formatters are refined.
6304
6305 2003-03-16  Pedro Martínez Juliá  <yoros@wanadoo.es>
6306
6307         * FloatingPointFormatter.cs: Added support for group separators.
6308
6309 2003-03-16  Pedro Martínez Juliá  <yoros@wanadoo.es>
6310
6311         * Single.cs:
6312         * Double.cs: Apply changes of .ToString methods.
6313         * SingleFormatter.cs:
6314         * DoubleFormatter.cs: Simple wrappers to FloatingPointFormatter.
6315         * FloatingPointFormatter.cs: New class. Implementation of double and
6316         single formatters. It is unified now and parametrized with precission
6317         values.
6318
6319 2003-03-15  Lluis Sanchez Gual <lluis@ideary.com>
6320
6321         * AppDomain.cs: fixes bugs #39380 and #39331.
6322
6323 2003-03-06  Nick Drochak  <ndrochak@gol.com>
6324
6325         * TimeSpan.cs (Negate): Throw exception when value is MinValue.
6326
6327 2003-03-04  Dick Porter  <dick@ximian.com>
6328
6329         * Single.cs:
6330         * Double.cs: Temporarily reverted the Double and Single ToString()
6331         change, because it broke nunit.
6332
6333
6334 2003-03-04  Pedro Martínez Juliá  <yoros@wanadoo.es>
6335
6336         * Double.cs: Changed ToString method. Added NumberFormatInfo support
6337         with DoubleFormatter class.
6338         * Single.cs: Changed ToString method. Added NumberFormatInfo support
6339         with SingleFormatter class.
6340         * DoubleFormatter.cs: New class with Double formatting functions.
6341         * SingleFormatter.cs: New class with Single formatting functions.
6342
6343 2003-03-03  Lluis Sanchez Gual <lluis@ideary.com>
6344
6345         * Activator.cs: Added support for activation using activation attributes.
6346         * AppDomain.cs: Added internal method to get the default context from the runtime.
6347
6348 2003-02-28  Elan Feingold  <efeingold@mn.rr.com>
6349
6350         * DateTime.cs: FileTime is expressed in Universal time, and as such must
6351         be converted before subtracting the magic offset.
6352         * DateTime.cs: Strings in the format "2003-02-27T10:05:03-11:00" (note
6353         the timezone at the end) *must* be parsed by DateTime.Parse() for
6354         compatibility with Microsoft.
6355
6356 2003-02-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6357
6358         * Attribute.cs:
6359         * MonoCustomAttrs.cs: fix for the regression test failure (see bug
6360         #38238).
6361
6362         * IntPtr.cs: added serialization .ctor
6363
6364 2003-02-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6365
6366         * AppDomain.cs: check for null in Unload and changed method name.
6367
6368 2003-02-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6369
6370         * MonoCustomAttrs.cs: fixed bug #38238.
6371
6372 2003-02-17  Martin Baulig  <martin@ximian.com>
6373
6374         * Exception.cs (Exception.ToString): Print a newline between the
6375         exception message and the stack trace.
6376
6377 2003-02-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6378
6379         * AppDomain.cs: implemented GetCurrentThreadId ().
6380
6381 2003-02-14  Patrik Torstensson
6382
6383         * Exception.cs: Fixed message output formating
6384
6385 2003-02-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6386
6387         * Int32.cs:
6388         (Parse): ignore everything after a \0 (MS parses: "512\0hola" as 512).
6389
6390 2003-02-12  Miguel de Icaza  <miguel@ximian.com>
6391
6392         * Type.cs: IsClass should return false for Enumerations
6393
6394 2003-02-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6395
6396         * MonoCustomAttrs.cs: return the correct array type in the short case.
6397         Fixes bug #37818.
6398
6399 2003-02-08  Pedro Martíenz Juliá  <yoros@wanadoo.es>
6400
6401         * Math.cs: Fix a few methods (like Round) and add with comments the
6402         new methods: BigMul and DivRem that were in ECMA specs.
6403
6404 2003-02-07  Patrik Torstensson
6405
6406         * Exception.cs: Fixed formating
6407
6408 2003-02-05  Patrik Torstensson
6409
6410         * AppDomain.cs: Partly fixed the unload method 
6411         
6412 2003-02-04  Patrik Torstensson
6413
6414         * AppDomain.cs: Fixed lease issue with appdomain
6415
6416 2003-02-04  Lluis Sanchez Gual <lluis@ideary.com>
6417
6418         * MarshalByRefObject.cs: Implemented GetLifetimeService() and 
6419           InitializeLifetimeService().
6420
6421 2003-02-03  Patrik Torstensson
6422
6423         * AppDomain.cs: New internalcalls for handling domain/context switches
6424         * AppDomain.cs (CreateDomain): Return transparant proxy for appdomain object
6425
6426 2003-02-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6427
6428         * AppDomain.cs: implemented AppendPrivatePath, ClearPrivatePath
6429         and ClearShadowCopyPath and fixed GetType ().
6430
6431         * Attribute.cs: clean up.
6432
6433         * Console.cs: removed UnixConsoleEncoding. Use Default.
6434
6435 2003-02-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6436
6437         * Attribute.cs: fixed all IsDefined overloads. Gotta fix
6438         GetCustomAttributes later.
6439
6440 2003-01-31  Patrik Torstensson
6441
6442         * Buffer.cs: Changed access level of BlockCopyInternal
6443
6444 Thu Jan 30 19:54:30 CET 2003 Paolo Molaro <lupus@ximian.com>
6445
6446         * String.cs, IntegerFormatter.cs: use const where appropriate.
6447
6448 2003-01-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6449
6450         * MonoCustomAttrs.cs: fixed GetBase () for Type. Thanks to Zoltan for
6451         reporting.
6452
6453 2003-01-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6454
6455         * MonoCustomAttrs.cs: fixed shortcut in GetCustomAttributes.
6456         The argument ICustomAttributeProvider can be of other types different
6457         from Type. Handle it.
6458
6459 2003-01-28  Zoltan Varga  <vargaz@freemail.hu>
6460
6461         * DateTime.cs: fix FromFileTime so the time returned by 
6462         File::GetLastModificationTime etc. is in the correct timezone.
6463
6464 2003-01-28  Patrik Torstensson
6465         * Exception.cs: reverted formating/endline changes (sorry guys)
6466
6467 2003-01-28  Patrik Torstensson
6468
6469         * MarshalByRefObject.cs: implemented GetObjectIdentity
6470         * Exception.cs: added support for remote exceptions
6471
6472 2003-01-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6473
6474         * DateTime.cs: fixed bug #37225.
6475
6476 2003-01-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6477
6478         * Enum.cs: Clone the arrays in GetNames and GetValues. Thanks lupus!
6479
6480 2003-01-27  Zoltan Varga  <vargaz@freemail.hu>
6481
6482         * AppDomain.cs: Added DoTypeResolve method which will be called by
6483         the runtime to raise TypeResolve events.
6484
6485 2003-01-27  Duncan Mak  <duncan@ximian.com>
6486
6487         * Enum.cs (ToType): Implement this using Convert.ToType.
6488
6489 2003-01-21  Miguel de Icaza  <miguel@ximian.com>
6490
6491         * Math.cs: Remove Pow's implementation body as it was wrong.  The
6492         C code does the right thing.  The code was trying to handle a
6493         number of cases, and that was incorrect.
6494
6495 2003-01-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6496
6497         * CharEnumerator.cs: fix to Current by crainaj@hotmail.com. Closes
6498         bug #37113.
6499
6500 2003-01-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6501
6502         * Enum.cs: added caching to GetInfo.
6503
6504 2003-01-23  Dick Porter  <dick@ximian.com>
6505
6506         * Environment.cs (System): Implemented ExitCode
6507
6508 2003-01-23  Zoltan Varga  <vargaz@freemail.hu>
6509
6510         * Type.cs (IsInstanceOfType): fixed regression caused by the change
6511         to IsSubclassOf().
6512
6513 2003-01-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6514
6515         * MonoType.cs: re-added lines that were removed in the previous commit.
6516
6517 2003-01-16  Lluis Sanchez Gual <lsg@ctv.es>
6518
6519         * Type.cs: corrected property IsSerializable. It should always return
6520         true for enums and delegates
6521         * MonoType.cs: added serialization support.
6522         * Delegate.cs: added serialization support.
6523         * DBNull.cs: added serialization support.
6524         * UnitySerializationHolder.cs: supports serialization of Assembly,
6525         MonoType and DBNull.
6526         * DelegateSerializationHolder.cs: added.
6527
6528 2003-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6529
6530         * Exception.cs: changed default message to match MS one.
6531
6532 2003-01-12  Patrik Torstensson <totte@race-x-change.com>
6533
6534         * String.cs: Fixed bug with CompareOrdinal
6535
6536 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6537
6538         * Enum.cs: implements IFormattable.
6539
6540 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6541
6542         * AppDomain.cs: implemented DoCallBack method.
6543         * MonoType.cs:
6544         (GetConstructorImpl): when the flag is BindingFlags.Default, set it to
6545         Public, Instance.
6546
6547         NUnit2 tests start moving.
6548
6549 2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6550
6551         * Activator.cs: fixed bug #36052. Also added checks to avoid trying to
6552         instantiate an abstract class.
6553
6554 2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6555
6556         * Type.cs:
6557         (IsSubclassOf): return false when null. Use != instead of Equals.
6558
6559 2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6560
6561         * Type.cs: fixed IsSubclassOf. Patch from Zoltan Varga.
6562
6563 Fri Jan 3 20:18:51 CET 2003 Paolo Molaro <lupus@ximian.com>
6564
6565         * MonoType.cs: fixed Namespace property for nested types.
6566
6567 Fri Jan 3 16:18:27 CET 2003 Paolo Molaro <lupus@ximian.com>
6568
6569         * MonoCustomAttrs.cs: create properly typed arrays when returning
6570         arrays of attributes of a given type.
6571
6572 Fri Jan 3 11:10:14 CET 2003 Paolo Molaro <lupus@ximian.com>
6573
6574         * MonoType.cs: fixed MemberType property for nested types.
6575
6576 2003-01-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6577
6578         * String.cs: fixed bug #36209.
6579
6580 2002-12-20 Lluis Sanchez Gual <lsg@ctv.es>
6581
6582         * Activator.cs: implemented method GetObject.
6583
6584 2002-12-28  Marcus Urban <mathpup@mylinuxisp.com>
6585
6586         * Activator.cs: Since the documentation indicates the method
6587         either succeeds or throws one of the listed exceptions, we weren't
6588         expecting that CreateInstance might be returning null.
6589
6590         For more information on the bug, see http://bugs.ximian.com/show_bug.cgi?id=36109
6591
6592 2002-12-20 Lluis Sanchez Gual <lsg@ctv.es>
6593
6594         * MarshalByRefObject.cs: implemented CreateObjRef.
6595
6596 2002-12-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6597
6598         * DateTime.cs: fixed bug #30076.
6599         * TimeZone.cs: provide the parameter name in a exception.
6600
6601 2002-12-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6602
6603         * DecimalFormatter.cs: fixed bug #35560.
6604
6605 Wed Dec 4 16:04:28 CET 2002 Paolo Molaro <lupus@ximian.com>
6606
6607         * Type.cs: implemented GetInterfaceMap (needs an updated runtime).
6608
6609 2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6610
6611         * Array.cs: use Object.Equals (obj, obj) to compare objects to avoid
6612         nulls. Fixes #34909.
6613
6614 2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6615
6616         * AppDomain.cs: DoAssemblyResolve now returns when one of the handlers
6617         returns a non-null assembly.
6618
6619 2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6620
6621         * MulticastDelegate.cs: make GetInvocationList work for more than 1
6622         delegate.
6623
6624 2002-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6625
6626         * MulticastDelegate.cs: implemented GetInvocationList. I'll check later
6627         if this is the correct order of invocation.
6628
6629 2002-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6630
6631         * Type.cs: changed the signature of internal_from_name. Modified
6632         the overloads of GetType to use it and check the typeName argument.
6633         Implemented FindInterfaces.
6634
6635 2002-11-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6636
6637         * MarshalByRefObject.cs: undo latest changes. It breaks the build by
6638         some obscure reasons (try make -f makefile.gnu using a corlib which has
6639         the modified version).
6640
6641 2002-11-26  Miguel de Icaza  <miguel@ximian.com>
6642
6643         * String.cs (Concat): Reduce the number of compares required. 
6644
6645 Mon Nov 18 17:54:22 CET 2002 Paolo Molaro <lupus@ximian.com>
6646
6647         * Activator.cs: throw a MissingMethodException if the default
6648         constructor is not found in CreateInstance.
6649
6650 2002-11-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6651
6652         * String.cs:
6653         (Equals (str, str)): use 'as' instead of casting to object.
6654         (Equals (obj)): check the length of the strings (until now,
6655         "Hello".Equals ((object) "Hellow World!) was true!).
6656
6657 2002-11-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6658
6659         * MonoType.cs: implemented GetEvent (name, flags).
6660
6661 2002-11-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6662
6663         * AppDomain.cs: implemented a couple of methods called from the runtime
6664         to fire AssemblyLoad and AssemblyResolve events.
6665
6666 2002-10-31  Dick Porter  <dick@ximian.com>
6667
6668         * Environment.cs: MonoIO methods now have an error parameter
6669
6670 2002-10-29  Zoltan Varga  <vargaz@freemail.hu>
6671
6672         * Enum.cs: Added support for whitespaces in Enum:Parse().
6673
6674 2002-10-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6675
6676         * Type.cs: fixed GetProperty (string, Type []) and removed get_property
6677         internal call. Closes bug #32992.
6678
6679 2002-10-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6680
6681         * Exception.cs: display the inner exception, if any, in ToString ().
6682
6683 2002-10-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6684
6685         * Environment.cs: fixed StackTrace property.
6686
6687 2002-10-16  Nick Drochak  <ndrochak@gol.com>
6688
6689         * Enum.cs (Parse): Then fix the code so that it works too.
6690
6691 2002-10-15  Nick Drochak  <ndrochak@gol.com>
6692
6693         * Enum.cs (Parse): Use unsigned casts to avoid compiler warnings.
6694
6695 2002-10-12  Nick Drochak  <ndrochak@gol.com>
6696
6697         * IntegerFormatter.cs: Fix compiler warnings.
6698
6699 2002-10-11  Tim Haynes <thaynes@openlinksw.com>
6700
6701         * Type.cs (GetConstructors): Use the correct flags.
6702
6703 2002-10-09  Nick Drochak  <ndrochak@gol.com>
6704
6705         * IntegerFormatter.cs: Suppress insignificant leading zeros
6706
6707 Fri Sep 27 15:06:29 CEST 2002 Paolo Molaro <lupus@ximian.com>
6708
6709         * MonoCustomAttrs.cs: applied patch by "Si Jingnan"
6710         <stonewell@21cn.com> to return also derived types.
6711
6712 2002-09-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6713
6714         * Activator.cs: little fix in CreateInstance (Type, bool).
6715
6716 2002-09-19  Duncan Mak  <duncan@ximian.com>
6717
6718         * Array.cs (CopyTo): Revert back to 1.40, this is stopping
6719         I18N/Common from building right now.
6720
6721 2002-09-19  Nick Drochak  <ndrochak@gol.com>
6722
6723         * Array.cs (CopyTo): Account for Object type and base (primitive) types
6724         * Type.cs (IsAssignableFrom): return false for a null parameter
6725
6726 2002-09-19  Nick Drochak <ndrochak@gol.com>
6727
6728         * Array.cs (CopyTo): Check that source type can be cast automatically
6729         to the destination type.
6730
6731 2002-09-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6732
6733         * Type.cs: implemented IsAssignableFrom, DefaultBinder and
6734         GetDefaultMembers.
6735
6736 2002-09-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6737
6738         * Char.cs: implemented ToString (char)
6739         * IntegerFormatter.cs: made it internal.
6740
6741 2002-09-13  Nick Drochak  <ndrochak@gol.com>
6742
6743         * Enum.cs (Format): handle the "d" format for both signed and unsigned
6744         underlying types.
6745
6746 2002-09-12  Dick Porter  <dick@ximian.com>
6747
6748         * UIntPtr.cs: Remove the [StructLayout(LayoutKind.Auto)]
6749         attribute, as there doesn't appear to be any struct
6750         layout-depending code here (and corcompare says it should be
6751         LayoutKind.Sequential)
6752
6753         * Decimal.cs: Stub out missing methods, add
6754         [DecimalConstantAttribute] to the constant fields (as shown by
6755         corcompare).
6756
6757         * LocalDataStoreSlot.cs: 
6758         * Environment.cs: 
6759         * Char.cs: 
6760         * Array.cs: Stub out missing methods.
6761
6762         * TypedReference.cs: 
6763         * ArgIterator.cs: Stub out
6764
6765         * AppDomainSetup.cs: 
6766         * AppDomain.cs: Stub out missing methods, add missing
6767         ClassInterface(ClassInterfaceType.None) attribute.
6768
6769 2002-09-12  Nick Drochak  <ndrochak@gol.com>
6770
6771         * Double.cs (ToString): Throw exception when "X" format is passed in.
6772
6773 Wed Sep 11 15:26:34 CEST 2002 Paolo Molaro <lupus@ximian.com>
6774
6775         * MonoType.cs: implemented Module property.
6776
6777 Wed Sep 11 12:49:51 CEST 2002 Paolo Molaro <lupus@ximian.com>
6778
6779         * MonoType.cs, Type.cs: implemented InvokeMember.
6780
6781 Wed Sep 11 11:06:43 CEST 2002 Paolo Molaro <lupus@ximian.com>
6782
6783         * Delegate.cs: check the type passed to CreateDelegate is a Delegate
6784         type. Check the method signature matches.
6785
6786 Sat Sep 7 10:16:52 CEST 2002 Paolo Molaro <lupus@ximian.com>
6787
6788         * RuntimeMethodHandle.cs: implemented GetFunctionPointer().
6789
6790 2002-09-06  Miguel de Icaza  <miguel@ximian.com>
6791
6792         * Console.cs: Specify an encoder, otherwise we will get the UTF8
6793         encoder that by default emits the byte markers.
6794
6795 Fri Sep 6 20:14:04 CEST 2002 Paolo Molaro <lupus@ximian.com>
6796
6797         * Delegate.cs: look also for non-public methods until we have the
6798         security checks in place.
6799
6800 Fri Sep 6 12:20:06 CEST 2002 Paolo Molaro <lupus@ximian.com>
6801
6802         * MonoType.cs: consider also the full name in GetInterface.
6803
6804 Fri Sep 6 12:11:28 CEST 2002 Paolo Molaro <lupus@ximian.com>
6805
6806         * MonoType.cs: implemented GetMembers, GetConstructorImpl and
6807         GetMethodImpl using the binder.
6808         * Type.cs: GetConstructorImpl/GetConstructor fixes.
6809
6810 2002-09-03  Jonathan Pryor <jonpryor@vt.edu>
6811         * Enum.cs: Get rid of warning CS0162.
6812
6813 2002-09-04  Miguel de Icaza  <miguel@ximian.com>
6814
6815         * Double.cs, Single.cs, Char.cs, Boolean.cs: Use internal for the
6816         actual value instead of public.
6817
6818         * LocalDataStoreSlot.cs: Make constructor internal.
6819
6820         * Int16.cs, UInt16.cs, Int32.cs, UInt32.cs, Int64.cs, UInt64.cs,
6821         SByte.cs, Byte.cs, Char.cs: Use internal for the actual value
6822         instead of public.
6823
6824 2002-09-03  Jonathan Pryor <jonpryor@vt.edu>
6825         * Enum.cs: Fixed Enum.Format so that the "x" format specifier would work
6826                    properly.
6827
6828 2002-08-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6829
6830         * DateTime.cs: fixed buglet.
6831
6832 Tue Aug 27 16:39:47 CEST 2002 Paolo Molaro <lupus@ximian.com>
6833
6834         * MonoType.cs: speedup access to common data.
6835
6836 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6837
6838         * Double.cs: implemented TryParse.
6839
6840         * Math.cs: PowImpl is now private.
6841
6842         * MissingFieldException.cs: implemented Message.
6843
6844         * RuntimeMethodHandle.cs: stubbed GetFunctionPointer.
6845
6846         * _AppDomain.cs: Uncommented ToString.
6847
6848 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6849
6850         * Type.cs:
6851         (IsValueTypeImpl): it's virtual, not abstract. Implemented.
6852
6853 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6854
6855         * ArgumentException.cs: use the field instead of the property for
6856         param_name.
6857
6858         * ArgumentOutOfRangeException.cs: modified Message.
6859
6860         * DateTime.cs: 
6861         (_DoParse): throw out of range exception for year. Removed check
6862         for month (it's done in the constructor).
6863
6864 2002-08-21  Miguel de Icaza  <miguel@ximian.com>
6865
6866         * Environment.cs: Implemented OSVersion property.
6867
6868 2002-08-21  Dietmar Maurer  <dietmar@ximian.com>
6869
6870         * Exception.cs: set stack_trace to null
6871
6872 Wed Aug 21 13:02:20 CEST 2002 Paolo Molaro <lupus@ximian.com>
6873
6874         * AppDomain.cs: implemented ToString().
6875
6876 2002-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6877
6878         * AppDomain.cs: securityInfo can be null in CreateDomain.
6879
6880 2002-08-19  Dick Porter  <dick@ximian.com>
6881
6882         * MonoType.cs: Add a space before the Assembly name in
6883         AssemblyQualifiedName (needed for resource files so the MS runtime
6884         can load types)
6885
6886 2002-08-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6887
6888         * AppDomain.cs: parameter name when throwing ArgumentNullException.
6889
6890         * ArgumentException.cs: modified Message to do what MS does.
6891
6892         * ArgumentNullException.cs: don't use {0} in message.
6893
6894         * Exception.cs: use Message property in ToString ().
6895
6896 2002-08-14  Cesar Octavio Lopez Nataren <cesar@ciencias.unam.mx>
6897
6898         * WeakReference.cs: Changed the constructor and GetObjectData
6899         method needed for ISerializable implementation in order to be
6900         compatible with SOAP generated by MS.
6901
6902 Wed Aug 14 17:34:07 CEST 2002 Paolo Molaro <lupus@ximian.com>
6903
6904         * MonoType.cs, Type.cs: DeclaringType/ReflectedType fixes.
6905
6906 2002-08-12  Dietmar Maurer  <dietmar@ximian.com>
6907
6908         * Exception.cs (ToString): changed the ouput format.
6909
6910 2002-08-07  Dietmar Maurer  <dietmar@ximian.com>
6911
6912         * MonoType.cs: moved get_method icall to this class, we can
6913         remove it as soon someone provides a full featured GetMethodImpl.
6914
6915         * Type.cs: use GetMethodImpl everywhere.
6916
6917         * Delegate.cs: new CreateDelegate implementations.
6918
6919 2002-08-06  Tim Coleman <tim@timcoleman.com>
6920         * MonoType.cs: 
6921                 Fix bug #28582.  Now checks parameters for properties
6922                 in GetPropertyImpl.
6923
6924 2002-08-04  Nick Drochak  <ndrochak@gol.com>
6925
6926         * Buffer.cs: Throw correct exception in GetByte() and SetByte().
6927
6928 2002-08-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6929
6930         * String.cs:
6931         (FormatSpecifier): allow white space between the comman and the width
6932         specifier.
6933
6934 2002-07-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6935
6936         * Int32.cs:
6937         * Int64.cs:
6938         * UInt32.cs:
6939         * UInt64.cs: fixed bug #28050. May be a MS bug?
6940
6941 Thu Jul 18 14:47:03 CEST 2002 Paolo Molaro <lupus@ximian.com>
6942
6943         * MonoType.cs: fix IsArrayImpl.
6944
6945 2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6946
6947         * String.cs: make ToLower (culture) and ToUpper (culture) use the
6948         default ToLower and ToUpper and don't throw NotImplemented.
6949
6950 Sat Jul 13 15:09:01 CEST 2002 Paolo Molaro <lupus@ximian.com>
6951
6952         * Type.cs: make GettTypeCode an icall. Test implementation of
6953         GetMember().
6954
6955 2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6956
6957         * AppDomainSetup.cs: implemented LoaderOptimization.
6958
6959 2002-07-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6960
6961         * Activator.cs: some more intermediate results checking in
6962         in CreateInstance and CreateInstanceFrom and use GetConstructor and
6963         Invoke only with Type [] until the other overloaded versions work.
6964
6965 2002-07-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6966
6967         * Activator.cs: reformatted. Implemented CreateInstance* methods
6968         that return ObjectHandle.
6969
6970         * AppDomain.cs: implemented CreateInstance*AndUnwrap methods.
6971
6972 2002-07-03  Nick Drochak  <ndrochak@gol.com>
6973
6974         * Decimal.cs (Divide): Short cut the case where the dividend is 0 (and
6975         the divisor is not) and avoid the icall, which seems to have a bug.
6976
6977 2002-07-03  Nick Drochak  <ndrochak@gol.com>
6978
6979         * Double.cs (CompareTo): Correctly handle the case where the instance
6980         is NaN. Also return 0 if the values are equal.
6981
6982 2002/07/03  Nick Drochak <ndrochak@gol.com>
6983
6984         * MissingMethodException: Add missing Message property
6985         * MissingMemberException: Add missing Message property
6986
6987 2002-06-30  Nick Drochak  <ndrochak@gol.com>
6988
6989         * Double.cs (CompareTo): Just see which is bigger.  Don't use the
6990         subtraction trick, it doesn't work when the values have a diference of
6991         less than one.
6992
6993         * Single.cs (CompareTo): same
6994
6995 2002-06-27  Martin Baulig  <martin@gnome.org>
6996
6997         * UIntPtr.cs (UIntPtr.Zero): Use an explicit `u' suffix in the
6998         constructor argument.  [FIXME: The implicit conversion to an
6999         unsigned integer doesn't work with mcs.]
7000
7001 2002-06-26  Martin Baulig  <martin@gnome.org>
7002
7003         * DecimalFormatter.cs: Removed MSTEST stuff, use `System',
7004         not `S = System'.  This file now compiles with mcs.
7005
7006         * String.cs: Removed the already ifdef-outed __arglist Concat function
7007         to make it compile with mcs.
7008
7009 2002-06-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7010
7011         * IntegerFormatter.cs:
7012         (FormatParse.FormatNumber): fixed custom format for negative numbers.
7013
7014 2002-06-21  Martin Baulig  <martin@gnome.org>
7015
7016         * Double.cs: Replace the private `enum State' with constants since this
7017         will avoid some bigger headaches in mcs.
7018
7019 Thu Jun 20 17:51:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
7020
7021         * TimeSpan.cs: do not pollute the namespace with the
7022         System.Parser name.
7023
7024 2002-06-18  Nick Drochak  <ndrochak@gol.com>
7025
7026         * ArgumentException.cs: Use the message given in the constructor when
7027         accessing the Message property.  Thanks to Dietmar for the help with 
7028         "base".
7029
7030 2002-06-17  Dietmar Maurer  <dietmar@ximian.com>
7031
7032         * MonoType.cs: GetField is now a InternalCall
7033
7034 2002-06-13  Nick Drochak  <ndrochak@gol.com>
7035
7036         * DateTime.cs: (Parse): Accept dates that have no hour,min,sec. in the
7037         sortable format(s), e.g. "2002-02-25"
7038
7039 2002/06/12  Nick Drochak <ndrochak@gol.com>
7040
7041         * Random.cs (Next): Fix math error.  Return a number within the range.
7042
7043 2002-06-12  Nick Drochak  <ndrochak@gol.com>
7044
7045         * String.cs (IndexOf): Return -1 if start index is equal to string
7046         length.
7047
7048 2002-06-10  Duncan Mak  <duncan@ximian.com>
7049
7050         * Convert.cs (ToDouble): Remove rounding in ToDouble (float).
7051         (ToType): Added null field in conversionTable to avoid
7052         IndexOutOfRangeException. Changed what exceptions we throw to match
7053         the spec.
7054         
7055 2002-06-11  Nick Drochak  <ndrochak@gol.com>
7056
7057         * Int64.cs (Parse): Added unique strings to the messages where we throw
7058         a FormatException. Needed these to debug, so just left them in since
7059         they might be useful later. Fixed Currency parsing where we weren't
7060         looking at CurrencyDecimalSeparator, etc.
7061
7062 2002-06-09  Lawrence Pit  <loz@cable.a2000.nl>
7063
7064         * DateTime.cs: fixes to pass tests M0 to M6:
7065                 if yy pattern then year values >= 30 are in 20th century
7066                 rfc1123 pattern is always in GMT, therefor useutc must be false
7067         made GetNow() internal static so it can be called from TimeZone.
7068         * TimeZone.cs: removed dependency on year 2002 from initialization of 
7069         current timezone.
7070
7071 2002-06-09  Duncan Mak  <duncan@ximian.com>
7072
7073         * Convert.cs (ToType): Rearranged what Exceptions we throw to
7074         match MS behavior.
7075
7076 2002-06-08  Duncan Mak  <duncan@ximian.com>
7077
7078         * Decimal.cs: Added support for the IConvertible interface.
7079
7080 2002-06-08  Martin Baulig  <martin@gnome.org>
7081
7082         * Enum.cs (IsDefined): `value' may be of the enum's type itself, it
7083         doesn't necessarily need to be of the enum's underlying type.
7084
7085 2002/06/07  Nick Drochak <ndrochak@gol.com>
7086
7087         * String.cs: Add [Serializable] to class
7088         * SByte.cs (Parse): Add [CLSCompliant(false)] to all the overloads
7089
7090 2002-06-04  Nick Drochak  <ndrochak@gol.com>
7091
7092         * Double.cs (Parse): Recognize the group separator string, but still we
7093         don't check the format for the proper number of digits between
7094         separators. Also throw OverflowException when we get Pos or Neg
7095         Infinity from runtime.
7096
7097 2002-06-03  Duncan Mak  <duncan@ximian.com>
7098
7099         * Convert.cs (ToDouble): Fixed ToDouble (byte value).
7100
7101 Mon Jun 3 12:18:18 CEST 2002 Paolo Molaro <lupus@ximian.com>
7102
7103         * Type.cs: fixed GetTypeCode.
7104
7105 2002-06-02  Duncan Mak  <duncan@ximian.com>
7106
7107         * Convert.cs (ToInt16): use Convert.ToInt16 (int) instead of a direct
7108         cast from an int so that we throw OverFlowException correctly.
7109         
7110         (ToInt64): Use a new 64bit version of ConvertToBase.
7111         
7112         (ConvertToBase): Add checks for overflow (checks Int32.MinValue
7113         and Int32.MaxValue).
7114
7115         (ConvertFromBase64): New 64-bit version of ConvertFromBase.
7116
7117 2002-06-02  Nick Drochak  <ndrochak@gol.com>
7118
7119         * Convert.cs (ToSByte): Check for special value.
7120         * Single.cs (Parse): 
7121         * UInt16.cs (Parse):
7122         * UInt32.cs (Parse): Throw OverflowException if negative
7123
7124 2002-06-02  Duncan Mak  <duncan@ximian.com>
7125
7126         * Convert.cs (DBNull): Point it to DBNull.Value.
7127         (IsDBNull): Instead of checking typecodes, just check to see if
7128         it's the same as the DBNull field.
7129
7130 2002-06-02  Nick Drochak  <ndrochak@gol.com>
7131
7132         * Convert.cs (ConvertFromBase): Detect bad digits correctly.
7133
7134 2002-06-02  Duncan Mak  <duncan@ximian.com>
7135
7136         * Char.cs (Parse): Simplify the Exception handling.
7137
7138         * Convert.cs (ToDecimal): Remove call to Math.Round () when
7139         converting from a float.
7140
7141 2002-05-30  Martin Baulig  <martin@gnome.org>
7142
7143         * MonoType.cs (GetInterface): Implemented.
7144
7145 Thu May 23 17:17:28 CEST 2002 Paolo Molaro <lupus@ximian.com>
7146
7147         * Activator.cs: implemented CreateInstance ().
7148
7149 2002-05-22  Duncan Mak  <duncan@ximian.com>
7150
7151         * Convert.cs (ConvertToBase): Added new 64bit version.
7152         (BuildConvertedString64): New 64bit version of
7153         BuildConvertedString.
7154
7155         This fixes bug 25068.
7156
7157         (ConvertFromBase): Added additional test for checking if the
7158         digits are valid. Thanks to Miguel for coming up with this test.
7159
7160         This fixes bug 25071.
7161         
7162 2002-05-21  Duncan Mak  <duncan@ximian.com>
7163
7164         * Convert.cs (ToType): Rearranged to fit the new layout of
7165         conversionTable.
7166
7167         (conversionTable): Rearranged to fit the layout of the
7168         System.TypeCode enum.
7169
7170         This should fix bug 25075.
7171         
7172 2002-05-21  Duncan Mak  <duncan@ximian.com>
7173
7174         * Convert.cs (ToString): Fixed the ToString methods. Previously I had
7175         mixed up the two code paths, one for converting to a specific base
7176         (this case), another from converting from a foreign base to base10
7177         (used by ToInt16|32|64 (string, int)). This fixes bug 25068.
7178
7179         * Convert.cs (ToByte)
7180         (ToSByte): Fixed bug 25074. Added more bits to ConvertFromBase so
7181         that we won't confuse FormatException with OverflowException.
7182
7183 2002-05-22  Lawrence Pit  <loz@cable.a2000.nl>
7184
7185         * Environment.cs: CommandLine missed spaces between arguments.
7186         Implemented StackTrace. Returning MachineName in UserDomainName
7187         instead of null.
7188         
7189 Tue May 21 17:25:49 CEST 2002 Paolo Molaro <lupus@ximian.com>
7190
7191         * MonoCustomAttrs.cs: handle inherit argument.
7192
7193 2002-05-21  Nick Drochak  <ndrochak@gol.com>
7194
7195         * Math.cs (Pow): Change icall method name and insert parameter
7196         checks in for infinities and NaN.
7197
7198 2002-05-13  Miguel de Icaza  <miguel@ximian.com>
7199
7200         * Double.cs (Parse): Reimplement by cleaning up the string first,
7201         and then passing to strtof in the mono runtime.
7202
7203         * Single.cs (Parse): Use the Double implementation and cast to
7204         float. 
7205
7206 2002-05-21  Nick Drochak  <ndrochak@gol.com>
7207
7208         * Math.cs 
7209                 (Ceiling): Check for "special" values
7210                 (Floor): Check for "special" values
7211                 (Round): Fix off-by-one error on decimal shifting
7212
7213 2002-05-20  Lawrence Pit  <loz@cable.a2000.nl>
7214
7215         * DateTime.cs: ToString () using "G" format specifier 
7216
7217 2002-05-19  Martin Baulig  <martin@gnome.org>
7218
7219         * Convert.cs (FromBase64CharArray): Do correct exception handling.
7220
7221 2002-05-19  Martin Baulig  <martin@gnome.org>
7222
7223         * Convert.cs (FromBase64CharArray): Convert the char array using
7224         System.Text.UTF8Encoding, not UnicodeEncoding (which is UTF-16) to
7225         a byte array.
7226
7227 2002-05-17  Miguel de Icaza  <miguel@ximian.com>
7228
7229         * MonoType.cs: Style changes.
7230
7231         * Type.cs: Style changes.
7232
7233 2002-05-16  Piers Haken <piersh@friksit.com
7234
7235         * UInt64.cs: fix declaration of IConvertible.To* overrides.
7236
7237 2002-05-16  Nick Drochak  <ndrochak@gol.com>
7238
7239         * BitConverter.cs (ToString): Add parameter check for invalid start 
7240         index.
7241
7242         * Console.cs: Use AutoFlush on the StreamWriter for stdin and stdout
7243         now that StreamWriter uses buffering
7244
7245 2002-05-14  Miguel de Icaza  <miguel@ximian.com>
7246
7247         * Double.cs: Oops.  Also handle exponents without finding a dot.
7248
7249 2002-05-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7250
7251         * ChangeLog: removed empty entry at the top of the file.
7252
7253         * Int32.cs: made static functions used by Parse internal.
7254
7255         * Int64.cs:
7256         * UInt32.cs:
7257         * UInt64.cs: removed static fucntions used by Parse and use the ones
7258         in Int32.cs
7259
7260 2002-05-12  Daniel Morgan <danmorg@sc.rr.com>
7261
7262         * IServiceProvider.cs: added using System
7263
7264 2002-05-09  Daniel Morgan <danmorg@sc.rr.com>
7265
7266         * Single.cs: copied ToString() and Parse() methods from 
7267         Double to Single and modified a tiny bit for Single.  
7268         There is still a FIXME for Double and Single about
7269         passing the format and provider info to the icall too.
7270
7271 2002-05-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7272
7273         * Int32.cs:
7274         * Int64.cs:
7275         * UInt32.cs:
7276         * UInt64.cs (Parse): don't use Char.IsNumber to test for hex digits.
7277         Don't use a delegate to test for valid digits.
7278
7279 2002-05-01  Duncan Mak  <duncan@ximian.com>
7280
7281         * Convert.cs: 
7282         * Math.cs: Added missing CLSCompliant attributes where necessary.
7283         
7284 2002-04-30  Duncan Mak  <duncan@ximian.com>
7285
7286         * ArgumentException.cs (Message): 
7287         * ArgumentOutOfRangeException.cs (Message): Added.
7288
7289 2002-04-30  Nick Drochak  <ndrochak@gol.com>
7290
7291         * MonoType.cs: Remove unused variable and eliminate a compiler warning.
7292
7293 Mon Apr 29 15:32:02 CEST 2002 Paolo Molaro <lupus@ximian.com>
7294
7295         * Environment.cs: support for Exit(), CommandLine, CommandLineArgs ().
7296
7297 2002-04-28  Duncan Mak  <duncan@ximian.com>
7298
7299         * DivideByZeroException.cs: Added missing serialization constructor.
7300
7301         * UnauthorizedAccessException.cs: Added the missing Serializable attribute.
7302
7303 2002-04-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7304
7305         * Math.cs: fix Floor () and Round (). Closes #23960.
7306
7307 2002-04-27  Nick Drochak  <ndrochak@gol.com>
7308
7309         * Array.cs (IList.Contains): Should throw a RankException if this is 
7310         called on a Rank > 1 array. Not in the docs, but this is what the 
7311         MS.NET does.
7312
7313 2002-04-26  Duncan Mak  <duncan@ximian.com>
7314
7315         * MissingMemberException.cs: Made the message variable 'protected'
7316         instead of 'private', so that we can see it in
7317         MissingMethodException and MissingFieldException.
7318
7319         * MissingFieldException.cs:
7320         * MissingMethodException.cs: Added missing (string, string)
7321         constructor, and also the Message property.
7322
7323 2002-04-26  Martin Baulig  <martin@gnome.org>
7324
7325         * Enum.cs: Implemented the IConvertible methods.
7326
7327 2002-04-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7328
7329         * SByte.cs: little change in Parse (string) to avoid incorrect
7330         OverflowException thrown (reported by nickd).
7331
7332 2002-04-22  Miguel de Icaza  <miguel@ximian.com>
7333
7334         * ValueType.cs: Add Serializable attribute.
7335
7336         * String.cs: ifdef-out out the __arglist Concat function until I
7337         add support for that to mcs.
7338
7339 2002-04-24      Patrik Torstensson <patrik.torstensson@labs2.com>
7340
7341         * AppDomain.cs (GetValue): usage of the correct icall (bug)
7342
7343 Wed Apr 24 21:15:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
7344
7345         * GC.cs: implement most of the methods as icalls.
7346
7347 2002-04-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7348
7349         * DecimalFormatter.cs (ToString): return correct value when the
7350         decimal number is 0.
7351
7352 2002-04-24      Patrik Torstensson <patrik.torstensson@labs2.com>
7353         
7354         * Type.cs (GetProperty): fixed call syntax (needs an empty array not null)
7355         * MonoType.cs (GetPropertyImpl) : basic implementation (ignores types, bindingAttr, modifiers)
7356
7357 2002-04-24  Nick Drochak  <ndrochak@gol.com>
7358
7359         * Double.cs (Parse): Handle case where there are no digits before the 
7360         decimal point, such as ".1".
7361
7362 2002-04-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7363
7364         * Int32.cs:
7365         * UInt32.cs:
7366         * Int64.cs:
7367         * UInt64.cs: fixed bug #23738 (hex numbers parsed wrong).
7368
7369 2002-04-23      Patrik Torstensson <patrik.torstensson@labs2.com>
7370
7371         * String.cs (Split): fixed invalid split of count 0 and 1.
7372         
7373 2002-04-23      Patrik Torstensson <patrik.torstensson@labs2.com>
7374         
7375         * String.cs (LastIndexOf): fixed argument checking.
7376         * String.cs (Equals): made internal for performace.
7377
7378 2002-04-23  Nick Drochak  <ndrochak@gol.com>
7379
7380         * String.cs (Join): check argument and throw exception if needed
7381
7382 2002-04-23  Nick Drochak  <ndrochak@gol.com>
7383
7384         * String.cs (StartsWith): check argument and throw exception if needed
7385
7386 2002-04-22  Nick Drochak  <ndrochak@gol.com>
7387
7388         * String.cs (IndexOfAny): check arguments and throw exceptions as
7389         neccessary.  ALso remove some debug WriteLines.
7390
7391 2002-04-20  Dietmar Maurer  <dietmar@ximian.com>
7392
7393         * String.cs: use internal constructors
7394         buf fix in Concat.
7395
7396 Thu Apr 18 17:16:15 CEST 2002 Paolo Molaro <lupus@ximian.com>
7397
7398         * MonoType.cs: make GetElementType its own icall.
7399
7400 2002-04-18  Nick Drochak <ndrochak@gol.com>
7401
7402         * String.cs: Modified file. Re-add methods needed by the unit tests.
7403
7404 Thu Apr 18 12:38:32 CEST 2002 Paolo Molaro <lupus@ximian.com>
7405
7406         * String.cs: some code speedups and restored GetTypeCode().
7407
7408 2002-04-17      Patrik Torstensson <patrik.torstensson@labs2.com>
7409
7410         * String.cs: New implementation using internal calls.
7411         
7412 2002-04-16  Nick Drochak  <ndrochak@gol.com>
7413
7414         * DecimalFormatter.cs: Trim off excess null characters from the string
7415         that decimal2string gives back.
7416
7417 2002-04-16  Nick Drochak  <ndrochak@gol.com>
7418
7419         * String.cs (SubString): revert my change.  I can't reproduce the
7420         problem anymore.
7421
7422 2002-04-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7423
7424         * Attribute.cs: added GetHashCode and Equals.
7425
7426 2002-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7427
7428         * Enum.cs: little improvements to Format ().
7429
7430 Thu Apr 11 12:28:13 CEST 2002 Paolo Molaro <lupus@ximian.com>
7431
7432         * String.cs: internalcall GetHashCode().
7433         * Array.cS: optimize access to elements.
7434
7435 Wed Apr 10 21:20:19 CEST 2002 Paolo Molaro <lupus@ximian.com>
7436
7437         * String.cs: make IndexOfAny() use an internalcall.
7438
7439 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7440
7441         * Int32.cs:
7442         * UInt32.cs:
7443         * Int64.cs: 
7444         * UInt64.cs: fixed error when testing for validity of flags.
7445
7446 2002-04-11  Nick Drochak  <ndrochak@gol.com>
7447
7448         * Double.cs: Use an internal call for ToString(). This is just a simple
7449         implementation to get away from throwing a NotImplementedException.
7450
7451 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7452
7453         * Int32.cs:
7454         * UInt32.cs:
7455         * Int64.cs: 
7456         * UInt64.cs: changed Type.GetType () by typeof (), as suggested by
7457         lupus.
7458
7459         * Int32.cs:
7460         * Int64.cs: throw an OverFlowException when parsing a string 
7461         containing a dot followed by any non '0' number.
7462
7463 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7464
7465         * Byte.cs:
7466         * UInt16.cs:
7467         * UInt32.cs:
7468         * UInt64.cs: added complex Parse ().
7469
7470 2002-04-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7471
7472         * SByte.cs:
7473         * Int16.cs:
7474         * Int32.cs:
7475         * Int64.cs: added complex Parse ().
7476
7477 2002-04-09  Nick Drochak  <ndrochak@gol.com>
7478
7479         * Array.cs (BinarySearch): Add checks on paramters before using them
7480         and throw exceptions as needed.
7481
7482         * Enum.cs (Format): Check if [Flags] is applied to enum and convert
7483         "G" format to "F" if so.
7484
7485 Tue Apr 9 13:12:09 CEST 2002 Paolo Molaro <lupus@ximian.com>
7486
7487         * MonoCustomAttrs.cs: return arrays of type Attribute[]
7488         instead of object[].
7489
7490 2002/04/09  Nick Drochak <ndrochak@gol.com>
7491
7492         * String.cs (Substring): Copy only non-null characters to the new
7493         string.
7494
7495 2002-04-09  Nick Drochak  <ndrochak@gol.com>
7496
7497         * IntegerFormatter.cs: Don't use a format character to indicate a
7498         custom format was passed in. It was using 'z' to indicate a custom
7499         format, but really it should throw a format exception if the user
7500         tries to use "z" as the format string. Now it does.
7501
7502         * Activator.cs: New File.
7503
7504 2002-04-08  Nick Drochak  <ndrochak@gol.com>
7505
7506         * Enum.cs (ToString): Big ugly fix for the case where [Flags] is
7507         applied to an enum. Need to handle the different possible integer
7508         types of an enum somehow.  Can anyone say generics?
7509
7510 Mon Apr  8 06:22:42  2002 Piers Haken <piersh@friskit.com>
7511
7512         * Convert.cs: switched the To*(object) methods to use
7513         IConvertible directly instead of calling ChangeType
7514
7515 Sat Apr 6 20:08:41 CEST 2002 Paolo Molaro <lupus@ximian.com>
7516
7517         * ValueType.cs: make Equals() an internalcall.
7518
7519 Fri Apr 5 15:38:54 CEST 2002 Paolo Molaro <lupus@ximian.com>
7520
7521         * Type.cs: also look for nested types in FindMembers.
7522         * MonoType.cs: make GetNestedTypes() an internalcall.
7523
7524 2002-04-05  Nick Drochak  <ndrochak@gol.com>
7525
7526         * Enum.cs (Parse): Handle different underlying types.
7527
7528 2002/04/04 Nick Drochak <ndrochak@gol.com>
7529
7530         * Enum.cs (IsDefined): Throw exception when type of value to look for
7531         is not the correct one.  Attempt to have it work with string values
7532         too, but not sure if the unit tests are getting that far yet.
7533
7534 2002-04-04  Nick Drochak  <ndrochak@gol.com>
7535
7536         * Decimal.cs: Fix a couple of typos.
7537
7538 Wed Apr 3 19:46:00 CEST 2002 Paolo Molaro <lupus@ximian.com>
7539
7540         * Enum.cs: the values array is of the enum and not of the underlying
7541         type. Updates and some bug fixes.
7542         * MonoType.cs: make the internalcall return FullName instead of the
7543         assembly qualified name.
7544         * Type.cs: make ToString () simply return FullName.
7545
7546 2002-04-03  Nick Drochak  <ndrochak@gol.com>
7547
7548         * Type.cs (GetTypeCode): provide some of the implementation for this
7549         method.  It's still too simplistic to be considered complete.
7550
7551 2002-04-02  Dietmar Maurer  <dietmar@ximian.com>
7552
7553         * Object.cs: fixed FieldGetter/FieldSetter signature
7554
7555 2002-04-02  Nick Drochak  <ndrochak@gol.com>
7556
7557         * Environment.cs: add MonoTODO's on parts that should have it.
7558
7559 2002-04-01  Nick Drochak  <ndrochak@gol.com>
7560
7561         * Enum.cs: added reality checks (check parameters to most methods that
7562         need them).
7563
7564 2002-03-30  Dietmar Maurer  <dietmar@ximian.com>
7565
7566         * Object.cs: added FieldGetter/FieldSetter
7567
7568 2002-03-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7569
7570         * IntegerFormatter.cs: fixed initialization error in static
7571         constructor.
7572
7573 2002-03-28  Dietmar Maurer  <dietmar@ximian.com>
7574
7575         * Delegate.cs: added new field to store a trampoline function
7576
7577 2002-03-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7578
7579         * IntegerFormatter.cs: added workaround for bug #22668. First patch to
7580         make custom format strings work (not fully functional yet).
7581
7582 2002/03/28  Nick Drochak <ndrochak@gol.com>
7583
7584         * IntegerFormatter.cs: Change class from internal to public.  Add
7585         necessary [CLSCompliant(false)] attributes.
7586
7587 2002-03-27  Duco Fijma  <duco@lorentz.xs4all.nl>
7588         * _AppDomain.cs, AppDomain.cs: renamed method GetDate to GetData
7589         (was a typo)
7590
7591 2002-03-28  Nick Drochak  <ndrochak@gol.com>
7592
7593         * Type.cs: Added MonoTODO tags on members that have FIXME, etc.
7594
7595 2002-03-27  Dan Lewis  <dihlewis@yahoo.co.uk>
7596
7597         * Console.cs: Modified to get std handles from MonoIO.
7598         * Environment.cs: removed PAL dependencies.
7599
7600 2002-03-25  Miguel de Icaza  <miguel@ximian.com>
7601
7602         * String.cs (System): Removed internal enumeration, because
7603         bootstrapping the corlib at this point does not support
7604         enumerations. 
7605
7606         * IntPtr.cs: Temporary work-around until I fix the assembly
7607         attributes bug.
7608
7609 2002-03-24  Martin Baulig  <martin@gnome.org>
7610
7611         * Enum.cs (GetValues): According to the docu this is sorted after
7612         values, not names.
7613
7614         * String.cs (System): Removed enumeration, because it is pretty
7615         hard to support enumerations in /nostdlib mode for the core types.
7616
7617 Tue Mar 19 18:18:49 CET 2002 Paolo Molaro <lupus@ximian.com>
7618
7619         * Array.cs: move error handling in the catch block.
7620         * MulticastDelegate.cs: remove == and != operators that were
7621         removed with the delegate changes (when you add stuff, please do not
7622         remove existing functionality!).
7623         * Type.cs: if a property is not found in a type, search for it
7624         in the parent types, too.
7625
7626 2002-03-18  Dan Lewis <dihlewis@yahoo.co.uk>
7627         
7628         * Math.cs: changed to use icall instead of PAL.
7629
7630 2002-03-18  Dietmar Maurer  <dietmar@ximian.com>
7631
7632         * Double.cs: added check for NaN (Bug [22082])
7633
7634 2002-03-19  Nick Drochak  <ndrochak@gol.com>
7635
7636         * Enum.cs (Equals): check for null and throw if it is.
7637         * Enum.cs (Format): check for null parameters and throw if necessary.
7638         This method still needs more argument checking.
7639
7640 2002-03-18  Dietmar Maurer  <dietmar@ximian.com>
7641
7642         * Enum.cs (Equals): check if Enums are of the same type
7643
7644 2002-03-18  Nick Drochak  <ndrochak@gol.com>
7645
7646         * Double.cs: Explicitly handle comparisons in CompareTo() for
7647         Positive/Negative Infinity and NaN. Unit Test now passes on Linux.
7648
7649         * Enum.cs(CompareTo): Check types of values before trying to compare.
7650         Throw exceptions if types are invalid or don't match.
7651
7652 2002-03-14  Miguel de Icaza  <miguel@ximian.com>
7653
7654         * Array.cs: Add some extra debugging information.
7655
7656 2002-03-15  Nick Drochak  <ndrochak@gol.com>
7657
7658         * Array.cs: Added IList and IEnumerable. 
7659
7660 2002-03-14  Miguel de Icaza  <miguel@ximian.com>
7661
7662         * UInt64.cs, UInt32.cs, UInt16.cs: Mark public parse methods as
7663         NonCLSCompliant. 
7664
7665 2002-03-14  Dietmar Maurer  <dietmar@ximian.com>
7666
7667         * Delegate.cs (Equals): also compare method_ptr 
7668         (GetHashCode): returm method_ptr as hash
7669
7670 2002-03-13  Duco Fijma  <duco@lorentz.xs4all.n>
7671         * TimeSpan.cs: removed the use of Custom Numeric Format Strings,
7672         such as 42.ToString("0000000"), as these are (currently) not implemented
7673         in System.IntegerFormatter. TimeSpan luckely can do with Standard
7674         Numeric Format Strings, such as 42.ToString("D7").
7675
7676 2002-03-12  Duncan Mak  <duncan@ximian.com>
7677
7678         * FieldAccessException.cs: 
7679         * MethodAccessException.cs: 
7680         * PlatformNotSupportedException.cs: Inherit from
7681         MemberAccessException, not SystemException.
7682
7683         * ObsoleteAttribute.cs: Made Message and IsError properties
7684         instead of fields.
7685
7686 Tue Mar 12 19:21:18 CET 2002 Paolo Molaro <lupus@ximian.com>
7687
7688         * GC.cs: make SuppressFinalize() a nop.
7689         * Delegate.cs: fix == operator.
7690
7691 2002-03-13  Nick Drochak  <ndrochak@gol.com>
7692
7693         * Enum.cs: Add IConvertible methods. Cyclic dependancy fixed in the
7694         runtime that goes with this patch.
7695
7696 2002-03-10  Martin Baulig  <martin@gnome.org>
7697
7698         * Int32.cs (Parse): Correctly parse negative numbers.
7699
7700 2002-03-08  Martin Baulig  <martin@gnome.org>
7701
7702         * String.cs (Split): Really fix it this time. Also adding several new
7703         testcase to the testsuite.       
7704
7705 2002-03-08  Martin Baulig  <martin@gnome.org>
7706
7707         * Array.cs (Copy): Optimized: removed duplicate null check, removed
7708         two duplicate GetLowerBound() calls and one duplicate IsValueType.
7709
7710 Fri Mar 8 18:49:19 CET 2002 Paolo Molaro <lupus@ximian.com>
7711
7712         * Object.cs: commit my hacked GetHashCode(): it's good enough for now.
7713         * String.cs: use the dumb code for IndexOf(string): this is worth
7714         15-20 % speedup in mcs compile with mint.
7715
7716 Fri Mar 8 12:45:44 CET 2002 Paolo Molaro <lupus@ximian.com>
7717
7718         * String.cs: revert change to Split() that broke the compiler (hi martin!:-).
7719
7720 2002-03-07  Martin Baulig  <martin@gnome.org>
7721
7722         * String.cs (Join): Throw an ArgumentNullException.
7723         (LastIndexOf (string,int,int)): This method does a backwards search,
7724         so startIndex points to the end of value, not to its beginning. Don't
7725         throw an exception if startIndex equals this.Length. Always return -1
7726         if startIndex is smaller than the length of value.
7727         (Replace (string,string)): Replace all occurences of oldValue.
7728         If newValue is null, all occurences of oldValue are to be removed.
7729         (Split (char[],int)): Return an empty array if maxCount is zero, throw
7730         an ArgumentOutOfRangeException if it's less than zero. Return maxValue
7731         elements, not maxValue+1.
7732
7733 Thu Mar 7 17:16:06 CET 2002 Paolo Molaro <lupus@ximian.com>
7734
7735         * MonoType.cs: make GetEvents() an internal call.
7736         * MulticastDelegate.cs: copy the passed in array.
7737
7738 2002-03-06  Martin Baulig  <martin@gnome.org>
7739
7740         * Array.cs (Copy): Use FastCopy when appropriate and do correct
7741         exception handling.
7742
7743 2002-03-06  Duco Fijma  <duco@lorentz.xs4all.nl>
7744         * CharEnumerator.cs: fixes to CharEnumertor.MoveNext, fixing 
7745         some of the failures found be new tests (see ChangeLog in 
7746         Test/System). Comments added to this method, based on
7747         the representation invariant of this class, that (try to) explain
7748         why it now should be correct.
7749
7750 2002-03-06  Dietmar Maurer  <dietmar@ximian.com>
7751
7752         * Int64.cs (Parse): bug fix for max. negative value. 
7753
7754 2002-03-07  Nick Drochak  <ndrochak@gol.com>
7755
7756         * RuntimeTypeHandle.cs: Add Serializable attribute as the docs say.
7757         I need to understand what the difference between the attribute and
7758         the interface is.
7759
7760 2002-03-06  Martin Baulig  <martin@gnome.org>
7761
7762         * Array.cs (Copy): Always throw an ArrayTypeMismatchException, not
7763         an InvalidCastException if the widening conversion failed. See
7764         testcases #M94-#M96.
7765
7766         * Array.cs (CopyTo): Bug fix from Ajay Dwivedi, correctly handle
7767         arrays with non-zero lower bounds. Also adding testcases #F10-#F13
7768         for this.
7769
7770         * Array.cs (CopyTo): Reverted my last change, it was incorrect.
7771         (Copy): Actually allow copying multi-dimensional arrays.
7772
7773 2002-03-05  Duncan Mak  <duncan@ximian.com>
7774
7775         * Convert.cs:
7776         (DBNull) Added the missing field.
7777         (IsDBNull) Fixed typo.
7778         (ToByte (string, int)) Implemented.
7779         (ToString (byte, int)) Implemented.
7780         (ConvertToBase)
7781         (BuildConvertedString) internal functions used for converting values to
7782         a specific base.
7783
7784         * Int16.cs: 
7785         * Int32.cs:
7786         * Int64.cs:
7787         * Single.cs:
7788         * UInt16.cs: 
7789         * UInt32.cs: Implemented the IConvertible interface.    
7790
7791         * CharEnumerator.cs: Renamed to variables to be clearer and
7792         changed some of the tests to conform to the 1.0 spec.
7793
7794 2002-03-06  Martin Baulig  <martin@gnome.org>
7795
7796         * Array.cs (Copy): Calculate absolute array position here and use
7797         GetValueImpl() and SetValueImpl() with that position. We can now
7798         copy multi-dimensional arrays.
7799         (CopyTo): Small bug fix.
7800
7801 2002-03-05  Duco Fijma  <duco@lorentz.xs4all.nl>
7802
7803         * Version.cs: CompareTo changed according the LAMESPEC discovered by 
7804         Nick (See VersionTest.cs).
7805         * CharEnumerator.cs: fixed two bugs in MoveNext. It had an off-by-one
7806         error comparing the current position (idx) against the length of the
7807         string iterated and it set idx to an unrecognized special value (-2)
7808
7809 Tue Mar 5 17:34:14 CET 2002 Paolo Molaro <lupus@ximian.com>
7810
7811         * SByte.cs, UInt64.cs: implement IConvertible interface. Nobody wants
7812         to do this dirty work, but someone has to do it (and I need it to pass
7813         the "200 sample tests compiled on linux" mark).
7814
7815 2002-03-06  Nick Drochak  <ndrochak@gol.com>
7816
7817         * Attribute.cs
7818         * DecimalFormatter.cs
7819         * Delegate.cs
7820         * Double.cs
7821         * GC.cs
7822         * Int16.cs
7823         * Int32.cs
7824         * MonoType.cs
7825         * RuntimeMethodHandle.cs
7826         * RuntimeTypeHandle.cs
7827         * String.cs
7828         * Type.cs:
7829                 Add [MonoTODO]'s to places where we currently throw a
7830                 NotImplementedException.
7831
7832 2002-03-05  Dietmar Maurer  <dietmar@ximian.com>
7833
7834         * Int16.cs (Parse): do not overflow on max negative value
7835
7836         * Int32.cs (Parse): do not overflow on max negative value
7837
7838 Mon Mar 4 20:36:05 CET 2002 Paolo Molaro <lupus@ximian.com>
7839
7840         * Type.cs: fixed IsClass.
7841         * MonoType.cs: fixed MemberType, IsPrimitiveImpl, IsPointerImpl,
7842         IsByRefImpl. Added GetInterfaces().
7843         * IServiceProvider.cs: compilation fix.
7844
7845 Mon Mar 4 18:37:03 CET 2002 Paolo Molaro <lupus@ximian.com>
7846
7847         * Array.cs: allow copying an empty array to an empty array.
7848
7849 Mon Mar 4 17:59:16 CET 2002 Paolo Molaro <lupus@ximian.com>
7850
7851         * String.cs: fixed LastIndexOf (string) to do a bit of argument
7852         checking.
7853
7854 2002-03-04  Duco Fijma  <duco@lorentz.xs4all.nl>
7855         * Version.cs: many fixes to failures found by the newly created
7856         test cases for this class. Specifically, the CompareTo member
7857         returned wrong values due to the use of Int32.MaxValue as a special
7858         value indicating an "undefined" version component. Also implemented the
7859         missing operators (==, <, >, etc.), one missing constructor and
7860         and some exception throwing.
7861
7862 2002-03-04  Nick Drochak  <ndrochak@gol.com>
7863
7864         * IServiceProvider.cs: Add missing attribute: ComVisible(false)
7865         * Attribute.cs: Add missing attributes: Serializable and
7866         AttributeUsage(AttributeTargets.All)
7867
7868 Mon Mar 4 11:26:49 CET 2002 Paolo Molaro <lupus@ximian.com>
7869
7870         * MonoType.cs: implemented GetConstructors(), GetFields(),
7871         GetMethods(), GetProperties().
7872         * Object.cs: added debugging icall obj_address().
7873         * Type.cs: fixed the binding flags for some Get* methods.
7874         Implemented FindMembers() as calls to the specific GetMember
7875         methods.
7876
7877 2002-03-01  Duco Fijma  <duco@lorentz.xs4all.nl>
7878         * BitConverter.cs: fixed one little bug: ToString(s, n, 0) 
7879         should give an exception for n>=s.Length.
7880
7881 2002-03-01  Martin Baulig  <martin@gnome.org>
7882
7883         * Array.cs: More argument checking and bug fixing.
7884
7885 2002-03-01  Miguel de Icaza  <miguel@ximian.com>
7886
7887         * BitConverter.cs: Indentation match
7888
7889         * AppDomain.cs: Added MonoTODOs to this too.
7890
7891         * Buffer.cs: Added MonoTODOs to this.
7892
7893 2002-03-01  Martin Baulig  <martin@gnome.org>
7894
7895         * Array.cs: Added argument checking to all methods where it was missing.
7896
7897 2002-03-01  Duco Fijma  <duco@lorentz.xs4all.nl>
7898
7899         * BitConverter.cs: Fixed bugs in ToString methods
7900
7901 Fri Mar 1 15:20:00 CET 2002 Paolo Molaro <lupus@ximian.com>
7902
7903         * MulticastDelegate.cs: implement operators so mcs3 can be used on linux.
7904
7905 2002-03-01  Nick Drochak  <ndrochak@gol.com>
7906
7907         * BitConverter.cs: Throw ArgumentException like mscorlib, instead of
7908         ArgumentOutOfRangeException like the docs say.
7909
7910 2002-03-01  Martin Baulig  <martin@gnome.org>
7911
7912         * Enum.cs (CompareTo): Correctly override this method from IComparable.
7913
7914         * Console.cs (setIn, setOut, setError): It's called SetIn, SetOut, SetError.
7915
7916 2002-02-28  Martin Baulig  <martin@gnome.org>
7917
7918         * String.cs: This file now passes the testsuite on Linux :-)
7919         
7920         * String.cs (Intern, IsInterned): The interncalls are now called _Intern and _IsInterned;
7921         make them private and provide C# wrappers which do proper argument checking.
7922
7923         * String.cs (Format): Correctly handle escaped brackets.
7924
7925         * String.cs (_CompareChar): New internal function which compares two chars.
7926         (_Compare): Provide an internal compare method which can do all sorts of
7927         comparision and call it from all the Compare() methods. Also fixed a lot of
7928         bugs here, this code now actually passes the testsuite.
7929
7930 2002-02-28  Duncan Mak  <duncan@ximian.com>
7931
7932         * Convert.cs: Added the missing methods. The new class status page
7933         kicks ass, it even found my typos! Woohoo!
7934         (ConvertFromBase): Moved the Exception throwing in here and
7935         removed the other occurances so it's all centralized now.
7936         (ISDBNull): Implemented.
7937         (GetTypeCode): Implemented.
7938
7939 2002-02-27  Duco Fijma  <duco@lorentz.xs4all.nl>
7940         * Guid.cs: Guid.ToString("") and Guid.ToString(null) is now understood as Guid.ToString("D") 
7941         just as in mscorlib. There is (probably) a documentation bug in the MS FrameWork SDK, which
7942         states that a lacking format should be interpreted as "N".  
7943         Also added [Serializable] attribute
7944         * TimeSpan.cs: some formatting and added the [Serializable] attribute
7945
7946 2002-02-26  Duncan Mak  <duncan@ximian.com>
7947
7948         * WeakReference.cs: Committed for Ajay Kumar Dwivedi.   
7949
7950 2002-02-26  Martin Baulig  <martin@gnome.org>
7951
7952         * TimeZone.cs: Use an internal enum rather than magic numbers to access the
7953         fields of the interncall GetTimeZoneData.
7954
7955         * DateTime.cs: Implemented Parse and fixed a few bugs.
7956
7957         * String.cs (TrimStart): Small fix.
7958
7959 2002-02-26  Martin Baulig  <martin@gnome.org>
7960
7961         * DateTime.cs: ParseExact is now fully functional.
7962
7963         * String.cs (TrimEnd): Small fix.
7964
7965 2002-02-26  Duco Fijma <duco@lorentz.xs4all.nl>
7966         * TimeSpan.cs: Added method TimeSpan.FromMilliseconds, mysteriously 
7967         missing for about six months.
7968
7969 Tue Feb 26 14:21:19 CET 2002 Paolo Molaro <lupus@ximian.com>
7970
7971         * UInt64.cs: fixed Parse method () to handle some of the NumberStyle flags.
7972
7973 2002-02-26  Martin Baulig  <martin@gnome.org>
7974
7975         * DateTime.cs: Miguel already committed this, but there was still a
7976         ChangeLog entry for this missing ....
7977         We're now reusing functionality from TimeSpan, printing dates is
7978         fully implemented, currently working on parsing.
7979
7980         * TimeZone.cs: Fully implemented this. There's a new InternCall in the
7981         runtime for this.
7982
7983 Fri Feb 22 18:47:08 CET 2002 Paolo Molaro <lupus@ximian.com>
7984
7985         * MonoType.cs: disable constructor.
7986         * Object.cs: make GetType() an internalcall.
7987         * Type.cs: added correct bindingflags to GetMethods ().
7988         All such calls should be reviewed to use the correct flags.
7989
7990 Thu Feb 21 19:23:46 CET 2002 Paolo Molaro <lupus@ximian.com>
7991
7992         * Type.cs, MonoType.cs: type_is_subtype_of () changed to include extra
7993         argument.
7994
7995 Thu Feb 21 16:56:51 CET 2002 Paolo Molaro <lupus@ximian.com>
7996
7997         * Type.cs: implemented IsAssignableFrom.
7998
7999 2002-02-21  Duco Fijma <duco@lorentz.xs4all.nl>
8000         * Guid.cs: fixed Guid.Guid(string) ctor. Changed format:
8001         "{0xdddddddd,0xdddd,0xdddd,{0xdd},{0xdd},{0xdd},{0xdd},{0xdd},{0xdd}}" 
8002         to "{0xdddddddd,0xdddd,0xdddd,{0xdd,0xdd,0xdd,0xdd,0xdd,0xdd}}" 
8003         The former is documented by Microsoft. The latter is how they
8004         actually implemented it in mscorlib:-)
8005
8006 Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>
8007
8008         * MonoCustomAttrs.cs: hooks to get the custom attributes from the
8009         runtime.
8010         * MonoType.cs: Implemented custom attributes methods.
8011
8012
8013 2002-02-21  Duco Fijma <duco@lorentz.xs4all.nl>
8014         * Guid.cs: 
8015
8016 Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>
8017
8018         * MonoCustomAttrs.cs: hooks to get the custom attributes from the
8019         runtime.
8020         * MonoType.cs: Implemented custom attributes methods.
8021
8022 2002-02-19  Dietmar Maurer  <dietmar@ximian.com>
8023
8024         * Array.cs (CopyTo): use GetLength() instead of GetUpperBound() 
8025
8026 2002-02-19  Duncan Mak  <duncan@ximian.com>
8027
8028         * Convert.cs: Finished up the missing methods in Convert. Added a
8029         new private method ConvertFromBase.
8030
8031 2002-02-19  Dietmar Maurer  <dietmar@ximian.com>
8032
8033         * String.cs: impl. IConvertible interface
8034
8035 2002-02-18  Duco Fijma <duco@lorentz.xs4all.nl>
8036         * Guid.cs: actual implementation for Guid.Guid(string) Ctor
8037
8038 2002-02-18  Duncan Mak  <duncan@ximian.com>
8039
8040         * Convert.cs: Changed from using Type.GetType (string) to just
8041         typeof (). Probably will speed things up a bit?         
8042
8043 2002-02-18  Ajay Kumar Dwivedi <AjayKumar.Dwivedi@dresdner-bank.com>
8044
8045         * Array.cs:         
8046         1. Fix for GetUpperBound to return correct values
8047         2. made some Properties virtual
8048         3. Adds IsFixedSize and IsReadOnly properties.
8049         4. changes CreateInstance(Type,int[],int[]) to throw Exception
8050         when third arg is null. InternalCall CreateInstance changed to  
8051         CreateInstanceImpl
8052         5. Fixed array.GetUpperBound at a couple of places
8053         6. IndexOf and LastIndexOf now use Object.Equals instead of "=="
8054         7. Added two FIXME's in BinarySearch functions.
8055
8056 2002-02-17  Duncan Mak  <duncan@ximian.com>
8057
8058         * TimeZone.cs:  Applied the rest of Ajay's patch for    
8059         IsDaylightSavingTime. Thanks a lot for the nice explanation of how
8060         it works!
8061
8062 2002-02-17  Duco Fijma  <duco@lorentz.xs4all.nl>
8063         * Guid.cs: added stub for Guid(string) ctor
8064
8065 2002-02-17  Duncan Mak  <duncan@ximian.com>
8066
8067         * Convert.cs: Near-complete implementation of Convert.cs
8068
8069         Added all the To* methods taking (object) and
8070         (object, IFormatProvider) as parameters.
8071
8072         Added [CLSCompliant (false)] attributes to methods dealing with
8073         unsigned types.
8074
8075         Added the missing section on converting to and from DateTime. Only
8076         6 missing methods, all marked with MonoTODOs. Will tackle them later.           
8077
8078 2002-02-16  Duncan Mak  <duncan@ximian.com>
8079
8080         * TimeZone.cs: patch from Ajay Kumar Dwivedi (adwiv@yahoo.com) to
8081         make IsDaylightSavingTime (DateTime) call 
8082         IsDaylightSavingTime (DateTime, DaylightTime).  
8083         
8084         Added internal class CurrentTimeZone from Ajay. It needs more work
8085         to fill in the appropriate internal calls.
8086         
8087 Sat Feb 16 12:41:41 CET 2002 Paolo Molaro <lupus@ximian.com>
8088
8089         * Type.cs: fix IsClass.
8090
8091 Sat Feb 16 12:02:02 CET 2002 Paolo Molaro <lupus@ximian.com>
8092
8093         * String.cs: fix Trim().
8094
8095 Fri Feb 15 21:02:46 CET 2002 Paolo Molaro <lupus@ximian.com>
8096
8097         * String.cs: fix more off by one errors.
8098
8099 Thu Feb 14 18:54:09 CET 2002 Paolo Molaro <lupus@ximian.com>
8100
8101         * MonoType.cs: fix IsValueTypeImpl.
8102         * Type.cs: fix IsEnum. Implement Equals methods.
8103
8104 Wed Feb 13 21:50:13 CET 2002 Paolo Molaro <lupus@ximian.com>
8105
8106         * Int32.cs: implement IConvertible interface.
8107         
8108 2002-02-12  Duncan Mak  <duncan@ximian.com>
8109
8110         * TimeZone.cs: Implemented and added to CVS.
8111
8112 2002-02-11  Duncan Mak  <duncan@ximian.com>
8113
8114         * Convert.cs: Implemented the ChangeType () methods.
8115
8116 Mon Feb 11 19:48:58 CET 2002 Paolo Molaro <lupus@ximian.com>
8117
8118         * Array.cs: make Clone() an internal call.
8119
8120 2002-02-09  Duco Fijma <duco@lorentz.xs4all.nl>
8121         * Changed Guid.NewGuid so that it can use both System.Random and 
8122           System.Security.Cryptography.RandomNumberGenerator
8123
8124 2002-02-09  Duco Fijma <duco@lorentz.xs4all.nl>
8125         * First version of Guid.NewGuid
8126
8127 2002-02-08  Duncan Mak  <duncan@ximian.com>
8128
8129         * RuntimeArgumentHandle.cs: Added to CVS.
8130
8131 Fri Feb 8 19:14:54 CET 2002 Paolo Molaro <lupus@ximian.com>
8132
8133         * CrossAppDomainDelegate.cs, AssemblyLoadEventHandler.cs,
8134         UnhandledExceptionEventHandler.cs: added delegates.
8135
8136 Fri Feb 8 18:06:20 CET 2002 Paolo Molaro <lupus@ximian.com>
8137
8138         * MarshalByRefObject.cs: add ToString () method
8139         (apparently needed by nunit).
8140         * _AppDomain.cs: uncomment ToString(): dietmar fixed the bug triggered
8141         by it in the runtime.
8142
8143 2002-02-08  Dan Lewis <dihlewis@yahoo.co.uk>
8144         
8145         * String.cs (Format): implemented
8146
8147 2002-02-07  Duncan Mak  <duncan@ximian.com>
8148         
8149         * DuplicateWaitObjectException:
8150         * InvalidCastException:
8151         * NotImplementedException:
8152         * NotSupportedException:
8153         * NullReferenceException:
8154         * OutOfMemoryException:
8155         * OverflowException:
8156         * RankException:
8157         * StackOverflowException.cs:
8158         * UnauthorizedAccessException: Added missing constructor used for serialization.
8159
8160 2002-02-07  Dietmar Maurer  <dietmar@ximian.com>
8161
8162         * String.cs (System.Compare): bug fix 
8163
8164 2002-02-06  Dietmar Maurer  <dietmar@ximian.com>
8165
8166         * Enum.cs (Parse,  GetHashCode): impl. 
8167
8168 2002-02-05  Duncan Mak  <duncan@ximian.com>
8169
8170         * DBNull.cs: This is my first crack at the DBNull class. I think I
8171         actually got most of the IConvertible methods right, but I haven't
8172         done the research to test whether or not this is the correct
8173         behavior. IConvertible.ToType () is the most iffy of all, IMHO.
8174
8175         * DllNotFoundException.cs: Inherits from TypeLoadException, not SystemException.
8176
8177 2002-02-05  Dietmar Maurer  <dietmar@ximian.com>
8178
8179         * Enum.cs: added more functionality (GetName, ToObject, Equals)
8180
8181 2002-01-31  Duncan Mak  <duncan@ximian.com>
8182
8183         * InvalidOperationException.cs:
8184         * NotFiniteNumberException.cs:
8185         * ObjectDisposedException.cs:
8186         * TypeInitializationException.cs: Added missing bits for serialization/
8187         
8188         * AppDomainUnloadedException.cs:
8189         * ApplicationException.cs:
8190         * ArgumentOutOfRangeException.cs:
8191         * ArithmeticException.cs:
8192         * ArrayTypeMismatchException:
8193         * BadImageFormatException.cs:
8194         * Exception.cs:
8195         * MissingMemberException.cs:
8196         * TypeLoadException.cs: Added missing bits for serialization.
8197
8198 2002-01-30  Duco Fijma <duco@lorentz.xs4all.nl>
8199         * Guid.cs: implemented everything but Guid.NewGuid
8200
8201 Tue Jan 29 22:32:36 CET 2002 Paolo Molaro <lupus@ximian.com>
8202
8203         * _AppDomain.cs: remove ToString() method: it doesn't seem right 
8204         to have it in this interface and it screws up the method vtable setup.
8205
8206 2002-01-28  Andrei Zmievski <andrei@php.net>
8207
8208         * Double.cs: implemented IConvertible interface.
8209
8210 2002-01-28  Miguel de Icaza  <miguel@ximian.com>
8211
8212         * ArgumentException.cs: Implement serialization constructor.
8213         (GetObjectData): Implement serializer.
8214         
8215         * ArgumentNullException.cs: Implement serialization constructor.
8216
8217         * Exception.cs: Implement serialization constructor.
8218         (GetObjectData): Implement serializer.
8219
8220 2002-01-23  Miguel de Icaza  <miguel@ximian.com>
8221
8222         * DateTime.cs (UnixEpoch): The Begining of the Unix epoch.
8223
8224 2002-01-23  Duncan Mak  <duncan@ximian.com>
8225
8226         * EntryPointNotFoundException.cs:
8227         * FormatException: Added missing constructor and related bits.
8228
8229         * TypeLoadException: Added missing constructor, methods and properties.
8230
8231 2002-01-23  Miguel de Icaza  <miguel@ximian.com>
8232
8233         * AppDomain.cs (GetAssemblies): Use foreach construct instead of
8234         manually getting the enumerator.
8235
8236         (AppDomain.AppDomain): Prime the loaded assemblies with the
8237         assemblies loaded by the runtime in our behalf.
8238
8239         * AppDomainSetup.cs: Remove private keyword, that is the default.
8240         Add a new property DisallowPublisherPolicy.
8241
8242         * AppDomain.cs (AppDomain.GetAssemblies): Implement.
8243
8244 Tue Jan 22 22:51:48 CET 2002 Paolo Molaro <lupus@ximian.com>
8245
8246         * MonoType.cs, Type.cs: many updates, corrected implementation,
8247         completed stubs.
8248
8249 2002-01-20  Andrei Zmievski <andrei@php.net>
8250
8251         * Byte.cs:
8252         * Char.cs: implemented IConvertible interface.
8253
8254         * Boolean.cs: use our own ToString() method directly.
8255
8256 2002-01-20  Duncan Mak  <duncan@ximian.com>
8257
8258         * Files I commited recently: Fixed indentation style.
8259
8260 2002-01-20 Nick Drochak  <ndrochak@gol.com>
8261
8262         * SerializableAttribute.cs: this attrib can be used on enums, structs, 
8263         and delegates too. Added the appropriate usage flags.
8264
8265 2002-01-18  Duncan Mak  <duncan@ximian.com>
8266
8267         * CharEnumerator.cs: Implemented.
8268         * String.cs (System): Fixed the GetEnumerator () method(s).
8269
8270         * ObsoleteAttribute.cs:
8271         * STAThreadAttribute.cs:
8272         * MTAThreadAttribute.cs:
8273         * ThreadStaticAttribute.cs:
8274         * LoaderOptimizationAttribute.cs:
8275         * PlatformNotSupportedException.cs:
8276         * LoaderOptimization.cs: Added to CVS.
8277
8278 2002-01-18  Duncan Mak  <duncan@ximian.com>
8279
8280         * AppDomainUnloadedException.cs:
8281         * MethodAccessException.cs:
8282         * ContextMarshalException.cs:
8283         * CannotUnloadAppDomainException.cs:
8284         * DllNotFoundException.cs:
8285         * EntryPointNotFoundException.cs:
8286         * FieldAccessException.cs:
8287         * TypeUnloadedException.cs:
8288         * MissingFieldException.cs: Added to CVS.
8289
8290         * ApplicationException.cs: 
8291         * MemberAccessException.cs:
8292         * MissingMemberException.cs
8293         * MissingMethodException.cs:
8294         * SystemException.cs: Added [Serializable] attribute.
8295
8296         * Exception.cs: Added [Serializable] attribute, made properties
8297         'Message', 'Source' and 'StackTrace' virtual methods, per 1.0
8298         spec.
8299
8300         * ContextStaticAttribute.cs: Added [Serializable] attribute and
8301         put in the missing constructor.
8302
8303         * Environment.cs: Commented out references to
8304         EnvironmentPermissionAttribute, because they're just stubbed out
8305         right now and has no implementation.
8306
8307 2002-01-16  Andrei Zmievski <andrei@php.net>
8308
8309         * Boolean.cs: implemented IConvertible interface
8310
8311 2002-01-15  Nick Drochak  <ndrochak@gol.com>
8312
8313         * ResolveEventArgs.cs: class should derive from EventArgs.
8314
8315 2002-01-14  Miguel de Icaza  <miguel@ximian.com>
8316
8317         * String.cs (System): Use DefaultMemberName for the String class.
8318
8319 Mon Jan 14 17:06:40 CET 2002 Paolo Molaro <lupus@ximian.com>
8320
8321         * String.cs: use IndexerName in index char accessor.
8322
8323 Thu Jan 10 21:05:23 CET 2002 Paolo Molaro <lupus@ximian.com>
8324
8325         * MonoType.cs: add rank to MonoTypeInfo and implement GetArrayRank.
8326         * String.c: eliminate 64k+ method calls in search.
8327         * Type.cs: handle byref and array types in ToString ().
8328
8329 2002-01-09  Duco Fijma <duco@lorentz.xs4all.nl>
8330
8331         * Guid.cs: created first version
8332
8333 2002-01-10  Dietmar Maurer  <dietmar@ximian.com>
8334
8335         * MonoType.cs: added missing TypeAttributes to MonoTypeInfo 
8336
8337 Wed Jan 9 19:35:07 CET 2002 Paolo Molaro <lupus@ximian.com>
8338
8339         * MulticastDelegate.cs: add == and != operator stubs.
8340         * String.cs: check for null in == operator.
8341         * Type.cs: use a virtual method to get TypeAttributes.
8342
8343 Tue Jan  8 23:30:19 EST 2002 Matt Kimball <matt@kimball.net>
8344         * String.cs: Fixed several off-by-one errors in LastIndexOf* methods
8345
8346 2002-01-09  Nick Drochak  <ndrochak@gol.com>
8347         
8348         * Environment.cs: Comment out Security attribute and put a MonoTODO
8349         there as a reminder.  We need mcs magic to handle security attributes in
8350         corlib.
8351
8352 2002-01-07  Duco Fijma <duco@lorentz.xs4all.nl>
8353         * Created IAppDomainSetup.cs
8354
8355 2002-01-06  Duco Fijma <duco@lorentz.xs4all.nl>
8356         * Created System._AppDomain interface in _AppDomain.cs
8357
8358 2002-01-06  Nick Drochak  <ndrochak@gol.com>
8359
8360         * ResolveEventArgs.cs: New File, completely implemented! ;)
8361
8362 Sat Jan 5 15:53:50 CET 2002 Paolo Molaro <lupus@ximian.com>
8363
8364         * Enum.cs: dummy ToString impl.
8365         * String.cs: dummy format implementations to get compiler errors
8366         somewhat working.
8367         * Type.cs: implemented filter delegates. FindMembers runs the filter, now.
8368
8369 2002-01-05  Ravi Pratap  <ravi@ximian.com>
8370
8371         * TODOAttribute.cs : Augment some more; provide two constructors
8372         with support for a comment too.
8373
8374 2002-01-05  Nick Drochak  <ndrochak@gol.com>
8375
8376         * Uncommented those MonoTODO's now that Ravi's got
8377         the class in there
8378
8379 2001-01-04  Ravi Pratap  <ravi@ximian.com>
8380
8381         * TODOAttribute.cs : Actually add this time ;-)
8382
8383         Change name to MonoTODO.
8384
8385 2002-01-04  Jeffrey Stedfast  <fejj@ximian.com>
8386
8387         * String.cs (Trim): Fixed a few logic bugs in the code that
8388         calculated how much to trim off the end of the string.
8389
8390 2001-01-04  Nick Drochak  <ndrochak@gol.com>
8391         
8392         * Commented out the [TODO] attributes for now.  We don't have the
8393         class written.  Also changed it to [MonoTODO]
8394
8395 2002-01-04  Ravi Pratap  <ravi@ximian.com>
8396
8397         * TODOAttribute.cs : Add. We use this attribute to tag all bits in
8398         our class libraries that are incomplete.
8399
8400         * Array.cs : Apply attribute wherever we find a FIXME which says
8401         we need something to be implemented there.
8402
8403         * Int32.cs : Ditto.
8404
8405         * MulticastDelegate.cs : Ditto.
8406
8407         * RuntimeFieldHandler.cs, RuntimeMethodHandle.cs,
8408         RuntimeTypeHandle.cs : Ditto.
8409
8410         * String.cs : Ditto.
8411
8412         * Type.cs : Ditto.
8413
8414         * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs, Delegate.cs : Ditto.
8415
8416         * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs, Single.cs, 
8417         UInt16.cs, UInt32.cs, ValueType.cs: Ditto.
8418
8419         * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs,
8420         Delegate.cs : Ditto.
8421
8422         * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs,
8423         Single.cs, UInt16.cs, UInt32.cs, ValueType.cs: Ditto.
8424         
8425 Thu Jan 3 23:24:04 CET 2002 Paolo Molaro <lupus@ximian.com>
8426
8427         * Delegate.cs: add Remove() stub.
8428         * Enum.cs: add ToObject().
8429         * Type.cs: add IsEnum property.
8430
8431 2002-01-03  Kristian Rietveld  <kris@gtk.org>
8432
8433         * Convert.cs: add non-CLS-compliant ToBoolean methods for char,
8434         DateTime and object.
8435
8436 2001-12-30  Nick Drochak  <ndrochak@gol.com>
8437
8438         * Byte.cs (Parse): Add comments to aid in testing.
8439
8440 2001-12-21  Miguel de Icaza  <miguel@ximian.com>
8441
8442         * Char.cs (Parse): Implement.
8443
8444         * Byte.cs (Parse): Implement a fast parser.
8445         
8446         * SByte.cs (Parse): Implement a fast parser.
8447
8448         * UInt16.cs (Parse): Implement a fast parser.
8449         
8450         * Int16.cs (Parse): Implement a fast parser.
8451
8452         * UInt32.cs (Parse): Implement a fast parser.
8453
8454         * Int32.cs (Parse): Implement a fast parser.
8455
8456 Fri Dec 21 15:14:52 CET 2001 Paolo Molaro <lupus@ximian.com>
8457
8458         * Array.cs: fix null ref in sort code.
8459         * UInt64.cs: add bare-bones parse.
8460
8461 Thu Dec 20 15:29:52 CET 2001 Paolo Molaro <lupus@ximian.com>
8462         
8463         * Byte.cs: removed use of Regexes.
8464
8465 Tue Dec 18 18:39:54 CET 2001 Paolo Molaro <lupus@ximian.com>
8466
8467         * Enum.cs: implemented GetValues(), GetNames(), GetName(),
8468         IsDefined(), GetUnderlyingType().
8469         * String.cs: fix one instance of Compare().
8470         * Type.cs: implemented GetProperties(), GetProperty().
8471
8472 Thu Dec 13 20:10:57 CET 2001 Paolo Molaro <lupus@ximian.com>
8473
8474         * Array.cs: implement CopyTo ().
8475         * Char.cs: implement ToString ().
8476         * Exception.cs: bugfix.
8477         * Int32.cs: bare-bones Parse ().
8478         * MonoType.cs: query the needed info with an internalcall.
8479         * String.cs: speedups, bugfixes, reduced copies.
8480         * Type.cs: added missing fields. Implemented many of the Is*
8481         properties. Implemented GetMethod(), GetConstructor(), GetMethods(),
8482         GetFields(), FindMembers(), ToString().
8483         
8484 2001-12-11  Dick Porter  <dick@ximian.com>
8485
8486         * DateTime.cs: Implemented FromFileTime() and ToFileTime()
8487
8488         * Console.cs: Use handles rather than casting file descriptors
8489
8490 2001-12-08  Nick Drochak  <ndrochak@gol.com>
8491
8492         * Byte.cs (Parse): Start implementation. Parse(string) works, but
8493         now we need to handle other formats
8494
8495 2001-12-06  Dietmar Maurer  <dietmar@ximian.com>
8496
8497         * DateTime.cs: added an icall to GetNow()
8498
8499 2001-12-04  Dietmar Maurer  <dietmar@ximian.com>
8500
8501         * Double.cs: added the parse method from Bob Smith
8502
8503 2001-11-28  Miguel de Icaza  <miguel@ximian.com>
8504
8505         * UInt64.cs: ditto.
8506
8507         * UInt32.cs: ditto.
8508
8509         * Int32.cs (Int32.CompareTo): Fix because we can not just
8510         substract the values.
8511
8512         Return possitive value if the object is null.
8513
8514         * Boolean.cs: (Boolean.CompareTo): ditto.
8515
8516         * Int16.cs (Int16.CompareTo): ditto.
8517
8518         * Byte.cs (Byte.CompareTo): ditto.
8519
8520         * SByte.cs (SByte.CompareTo): ditto.
8521
8522         * Char.cs (Char.CompareTo): ditto.
8523         
8524         * Decimal.cs (Decimal.CompareTo): ditto.
8525
8526         * Int64.cs (Int64.CompareTo): ditto.
8527
8528         * Single.cs: Ditto.
8529
8530         * UInt16.cs: Ditto.
8531
8532 2001-11-28  Nick Drochak <ndrochak@gol.com>
8533
8534         * Byte.cs: Throw NotImplementedException for Parse.
8535
8536 2001-11-27  Derek Holden  <dholden@draper.com>
8537
8538         * IntegerFormatter.cs: Formatting of type "Number" was not
8539         using NumberFormatInfo.NumberNegativePattern.
8540
8541 2001-11-26  Dick Porter  <dick@ximian.com>
8542
8543         * LocalDataStoreSlot.cs: No need to delete a system TLS slot in
8544         the finalise routine any more
8545
8546 2001-11-21  Miguel de Icaza  <miguel@ximian.com>
8547
8548         * ApplicationException.cs: internationalize by adding calls to
8549         Locale.GetText ().  And throw NotImplementedExceptions on calls
8550         that we have to implement.
8551
8552         * Version.cs: Ditto.
8553
8554         * ValueType.cs: ditto.
8555
8556         * UnauthorizedAccessException.cs: ditto.
8557
8558         * UInt32.cs: ditto.
8559
8560         * UInt64.cs: ditto.
8561
8562         * UInt16.cs: ditto.
8563
8564         * TypeLoadException.cs: ditto
8565
8566         * TypeInitializationException.cs: ditto.
8567
8568         * Type.cs: ditto.
8569
8570         * TimeSpan.cs: ditto.
8571
8572         * SystemException.cs: ditto.
8573
8574         * String.cs: ditto.
8575
8576         * StackOverflowException.cs: ditto.x
8577
8578         * Single.cs: ditto.
8579
8580         * SByte.cs: ditto.
8581
8582         * RuntimeTypeHandle.cs: ditto.
8583
8584         * RuntimeMethodHandle.cs: ditto.
8585
8586         * RuntimeFieldHandle.cs: ditto.
8587
8588         * Random.cs: ditto.
8589
8590         * OutOfMemoryException.cs: ditto.
8591
8592         * OperatingSystem.cs: ditto.
8593
8594         * ObjectDisposedException.cs: ditto.
8595
8596         * NullReferenceException.cs: ditto.
8597
8598         * NotImplementedException.cs: ditto.
8599
8600         * NotFiniteNumberException.cs: ditto.o
8601
8602         * MulticastNotSupportedException.cs: ditto.
8603
8604         * MissingMethodException.cs: ditto.
8605
8606         * MemberAccessException.cs: ditto.
8607
8608         * Math.cs: ditto.
8609
8610         * InvalidCastException.cs: ditto.
8611
8612         * IntegerFormatter.cs: ditto.
8613
8614         * Int32.cs: ditto.
8615
8616         * Int16.cs: ditto.
8617
8618         * IndexOutOfRangeException.cs: ditto.
8619
8620         * Environment.cs: ditto
8621
8622         * Enum.cs: ditto.
8623
8624         * DuplicateWaitObjectException.cs: ditto.
8625
8626         * DivideByZeroException.cs: ditto.
8627
8628         * Delegate.cs: ditto
8629
8630         * DecimalFormatter.cs: ditto.
8631
8632         * Decimal.cs: ditto.
8633
8634         * DateTime.cs: ditto.
8635
8636         * Convert.cs: ditto.
8637
8638         * Char.cs: ditto.
8639
8640         * Byte.cs: ditto.
8641
8642         * Boolean.cs: ditto.
8643
8644         * ArrayTypeMismatchException.cs: ditto.
8645
8646         * ArithmeticException.cs: ditto.
8647
8648         * ArgumentOutOfRangeException.cs: ditto.
8649
8650         * ArgumentNullException.cs: ditto.
8651
8652         * Enum.cs: Make it derive from ValueType, add CompareTo method.
8653
8654         * Attribute.cs: Reformat.
8655
8656 2001-11-14  Miguel de Icaza  <miguel@ximian.com>
8657
8658         * Decimal.cs, Double.cs, Byte.cs, Char.cs, Int16, UInt16, Int32,
8659         UInt32, Int64, UInt64, SByte, Single (CompareTo): Throw the
8660         exception if the value is null too.
8661
8662         * Char.cs (CompareTo): ditto.
8663
8664         * ApplicationException.cs: Added constructor that does serialization.
8665
8666         * ParamArrayAttribute.cs: Define attribute correctly.
8667
8668 Wed Nov 14 16:31:19 CET 2001 Paolo Molaro <lupus@ximian.com>
8669
8670         * AppDomain.cs: rename dummy interface _AppDomain to AppDomain_Intf.
8671         * Array.cs: fix Array.Copy.
8672         * AssemblyLoadEventArgs.cs: rename field.
8673         * CLSCompliantAttribute.cs: use correct name for the class.
8674         * Char.cs: fix IsLetter.
8675         * Console.cs, DateTime.cs, Decimal.cs, IConvertible.cs, Math.cs,
8676         SByte.cs, UInt16.cs, UInt32.cs, UInt64.cs, UIntPtr.cs: CLSCompliant updates.
8677         * Convert.cs: CLSCompliant updates, add ChangeType() methods.
8678         * Delegate.cs: renamed target field to m_target.
8679         * Enum.cs: added missing methods.
8680         * MonoType.cs: add a constructor and some needed properties.
8681         * Object.cs: implement GetType().
8682         * String.cs: CLSCompliant updates. Fixes everywhere to remove the
8683         ending 0 char.
8684         * Type.cs: add missing methods/properties.
8685
8686 2001-11-10  Sean MacIsaac  <macisaac@ximian.com>
8687
8688         * AttributeUseage.cs: Should define AttributeUsageAttribute.
8689
8690         * CLSCompliant.cs: Marked with AttributeUsage attribute.
8691
8692         * Decimal.cs: Fixed CLSCompliant attributes.
8693
8694         * Type.cs: changed _impl to internal (needs to be accessable by
8695         subclasses).
8696
8697         (TypeHandle): Marked as abstract, implementation removed.
8698
8699         (IsNotPublic, IsPublic, GetMethods, GetPropery, GetConstructor,
8700         GetMethod): Added stub implementations so NUnit would link against
8701         corlib
8702
8703 Tue Nov 6 09:11:43 CET 2001 Paolo Molaro <lupus@ximian.com>
8704
8705         * AppDomain.cs: use an internal constructor for AssemblyBuilder.
8706
8707 2001-11-05  Miguel de Icaza  <miguel@ximian.com>
8708
8709         * NonSerializedAttribute.cs: Add AttributeUsage rules for this
8710         attribute. 
8711
8712 Fri Nov 2 18:23:15 CET 2001 Paolo Molaro <lupus@ximian.com>
8713
8714         * String.cs: fix a couple of bugs.
8715         * AppDomain.cs: use new AppBuilder constructor.
8716         * Buffer.cs, GC.cs, NonSerializedAttribute.cs,
8717         NotImplementedException.cs, ObjectDisposedException.cs,
8718         UnauthorizedAccessException.cs: add implementation.
8719         * OverflowException.cs: fix class name.
8720
8721 2001-10-28  Jeffrey Stedfast  <fejj@ximian.com>
8722
8723         * String.cs: Don't use a terminating nil char for our internal
8724         array.
8725
8726 2001-10-27  Miguel de Icaza  <miguel@ximian.com>
8727
8728         * Delegate.cs (Delegate.CombineImpl): Implement.
8729         (Delegate.Combine): Implement.
8730
8731         * MulticastDelegate.cs (MulticastDelegate.Equals): Implement.
8732
8733         (MulticastDelegate.CombineImpl): This was not as trivial as I
8734         thought. 
8735
8736         * ContextStaticAttribute.cs: Added AttributeUsage to
8737         ContextStaticAttribute. 
8738
8739         * FlagsAttribute.cs: Add AttributeUsage to FlagsAttribute
8740
8741 2001-10-15  Martin Weindel <martin.weindel@t-online.de>
8742
8743         * added Decimal.cs * added DecimalFormatter.cs (internal class
8744         used from System.Decimal)
8745
8746 2001-10-11  Thomas Neidhart <tome@sbox.tugraz.at>
8747
8748         * Convert.cs: Added methods for Base64 transforming just used the
8749           existing System.Security.Cryptography.ToBase64Transform, should
8750           be changed to use a stand-alone class, e.g. Base64Encoder
8751           
8752 2001-10-10  Derek Holden  <dholden@draper.com>
8753
8754         * IntegerFormatter.cs: Added. Implements ToString for all the
8755         integer data types for all the format types.
8756
8757         * Byte.cs: Using IntegerFormatter for ToString's.
8758
8759         * SByte.cs: Using IntegerFormatter for ToString's.
8760
8761         * Int16.cs: Using IntegerFormatter for ToString's.
8762
8763         * Int32.cs: Using IntegerFormatter for ToString's.
8764
8765         * Int64.cs: Using IntegerFormatter for ToString's.
8766
8767         * UInt16.cs: Using IntegerFormatter for ToString's.
8768
8769         * UInt32.cs: Using IntegerFormatter for ToString's.
8770
8771         * UInt64.cs: Using IntegerFormatter for ToString's.
8772
8773 2001-10-07  Miguel de Icaza  <miguel@ximian.com>
8774
8775         * Exception.cs: Implement bits of serialization.
8776
8777         * RuntimeFieldHandle.cs: Implement Serialization features.
8778
8779         * Type.cs: Implement TypeHandle property.
8780
8781 2001-09-28  Dick Porter  <dick@ximian.com>
8782
8783         * LocalDataStoreSlot.cs: Implemented
8784
8785 Tue Sep 25 19:58:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
8786
8787         * String.cs: fix off-by-one error in Trim().
8788
8789 Tue Sep 25 18:52:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
8790
8791         * Type.cs: added GetType () method.
8792
8793 Tue Sep 25 17:29:02 CEST 2001 Paolo Molaro <lupus@ximian.com>
8794
8795         * MissingMethodException.cs, MissingMemberException.cs,
8796         MemberAccessException.cs: added.
8797
8798 Tue Sep 25 16:46:43 CEST 2001 Paolo Molaro <lupus@ximian.com>
8799
8800         * String.cs: don't access the string array out of bounds in
8801         LastIndexOf.  * Type.cs: fix return type of the Assembly property.
8802
8803 Mon Sep 24 20:35:24 CEST 2001 Paolo Molaro <lupus@ximian.com>
8804
8805         * String.cs: make Intern and IsIntern internalcalls.
8806
8807 2001-09-13  Dick Porter  <dick@ximian.com>
8808
8809         * Type.cs: Added a stub for the IsValueType property.
8810
8811         * SystemException.cs (System): Added the other constructor, so
8812         that System.Threading exceptions can inherit it.
8813
8814 2001-09-08  Jeffrey Stedfast  <fejj@ximian.com>
8815
8816         * String.cs (TrimStart): Don't keep looping through the trimchars
8817         once we've found a match.
8818         (TrimEnd): Same here.
8819         (Trim): And finally here.
8820
8821 2001-09-07  Ravi Pratap  <ravi@ximian.com>
8822
8823         * Char.cs (IsLetterOrDigit): Implement.
8824         (IsLower): Implement, but we need to be Unicode aware.
8825         (IsNumber): Implement.
8826         (IsPunctuation): Implement.
8827         (IsWhiteSpace): Implement.
8828         (ToUpper): Fix to subtract 32 from the ASCII value, not 33 :)
8829         (ToLower): Same here.
8830
8831 2001-09-04  Miguel de Icaza  <miguel@ximian.com>
8832
8833         * Object.cs: Shortcut, if (a == b) then return true.
8834
8835 Fri Sep 7 18:34:48 CEST 2001 Paolo Molaro <lupus@ximian.com>
8836
8837         * Delegate.cs: we need a pointer to the method thunk in
8838         the delegate object.
8839
8840 Fri Sep 7 12:28:01 CEST 2001 Paolo Molaro <lupus@ximian.com>
8841
8842         * AsyncCallback.cs, common.src: add AsyncCallback delegate.
8843
8844 2001-09-06  Jeffrey Stedfast  <fejj@ximian.com>
8845
8846         * String.cs (System): Don't mix uint and int.
8847
8848 2001-09-04  Jeffrey Stedfast  <fejj@ximian.com>
8849
8850         * String.cs (BoyerMoore): Modified to not use pointers and to instead
8851         use indexes.
8852         (IndexOf): Use BoyerMoore.
8853
8854 2001-09-02  Miguel de Icaza  <miguel@ximian.com>
8855
8856         * All over: Use the autogenerated enumerations from the ECMA
8857         documentation that Sergey wrote.
8858         
8859         * PlatformID.cs: Add Unix definition.
8860
8861         * OperatingSystem.cs: Use Unix instead of Linux here.
8862
8863         * MarshalByRefObject.cs: Mark class as [Serializable].
8864
8865 2001-08-28  Dietmar Maurer  <dietmar@ximian.com>
8866
8867         * Console.cs: impl. (write only)
8868         implemented the stdin stuff
8869
8870         * Int32.cs: impl. real op_Equal
8871
8872 2001-08-24  Miguel de Icaza  <miguel@ximian.com>
8873
8874         * (common.src): Removed IAsyncResult as it is not on CVS yet.
8875
8876         * UIntPtr.cs: Removed CLSCompliant attribute before the namespace,
8877         as it breaks the build.
8878
8879 2001-08-23  Michael Lambert <michaellambert@email.com>
8880
8881         * IntPtr.cs: Optimized unsafe declaration, implemented GetObjectData, 
8882         added CLSCompliant attribute
8883
8884         * IAsyncResult.cs: Added
8885
8886         * common.src: Added IAsyncResult.cs
8887
8888 2001-08-23  Michael Lambert <michaellambert@email.com>
8889
8890         * UIntPtr.cs: Added
8891
8892         * common.src: Added UIntPtr.cs
8893
8894 2001-08-20  Dietmar Maurer  <dietmar@ximian.com>
8895
8896         * Attribute.cs: uncomment some code to make it compile again
8897
8898         * mono.src: removed duplicated Attribute.cs
8899
8900 2001-08-16  Nick Drochak <ndrochak@gol.com>
8901
8902         * Attribute.cs: implemented all methods except GetHashCode()
8903
8904         * common.src: added Attribute.cs so it would compile in
8905
8906 2001-08-10  Dietmar Maurer  <dietmar@ximian.com>
8907
8908         * Object.cs: changed MemberWiseClone to MemberwiseClone, and
8909         marked it as InternalCall
8910         
8911         * common.src: removed UriFormatException.cs because the file is
8912         not there.
8913
8914         * RuntimeTypeHandle.cs: replaced IntrPtr with IntPtr
8915         * Char.cs: replaced byte with char
8916
8917         * Array.cs: make it work with the mono interpreter
8918
8919 2001-08-06  Miguel de Icaza  <miguel@ximian.com>
8920
8921         * Version.cs: Make the class sealed
8922
8923 2001-08-08  Bob Smith  <bob@thestuff.net>
8924
8925         * Random.cs: Many compile fixes.
8926         * Random.cs: I read a bad spec. Class updated to match real spec.
8927
8928 2001-08-06  Miguel de Icaza  <miguel@ximian.com>
8929
8930         * IntPtr.cs: Added and Completed implementation.
8931
8932         * Uri.cs: Add a note.
8933
8934 2001-08-06  Bob Smith  <bob@thestuff.net>
8935
8936         * Random.cs: Compile fix. Needs more testing.
8937
8938 2001-08-06 Garrett Rooney <rooneg@electricjellyfish.net>
8939
8940         * Uri.cs: Initial Implementation.  Parsing needs to be fixed to take 
8941         into account IPv6 addresses, url encoding needs to be implemented, and 
8942         various minor methods need to be written, but this is a decent start.
8943
8944 2001-08-06  Dietmar Maurer  <dietmar@ximian.com>
8945
8946         * common.src: added Object.cs
8947
8948         * mono.src: added ValueType.cs
8949
8950 2001-08-02  Dietmar Maurer  <dietmar@ximian.com>
8951
8952         * Math.cs: replaced libc with libm
8953
8954 2001-08-02  Bob Smith  <bob@thestuff.net>
8955
8956         * Random.cs: Implemented. Needs testing.
8957
8958 2001-08-02  Miguel de Icaza  <miguel@ximian.com>
8959
8960         * IServiceProvider.cs, EventHandler.cs: New files.
8961
8962 2001-08-02  Marcel Narings  <marcel@narings.nl>
8963         
8964         * DateTime.cs: Cleaned up a bit. Added the Add* family members.
8965         Added exceptions. Added IConvertible. Still needs some platform 
8966         dependend stuff, the Parse and ToString members
8967
8968 2001-08-01  Dietmar Maurer  <dietmar@ximian.com>
8969
8970         * Type.cs (GetTypeFromHandle): added placeholder 
8971
8972 2001-07-24  Derek Holden  <dholden@draper.com>
8973
8974         * Boolean.cs: Formatted to code style standard. Added GetTypeCode
8975         which is really an IConvertible defined method.
8976
8977         * Byte.cs: Added a missing Parse method. Put in Parse and ToString
8978         behavior, still need to do the main Parse and ToString.
8979
8980         * Char.cs: Added a bunch of missing ECMA methods. Commented a
8981         specification discrepency. Still didn't any unicode stuff, though
8982         every IsFoo(char c) method has an IsFoo(string, index)
8983         counterpart, added wrappers for those.
8984         
8985         * Convert.cs: Fixed NaN/Inf checking and double/float
8986         rounding. Added ToType for IConvertible classes
8987
8988         * Double.cs: Fixed ECMA min and max values. Added IsInfinity /
8989         IsNaN methods. Changed Inf/NaN internals.
8990
8991         * IConvertible.cs: Added comments for using
8992         Convert.ToType. Changed return values to draft base values.
8993
8994         * Int16.cs: Added a missing Parse statement. Put in behavior for
8995         overloaded ToString and Parse methods.
8996
8997         * Int32.cs: Added a missing Parse statement. Put in behavior for
8998         overloaded ToString and Parse methods.
8999
9000         * Int64.cs: Added a missing Parse statement. Put in behavior for
9001         overloaded ToString and Parse methods.
9002         
9003         * Single.cs: Put in ECMA epsilon value. Added IsInfinity / IsNaN
9004         methods. Changed Inf/NaN internals.
9005
9006         * SByte.cs: Added a missing Parse method. Put in Parse and
9007         ToString behavior, still need to do the main Parse and ToString.
9008
9009         * UInt16.cs: Added a missing Parse statement. Put in behavior for
9010         overloaded ToString and Parse methods.
9011
9012         * UInt32.cs: Added a missing Parse statement. Put in behavior for
9013         overloaded ToString and Parse methods.
9014
9015         * UInt64.cs: Added a missing Parse statement. Put in behavior for
9016         overloaded ToString and Parse methods.
9017         
9018 2001-07-20  Miguel de Icaza  <miguel@ximian.com>
9019
9020         * MulticastDelegate.cs: New File.
9021
9022         * Delegate.cs: New file.
9023
9024         * Enum.cs: New file.
9025
9026         * Attribute.cs: New file.
9027
9028         * Type.cs: New file.
9029
9030         * ParamArrayAttribute.cs: New file.
9031
9032         * RuntimeTypeHandle.cs: New file.
9033
9034         * MulticastDelegate.cs: Added.
9035
9036         * DateTime.cs: Added
9037
9038         * Delegate.cs: Added
9039
9040 2001-07-18  Michael Lambert <michaellambert@email.com>
9041
9042         * AttributeTargets.cs: Add.
9043
9044 2001-07-19  Jeffrey Stedfast  <fejj@ximian.com>
9045
9046         * Char.cs: Made ToUpper and ToLower public methods.
9047
9048         * String.cs: Lots and lots of compile fixes - just need to write
9049         DateTime.cs and this should build completely now.
9050
9051 2001-07-19  Bob Smith (bob@thestuff.net)
9052
9053         * Math.cs: Implemented. 
9054
9055 2001-07-19  Miguel de Icaza  <miguel@ximian.com>
9056
9057         * String.cs: Removed tolower and toupper.
9058
9059         * Char.cs: Moved ToLower and ToUpper from string to here. 
9060
9061         * Convert.cs ToByte (float value), ToByte (double value) Use IsNan
9062         instead of comparing the value to Nan.
9063
9064 2001-07-19  Duco Fijma (duco@lorentz.xs4all.nl)
9065
9066         * TimeSpan.cs: New implementation.
9067
9068 2001-07-18  Scott Sanders <scott@stonecobra.com>
9069
9070          * UriFormatExcpetion.cs: Add - 85% complete
9071
9072 2001-07-17  Jeffrey Stedfast  <fejj@ximian.com>
9073
9074         * String.cs (IndexOf): Slight optimization that allows skipping
9075         over a few chars here and there. This isn't as good as using my
9076         Boyer-Moore implementation, however, Boyer-Moore is only really
9077         good for long strings (I plan on making the code decide which
9078         string search algorithm it should use on-the-fly at some point).
9079         (LastIndexOf): Fix to work correctly.
9080         (BoyerMoore): Took out some unneeded code and fixed an edge-case.
9081
9082 2001-07-16  Michael Lambert <michaellambert@email.com>
9083
9084         * EventArgs.cs: Add.
9085         
9086 2001-07-16  Miguel de Icaza  <miguel@ximian.com>
9087
9088         * Version.cs: Remove my buggy comment.
9089
9090 2001-07-15  Sean MacIsaac  <macisaac@ximian.com>
9091
9092         * String.cs: Spelling error of IComparable, object's
9093         MemberwiseClone cannot be overridden.  Made indexer valid for now,
9094         but not sure what to do about this in the long run.  Seems to be a
9095         couple bugs in csc.exe having to do with multiple pointer defs in
9096         the same statement, and returning subclasses of a class in the
9097         return type of an interface function implementation.  Also moved
9098         operators inside of class definition.
9099
9100 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
9101
9102         * String.cs: A tom of compile fixes, although we still don't compile.
9103
9104         * IConvertible.cs: The To*Int64() methods return *Int64's, not
9105         *Int32's. Also, it's ToDateTime() not ToDateType().
9106
9107 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
9108
9109         * String.cs: Apparently I needed to at least write stubs for the
9110         IConvertible interfaces. *sigh*
9111
9112 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
9113
9114         * String.cs: Many logic/other fixes and better usage of the
9115         features of c#
9116         (tolower): New convenience method to help condense code.
9117         (toupper): Another new helper method.
9118         (Compare): Use the new helper methods.
9119         (ToLower): use tolower().
9120         (ToUpper): use toupper().
9121         (LastIndexOfAny): Implemented.
9122         (BoyerMoore): New private helper method that implements a modified
9123         version of the Boyer-Moore search algorithm. Noothing uses it yet
9124         as I'm not 100% sure it even works properly with unicode strings
9125         not to mention it uses a huge lookup-table :-)
9126         (Split): Implemented.
9127
9128 2001-07-13  Jeffrey Stedfast  <fejj@ximian.com>
9129
9130         * TODO: Added things that need to be finished in System.String
9131
9132         * String.cs: New source file implementing the System.String class
9133
9134 2001-07-12  Sean MacIsaac  <macisaac@ximian.com>
9135
9136         * TypeCode.cs: UInt64 was UInt63.
9137
9138         * Object.cs: Fixed a numer of compiler errors.
9139
9140         * Array.cs: Fixed some compiler errors.
9141
9142         * IComparable.cs: Fixed some compiler errors.
9143
9144         * ICloneable.cs: Fixed some compiler errors.
9145
9146         * IConvertible.cs: Fixed some compiler errors.
9147
9148         * IFormattable.cs: Fixed a compiler error.
9149
9150         * IFormatProvider.cs: Fixed a compiler error.
9151
9152         * IDisposable.cs: Fixed a compiler error.
9153
9154         * IFormatProvider.cs: Added public accesability type to
9155         IFormatProvider.
9156
9157         * Exception.cs: Added a using statement to remove compile time
9158         error.
9159
9160         * ApplicationException.cs: Removed a ; that was causing a compiler
9161         error.
9162
9163         * Int16.cs: Fixed some compiler errors.
9164
9165         * Int32.cs: Fixed some compiler errors.
9166
9167         * Int64.cs: Fixed some compiler errors.
9168
9169         * SystemException.cs: Fixed a compiler error.
9170
9171         * UInt16.cs: Fixed some compiler errors.
9172
9173         * UInt32.cs: Fixed some compiler errors.
9174
9175         * UInt64.cs: Fixed some compiler errors.
9176
9177         * Void.cs: Fixed a compiler error.      
9178
9179 2001-07-12  Joe Shaw  <joe@ximian.com>
9180
9181         * Array.cs: Fix backwards parameters to Array.SetValue()
9182         throughout.
9183         (BinarySearch): Fix backward logic surrounding whether to call
9184         value.CompareTo or comparer.Compare.
9185         (LastIndexOf): Stop being stupid. I am so not used to strongly
9186         bounded arrays...
9187         (Sort): Implement a quicksort.
9188
9189 2001-07-11  Joe Shaw  <joe@ximian.com>
9190
9191         * Array.cs: Change all instances of trying to access an array with
9192         the index operator to calls to GetValue and SetValue, and add
9193         InternalGetValue and InternalSetValue which are internal calls
9194         into the runtime. Ew.
9195
9196 2001-07-10  Joe Shaw  <joe@ximian.com>
9197
9198         * Array.cs: Implemented everything but Sort().
9199
9200 2001-07-09  Jeffrey Stedfast  <fejj@ximian.com>
9201
9202         * Object.cs (Object::Equals): Object variable name is `o'.
9203
9204 2001-07-06  Joe Shaw  <joe@ximian.com>
9205
9206         * Int16.cs, Int32.cs, Int64.cs, UInt16.cs, UInt32.cs, UInt64.cs:
9207         Implement the IComparable and IFormattable interfaces. Fix a typo
9208         (publig -> public)
9209
9210         * ApplicationException.cs, ArgumentException.cs,
9211         ArgumentNullException.cs, ArgumentOutOfRangeException.cs,
9212         ArtithmeticException.cs, ArrayTypeMismatchException.cs,
9213         DivideByZeroException.cs, DuplicateWaitObjectException.cs,
9214         ExecutionEngineException.cs, FormatException.cs,
9215         IndexOutOfRangeException.cs, InvalidCastException.cs,
9216         InvalidOperationException.cs, InvalidProgramException.cs,
9217         MulticateNotSupportedException.cs, NotFiniteNumberException.cs,
9218         NotSupportedException.cs, NullReferenceException.cs,
9219         OutOfMemoryException.cs, OverflowException.cs, RankException.cs,
9220         StackOverflowException.cs, SystemException.cs,
9221         TypeInitializationException.cs: Added all of the exceptions
9222         specified by the language spec. Mmmm... bloat.
9223
9224 2001-07-06  Miguel de Icaza  <miguel@ximian.com>
9225
9226         * Int64.cs, Int32.cs: Put.  Parsing and ToString missing.  Should
9227         do a generic routine all of these guys use.
9228
9229         * Int16.cs: identified missing methods.
9230
9231         * UInt16.cs, UInt32.cs, UInt64.cs: Add.
9232
9233 2001-06-26  Miguel de Icaza  <miguel@ximian.com>
9234
9235         * TypeCode.cs: Implement
9236
9237         * Void.cs: Implement.
9238
9239         * TODO: Add file to keep track of pending tasks.
9240
9241         * Object.cs, ValueType.cs: Implement.