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