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