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