* Char.cs: New managed implementation. Modified patch by
[mono.git] / mcs / class / corlib / System / ChangeLog
1 2004-03-04  Jackson Harper  <jackson@ximian.com>
2
3         * Char.cs: New managed implementation. Modified patch by Andreas Nahr.
4         
5 2004-02-27  Lluis Sanchez Gual <lluis@ximian.com>
6
7         * String.cs: Concat() fixed crash when one of the arguments is an object
8           whose ToString() method returns null.
9         * TypeLoadException.cs: Added some serialization fiels, needed for
10           compatibility with MS.NET.
11
12 2004-02-23 Ben Maurer  <bmaurer@users.sourceforge.net>
13
14         * String.cs (Equals): Speed up this method by avoiding Array
15          Bounds Checks and by comparing by 32 bit words rather than 16 bit chars.
16
17         This gives between 0x (for 1 char) and >2x (for large strings)
18         factor of improvement.
19
20         A big thanks to Miguel, who suggested the integer compares.
21
22 2004-02-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
23
24         * MonoType.cs: use the binder in GetPropertyImpl.
25
26 2004-02-22  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
27
28         * Math.cs: MonoStyled, replaced space with tabs,
29           speedup of some methods by avoiding method calls
30
31 2004-02-18  Atsushi Enomoto  <atsushi@ximian.com>
32
33         * Char.cs : optimized IsSeparator(), IsWhiteSpace() and IsDigit().
34           (Moved from InternalCall to Managed code).
35
36 2004-02-17  Martin Baulig  <martin@ximian.com>
37
38         * MonoType.cs (GetConstructors): Renamed the interncall to
39         GetConstructors_internal(), made it internal and added a `Type
40         reflected_type' argument to it.
41         (GetEvents, GetFields): Likewise.
42         (GetMethodsByName): Added `Type reflected_type' argument.
43         (GetPropertiesByName): Likewise.
44
45 2004-02-16  Jackson Harper  <jackson@ximian.com>
46
47         * FloatingPointFormater.cs: Allow precision to be up to the number
48         of decimals without rounding.
49         
50 2004-02-14  Zoltan Varga  <vargaz@freemail.hu>
51
52         * Delegate.cs (Equals): Do not compare method_ptr, since it might
53         point to a trampoline.
54
55 2004-02-12  Jackson Harper  <jackson@ximian.com>
56
57         * AppDomainSetup.cs: If relative paths are used they should be
58         rooted in the temp directory.
59         
60 2004-02-11  Marek Safar  <marek.safar@seznam.cz>
61
62         * Type.cs (FilterNameIgnoreCase_impl): Added extra check for speedup.
63
64 2004-02-10  Zoltan Varga  <vargaz@freemail.hu>
65
66         * AppDomain.cs (Load): Check that assemblyRef.Name is not empty, to
67         avoid an assert in the runtime.
68
69 2004-02-08  Duncan Mak  <duncan@ximian.com>
70
71         * Convert.cs (ToType): Always let a Convert.ChangeType call
72         succeed if the source object is already of the destination type.
73
74         Patch by Ian MacLean (ianm@activestate.com).
75
76 2004-02-05  Sebastien Pouliot  <sebastien@ximian.com>
77
78         * AppDomain.cs: Implemented SetPrincipalPolicy and SetThreadPrincipal.
79
80 2004-02-02  Zoltan Varga  <vargaz@freemail.hu>
81
82         * Environment.cs: Bump corlib version.
83
84 2004-02-02  Sebastien Pouliot  <sebastien@ximian.ca>
85
86         * DateTime.cs: Corrected support for "Z" in the mask (Parse). This
87         fix bug #53461.
88
89 2004-01-27  Sebastien Pouliot  <spouliot@videotron.ca>
90
91         * Exception.cs: Changed ToString to remove the \n when no stack trace
92         is present (which fixed a unit test for SecurityException). Changed
93         all \n to Environment.NewLine.
94
95 2004-01-27  Lluis Sanchez Gual <lluis@ximian.com>
96
97         * ContextBoundObject.cs: Removed TODO.
98
99 2004-01-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
100
101         * TimeSpan.cs: fixed bug #52075. Days (int) don't rely on TotalDays
102         (double), which might round up.
103
104 2004-01-19  Jackson Harper <jackson@ximian.com>
105
106         * FloatingPointFormatter.cs: Use the default decimal digits count
107         if they are not specified. This fixes bug #52927.
108         
109 2004-01-19  Zoltan Varga  <vargaz@freemail.hu>
110
111         * Environment.cs: Bump version number.
112
113 2004-01-19  Lluis Sanchez Gual  <lluis@ximian.com>
114
115         * Type.cs: Added internal call for IsInstanceOfType. The old implementation
116         uses IsAssignableFrom(o.GetType()), which is not always valid for 
117         transparent proxies (because GetType will not return the type of the remote
118         object if its assembly is not present).
119
120 2004-01-18  David Sheldon <dave-mono@earth.li>
121
122   * FloatingPointFormatter.cs: Skip the decimal point if we have an 
123     integer mantassa. So: 1E+15, rather than 1.E+15.
124
125 2004-01-18  David Sheldon <dave-mono@earth.li>
126
127         * Array.cs (GetValue/SetValue): Throw NullRef exception like .NET 1.1, 
128         even though docs say it should be an ArgumentNull. Two test cases now
129   pass. See also nickd's commit of 2003-12-24.
130
131 2004-01-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
132
133         * Environment.cs: increased corlib version.
134
135 2004-01-14  Lluis Sanchez Gual <lluis@ximian.com>
136
137         * MonoCustomAttrs.cs: Removed attribute cache. Attribute instances can't
138         be reused because they could be modified. This fixes bug #52655.
139
140 2004-01-12  Patrik Torstensson
141
142         * Environment.cs: Bump corlib version number due to new StringBuilder
143         
144         * String.cs: New internal method to support the new StringBuilder that
145         uses the string as a buffer (until ToString is called)
146
147 2004-01-12  Zoltan Varga  <vargaz@freemail.hu>
148
149         * Environment.cs: Bump corlib version number for real this time.
150         
151         * AppDomain.cs (LoadAssembly): Pass the assembly name as a string to
152         the runtime, so it can take into account the Culture etc.
153
154         * Environment.cs: Bump corlib version number.
155         
156 2004-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
157
158         * MonoType.cs: GetMethods renamed to GetMethodsByName. It takes a
159         new parameter with the method name and a boolean for ignoring case.
160         Removed some string comparisons no longer needed.
161
162 2004-01-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
163
164         * MonoType.cs: GetProperties renamed to GetPropetiesByName. It takes a
165         new parameter with the property name and a boolean for ignoring case.
166         Fixes bug #52753.
167
168 2004-01-11  David Sheldon <dave-mono@earth.li>
169
170         * DateTime.cs: Correct processing of formats with multiple '-'s, fixing
171         bug 52274.
172
173 2004-01-10  Zoltan Varga  <vargaz@freemail.hu>
174
175         * AppDomain.cs: Keep track of type resolve and assembly resolve 
176         events in progress to prevent infinite recursion.
177
178 2004-01-06  Miguel de Icaza  <miguel@ximian.com>
179
180         * Console.cs: Test for UTF-8 being present anywhere on the
181         string, also do ToUpper instead of ToLower, which will work even
182         around the ICU bug with different locales (#52065), and addresses #52101
183
184 2004-01-05  Zoltan Varga  <vargaz@freemail.hu>
185
186         * Environment.cs: Bump version.
187
188 2003-12-24 Ben Maurer  <bmaurer@users.sourceforge.net>
189
190         * Type.cs (IsNotPublic): One would normally assume that
191         IsNotPublic == !IsPublic, but this is not the case (note to MS,
192         make better names ;-). Fixes #52547, `Type.IsNotPublic not 
193         correct for Nested types'
194
195 2003-12-24  Nick Drochak  <ndrochak@ieee.org>
196
197         * Array.cs (CreateInstance): Throw NullRef exception like .NET 1.1, 
198         even though docs say it should be an ArgumentNull. Sent email to MS
199         about this "bug".
200
201 2003-12-23  Lluis Sanchez Gual  <lluis@ximian.com>
202
203         * Exception.cs: Several changes to make it compatible with MS.NET (needed
204         for remoting interoperability): set a default value for hresult, added 
205         initialization of class_name, serialization field RemoteStackTrace must
206         be RemoteStackTraceString, added ser. field ExceptionMethod.
207
208         * IndexOutOfRangeException.cs: Added serialization constructor.
209
210 2003-12-22  Bernie Solomon  <bernard@ugsolutions.com>
211
212         * Int32 (Parse):
213           Int64 (Parse): Fix overflow checking for AllowHexSpecifier
214
215 2003-12-20  Zoltan Varga  <vargaz@freemail.hu>
216
217         * MonoType.cs (GetMethodImpl): Only call FindMostDerivedMatch if the
218         user supplied no parameter info, but not when the user supplied an
219         empty parameter list. This fixes IKVM.
220
221         * Environment.cs: Bump corlib version.
222
223 2003-12-19  Dick Porter  <dick@ximian.com>
224
225         * String.cs: Added Compare shortcut for length==0.
226
227 2003-12-17  Zoltan Varga  <vargaz@freemail.hu>
228
229         * Environment.cs: Bump corlib version.
230
231 2003-12-17  Dick Porter  <dick@ximian.com>
232
233         * String.cs: Fix StartsWith and EndsWith when the argument is the
234         empty string.  Fixes bug 52283.
235
236 2003-12-16  Zoltan Varga  <vargaz@freemail.hu>
237
238         * Environment.cs (HasShutdownStarted): Implement.
239
240 2003-12-15  Zoltan Varga  <vargaz@freemail.hu>
241
242         * Environment.cs (HasShutdownStarted): Make this static under NET 1.1.
243         
244         * Environment.cs: Bump version number.
245
246 2003-12-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
247
248         * DateTime.cs: don't bail out with that year out of range error on
249         stuff like "MM/dd/yyyy HH:MM:ss".
250
251 2003-12-13  Zoltan Varga  <vargaz@freemail.hu>
252
253         * Environment.cs: Make it a const instead.
254         
255         * Environment.cs: Make version field static.
256
257 2003-12-10  Zoltan Varga  <vargaz@freemail.hu>
258
259         * Type.cs: Make DefaultBindingFlags protected.
260
261         * Environment.cs: Applied patch from Todd Berman (tbermann@gentoo.org).
262         Add new GacPath property + its associated icall.
263
264 2003-12-09 Anirban Bhattacharjee <banirban@novell.com>
265
266         * DateTime.cs : Bugs fixed (41845, 51422)
267         * MonoType.cs : Exception message changed 
268
269 2003-12-08  Martin Baulig  <martin@ximian.com>
270
271         * Type.cs (MakeByRefType): New public method.
272
273 2003-12-08  Zoltan Varga  <vargaz@freemail.hu>
274
275         * Environment.cs: Add a version number for the corlib-runtime interface
276         to make it easier to diagnose problems resulting from a mismatch 
277         between the two.
278
279 2003-12-08  Patrik Torstensson   <p@rxc.se>
280
281         * Type.cs (GetMethod): Check type arguments within array
282         * MonoType.cs (GetMethodImpl): Handle methods with a new slot
283         (same signature but different classes (derived level)
284
285 2003-12-07  Zoltan Varga  <vargaz@freemail.hu>
286
287         * Type.cs (MakeArrayType): Add argument checking.
288
289 2003-12-06  Dick Porter  <dick@ximian.com>
290
291         * String.cs: Don't use CompareInfo for non-culture-sensitive
292         IndexOf and LastIndexOf methods.
293
294 2003-12-06  Ravindra  <rkumar@novell.com>
295
296         * DateTime.cs: Made Parse(string, IFormatProvider) method to
297         use second argument. Fixed bug #51464.
298
299 2003-12-04  Martin Baulig  <martin@ximian.com>
300
301         * Type.cs (Type.MakeArrayType): New public method.
302
303 2003-12-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
304
305         * Buffer.cs:
306         (BlockCopy): make the exception thrown helpful.
307
308 2003-12-03  Dick Porter  <dick@ximian.com>
309
310         * String.cs: Calling Replace on an empty string returns itself.
311
312 2003-12-03  Zoltan Varga  <vargaz@freemail.hu>
313
314         * MonoType.cs: Get rid of get_type_info, use a separate icall for
315         each property instead.
316
317 2003-12-02  Dick Porter  <dick@ximian.com>
318
319         * Decimal.cs: Fix NumberFormatInfo lookup.  Patch by
320         Mohammad DAMT (mdamt@cdl2000.com), fixes bug 51443.
321
322 2003-12-01  Dick Porter  <dick@ximian.com>
323
324         * String.cs: Make Compare, IndexOf, LastIndexOf, StartsWith,
325         Replace, ToLower, ToUpper and Equals use the correct CultureInfo.
326
327 2003-11-28  Dick Porter  <dick@ximian.com>
328
329         * Type.cs: 
330         * MonoType.cs: 
331         * Enum.cs: 
332         * Boolean.cs: Do string compares with the Invariant culture.
333
334 2003-11-27 Ben Maurer  <bmaurer@users.sourceforge.net>
335
336         * Array.cs: make the enumerator ICloneable
337
338 2003-11-27 Ben Maurer  <bmaurer@users.sourceforge.net>
339
340         * Decimal.cs (ToXXX): Call Convert.ToXXX.
341
342 2003-11-26  Zoltan Varga  <vargaz@freemail.hu>
343
344         * AppDomain.cs: Applied patch from ztashev@openlinksw.co.uk (Zdravko Tashev). 
345         Implement Load(byte[]) methods.
346
347         * BadImageFormatException.cs: Fix ToString.
348
349 2003-11-24  Zoltan Varga  <vargaz@freemail.hu>
350
351         * MonoType.cs: Make Standard|HasThis match Standard in GetMethod and
352         GetConstructor, as done by MS.
353
354 2003-11-19  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
355
356         * FloatingPointFormatter.cs: Removed some unused variables to prevent csc compiler warnings
357
358 2003-11-18  Lluis Sanchez Gual  <lluis@ximian.com>
359
360         * TypeInitializationException.cs: Added missing serialization constructor.
361
362 2003-11-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
363
364         * AppDomainSetup.cs: Don't add an extra '/' at the end of 
365         ApplicationBase. The tests pass now with mono.
366
367 2003-11-18  Zoltan Varga  <vargaz@freemail.hu>
368
369         * ValueType.cs: New optimized implementation for Equals and GetHashCode.
370
371 2003-11-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
372
373         * Environment.cs: use Directory in CurrentDirectory property.
374         We were not throwing any exception when setting the directory to an
375         invalid path.
376
377 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
378
379         * Array.cs:
380         * Delegate.cs: implemented 1.1 stuff.
381
382         * Enum.cs:
383         * IntPtr.cs: removed extra attribute.
384         * PlatformID.cs: added WinCE.
385
386 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
387
388         * ValueType.cs:
389         (Equals): compare the fields of structs too.
390         (GetHashCode): combine the hash code of all the fields.
391         Fixes bug #50901 (will remove the icall in a couple of days).
392
393 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
394
395         * Array.cs: fixed Clear for non-zero bounded arrays. Fixes bug #50968.
396
397 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
398
399         * DateTime.cs: handle century when we try to parse 4-digit years and
400         only 2 digits are present. Fixes bug #49394.
401
402 2003-11-13  Miguel de Icaza  <miguel@ximian.com>
403
404         * Console.cs: On utf-8 consoles, use unmarked output.
405
406 2003-11-13  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
407
408         * IAppDomainSetup.cs:
409         * _AppDomain.cs: 
410         * Object.cs:
411         * Type.cs: Added missing attribute
412
413 2003-11-12 Lluis Sanchez Gual <lluis@ximian.com>
414
415         * Environment.cs: Added internal method for getting the path to 
416         machine.config.
417         
418 2003-11-12 Jackson Harper <jackson@ximian.com>
419
420         * Environment.cs: Add MyMusic and MyPictures to the SpecialFolder
421         enum. This fixes the SWF build.
422         
423 2003-11-12  Miguel de Icaza  <miguel@ximian.com>
424
425         * PlatformID.cs: Remove Unix platform, we cant expose constants
426         that are not in the framework.
427
428         * OperatingSystem.cs: Adjust for the breakage.
429
430         * RuntimeMethodHandle.cs: Fix signature.
431
432         * Double.cs: Fix signature of TryParse.
433
434         * String.cs (Concat (object, object, object, object)): Add missing method.
435
436         * OperatingSystem.cs: Removed Equals, GetHashCode, they were not
437         in the .NET Framework.
438
439         * Enum.cs: Hide constructor.  
440
441         Fix ToUint16 to be explicitly implemented.
442
443         * Console.cs: Add couple of extra missing methods (Write and
444         WriteLine overloaded)
445
446 2003-11-11  Miguel de Icaza  <miguel@ximian.com>
447
448         * AppDomain.cs, Activator.cs: New unimplmented entry points from
449         1.1 (Com activation related).
450         
451         * Exception.cs: Formatting.
452         
453         * IServiceProvider.cs: Add ComVisible (true).
454
455         * AppDomainSetup.cs: Add a couple more properties from .NET 1.1 
456
457 2003-11-03  Lluis Sanchez Gual <lluis@ximian.com>
458
459         * AppDomain.cs: Added some null checks in Load methods. This fixes bug
460           #50356.
461
462 2003-11-01  Zoltan Varga  <vargaz@freemail.hu>
463
464         * AppDomain.cs: Make the SetDomain icalls private + call InternalInvoke
465         on MonoMethod instead of Invoke.
466
467 2003-11-01  Pedro Martínez Juliá  <yoros@wanadoo.es>
468
469         * DateTime.cs: Fixed Add* methods handling. Now it works properly
470         with extreme values (there is a bug with Overflow and Underflow in
471         long type).
472
473 2003-10-31  Pedro Martínez Juliá  <yoros@wanadoo.es>
474
475         * DateTime.cs: Fixed a few format bugs.
476
477 2003-10-31  Zoltan Varga  <vargaz@freemail.hu>
478
479         * AppDomain.cs (InternalPushDomainRef): New icalls.
480
481         * AppDomain.cs (InvokeInDomain): New method to execute code in a 
482         different appdomain.
483
484 2003-10-27  Zoltan Varga  <vargaz@freemail.hu>
485
486         * AppDomain.cs: Fix prototype of InternalIsFinalizingForUnload.
487
488 2003-10-25  Zoltan Varga  <vargaz@freemail.hu>
489
490         * AppDomain.cs (IsFinalizingForUnload): Implement.
491
492         * AppDomain.cs (Unload): Move the notification of OnUnload listeners
493         to unmanaged code.
494
495 2003-10-25  Martin Baulig  <martin@ximian.com>
496
497         * MonoType.cs: Don't make this sealed.
498
499 2003-10-24  Zoltan Varga  <vargaz@freemail.hu>
500
501         * AppDomain.cs: Add InternalInvokeInDomain[ByID] icalls.
502
503 2003-10-24  Pedro Martínez Juliá  <yoros@wanadoo.es>
504
505         * DateTime.cs: When handling '-' as a date separator, MS.NET uses
506         the same symbol in the parse (not DateTimeFormatInfo.DateSeparator).
507
508 2003-10-22  Dick Porter  <dick@ximian.com>
509
510         * DateTime.cs: Handle '-' as a date separator when parsing formats.
511
512 2003-10-20  Duncan Mak  <duncan@ximian.com>
513
514         * Delegate.cs (CreateDelegate): Avoid creating an extra Type array
515         and merge the two iterations into one.
516
517 2003-10-15  Zoltan Varga  <vargaz@freemail.hu>
518
519         * TypedReference.cs: Add new field used by the runtime.
520
521 2003-10-15  Martin Baulig  <martin@ximian.com>
522
523         * Type.cs (Type.DeclaringMethod): For a generic method's type
524         parameter, return this method - otherwise, return null.
525
526 2003-10-14  Martin Baulig  <martin@ximian.com>
527
528         The generics API has changed in the spec since it was added here;
529         these modifications make it match the spec again.
530
531         * Type.cs
532         (GetGenericParameters): Renamed to `GetGenericArguments'.
533         (HasGenericParameters): Renamed to `HasGenericArguments'.
534         (HasUnboundGenericParameters): Renamed to `ContainsGenericParameters'.
535         (IsGenericTypeDefinition): New property.
536         (IsUnboundGenericParameter): Renamed to `IsGenericParameter'.
537
538         * MonoType.cs (ContainsGenericParameters): Implement this here;
539         this is no interncall anymore.
540
541 2003-10-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
542
543         * Delegate.cs: add the method name to the exception when it cannot be
544         bound.
545         * Exception.cs: fix nullref in Source.
546
547 2003-10-10  Zoltan Varga  <vargaz@freemail.hu>
548
549         * Array.cs: Add argument checking to GetValue and SetValue.
550
551 2003-10-09  Miguel de Icaza  <miguel@ximian.com>
552
553         * DateTime.cs: Patch from Chris Turchin: the DateTime.MaxValue
554         should not be TimeSpan.MaxValue, because it overflow.  Set this to
555         be MAX_VALUE_TICKS
556
557 2003-10-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
558
559         * MonoCustomAttrs.cs: from_cache is now thread-safe. Yeah, I got a
560         duplicate entry exception.
561
562 2003-10-08 Ben Maurer  <bmaurer@users.sourceforge.net>
563
564         * DateTime.cs (ToString): Total rewrite, fixes #49358.
565
566 2003-10-03  Zoltan Varga  <vargaz@freemail.hu>
567
568         * AppDomain.cs: Change accessibility of DoTypeResolve to fix build.
569
570 2003-10-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
571
572         * Enum.cs:
573         (Equals): check that the object is an Enum before comparing the types.
574
575 2003-09-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
576
577         * Array.cs: reduced xsp allocated memory by 1/2.
578
579 2003-09-25  Martin Baulig  <martin@ximian.com>
580
581         * Type.cs (Type.IsGenericTypeDefinition): Removed this method
582         since it was identical to GetGenericTypeDefinition().
583         (Type.IsGenericInstance): New property.
584
585 2003-09-24  Duncan Mak  <duncan@ximian.com>
586
587         * Math.cs (Abs): Fix double Locale.GetText bug reported by
588         davejp@volny.cz. This fixes #48788.
589
590 2003-09-14  Pedro Martínez Juliá  <yoros@wanadoo.es>
591
592         * FloatingPointFormatter.cs: Add the necessary castings to char
593         conversions.
594
595 2003-09-13  Pedro Martínez Juliá  <yoros@wanadoo.es>
596
597         * FloatingPointFormatter.cs: Make the method calls more functional
598         for protecting the values from different threads (make it more
599         thread safe).
600
601 2003-09-13  Pedro Martínez Juliá  <yoros@wanadoo.es>
602
603         * FloatingPointFormatter.cs: Fix a bug with the negative value of
604         count parameter.
605
606 2003-09-12  Pedro Martínez Juliá  <yoros@wanadoo.es>
607
608         * FloatingPointFormatter.cs: Applied a lot of improvements in string
609         construction, make use of Append/Insert with the "count" parameter.
610     Thanks to Ben Maurer.
611
612 2003-09-10  Pedro Martínez Juliá  <yoros@wanadoo.es>
613
614         * FloatingPointFormatter.cs: Fix a bug with Custm Format.
615
616         * FloatingPointFormatter.cs: Fix a little bug I've introduced the
617         last change.
618
619 2003-09-10  Pedro Martínez Juliá  <yoros@wanadoo.es>
620
621         * DoubleFormatter.cs: A few optimizations. Now, only one object
622         is created to convert all double numbers.
623
624         * SingleFormatter.cs: A few optimizations. Now, only one object
625         is created to convert all float numbers.
626
627         * FloatingPointFormatter.cs: Split the "number type parameters" from
628         the "numver value and format parameters". The first ones are in the
629         constructor and the others are in a method.
630
631 2003-09-09  Zoltan Varga  <vargaz@freemail.hu>
632
633         * Array.cs: Added argument checking to some NET_1_1 methods.
634
635 2003-09-04  Martin Baulig  <martin@ximian.com>
636
637         * Type.cs (GetGenericTypeDefinition): Make this method virtual.
638
639 2003-08-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
640
641         * Array.cs: added the new overloaded CreateInstance, GetValue, SetValue
642         taking 'longs'. All tests pass.
643
644 2003-08-26 Ben Maurer  <bmaurer@users.sourceforge.net>
645
646         * Exception.cs: Add ClassInterface attr. Implement TargetSite and
647         Source. Remove MonoTODO attributes (class is 100% done). Also
648         passes all Rotor tests for Exception!
649
650 2003-08-26 Ben Maurer  <bmaurer@users.sourceforge.net>
651
652         * Enum.cs: Remove [MonoTODO]'s that had been completed.
653
654 2003-08-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
655
656         * String.cs: fixed bug #47802.
657
658 2003-08-21 Ben Maurer  <bmaurer@users.sourceforge.net>
659
660         * String.cs: Created method FormatHelper that does formatting,
661         using a StringBuilder.
662
663 2003-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
664
665         * Array.cs: patch by lb@lb.ods.org that fixes bug #47707.
666
667 2003-08-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
668
669         * Delegate.cs: CreteDelegate (Type, MethodInfo) only supports static
670         methods under MS.
671
672 2003-08-11  Duncan Mak  <duncan@ximian.com>
673
674         * Environment.cs (Version): Return the same numbers as the MS
675         implementation.
676
677 2003-08-10  Miguel de Icaza  <miguel@ximian.com>
678
679         * Array.cs: Applied patch from Thong (Tum) Nguyen;  Removed
680         replicated tests, and have a routine that does the heavy lifting.
681
682 2003-08-08  Lluis Sanchez Gual <lluis@ximian.com>
683
684         * DateTime.cs: Fixed DoParse. It was calling the wrong constructor
685           of DateTime.
686         * Environment.cs: return $HOME for ApplicationData folder.
687
688 2003-08-04  Duncan Mak  <duncan@ximian.com>
689
690         * FloatingPointFormatter.cs (Normalize): Apply a patch from Aleksey
691         Demakov <avd@openlinksw.com> to fix formatting for Big power of 10
692         floating point values. This fixes bug #46175.
693
694         * Convert.cs (ToUInt16): Throw an OverflowException correctly, as
695         noted by c5n4kh6u02@sneakemail.com in
696         http://bugzilla.ximian.com/show_bug.cgi?id=43098.
697
698 Sat Aug  2 13:01:46 BST 2003 Malte Hildingson <malte@amy.udd.htu.se>
699
700         * Double.cs: added icall Double.AssertEndianity.
701
702 Fri Aug 1 16:47:17 CEST 2003 Paolo Molaro <lupus@ximian.com>
703
704         * Type.cs, MonoType.cs: implemented generic-specific methods.
705
706 2003-07-29  Miguel de Icaza  <miguel@ximian.com>
707
708         * Buffer.cs: Add new internal MemCopy call.
709
710         Removed the above.
711
712 Tue Jul 29 12:13:16 CEST 2003 Paolo Molaro <lupus@ximian.com>
713
714         * Type.cs, MonoType.cs, ArgIterator.cs: pass the handles values
715         to icalls, to avoid special cases in some call conventions.
716
717 2003-07-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
718
719         * Enum.cs: added Serializable attribute.
720
721 2003-07-25  Duncan Mak  <duncan@ximian.com>
722
723         * AppDomain.cs (Equals):
724         (GetHashCode): Removed because they do not need to be defined
725         here.
726
727 2003-07-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
728
729         * TypeLoadException.cs: removed unused fields. TypeName returns "" if
730         cannot even get the type.
731
732 2003-07-24  Miguel de Icaza  <miguel@ximian.com>
733
734         * Type.cs: Added generics stubs.
735
736 2003-07-23  Duncan Mak  <duncan@ximian.com>
737
738         * Environment.cs (SpecialFolder): Added 'Desktop' and 'MyComputer'
739         as values for NET_1_1.
740         (GetFolderPath): Return the empty string ("") for values of
741         SpecialFolder that have no corresponding equivalents in
742         Linux. Return "$HOME/Desktop" for SpecialFolder.DesktopDirectory
743         and "$HOME" for SpecialFolder.Personal.
744
745         * IntPtr.cs (GetObjectData): Mark it as an interface
746         implementation, instead of a public method.
747
748         * Guid.cs (NewGuid): Remove MonoTODOAttribute.
749
750         * TypeLoadException.cs (GetObjectData):
751         Create stubs for the fields that are being serialized.
752
753         * UIntPtr.cs: Removed erroneous CLSCompliantAttributes.
754
755 2003-07-23  Lluis Sanchez Gual <lluis@ximian.com>
756         
757         * Enum.cs: Fixed enum formatting. For flag enums, if one of
758           the flags is unnamed, ToString() returns the integer value.
759
760 2003-07-22  Jerome Laban <jlaban@wanadoo.fr>
761
762         * Guid.cs: Fixed ToString (), was producing incorrect string.
763
764 2003-07-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
765
766         * AppDomainSetup.cs: fixed bug #46609.
767
768 Thu Jul 17 17:28:27 CEST 2003 Paolo Molaro <lupus@ximian.com>
769
770         * MonoType.cs: use an icall for IsPrimitiveImpl ().
771
772 Thu Jul 17 15:23:17 CEST 2003 Paolo Molaro <lupus@ximian.com>
773
774         * Guid.cs: faster ToString ().
775
776 2003-07-15  Pedro Martínez Juliá  <yoros@wanadoo.es>
777
778         * FloatingPointFormatter.cs: Few changes for get working Rotor
779         tests.
780
781 2003-07-13  Zoltan Varga  <vargaz@freemail.hu>
782
783         * Type.cs (IsAssignableFrom): Implement this as an icall since the
784         runtime already includes the neccessary logic.
785
786 2003-07-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
787
788         * AppDomainSetup.cs: remove the "file://" prefix from ApplicationBase
789         if it's present and get the full path for non-Uri paths.
790
791 2003-07-2  Lluis Sanchez Gual <lluis@ximian.com>
792
793         * DateTime.cs: Fixed formatting of fractions of second.
794
795 2003-06-30  Zoltan Varga  <vargaz@freemail.hu>
796
797         * Console.cs: Turn off buffering for the streams returned by
798         OpenStandardOutput () and OpenStandardError () if the buffer size is 0.
799
800 2003-06-28  Lluis Sanchez Gual <lluis@ximian.com>
801
802         * Random.cs: Changed behavior of Random to match MS.NET. When Next is
803           called with maxvalue==0 or minvalue==maxvalue, MS.NET internally generates
804           a new random number (although it is not needed), while mono did not. 
805           As a result, the sequence of random numbers could be different for the
806           same seed.
807
808 Thu Jun 26 16:06:35 CEST 2003 Paolo Molaro <lupus@ximian.com>
809
810         * FloatingPointFormatter.cs: use dec_len2 as default precision.
811
812 2003-06-26  Lluis Sanchez Gual <lluis@ximian.com>
813
814         * DateTime.cs: Modified constructor. Check for valid value of TimeSpan must
815           be done after the correspondig UTC offset has been applied.
816
817 2003-06-26  Lluis Sanchez Gual <lluis@ximian.com>
818
819         * Object.cs: Object must have the Serializable attribute.
820         * DateTime.cs: Fixed _DoParse() so it correctly applies the utc offset
821           to the resulting date. Also fixed _ToString so now correctly formates the
822           UTC offset.
823
824 Wed Jun 18 19:22:22 CEST 2003 Paolo Molaro <lupus@ximian.com>
825
826         * Enum.cs: fix race in cache (bug#41841).
827
828 Wed Jun 18 18:52:11 CEST 2003 Paolo Molaro <lupus@ximian.com>
829
830         * FloatingPointFormatter.cs: if the precision is not specified, use
831         the default precision for the data type.
832
833 Wed Jun 18 18:11:30 CEST 2003 Paolo Molaro <lupus@ximian.com>
834
835         * Array.cs: throw ArgumentOutOfRangeException in Copy if needed
836         (patch by tum@veridicus.com (Thong (Tum) Nguyen)).
837
838 2003-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
839
840         * MonoType.cs: don't throw nullref when the return type for a property
841         is specified and the property doesn't have a get accessor.
842
843 2003-06-10  Duncan Mak  <duncan@ximian.com>
844
845         * Array.cs (CreateInstance): Fixed a typo. It should throw
846         ArgumentNullException instead of ArgumentException.
847
848 2003-06-09  Duncan Mak  <duncan@ximian.com>
849
850         * Array.cs: Revert the last revert. I fixed it.
851         (Sort): Put a try-catch block around qsort, and wrap whatever
852         Exception we get into a InvalidOperationException.
853
854 2003-06-08 Jackson Harper <jackson@latitudegeo.com>
855
856         * Array.cs: Revert last patch, it broke some other functionality.
857                 
858 2003-06-08  Duncan Mak  <duncan@ximian.com>
859
860         * Array.cs: Throw more exceptions. This fixes the errors we see
861         from the Rotor testsuite.
862
863         (CreateInstance): Throw ArgumentNullException when the input are
864         null. Throw ArgumentOutOfRangeException when bounds + length is
865         greater than Int32.MaxValue.
866         (LastIndexOf): Throw ArgumentOutOfRangeException if index is outside
867         the valid range of indices of array.
868         (Sort): Throw InvalidOperationException when comparer is null and
869         none of the elements in keys implements IComparable.
870
871 2003-06-08  Duncan Mak  <duncan@ximian.com>
872
873         * Array.cs (CreateInstance): Throw a TypeLoadException if the
874         Length of the input array 'lengths' is greater than 255 so that we
875         won't see the g_assert that is in mono_array_class_get in class.c.
876
877         This fixes bug #44304.
878
879 2003-06-05  Nick Drochak  <ndrochak@gol.com>
880
881         * UnitySerializataionHolder.cs: Cleanups according to class status page
882
883 Wed Jun 4 16:59:39 CEST 2003 Paolo Molaro <lupus@ximian.com>
884
885         * ArgIterator.cs, TypedReference.cs, RuntimeArgumentHandle.cs,
886         RuntimeTypeHandle.cs: implemented the needed stuff to handle
887         vararg calls.
888
889 2003-06-02  Sebastien Pouliot  <spouliot@videotron.ca>
890
891         * Random.cs: New implementation based on Knuth ran3 to fix #43597.
892         See http://www.library.cornell.edu/nr/bookcpdf/c7-1.pdf. Commited
893         for Ben Maurer after review and testing.
894
895 2003-05-28  Ben Maurer <bmaurer@users.sourceforge.net>
896         
897         * Array.cs: Added better argument checking to Array.Sort ()
898         * DBNull.cs: Made the conversions throw like they do in MS.
899
900 2003-05-24  Philip Van Hoof  <me@freax.org>
901
902         * Math.cs: Add the MS.NET 1.1 methods (BigMul, DivRem, DivRem).
903
904 2003-05-21  Pedro Martínez Juliá  <yoros@wanadoo.es>
905
906         * FloatingPointFormatter.cs: Take care with the explicit precision
907         and round the number to that precision.
908
909         * DoubleFormatter.cs: Adapt to the two level precision (15 - 17).
910
911         * SingleFormatter.cs: Adapt to the two level precision (7 - 8).
912
913 2003-05-20  Philip Van Hoof <me@freax.org>
914
915         * DateTime.cs (FromOADate, GetDateTimeFormats, ToOADate):
916         Implemented.
917
918 2003-05-20  Zoltan Varga  <vargaz@freemail.hu>
919
920         * AppDomainSetup.cs: Added new field which is used to notify the
921         runtime that the search path has changed.
922
923 2003-05-18  Pedro Martínez Juliá  <yoros@wanadoo.es>
924
925         * FloatingPointFormatter.cs: Fixed NullReferenceException bug I've
926         introduced the last change I've done.
927
928 2003-05-17  Ben Maurer  <bmaurer@users.sourceforge.net>
929
930         * Array.cs: Fixed SyncRoot to behave like MS (return this). Removed 
931         MonoTODO from SyncRoot (because fixed) and IsSynchronized (it was
932         behaving correctly).
933         
934 2003-05-17  Pedro Martínez Juliá  <yoros@wanadoo.es>
935
936         * FloatingPointFormatter.cs: Fixed little format mismatches.
937
938 2003-05-16  Pedro Martínez Juliá  <yoros@wanadoo.es>
939
940         * FloatingPointFormatter.cs: Fixed "-0" result emited.
941
942 2003-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
943
944         * AppDomain.cs: Added null argument check in Load().
945         * Activator.cs: fixed bug #39926.
946
947 2003-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
948
949         * Enum.cs: fixed bugs #41522 and #42879.
950
951 2003-05-12  Zoltan Varga  <vargaz@freemail.hu>
952
953         * String.cs: Tweak IndexOf and LastIndexOf to match specification and
954         undocumented MS behaviour.
955
956 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
957
958         * Activator.cs: applied patch for bug #39926. Thanks to Jean Marc and
959         Jaime.
960
961 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
962
963         * String.cs: fixed bug #41411 and another similar problem in
964         LastIndexOf (string).
965
966 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
967
968         * String.cs: patch by Jean Marc <jean-marc.andre@polymtl.ca> that fixes
969         bug #42695.
970
971 2003-05-09  Zoltan Varga  <vargaz@freemail.hu>
972
973         * MulticastDelegate.cs (GetInvocationList): Avoid ArrayList 
974         construction if the delegate list only has one element.
975
976 2003-05-01  Pedro Martínez Juliá  <yoros@wanadoo.es>
977
978         * Environment.cs: Changed the method GetFolderPath because it must
979         return at least a directory name (not null).
980
981         * Convert.cs: In ToType, if the destination type is unknown, try to
982         cast the value to object (then, the calling method will downcast it
983         to the type it wants).
984
985 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
986
987         * Enum.cs: fixed bug #41522.
988
989 Tue Apr 29 13:58:16 CEST 2003 Paolo Molaro <lupus@ximian.com>
990
991         * Enum.cs: protect with the lock also the lookup (bug #41841).
992
993 Tue Apr 29 13:24:32 CEST 2003 Paolo Molaro <lupus@ximian.com>
994
995         * MonoType.cs: allow a null name if InvokeMember is called with
996         BindingFlags.CreateInstance set.
997
998 2003-04-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
999
1000         * Enum.cs: reverted my previous patch.
1001
1002 2003-04-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1003
1004         * Enum.cs: fixed bug #41841.
1005
1006 2003-04-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1007
1008         * MonoType.cs:
1009         (GetPropertyImpl): handle BindingFlags.IgnoreCase.
1010
1011 2003-04-22  Pedro Martínez Juliá  <yoros@wanadoo.es>
1012
1013         * FloatingPointFormatter.cs: Little fixes for get the same results
1014         as MS.NET and show a message when something goes wrong with the
1015         parser of Custom Formats.
1016
1017 2003-04-22  Nick Drochak  <ndrochak@gol.com>
1018
1019         * Double.cs (ToString):
1020         * Single.cs (ToString): Handle case where param is a CultureInfo.
1021
1022 2003-04-18  Zoltan Varga  <vargaz@freemail.hu>
1023
1024         * Object.cs ValueType.cs: Make the Object::GetHashCode() and 
1025         ValueType::Equals() icalls static non-virtual, so they can be called
1026         by the code in RuntimeHelpers.
1027
1028 2003-04-18  Miguel de Icaza  <miguel@ximian.com>
1029
1030         * Delegate.cs (operator ==): Do not crash if the second argument
1031         is null.  Bug fix submitted by Juan Cri.
1032
1033 2003-04-18  Eduardo Garcia Cebollero <kiwnix@yahoo.es>
1034
1035         * Array.cs: Deleted the exception in Array.Initialize(), it looks
1036         like the method do nothing for C#, is still a MonoTODO until
1037         we find a compiler that uses that.
1038
1039 2003-04-14  Miguel de Icaza  <miguel@ximian.com>
1040
1041         * Delegate.cs (Delegate): Seems like a typo, we were checking the
1042         a field rather than the argument 
1043
1044         * MonoType.cs: Make GetNestedType an external method implementation.
1045
1046 2003-04-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1047
1048         * Enum.cs: fixed bug #41294.
1049
1050 2003-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1051
1052         * DateTime.cs: fixes bug #40910, part 2.
1053
1054 2003-04-11  Dietmar Maurer  <dietmar@ximian.com>
1055
1056         * String.cs (Equals): avoid the internal call, code cleanups
1057
1058 2003-04-11  Alan Tam <Tam@SiuLung.com>
1059
1060         * Convert.cs: fixed bug #41085.
1061
1062 2003-04-10  Lluis Sanchez Gual <lluis@ideary.com>
1063
1064         * AppDomain.cs: Added internal method for getting process guid.
1065
1066 2003-04-09  Ville Palo <vi64pa@kolumbus.fi>
1067
1068         * Array.cs: Little fix to compare () method.
1069         
1070 2003-04-09  Zoltan Varga  <vargaz@freemail.hu>
1071
1072         * String.cs (Equals): Add trivial optimization.
1073
1074 2003-04-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1075
1076         * DateTime.cs: fixed bug #40910.
1077
1078 2003-04-05  Miguel de Icaza  <miguel@ximian.com>
1079
1080         * Console.cs: Make stderr, stdout and stdin use synchronized
1081         versions of the their readers/writers.
1082
1083 2003-04-04  Dick Porter  <dick@ximian.com>
1084
1085         * Version.cs: Make operator== and operator!= cope with null
1086         objects.  Didn't change operator<, operator<=, operator> or
1087         operator>= because its not meaningful to use those to compare
1088         against null, and throwing a NullReferenceException is probably
1089         the best thing to do there anyway.
1090
1091         Fixes bug 40720.
1092
1093 2003-04-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1094
1095         * AppDomain.cs: fixed InvalidCastException.
1096
1097 2003-03-30  Zoltan Varga  <vargaz@freemail.hu>
1098
1099         * Array.cs (Copy): Call FastCopy() earlier to avoid the expensive
1100         type checks and let it decide whenever a fast copy is possible.
1101
1102 2003-03-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1103
1104         * MonoType.cs:
1105         (GetMethodImpl): support BindingFlags.IgnoreCase flag. Fixes bug #40322.
1106
1107 2003-03-25  Zoltan Varga  <vargaz@freemail.hu>
1108
1109         * Activator.cs (CreateInstance): Call GetConstructor with the right
1110         arguments so the nonPublic argument is handled correctly.
1111
1112 2003-03-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1113
1114         * Type.cs: fixed bug #40123.
1115
1116 2003-03-22  Pedro Martínez Juliá  <yoros@wanadoo.es>
1117
1118         * FloatingPointFormatter.cs: Fixed some bugs for get the same
1119         results than MS.NET. Added simple error recovering, now ToString
1120         will return a general format if there is any exception in the
1121         process of formatting. This make the library more robust while the
1122         formatters are refined.
1123
1124 2003-03-16  Pedro Martínez Juliá  <yoros@wanadoo.es>
1125
1126         * FloatingPointFormatter.cs: Added support for group separators.
1127
1128 2003-03-16  Pedro Martínez Juliá  <yoros@wanadoo.es>
1129
1130         * Single.cs:
1131         * Double.cs: Apply changes of .ToString methods.
1132         * SingleFormatter.cs:
1133         * DoubleFormatter.cs: Simple wrappers to FloatingPointFormatter.
1134         * FloatingPointFormatter.cs: New class. Implementation of double and
1135         single formatters. It is unified now and parametrized with precission
1136         values.
1137
1138 2003-03-15  Lluis Sanchez Gual <lluis@ideary.com>
1139
1140         * AppDomain.cs: fixes bugs #39380 and #39331.
1141
1142 2003-03-06  Nick Drochak  <ndrochak@gol.com>
1143
1144         * TimeSpan.cs (Negate): Throw exception when value is MinValue.
1145
1146 2003-03-04  Dick Porter  <dick@ximian.com>
1147
1148         * Single.cs:
1149         * Double.cs: Temporarily reverted the Double and Single ToString()
1150         change, because it broke nunit.
1151
1152
1153 2003-03-04  Pedro Martínez Juliá  <yoros@wanadoo.es>
1154
1155         * Double.cs: Changed ToString method. Added NumberFormatInfo support
1156         with DoubleFormatter class.
1157         * Single.cs: Changed ToString method. Added NumberFormatInfo support
1158         with SingleFormatter class.
1159         * DoubleFormatter.cs: New class with Double formatting functions.
1160         * SingleFormatter.cs: New class with Single formatting functions.
1161
1162 2003-03-03  Lluis Sanchez Gual <lluis@ideary.com>
1163
1164         * Activator.cs: Added support for activation using activation attributes.
1165         * AppDomain.cs: Added internal method to get the default context from the runtime.
1166
1167 2003-02-28  Elan Feingold  <efeingold@mn.rr.com>
1168
1169         * DateTime.cs: FileTime is expressed in Universal time, and as such must
1170         be converted before subtracting the magic offset.
1171         * DateTime.cs: Strings in the format "2003-02-27T10:05:03-11:00" (note
1172         the timezone at the end) *must* be parsed by DateTime.Parse() for
1173         compatibility with Microsoft.
1174
1175 2003-02-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1176
1177         * Attribute.cs:
1178         * MonoCustomAttrs.cs: fix for the regression test failure (see bug
1179         #38238).
1180
1181         * IntPtr.cs: added serialization .ctor
1182
1183 2003-02-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1184
1185         * AppDomain.cs: check for null in Unload and changed method name.
1186
1187 2003-02-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1188
1189         * MonoCustomAttrs.cs: fixed bug #38238.
1190
1191 2003-02-17  Martin Baulig  <martin@ximian.com>
1192
1193         * Exception.cs (Exception.ToString): Print a newline between the
1194         exception message and the stack trace.
1195
1196 2003-02-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1197
1198         * AppDomain.cs: implemented GetCurrentThreadId ().
1199
1200 2003-02-14  Patrik Torstensson
1201
1202         * Exception.cs: Fixed message output formating
1203
1204 2003-02-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1205
1206         * Int32.cs:
1207         (Parse): ignore everything after a \0 (MS parses: "512\0hola" as 512).
1208
1209 2003-02-12  Miguel de Icaza  <miguel@ximian.com>
1210
1211         * Type.cs: IsClass should return false for Enumerations
1212
1213 2003-02-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1214
1215         * MonoCustomAttrs.cs: return the correct array type in the short case.
1216         Fixes bug #37818.
1217
1218 2003-02-08  Pedro Martíenz Juliá  <yoros@wanadoo.es>
1219
1220         * Math.cs: Fix a few methods (like Round) and add with comments the
1221         new methods: BigMul and DivRem that were in ECMA specs.
1222
1223 2003-02-07  Patrik Torstensson
1224
1225         * Exception.cs: Fixed formating
1226
1227 2003-02-05  Patrik Torstensson
1228
1229         * AppDomain.cs: Partly fixed the unload method 
1230         
1231 2003-02-04  Patrik Torstensson
1232
1233         * AppDomain.cs: Fixed lease issue with appdomain
1234
1235 2003-02-04  Lluis Sanchez Gual <lluis@ideary.com>
1236
1237         * MarshalByRefObject.cs: Implemented GetLifetimeService() and 
1238           InitializeLifetimeService().
1239
1240 2003-02-03  Patrik Torstensson
1241
1242         * AppDomain.cs: New internalcalls for handling domain/context switches
1243         * AppDomain.cs (CreateDomain): Return transparant proxy for appdomain object
1244
1245 2003-02-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1246
1247         * AppDomain.cs: implemented AppendPrivatePath, ClearPrivatePath
1248         and ClearShadowCopyPath and fixed GetType ().
1249
1250         * Attribute.cs: clean up.
1251
1252         * Console.cs: removed UnixConsoleEncoding. Use Default.
1253
1254 2003-02-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1255
1256         * Attribute.cs: fixed all IsDefined overloads. Gotta fix
1257         GetCustomAttributes later.
1258
1259 2003-01-31  Patrik Torstensson
1260
1261         * Buffer.cs: Changed access level of BlockCopyInternal
1262
1263 Thu Jan 30 19:54:30 CET 2003 Paolo Molaro <lupus@ximian.com>
1264
1265         * String.cs, IntegerFormatter.cs: use const where appropriate.
1266
1267 2003-01-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1268
1269         * MonoCustomAttrs.cs: fixed GetBase () for Type. Thanks to Zoltan for
1270         reporting.
1271
1272 2003-01-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1273
1274         * MonoCustomAttrs.cs: fixed shortcut in GetCustomAttributes.
1275         The argument ICustomAttributeProvider can be of other types different
1276         from Type. Handle it.
1277
1278 2003-01-28  Zoltan Varga  <vargaz@freemail.hu>
1279
1280         * DateTime.cs: fix FromFileTime so the time returned by 
1281         File::GetLastModificationTime etc. is in the correct timezone.
1282
1283 2003-01-28  Patrik Torstensson
1284         * Exception.cs: reverted formating/endline changes (sorry guys)
1285
1286 2003-01-28  Patrik Torstensson
1287
1288         * MarshalByRefObject.cs: implemented GetObjectIdentity
1289         * Exception.cs: added support for remote exceptions
1290
1291 2003-01-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1292
1293         * DateTime.cs: fixed bug #37225.
1294
1295 2003-01-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1296
1297         * Enum.cs: Clone the arrays in GetNames and GetValues. Thanks lupus!
1298
1299 2003-01-27  Zoltan Varga  <vargaz@freemail.hu>
1300
1301         * AppDomain.cs: Added DoTypeResolve method which will be called by
1302         the runtime to raise TypeResolve events.
1303
1304 2003-01-27  Duncan Mak  <duncan@ximian.com>
1305
1306         * Enum.cs (ToType): Implement this using Convert.ToType.
1307
1308 2003-01-21  Miguel de Icaza  <miguel@ximian.com>
1309
1310         * Math.cs: Remove Pow's implementation body as it was wrong.  The
1311         C code does the right thing.  The code was trying to handle a
1312         number of cases, and that was incorrect.
1313
1314 2003-01-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1315
1316         * CharEnumerator.cs: fix to Current by crainaj@hotmail.com. Closes
1317         bug #37113.
1318
1319 2003-01-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1320
1321         * Enum.cs: added caching to GetInfo.
1322
1323 2003-01-23  Dick Porter  <dick@ximian.com>
1324
1325         * Environment.cs (System): Implemented ExitCode
1326
1327 2003-01-23  Zoltan Varga  <vargaz@freemail.hu>
1328
1329         * Type.cs (IsInstanceOfType): fixed regression caused by the change
1330         to IsSubclassOf().
1331
1332 2003-01-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1333
1334         * MonoType.cs: re-added lines that were removed in the previous commit.
1335
1336 2003-01-16  Lluis Sanchez Gual <lsg@ctv.es>
1337
1338         * Type.cs: corrected property IsSerializable. It should always return
1339         true for enums and delegates
1340         * MonoType.cs: added serialization support.
1341         * Delegate.cs: added serialization support.
1342         * DBNull.cs: added serialization support.
1343         * UnitySerializationHolder.cs: supports serialization of Assembly,
1344         MonoType and DBNull.
1345         * DelegateSerializationHolder.cs: added.
1346
1347 2003-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1348
1349         * Exception.cs: changed default message to match MS one.
1350
1351 2003-01-12  Patrik Torstensson <totte@race-x-change.com>
1352
1353         * String.cs: Fixed bug with CompareOrdinal
1354
1355 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1356
1357         * Enum.cs: implements IFormattable.
1358
1359 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1360
1361         * AppDomain.cs: implemented DoCallBack method.
1362         * MonoType.cs:
1363         (GetConstructorImpl): when the flag is BindingFlags.Default, set it to
1364         Public, Instance.
1365
1366         NUnit2 tests start moving.
1367
1368 2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1369
1370         * Activator.cs: fixed bug #36052. Also added checks to avoid trying to
1371         instantiate an abstract class.
1372
1373 2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1374
1375         * Type.cs:
1376         (IsSubclassOf): return false when null. Use != instead of Equals.
1377
1378 2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1379
1380         * Type.cs: fixed IsSubclassOf. Patch from Zoltan Varga.
1381
1382 Fri Jan 3 20:18:51 CET 2003 Paolo Molaro <lupus@ximian.com>
1383
1384         * MonoType.cs: fixed Namespace property for nested types.
1385
1386 Fri Jan 3 16:18:27 CET 2003 Paolo Molaro <lupus@ximian.com>
1387
1388         * MonoCustomAttrs.cs: create properly typed arrays when returning
1389         arrays of attributes of a given type.
1390
1391 Fri Jan 3 11:10:14 CET 2003 Paolo Molaro <lupus@ximian.com>
1392
1393         * MonoType.cs: fixed MemberType property for nested types.
1394
1395 2003-01-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1396
1397         * String.cs: fixed bug #36209.
1398
1399 2002-12-20 Lluis Sanchez Gual <lsg@ctv.es>
1400
1401         * Activator.cs: implemented method GetObject.
1402
1403 2002-12-28  Marcus Urban <mathpup@mylinuxisp.com>
1404
1405         * Activator.cs: Since the documentation indicates the method
1406         either succeeds or throws one of the listed exceptions, we weren't
1407         expecting that CreateInstance might be returning null.
1408
1409         For more information on the bug, see http://bugs.ximian.com/show_bug.cgi?id=36109
1410
1411 2002-12-20 Lluis Sanchez Gual <lsg@ctv.es>
1412
1413         * MarshalByRefObject.cs: implemented CreateObjRef.
1414
1415 2002-12-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1416
1417         * DateTime.cs: fixed bug #30076.
1418         * TimeZone.cs: provide the parameter name in a exception.
1419
1420 2002-12-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1421
1422         * DecimalFormatter.cs: fixed bug #35560.
1423
1424 Wed Dec 4 16:04:28 CET 2002 Paolo Molaro <lupus@ximian.com>
1425
1426         * Type.cs: implemented GetInterfaceMap (needs an updated runtime).
1427
1428 2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1429
1430         * Array.cs: use Object.Equals (obj, obj) to compare objects to avoid
1431         nulls. Fixes #34909.
1432
1433 2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1434
1435         * AppDomain.cs: DoAssemblyResolve now returns when one of the handlers
1436         returns a non-null assembly.
1437
1438 2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1439
1440         * MulticastDelegate.cs: make GetInvocationList work for more than 1
1441         delegate.
1442
1443 2002-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1444
1445         * MulticastDelegate.cs: implemented GetInvocationList. I'll check later
1446         if this is the correct order of invocation.
1447
1448 2002-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1449
1450         * Type.cs: changed the signature of internal_from_name. Modified
1451         the overloads of GetType to use it and check the typeName argument.
1452         Implemented FindInterfaces.
1453
1454 2002-11-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1455
1456         * MarshalByRefObject.cs: undo latest changes. It breaks the build by
1457         some obscure reasons (try make -f makefile.gnu using a corlib which has
1458         the modified version).
1459
1460 2002-11-26  Miguel de Icaza  <miguel@ximian.com>
1461
1462         * String.cs (Concat): Reduce the number of compares required. 
1463
1464 Mon Nov 18 17:54:22 CET 2002 Paolo Molaro <lupus@ximian.com>
1465
1466         * Activator.cs: throw a MissingMethodException if the default
1467         constructor is not found in CreateInstance.
1468
1469 2002-11-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1470
1471         * String.cs:
1472         (Equals (str, str)): use 'as' instead of casting to object.
1473         (Equals (obj)): check the length of the strings (until now,
1474         "Hello".Equals ((object) "Hellow World!) was true!).
1475
1476 2002-11-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1477
1478         * MonoType.cs: implemented GetEvent (name, flags).
1479
1480 2002-11-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1481
1482         * AppDomain.cs: implemented a couple of methods called from the runtime
1483         to fire AssemblyLoad and AssemblyResolve events.
1484
1485 2002-10-31  Dick Porter  <dick@ximian.com>
1486
1487         * Environment.cs: MonoIO methods now have an error parameter
1488
1489 2002-10-29  Zoltan Varga  <vargaz@freemail.hu>
1490
1491         * Enum.cs: Added support for whitespaces in Enum:Parse().
1492
1493 2002-10-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1494
1495         * Type.cs: fixed GetProperty (string, Type []) and removed get_property
1496         internal call. Closes bug #32992.
1497
1498 2002-10-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1499
1500         * Exception.cs: display the inner exception, if any, in ToString ().
1501
1502 2002-10-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1503
1504         * Environment.cs: fixed StackTrace property.
1505
1506 2002-10-16  Nick Drochak  <ndrochak@gol.com>
1507
1508         * Enum.cs (Parse): Then fix the code so that it works too.
1509
1510 2002-10-15  Nick Drochak  <ndrochak@gol.com>
1511
1512         * Enum.cs (Parse): Use unsigned casts to avoid compiler warnings.
1513
1514 2002-10-12  Nick Drochak  <ndrochak@gol.com>
1515
1516         * IntegerFormatter.cs: Fix compiler warnings.
1517
1518 2002-10-11  Tim Haynes <thaynes@openlinksw.com>
1519
1520         * Type.cs (GetConstructors): Use the correct flags.
1521
1522 2002-10-09  Nick Drochak  <ndrochak@gol.com>
1523
1524         * IntegerFormatter.cs: Suppress insignificant leading zeros
1525
1526 Fri Sep 27 15:06:29 CEST 2002 Paolo Molaro <lupus@ximian.com>
1527
1528         * MonoCustomAttrs.cs: applied patch by "Si Jingnan"
1529         <stonewell@21cn.com> to return also derived types.
1530
1531 2002-09-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1532
1533         * Activator.cs: little fix in CreateInstance (Type, bool).
1534
1535 2002-09-19  Duncan Mak  <duncan@ximian.com>
1536
1537         * Array.cs (CopyTo): Revert back to 1.40, this is stopping
1538         I18N/Common from building right now.
1539
1540 2002-09-19  Nick Drochak  <ndrochak@gol.com>
1541
1542         * Array.cs (CopyTo): Account for Object type and base (primitive) types
1543         * Type.cs (IsAssignableFrom): return false for a null parameter
1544
1545 2002-09-19  Nick Drochak <ndrochak@gol.com>
1546
1547         * Array.cs (CopyTo): Check that source type can be cast automatically
1548         to the destination type.
1549
1550 2002-09-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1551
1552         * Type.cs: implemented IsAssignableFrom, DefaultBinder and
1553         GetDefaultMembers.
1554
1555 2002-09-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1556
1557         * Char.cs: implemented ToString (char)
1558         * IntegerFormatter.cs: made it internal.
1559
1560 2002-09-13  Nick Drochak  <ndrochak@gol.com>
1561
1562         * Enum.cs (Format): handle the "d" format for both signed and unsigned
1563         underlying types.
1564
1565 2002-09-12  Dick Porter  <dick@ximian.com>
1566
1567         * UIntPtr.cs: Remove the [StructLayout(LayoutKind.Auto)]
1568         attribute, as there doesn't appear to be any struct
1569         layout-depending code here (and corcompare says it should be
1570         LayoutKind.Sequential)
1571
1572         * Decimal.cs: Stub out missing methods, add
1573         [DecimalConstantAttribute] to the constant fields (as shown by
1574         corcompare).
1575
1576         * LocalDataStoreSlot.cs: 
1577         * Environment.cs: 
1578         * Char.cs: 
1579         * Array.cs: Stub out missing methods.
1580
1581         * TypedReference.cs: 
1582         * ArgIterator.cs: Stub out
1583
1584         * AppDomainSetup.cs: 
1585         * AppDomain.cs: Stub out missing methods, add missing
1586         ClassInterface(ClassInterfaceType.None) attribute.
1587
1588 2002-09-12  Nick Drochak  <ndrochak@gol.com>
1589
1590         * Double.cs (ToString): Throw exception when "X" format is passed in.
1591
1592 Wed Sep 11 15:26:34 CEST 2002 Paolo Molaro <lupus@ximian.com>
1593
1594         * MonoType.cs: implemented Module property.
1595
1596 Wed Sep 11 12:49:51 CEST 2002 Paolo Molaro <lupus@ximian.com>
1597
1598         * MonoType.cs, Type.cs: implemented InvokeMember.
1599
1600 Wed Sep 11 11:06:43 CEST 2002 Paolo Molaro <lupus@ximian.com>
1601
1602         * Delegate.cs: check the type passed to CreateDelegate is a Delegate
1603         type. Check the method signature matches.
1604
1605 Sat Sep 7 10:16:52 CEST 2002 Paolo Molaro <lupus@ximian.com>
1606
1607         * RuntimeMethodHandle.cs: implemented GetFunctionPointer().
1608
1609 2002-09-06  Miguel de Icaza  <miguel@ximian.com>
1610
1611         * Console.cs: Specify an encoder, otherwise we will get the UTF8
1612         encoder that by default emits the byte markers.
1613
1614 Fri Sep 6 20:14:04 CEST 2002 Paolo Molaro <lupus@ximian.com>
1615
1616         * Delegate.cs: look also for non-public methods until we have the
1617         security checks in place.
1618
1619 Fri Sep 6 12:20:06 CEST 2002 Paolo Molaro <lupus@ximian.com>
1620
1621         * MonoType.cs: consider also the full name in GetInterface.
1622
1623 Fri Sep 6 12:11:28 CEST 2002 Paolo Molaro <lupus@ximian.com>
1624
1625         * MonoType.cs: implemented GetMembers, GetConstructorImpl and
1626         GetMethodImpl using the binder.
1627         * Type.cs: GetConstructorImpl/GetConstructor fixes.
1628
1629 2002-09-03  Jonathan Pryor <jonpryor@vt.edu>
1630         * Enum.cs: Get rid of warning CS0162.
1631
1632 2002-09-04  Miguel de Icaza  <miguel@ximian.com>
1633
1634         * Double.cs, Single.cs, Char.cs, Boolean.cs: Use internal for the
1635         actual value instead of public.
1636
1637         * LocalDataStoreSlot.cs: Make constructor internal.
1638
1639         * Int16.cs, UInt16.cs, Int32.cs, UInt32.cs, Int64.cs, UInt64.cs,
1640         SByte.cs, Byte.cs, Char.cs: Use internal for the actual value
1641         instead of public.
1642
1643 2002-09-03  Jonathan Pryor <jonpryor@vt.edu>
1644         * Enum.cs: Fixed Enum.Format so that the "x" format specifier would work
1645                    properly.
1646
1647 2002-08-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1648
1649         * DateTime.cs: fixed buglet.
1650
1651 Tue Aug 27 16:39:47 CEST 2002 Paolo Molaro <lupus@ximian.com>
1652
1653         * MonoType.cs: speedup access to common data.
1654
1655 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1656
1657         * Double.cs: implemented TryParse.
1658
1659         * Math.cs: PowImpl is now private.
1660
1661         * MissingFieldException.cs: implemented Message.
1662
1663         * RuntimeMethodHandle.cs: stubbed GetFunctionPointer.
1664
1665         * _AppDomain.cs: Uncommented ToString.
1666
1667 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1668
1669         * Type.cs:
1670         (IsValueTypeImpl): it's virtual, not abstract. Implemented.
1671
1672 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1673
1674         * ArgumentException.cs: use the field instead of the property for
1675         param_name.
1676
1677         * ArgumentOutOfRangeException.cs: modified Message.
1678
1679         * DateTime.cs: 
1680         (_DoParse): throw out of range exception for year. Removed check
1681         for month (it's done in the constructor).
1682
1683 2002-08-21  Miguel de Icaza  <miguel@ximian.com>
1684
1685         * Environment.cs: Implemented OSVersion property.
1686
1687 2002-08-21  Dietmar Maurer  <dietmar@ximian.com>
1688
1689         * Exception.cs: set stack_trace to null
1690
1691 Wed Aug 21 13:02:20 CEST 2002 Paolo Molaro <lupus@ximian.com>
1692
1693         * AppDomain.cs: implemented ToString().
1694
1695 2002-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1696
1697         * AppDomain.cs: securityInfo can be null in CreateDomain.
1698
1699 2002-08-19  Dick Porter  <dick@ximian.com>
1700
1701         * MonoType.cs: Add a space before the Assembly name in
1702         AssemblyQualifiedName (needed for resource files so the MS runtime
1703         can load types)
1704
1705 2002-08-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1706
1707         * AppDomain.cs: parameter name when throwing ArgumentNullException.
1708
1709         * ArgumentException.cs: modified Message to do what MS does.
1710
1711         * ArgumentNullException.cs: don't use {0} in message.
1712
1713         * Exception.cs: use Message property in ToString ().
1714
1715 2002-08-14  Cesar Octavio Lopez Nataren <cesar@ciencias.unam.mx>
1716
1717         * WeakReference.cs: Changed the constructor and GetObjectData
1718         method needed for ISerializable implementation in order to be
1719         compatible with SOAP generated by MS.
1720
1721 Wed Aug 14 17:34:07 CEST 2002 Paolo Molaro <lupus@ximian.com>
1722
1723         * MonoType.cs, Type.cs: DeclaringType/ReflectedType fixes.
1724
1725 2002-08-12  Dietmar Maurer  <dietmar@ximian.com>
1726
1727         * Exception.cs (ToString): changed the ouput format.
1728
1729 2002-08-07  Dietmar Maurer  <dietmar@ximian.com>
1730
1731         * MonoType.cs: moved get_method icall to this class, we can
1732         remove it as soon someone provides a full featured GetMethodImpl.
1733
1734         * Type.cs: use GetMethodImpl everywhere.
1735
1736         * Delegate.cs: new CreateDelegate implementations.
1737
1738 2002-08-06  Tim Coleman <tim@timcoleman.com>
1739         * MonoType.cs: 
1740                 Fix bug #28582.  Now checks parameters for properties
1741                 in GetPropertyImpl.
1742
1743 2002-08-04  Nick Drochak  <ndrochak@gol.com>
1744
1745         * Buffer.cs: Throw correct exception in GetByte() and SetByte().
1746
1747 2002-08-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1748
1749         * String.cs:
1750         (FormatSpecifier): allow white space between the comman and the width
1751         specifier.
1752
1753 2002-07-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1754
1755         * Int32.cs:
1756         * Int64.cs:
1757         * UInt32.cs:
1758         * UInt64.cs: fixed bug #28050. May be a MS bug?
1759
1760 Thu Jul 18 14:47:03 CEST 2002 Paolo Molaro <lupus@ximian.com>
1761
1762         * MonoType.cs: fix IsArrayImpl.
1763
1764 2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1765
1766         * String.cs: make ToLower (culture) and ToUpper (culture) use the
1767         default ToLower and ToUpper and don't throw NotImplemented.
1768
1769 Sat Jul 13 15:09:01 CEST 2002 Paolo Molaro <lupus@ximian.com>
1770
1771         * Type.cs: make GettTypeCode an icall. Test implementation of
1772         GetMember().
1773
1774 2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1775
1776         * AppDomainSetup.cs: implemented LoaderOptimization.
1777
1778 2002-07-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1779
1780         * Activator.cs: some more intermediate results checking in
1781         in CreateInstance and CreateInstanceFrom and use GetConstructor and
1782         Invoke only with Type [] until the other overloaded versions work.
1783
1784 2002-07-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1785
1786         * Activator.cs: reformatted. Implemented CreateInstance* methods
1787         that return ObjectHandle.
1788
1789         * AppDomain.cs: implemented CreateInstance*AndUnwrap methods.
1790
1791 2002-07-03  Nick Drochak  <ndrochak@gol.com>
1792
1793         * Decimal.cs (Divide): Short cut the case where the dividend is 0 (and
1794         the divisor is not) and avoid the icall, which seems to have a bug.
1795
1796 2002-07-03  Nick Drochak  <ndrochak@gol.com>
1797
1798         * Double.cs (CompareTo): Correctly handle the case where the instance
1799         is NaN. Also return 0 if the values are equal.
1800
1801 2002/07/03  Nick Drochak <ndrochak@gol.com>
1802
1803         * MissingMethodException: Add missing Message property
1804         * MissingMemberException: Add missing Message property
1805
1806 2002-06-30  Nick Drochak  <ndrochak@gol.com>
1807
1808         * Double.cs (CompareTo): Just see which is bigger.  Don't use the
1809         subtraction trick, it doesn't work when the values have a diference of
1810         less than one.
1811
1812         * Single.cs (CompareTo): same
1813
1814 2002-06-27  Martin Baulig  <martin@gnome.org>
1815
1816         * UIntPtr.cs (UIntPtr.Zero): Use an explicit `u' suffix in the
1817         constructor argument.  [FIXME: The implicit conversion to an
1818         unsigned integer doesn't work with mcs.]
1819
1820 2002-06-26  Martin Baulig  <martin@gnome.org>
1821
1822         * DecimalFormatter.cs: Removed MSTEST stuff, use `System',
1823         not `S = System'.  This file now compiles with mcs.
1824
1825         * String.cs: Removed the already ifdef-outed __arglist Concat function
1826         to make it compile with mcs.
1827
1828 2002-06-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1829
1830         * IntegerFormatter.cs:
1831         (FormatParse.FormatNumber): fixed custom format for negative numbers.
1832
1833 2002-06-21  Martin Baulig  <martin@gnome.org>
1834
1835         * Double.cs: Replace the private `enum State' with constants since this
1836         will avoid some bigger headaches in mcs.
1837
1838 Thu Jun 20 17:51:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
1839
1840         * TimeSpan.cs: do not pollute the namespace with the
1841         System.Parser name.
1842
1843 2002-06-18  Nick Drochak  <ndrochak@gol.com>
1844
1845         * ArgumentException.cs: Use the message given in the constructor when
1846         accessing the Message property.  Thanks to Dietmar for the help with 
1847         "base".
1848
1849 2002-06-17  Dietmar Maurer  <dietmar@ximian.com>
1850
1851         * MonoType.cs: GetField is now a InternalCall
1852
1853 2002-06-13  Nick Drochak  <ndrochak@gol.com>
1854
1855         * DateTime.cs: (Parse): Accept dates that have no hour,min,sec. in the
1856         sortable format(s), e.g. "2002-02-25"
1857
1858 2002/06/12  Nick Drochak <ndrochak@gol.com>
1859
1860         * Random.cs (Next): Fix math error.  Return a number within the range.
1861
1862 2002-06-12  Nick Drochak  <ndrochak@gol.com>
1863
1864         * String.cs (IndexOf): Return -1 if start index is equal to string
1865         length.
1866
1867 2002-06-10  Duncan Mak  <duncan@ximian.com>
1868
1869         * Convert.cs (ToDouble): Remove rounding in ToDouble (float).
1870         (ToType): Added null field in conversionTable to avoid
1871         IndexOutOfRangeException. Changed what exceptions we throw to match
1872         the spec.
1873         
1874 2002-06-11  Nick Drochak  <ndrochak@gol.com>
1875
1876         * Int64.cs (Parse): Added unique strings to the messages where we throw
1877         a FormatException. Needed these to debug, so just left them in since
1878         they might be useful later. Fixed Currency parsing where we weren't
1879         looking at CurrencyDecimalSeparator, etc.
1880
1881 2002-06-09  Lawrence Pit  <loz@cable.a2000.nl>
1882
1883         * DateTime.cs: fixes to pass tests M0 to M6:
1884                 if yy pattern then year values >= 30 are in 20th century
1885                 rfc1123 pattern is always in GMT, therefor useutc must be false
1886         made GetNow() internal static so it can be called from TimeZone.
1887         * TimeZone.cs: removed dependency on year 2002 from initialization of 
1888         current timezone.
1889
1890 2002-06-09  Duncan Mak  <duncan@ximian.com>
1891
1892         * Convert.cs (ToType): Rearranged what Exceptions we throw to
1893         match MS behavior.
1894
1895 2002-06-08  Duncan Mak  <duncan@ximian.com>
1896
1897         * Decimal.cs: Added support for the IConvertible interface.
1898
1899 2002-06-08  Martin Baulig  <martin@gnome.org>
1900
1901         * Enum.cs (IsDefined): `value' may be of the enum's type itself, it
1902         doesn't necessarily need to be of the enum's underlying type.
1903
1904 2002/06/07  Nick Drochak <ndrochak@gol.com>
1905
1906         * String.cs: Add [Serializable] to class
1907         * SByte.cs (Parse): Add [CLSCompliant(false)] to all the overloads
1908
1909 2002-06-04  Nick Drochak  <ndrochak@gol.com>
1910
1911         * Double.cs (Parse): Recognize the group separator string, but still we
1912         don't check the format for the proper number of digits between
1913         separators. Also throw OverflowException when we get Pos or Neg
1914         Infinity from runtime.
1915
1916 2002-06-03  Duncan Mak  <duncan@ximian.com>
1917
1918         * Convert.cs (ToDouble): Fixed ToDouble (byte value).
1919
1920 Mon Jun 3 12:18:18 CEST 2002 Paolo Molaro <lupus@ximian.com>
1921
1922         * Type.cs: fixed GetTypeCode.
1923
1924 2002-06-02  Duncan Mak  <duncan@ximian.com>
1925
1926         * Convert.cs (ToInt16): use Convert.ToInt16 (int) instead of a direct
1927         cast from an int so that we throw OverFlowException correctly.
1928         
1929         (ToInt64): Use a new 64bit version of ConvertToBase.
1930         
1931         (ConvertToBase): Add checks for overflow (checks Int32.MinValue
1932         and Int32.MaxValue).
1933
1934         (ConvertFromBase64): New 64-bit version of ConvertFromBase.
1935
1936 2002-06-02  Nick Drochak  <ndrochak@gol.com>
1937
1938         * Convert.cs (ToSByte): Check for special value.
1939         * Single.cs (Parse): 
1940         * UInt16.cs (Parse):
1941         * UInt32.cs (Parse): Throw OverflowException if negative
1942
1943 2002-06-02  Duncan Mak  <duncan@ximian.com>
1944
1945         * Convert.cs (DBNull): Point it to DBNull.Value.
1946         (IsDBNull): Instead of checking typecodes, just check to see if
1947         it's the same as the DBNull field.
1948
1949 2002-06-02  Nick Drochak  <ndrochak@gol.com>
1950
1951         * Convert.cs (ConvertFromBase): Detect bad digits correctly.
1952
1953 2002-06-02  Duncan Mak  <duncan@ximian.com>
1954
1955         * Char.cs (Parse): Simplify the Exception handling.
1956
1957         * Convert.cs (ToDecimal): Remove call to Math.Round () when
1958         converting from a float.
1959
1960 2002-05-30  Martin Baulig  <martin@gnome.org>
1961
1962         * MonoType.cs (GetInterface): Implemented.
1963
1964 Thu May 23 17:17:28 CEST 2002 Paolo Molaro <lupus@ximian.com>
1965
1966         * Activator.cs: implemented CreateInstance ().
1967
1968 2002-05-22  Duncan Mak  <duncan@ximian.com>
1969
1970         * Convert.cs (ConvertToBase): Added new 64bit version.
1971         (BuildConvertedString64): New 64bit version of
1972         BuildConvertedString.
1973
1974         This fixes bug 25068.
1975
1976         (ConvertFromBase): Added additional test for checking if the
1977         digits are valid. Thanks to Miguel for coming up with this test.
1978
1979         This fixes bug 25071.
1980         
1981 2002-05-21  Duncan Mak  <duncan@ximian.com>
1982
1983         * Convert.cs (ToType): Rearranged to fit the new layout of
1984         conversionTable.
1985
1986         (conversionTable): Rearranged to fit the layout of the
1987         System.TypeCode enum.
1988
1989         This should fix bug 25075.
1990         
1991 2002-05-21  Duncan Mak  <duncan@ximian.com>
1992
1993         * Convert.cs (ToString): Fixed the ToString methods. Previously I had
1994         mixed up the two code paths, one for converting to a specific base
1995         (this case), another from converting from a foreign base to base10
1996         (used by ToInt16|32|64 (string, int)). This fixes bug 25068.
1997
1998         * Convert.cs (ToByte)
1999         (ToSByte): Fixed bug 25074. Added more bits to ConvertFromBase so
2000         that we won't confuse FormatException with OverflowException.
2001
2002 2002-05-22  Lawrence Pit  <loz@cable.a2000.nl>
2003
2004         * Environment.cs: CommandLine missed spaces between arguments.
2005         Implemented StackTrace. Returning MachineName in UserDomainName
2006         instead of null.
2007         
2008 Tue May 21 17:25:49 CEST 2002 Paolo Molaro <lupus@ximian.com>
2009
2010         * MonoCustomAttrs.cs: handle inherit argument.
2011
2012 2002-05-21  Nick Drochak  <ndrochak@gol.com>
2013
2014         * Math.cs (Pow): Change icall method name and insert parameter
2015         checks in for infinities and NaN.
2016
2017 2002-05-13  Miguel de Icaza  <miguel@ximian.com>
2018
2019         * Double.cs (Parse): Reimplement by cleaning up the string first,
2020         and then passing to strtof in the mono runtime.
2021
2022         * Single.cs (Parse): Use the Double implementation and cast to
2023         float. 
2024
2025 2002-05-21  Nick Drochak  <ndrochak@gol.com>
2026
2027         * Math.cs 
2028                 (Ceiling): Check for "special" values
2029                 (Floor): Check for "special" values
2030                 (Round): Fix off-by-one error on decimal shifting
2031
2032 2002-05-20  Lawrence Pit  <loz@cable.a2000.nl>
2033
2034         * DateTime.cs: ToString () using "G" format specifier 
2035
2036 2002-05-19  Martin Baulig  <martin@gnome.org>
2037
2038         * Convert.cs (FromBase64CharArray): Do correct exception handling.
2039
2040 2002-05-19  Martin Baulig  <martin@gnome.org>
2041
2042         * Convert.cs (FromBase64CharArray): Convert the char array using
2043         System.Text.UTF8Encoding, not UnicodeEncoding (which is UTF-16) to
2044         a byte array.
2045
2046 2002-05-17  Miguel de Icaza  <miguel@ximian.com>
2047
2048         * MonoType.cs: Style changes.
2049
2050         * Type.cs: Style changes.
2051
2052 2002-05-16  Piers Haken <piersh@friksit.com
2053
2054         * UInt64.cs: fix declaration of IConvertible.To* overrides.
2055
2056 2002-05-16  Nick Drochak  <ndrochak@gol.com>
2057
2058         * BitConverter.cs (ToString): Add parameter check for invalid start 
2059         index.
2060
2061         * Console.cs: Use AutoFlush on the StreamWriter for stdin and stdout
2062         now that StreamWriter uses buffering
2063
2064 2002-05-14  Miguel de Icaza  <miguel@ximian.com>
2065
2066         * Double.cs: Oops.  Also handle exponents without finding a dot.
2067
2068 2002-05-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2069
2070         * ChangeLog: removed empty entry at the top of the file.
2071
2072         * Int32.cs: made static functions used by Parse internal.
2073
2074         * Int64.cs:
2075         * UInt32.cs:
2076         * UInt64.cs: removed static fucntions used by Parse and use the ones
2077         in Int32.cs
2078
2079 2002-05-12  Daniel Morgan <danmorg@sc.rr.com>
2080
2081         * IServiceProvider.cs: added using System
2082
2083 2002-05-09  Daniel Morgan <danmorg@sc.rr.com>
2084
2085         * Single.cs: copied ToString() and Parse() methods from 
2086         Double to Single and modified a tiny bit for Single.  
2087         There is still a FIXME for Double and Single about
2088         passing the format and provider info to the icall too.
2089
2090 2002-05-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2091
2092         * Int32.cs:
2093         * Int64.cs:
2094         * UInt32.cs:
2095         * UInt64.cs (Parse): don't use Char.IsNumber to test for hex digits.
2096         Don't use a delegate to test for valid digits.
2097
2098 2002-05-01  Duncan Mak  <duncan@ximian.com>
2099
2100         * Convert.cs: 
2101         * Math.cs: Added missing CLSCompliant attributes where necessary.
2102         
2103 2002-04-30  Duncan Mak  <duncan@ximian.com>
2104
2105         * ArgumentException.cs (Message): 
2106         * ArgumentOutOfRangeException.cs (Message): Added.
2107
2108 2002-04-30  Nick Drochak  <ndrochak@gol.com>
2109
2110         * MonoType.cs: Remove unused variable and eliminate a compiler warning.
2111
2112 Mon Apr 29 15:32:02 CEST 2002 Paolo Molaro <lupus@ximian.com>
2113
2114         * Environment.cs: support for Exit(), CommandLine, CommandLineArgs ().
2115
2116 2002-04-28  Duncan Mak  <duncan@ximian.com>
2117
2118         * DivideByZeroException.cs: Added missing serialization constructor.
2119
2120         * UnauthorizedAccessException.cs: Added the missing Serializable attribute.
2121
2122 2002-04-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2123
2124         * Math.cs: fix Floor () and Round (). Closes #23960.
2125
2126 2002-04-27  Nick Drochak  <ndrochak@gol.com>
2127
2128         * Array.cs (IList.Contains): Should throw a RankException if this is 
2129         called on a Rank > 1 array. Not in the docs, but this is what the 
2130         MS.NET does.
2131
2132 2002-04-26  Duncan Mak  <duncan@ximian.com>
2133
2134         * MissingMemberException.cs: Made the message variable 'protected'
2135         instead of 'private', so that we can see it in
2136         MissingMethodException and MissingFieldException.
2137
2138         * MissingFieldException.cs:
2139         * MissingMethodException.cs: Added missing (string, string)
2140         constructor, and also the Message property.
2141
2142 2002-04-26  Martin Baulig  <martin@gnome.org>
2143
2144         * Enum.cs: Implemented the IConvertible methods.
2145
2146 2002-04-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2147
2148         * SByte.cs: little change in Parse (string) to avoid incorrect
2149         OverflowException thrown (reported by nickd).
2150
2151 2002-04-22  Miguel de Icaza  <miguel@ximian.com>
2152
2153         * ValueType.cs: Add Serializable attribute.
2154
2155         * String.cs: ifdef-out out the __arglist Concat function until I
2156         add support for that to mcs.
2157
2158 2002-04-24      Patrik Torstensson <patrik.torstensson@labs2.com>
2159
2160         * AppDomain.cs (GetValue): usage of the correct icall (bug)
2161
2162 Wed Apr 24 21:15:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
2163
2164         * GC.cs: implement most of the methods as icalls.
2165
2166 2002-04-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2167
2168         * DecimalFormatter.cs (ToString): return correct value when the
2169         decimal number is 0.
2170
2171 2002-04-24      Patrik Torstensson <patrik.torstensson@labs2.com>
2172         
2173         * Type.cs (GetProperty): fixed call syntax (needs an empty array not null)
2174         * MonoType.cs (GetPropertyImpl) : basic implementation (ignores types, bindingAttr, modifiers)
2175
2176 2002-04-24  Nick Drochak  <ndrochak@gol.com>
2177
2178         * Double.cs (Parse): Handle case where there are no digits before the 
2179         decimal point, such as ".1".
2180
2181 2002-04-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2182
2183         * Int32.cs:
2184         * UInt32.cs:
2185         * Int64.cs:
2186         * UInt64.cs: fixed bug #23738 (hex numbers parsed wrong).
2187
2188 2002-04-23      Patrik Torstensson <patrik.torstensson@labs2.com>
2189
2190         * String.cs (Split): fixed invalid split of count 0 and 1.
2191         
2192 2002-04-23      Patrik Torstensson <patrik.torstensson@labs2.com>
2193         
2194         * String.cs (LastIndexOf): fixed argument checking.
2195         * String.cs (Equals): made internal for performace.
2196
2197 2002-04-23  Nick Drochak  <ndrochak@gol.com>
2198
2199         * String.cs (Join): check argument and throw exception if needed
2200
2201 2002-04-23  Nick Drochak  <ndrochak@gol.com>
2202
2203         * String.cs (StartsWith): check argument and throw exception if needed
2204
2205 2002-04-22  Nick Drochak  <ndrochak@gol.com>
2206
2207         * String.cs (IndexOfAny): check arguments and throw exceptions as
2208         neccessary.  ALso remove some debug WriteLines.
2209
2210 2002-04-20  Dietmar Maurer  <dietmar@ximian.com>
2211
2212         * String.cs: use internal constructors
2213         buf fix in Concat.
2214
2215 Thu Apr 18 17:16:15 CEST 2002 Paolo Molaro <lupus@ximian.com>
2216
2217         * MonoType.cs: make GetElementType its own icall.
2218
2219 2002-04-18  Nick Drochak <ndrochak@gol.com>
2220
2221         * String.cs: Modified file. Re-add methods needed by the unit tests.
2222
2223 Thu Apr 18 12:38:32 CEST 2002 Paolo Molaro <lupus@ximian.com>
2224
2225         * String.cs: some code speedups and restored GetTypeCode().
2226
2227 2002-04-17      Patrik Torstensson <patrik.torstensson@labs2.com>
2228
2229         * String.cs: New implementation using internal calls.
2230         
2231 2002-04-16  Nick Drochak  <ndrochak@gol.com>
2232
2233         * DecimalFormatter.cs: Trim off excess null characters from the string
2234         that decimal2string gives back.
2235
2236 2002-04-16  Nick Drochak  <ndrochak@gol.com>
2237
2238         * String.cs (SubString): revert my change.  I can't reproduce the
2239         problem anymore.
2240
2241 2002-04-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2242
2243         * Attribute.cs: added GetHashCode and Equals.
2244
2245 2002-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2246
2247         * Enum.cs: little improvements to Format ().
2248
2249 Thu Apr 11 12:28:13 CEST 2002 Paolo Molaro <lupus@ximian.com>
2250
2251         * String.cs: internalcall GetHashCode().
2252         * Array.cS: optimize access to elements.
2253
2254 Wed Apr 10 21:20:19 CEST 2002 Paolo Molaro <lupus@ximian.com>
2255
2256         * String.cs: make IndexOfAny() use an internalcall.
2257
2258 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2259
2260         * Int32.cs:
2261         * UInt32.cs:
2262         * Int64.cs: 
2263         * UInt64.cs: fixed error when testing for validity of flags.
2264
2265 2002-04-11  Nick Drochak  <ndrochak@gol.com>
2266
2267         * Double.cs: Use an internal call for ToString(). This is just a simple
2268         implementation to get away from throwing a NotImplementedException.
2269
2270 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2271
2272         * Int32.cs:
2273         * UInt32.cs:
2274         * Int64.cs: 
2275         * UInt64.cs: changed Type.GetType () by typeof (), as suggested by
2276         lupus.
2277
2278         * Int32.cs:
2279         * Int64.cs: throw an OverFlowException when parsing a string 
2280         containing a dot followed by any non '0' number.
2281
2282 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2283
2284         * Byte.cs:
2285         * UInt16.cs:
2286         * UInt32.cs:
2287         * UInt64.cs: added complex Parse ().
2288
2289 2002-04-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2290
2291         * SByte.cs:
2292         * Int16.cs:
2293         * Int32.cs:
2294         * Int64.cs: added complex Parse ().
2295
2296 2002-04-09  Nick Drochak  <ndrochak@gol.com>
2297
2298         * Array.cs (BinarySearch): Add checks on paramters before using them
2299         and throw exceptions as needed.
2300
2301         * Enum.cs (Format): Check if [Flags] is applied to enum and convert
2302         "G" format to "F" if so.
2303
2304 Tue Apr 9 13:12:09 CEST 2002 Paolo Molaro <lupus@ximian.com>
2305
2306         * MonoCustomAttrs.cs: return arrays of type Attribute[]
2307         instead of object[].
2308
2309 2002/04/09  Nick Drochak <ndrochak@gol.com>
2310
2311         * String.cs (Substring): Copy only non-null characters to the new
2312         string.
2313
2314 2002-04-09  Nick Drochak  <ndrochak@gol.com>
2315
2316         * IntegerFormatter.cs: Don't use a format character to indicate a
2317         custom format was passed in. It was using 'z' to indicate a custom
2318         format, but really it should throw a format exception if the user
2319         tries to use "z" as the format string. Now it does.
2320
2321         * Activator.cs: New File.
2322
2323 2002-04-08  Nick Drochak  <ndrochak@gol.com>
2324
2325         * Enum.cs (ToString): Big ugly fix for the case where [Flags] is
2326         applied to an enum. Need to handle the different possible integer
2327         types of an enum somehow.  Can anyone say generics?
2328
2329 Mon Apr  8 06:22:42  2002 Piers Haken <piersh@friskit.com>
2330
2331         * Convert.cs: switched the To*(object) methods to use
2332         IConvertible directly instead of calling ChangeType
2333
2334 Sat Apr 6 20:08:41 CEST 2002 Paolo Molaro <lupus@ximian.com>
2335
2336         * ValueType.cs: make Equals() an internalcall.
2337
2338 Fri Apr 5 15:38:54 CEST 2002 Paolo Molaro <lupus@ximian.com>
2339
2340         * Type.cs: also look for nested types in FindMembers.
2341         * MonoType.cs: make GetNestedTypes() an internalcall.
2342
2343 2002-04-05  Nick Drochak  <ndrochak@gol.com>
2344
2345         * Enum.cs (Parse): Handle different underlying types.
2346
2347 2002/04/04 Nick Drochak <ndrochak@gol.com>
2348
2349         * Enum.cs (IsDefined): Throw exception when type of value to look for
2350         is not the correct one.  Attempt to have it work with string values
2351         too, but not sure if the unit tests are getting that far yet.
2352
2353 2002-04-04  Nick Drochak  <ndrochak@gol.com>
2354
2355         * Decimal.cs: Fix a couple of typos.
2356
2357 Wed Apr 3 19:46:00 CEST 2002 Paolo Molaro <lupus@ximian.com>
2358
2359         * Enum.cs: the values array is of the enum and not of the underlying
2360         type. Updates and some bug fixes.
2361         * MonoType.cs: make the internalcall return FullName instead of the
2362         assembly qualified name.
2363         * Type.cs: make ToString () simply return FullName.
2364
2365 2002-04-03  Nick Drochak  <ndrochak@gol.com>
2366
2367         * Type.cs (GetTypeCode): provide some of the implementation for this
2368         method.  It's still too simplistic to be considered complete.
2369
2370 2002-04-02  Dietmar Maurer  <dietmar@ximian.com>
2371
2372         * Object.cs: fixed FieldGetter/FieldSetter signature
2373
2374 2002-04-02  Nick Drochak  <ndrochak@gol.com>
2375
2376         * Environment.cs: add MonoTODO's on parts that should have it.
2377
2378 2002-04-01  Nick Drochak  <ndrochak@gol.com>
2379
2380         * Enum.cs: added reality checks (check parameters to most methods that
2381         need them).
2382
2383 2002-03-30  Dietmar Maurer  <dietmar@ximian.com>
2384
2385         * Object.cs: added FieldGetter/FieldSetter
2386
2387 2002-03-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2388
2389         * IntegerFormatter.cs: fixed initialization error in static
2390         constructor.
2391
2392 2002-03-28  Dietmar Maurer  <dietmar@ximian.com>
2393
2394         * Delegate.cs: added new field to store a trampoline function
2395
2396 2002-03-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2397
2398         * IntegerFormatter.cs: added workaround for bug #22668. First patch to
2399         make custom format strings work (not fully functional yet).
2400
2401 2002/03/28  Nick Drochak <ndrochak@gol.com>
2402
2403         * IntegerFormatter.cs: Change class from internal to public.  Add
2404         necessary [CLSCompliant(false)] attributes.
2405
2406 2002-03-27  Duco Fijma  <duco@lorentz.xs4all.nl>
2407         * _AppDomain.cs, AppDomain.cs: renamed method GetDate to GetData
2408         (was a typo)
2409
2410 2002-03-28  Nick Drochak  <ndrochak@gol.com>
2411
2412         * Type.cs: Added MonoTODO tags on members that have FIXME, etc.
2413
2414 2002-03-27  Dan Lewis  <dihlewis@yahoo.co.uk>
2415
2416         * Console.cs: Modified to get std handles from MonoIO.
2417         * Environment.cs: removed PAL dependencies.
2418
2419 2002-03-25  Miguel de Icaza  <miguel@ximian.com>
2420
2421         * String.cs (System): Removed internal enumeration, because
2422         bootstrapping the corlib at this point does not support
2423         enumerations. 
2424
2425         * IntPtr.cs: Temporary work-around until I fix the assembly
2426         attributes bug.
2427
2428 2002-03-24  Martin Baulig  <martin@gnome.org>
2429
2430         * Enum.cs (GetValues): According to the docu this is sorted after
2431         values, not names.
2432
2433         * String.cs (System): Removed enumeration, because it is pretty
2434         hard to support enumerations in /nostdlib mode for the core types.
2435
2436 Tue Mar 19 18:18:49 CET 2002 Paolo Molaro <lupus@ximian.com>
2437
2438         * Array.cs: move error handling in the catch block.
2439         * MulticastDelegate.cs: remove == and != operators that were
2440         removed with the delegate changes (when you add stuff, please do not
2441         remove existing functionality!).
2442         * Type.cs: if a property is not found in a type, search for it
2443         in the parent types, too.
2444
2445 2002-03-18  Dan Lewis <dihlewis@yahoo.co.uk>
2446         
2447         * Math.cs: changed to use icall instead of PAL.
2448
2449 2002-03-18  Dietmar Maurer  <dietmar@ximian.com>
2450
2451         * Double.cs: added check for NaN (Bug [22082])
2452
2453 2002-03-19  Nick Drochak  <ndrochak@gol.com>
2454
2455         * Enum.cs (Equals): check for null and throw if it is.
2456         * Enum.cs (Format): check for null parameters and throw if necessary.
2457         This method still needs more argument checking.
2458
2459 2002-03-18  Dietmar Maurer  <dietmar@ximian.com>
2460
2461         * Enum.cs (Equals): check if Enums are of the same type
2462
2463 2002-03-18  Nick Drochak  <ndrochak@gol.com>
2464
2465         * Double.cs: Explicitly handle comparisons in CompareTo() for
2466         Positive/Negative Infinity and NaN. Unit Test now passes on Linux.
2467
2468         * Enum.cs(CompareTo): Check types of values before trying to compare.
2469         Throw exceptions if types are invalid or don't match.
2470
2471 2002-03-14  Miguel de Icaza  <miguel@ximian.com>
2472
2473         * Array.cs: Add some extra debugging information.
2474
2475 2002-03-15  Nick Drochak  <ndrochak@gol.com>
2476
2477         * Array.cs: Added IList and IEnumerable. 
2478
2479 2002-03-14  Miguel de Icaza  <miguel@ximian.com>
2480
2481         * UInt64.cs, UInt32.cs, UInt16.cs: Mark public parse methods as
2482         NonCLSCompliant. 
2483
2484 2002-03-14  Dietmar Maurer  <dietmar@ximian.com>
2485
2486         * Delegate.cs (Equals): also compare method_ptr 
2487         (GetHashCode): returm method_ptr as hash
2488
2489 2002-03-13  Duco Fijma  <duco@lorentz.xs4all.n>
2490         * TimeSpan.cs: removed the use of Custom Numeric Format Strings,
2491         such as 42.ToString("0000000"), as these are (currently) not implemented
2492         in System.IntegerFormatter. TimeSpan luckely can do with Standard
2493         Numeric Format Strings, such as 42.ToString("D7").
2494
2495 2002-03-12  Duncan Mak  <duncan@ximian.com>
2496
2497         * FieldAccessException.cs: 
2498         * MethodAccessException.cs: 
2499         * PlatformNotSupportedException.cs: Inherit from
2500         MemberAccessException, not SystemException.
2501
2502         * ObsoleteAttribute.cs: Made Message and IsError properties
2503         instead of fields.
2504
2505 Tue Mar 12 19:21:18 CET 2002 Paolo Molaro <lupus@ximian.com>
2506
2507         * GC.cs: make SuppressFinalize() a nop.
2508         * Delegate.cs: fix == operator.
2509
2510 2002-03-13  Nick Drochak  <ndrochak@gol.com>
2511
2512         * Enum.cs: Add IConvertible methods. Cyclic dependancy fixed in the
2513         runtime that goes with this patch.
2514
2515 2002-03-10  Martin Baulig  <martin@gnome.org>
2516
2517         * Int32.cs (Parse): Correctly parse negative numbers.
2518
2519 2002-03-08  Martin Baulig  <martin@gnome.org>
2520
2521         * String.cs (Split): Really fix it this time. Also adding several new
2522         testcase to the testsuite.       
2523
2524 2002-03-08  Martin Baulig  <martin@gnome.org>
2525
2526         * Array.cs (Copy): Optimized: removed duplicate null check, removed
2527         two duplicate GetLowerBound() calls and one duplicate IsValueType.
2528
2529 Fri Mar 8 18:49:19 CET 2002 Paolo Molaro <lupus@ximian.com>
2530
2531         * Object.cs: commit my hacked GetHashCode(): it's good enough for now.
2532         * String.cs: use the dumb code for IndexOf(string): this is worth
2533         15-20 % speedup in mcs compile with mint.
2534
2535 Fri Mar 8 12:45:44 CET 2002 Paolo Molaro <lupus@ximian.com>
2536
2537         * String.cs: revert change to Split() that broke the compiler (hi martin!:-).
2538
2539 2002-03-07  Martin Baulig  <martin@gnome.org>
2540
2541         * String.cs (Join): Throw an ArgumentNullException.
2542         (LastIndexOf (string,int,int)): This method does a backwards search,
2543         so startIndex points to the end of value, not to its beginning. Don't
2544         throw an exception if startIndex equals this.Length. Always return -1
2545         if startIndex is smaller than the length of value.
2546         (Replace (string,string)): Replace all occurences of oldValue.
2547         If newValue is null, all occurences of oldValue are to be removed.
2548         (Split (char[],int)): Return an empty array if maxCount is zero, throw
2549         an ArgumentOutOfRangeException if it's less than zero. Return maxValue
2550         elements, not maxValue+1.
2551
2552 Thu Mar 7 17:16:06 CET 2002 Paolo Molaro <lupus@ximian.com>
2553
2554         * MonoType.cs: make GetEvents() an internal call.
2555         * MulticastDelegate.cs: copy the passed in array.
2556
2557 2002-03-06  Martin Baulig  <martin@gnome.org>
2558
2559         * Array.cs (Copy): Use FastCopy when appropriate and do correct
2560         exception handling.
2561
2562 2002-03-06  Duco Fijma  <duco@lorentz.xs4all.nl>
2563         * CharEnumerator.cs: fixes to CharEnumertor.MoveNext, fixing 
2564         some of the failures found be new tests (see ChangeLog in 
2565         Test/System). Comments added to this method, based on
2566         the representation invariant of this class, that (try to) explain
2567         why it now should be correct.
2568
2569 2002-03-06  Dietmar Maurer  <dietmar@ximian.com>
2570
2571         * Int64.cs (Parse): bug fix for max. negative value. 
2572
2573 2002-03-07  Nick Drochak  <ndrochak@gol.com>
2574
2575         * RuntimeTypeHandle.cs: Add Serializable attribute as the docs say.
2576         I need to understand what the difference between the attribute and
2577         the interface is.
2578
2579 2002-03-06  Martin Baulig  <martin@gnome.org>
2580
2581         * Array.cs (Copy): Always throw an ArrayTypeMismatchException, not
2582         an InvalidCastException if the widening conversion failed. See
2583         testcases #M94-#M96.
2584
2585         * Array.cs (CopyTo): Bug fix from Ajay Dwivedi, correctly handle
2586         arrays with non-zero lower bounds. Also adding testcases #F10-#F13
2587         for this.
2588
2589         * Array.cs (CopyTo): Reverted my last change, it was incorrect.
2590         (Copy): Actually allow copying multi-dimensional arrays.
2591
2592 2002-03-05  Duncan Mak  <duncan@ximian.com>
2593
2594         * Convert.cs:
2595         (DBNull) Added the missing field.
2596         (IsDBNull) Fixed typo.
2597         (ToByte (string, int)) Implemented.
2598         (ToString (byte, int)) Implemented.
2599         (ConvertToBase)
2600         (BuildConvertedString) internal functions used for converting values to
2601         a specific base.
2602
2603         * Int16.cs: 
2604         * Int32.cs:
2605         * Int64.cs:
2606         * Single.cs:
2607         * UInt16.cs: 
2608         * UInt32.cs: Implemented the IConvertible interface.    
2609
2610         * CharEnumerator.cs: Renamed to variables to be clearer and
2611         changed some of the tests to conform to the 1.0 spec.
2612
2613 2002-03-06  Martin Baulig  <martin@gnome.org>
2614
2615         * Array.cs (Copy): Calculate absolute array position here and use
2616         GetValueImpl() and SetValueImpl() with that position. We can now
2617         copy multi-dimensional arrays.
2618         (CopyTo): Small bug fix.
2619
2620 2002-03-05  Duco Fijma  <duco@lorentz.xs4all.nl>
2621
2622         * Version.cs: CompareTo changed according the LAMESPEC discovered by 
2623         Nick (See VersionTest.cs).
2624         * CharEnumerator.cs: fixed two bugs in MoveNext. It had an off-by-one
2625         error comparing the current position (idx) against the length of the
2626         string iterated and it set idx to an unrecognized special value (-2)
2627
2628 Tue Mar 5 17:34:14 CET 2002 Paolo Molaro <lupus@ximian.com>
2629
2630         * SByte.cs, UInt64.cs: implement IConvertible interface. Nobody wants
2631         to do this dirty work, but someone has to do it (and I need it to pass
2632         the "200 sample tests compiled on linux" mark).
2633
2634 2002-03-06  Nick Drochak  <ndrochak@gol.com>
2635
2636         * Attribute.cs
2637         * DecimalFormatter.cs
2638         * Delegate.cs
2639         * Double.cs
2640         * GC.cs
2641         * Int16.cs
2642         * Int32.cs
2643         * MonoType.cs
2644         * RuntimeMethodHandle.cs
2645         * RuntimeTypeHandle.cs
2646         * String.cs
2647         * Type.cs:
2648                 Add [MonoTODO]'s to places where we currently throw a
2649                 NotImplementedException.
2650
2651 2002-03-05  Dietmar Maurer  <dietmar@ximian.com>
2652
2653         * Int16.cs (Parse): do not overflow on max negative value
2654
2655         * Int32.cs (Parse): do not overflow on max negative value
2656
2657 Mon Mar 4 20:36:05 CET 2002 Paolo Molaro <lupus@ximian.com>
2658
2659         * Type.cs: fixed IsClass.
2660         * MonoType.cs: fixed MemberType, IsPrimitiveImpl, IsPointerImpl,
2661         IsByRefImpl. Added GetInterfaces().
2662         * IServiceProvider.cs: compilation fix.
2663
2664 Mon Mar 4 18:37:03 CET 2002 Paolo Molaro <lupus@ximian.com>
2665
2666         * Array.cs: allow copying an empty array to an empty array.
2667
2668 Mon Mar 4 17:59:16 CET 2002 Paolo Molaro <lupus@ximian.com>
2669
2670         * String.cs: fixed LastIndexOf (string) to do a bit of argument
2671         checking.
2672
2673 2002-03-04  Duco Fijma  <duco@lorentz.xs4all.nl>
2674         * Version.cs: many fixes to failures found by the newly created
2675         test cases for this class. Specifically, the CompareTo member
2676         returned wrong values due to the use of Int32.MaxValue as a special
2677         value indicating an "undefined" version component. Also implemented the
2678         missing operators (==, <, >, etc.), one missing constructor and
2679         and some exception throwing.
2680
2681 2002-03-04  Nick Drochak  <ndrochak@gol.com>
2682
2683         * IServiceProvider.cs: Add missing attribute: ComVisible(false)
2684         * Attribute.cs: Add missing attributes: Serializable and
2685         AttributeUsage(AttributeTargets.All)
2686
2687 Mon Mar 4 11:26:49 CET 2002 Paolo Molaro <lupus@ximian.com>
2688
2689         * MonoType.cs: implemented GetConstructors(), GetFields(),
2690         GetMethods(), GetProperties().
2691         * Object.cs: added debugging icall obj_address().
2692         * Type.cs: fixed the binding flags for some Get* methods.
2693         Implemented FindMembers() as calls to the specific GetMember
2694         methods.
2695
2696 2002-03-01  Duco Fijma  <duco@lorentz.xs4all.nl>
2697         * BitConverter.cs: fixed one little bug: ToString(s, n, 0) 
2698         should give an exception for n>=s.Length.
2699
2700 2002-03-01  Martin Baulig  <martin@gnome.org>
2701
2702         * Array.cs: More argument checking and bug fixing.
2703
2704 2002-03-01  Miguel de Icaza  <miguel@ximian.com>
2705
2706         * BitConverter.cs: Indentation match
2707
2708         * AppDomain.cs: Added MonoTODOs to this too.
2709
2710         * Buffer.cs: Added MonoTODOs to this.
2711
2712 2002-03-01  Martin Baulig  <martin@gnome.org>
2713
2714         * Array.cs: Added argument checking to all methods where it was missing.
2715
2716 2002-03-01  Duco Fijma  <duco@lorentz.xs4all.nl>
2717
2718         * BitConverter.cs: Fixed bugs in ToString methods
2719
2720 Fri Mar 1 15:20:00 CET 2002 Paolo Molaro <lupus@ximian.com>
2721
2722         * MulticastDelegate.cs: implement operators so mcs3 can be used on linux.
2723
2724 2002-03-01  Nick Drochak  <ndrochak@gol.com>
2725
2726         * BitConverter.cs: Throw ArgumentException like mscorlib, instead of
2727         ArgumentOutOfRangeException like the docs say.
2728
2729 2002-03-01  Martin Baulig  <martin@gnome.org>
2730
2731         * Enum.cs (CompareTo): Correctly override this method from IComparable.
2732
2733         * Console.cs (setIn, setOut, setError): It's called SetIn, SetOut, SetError.
2734
2735 2002-02-28  Martin Baulig  <martin@gnome.org>
2736
2737         * String.cs: This file now passes the testsuite on Linux :-)
2738         
2739         * String.cs (Intern, IsInterned): The interncalls are now called _Intern and _IsInterned;
2740         make them private and provide C# wrappers which do proper argument checking.
2741
2742         * String.cs (Format): Correctly handle escaped brackets.
2743
2744         * String.cs (_CompareChar): New internal function which compares two chars.
2745         (_Compare): Provide an internal compare method which can do all sorts of
2746         comparision and call it from all the Compare() methods. Also fixed a lot of
2747         bugs here, this code now actually passes the testsuite.
2748
2749 2002-02-28  Duncan Mak  <duncan@ximian.com>
2750
2751         * Convert.cs: Added the missing methods. The new class status page
2752         kicks ass, it even found my typos! Woohoo!
2753         (ConvertFromBase): Moved the Exception throwing in here and
2754         removed the other occurances so it's all centralized now.
2755         (ISDBNull): Implemented.
2756         (GetTypeCode): Implemented.
2757
2758 2002-02-27  Duco Fijma  <duco@lorentz.xs4all.nl>
2759         * Guid.cs: Guid.ToString("") and Guid.ToString(null) is now understood as Guid.ToString("D") 
2760         just as in mscorlib. There is (probably) a documentation bug in the MS FrameWork SDK, which
2761         states that a lacking format should be interpreted as "N".  
2762         Also added [Serializable] attribute
2763         * TimeSpan.cs: some formatting and added the [Serializable] attribute
2764
2765 2002-02-26  Duncan Mak  <duncan@ximian.com>
2766
2767         * WeakReference.cs: Committed for Ajay Kumar Dwivedi.   
2768
2769 2002-02-26  Martin Baulig  <martin@gnome.org>
2770
2771         * TimeZone.cs: Use an internal enum rather than magic numbers to access the
2772         fields of the interncall GetTimeZoneData.
2773
2774         * DateTime.cs: Implemented Parse and fixed a few bugs.
2775
2776         * String.cs (TrimStart): Small fix.
2777
2778 2002-02-26  Martin Baulig  <martin@gnome.org>
2779
2780         * DateTime.cs: ParseExact is now fully functional.
2781
2782         * String.cs (TrimEnd): Small fix.
2783
2784 2002-02-26  Duco Fijma <duco@lorentz.xs4all.nl>
2785         * TimeSpan.cs: Added method TimeSpan.FromMilliseconds, mysteriously 
2786         missing for about six months.
2787
2788 Tue Feb 26 14:21:19 CET 2002 Paolo Molaro <lupus@ximian.com>
2789
2790         * UInt64.cs: fixed Parse method () to handle some of the NumberStyle flags.
2791
2792 2002-02-26  Martin Baulig  <martin@gnome.org>
2793
2794         * DateTime.cs: Miguel already committed this, but there was still a
2795         ChangeLog entry for this missing ....
2796         We're now reusing functionality from TimeSpan, printing dates is
2797         fully implemented, currently working on parsing.
2798
2799         * TimeZone.cs: Fully implemented this. There's a new InternCall in the
2800         runtime for this.
2801
2802 Fri Feb 22 18:47:08 CET 2002 Paolo Molaro <lupus@ximian.com>
2803
2804         * MonoType.cs: disable constructor.
2805         * Object.cs: make GetType() an internalcall.
2806         * Type.cs: added correct bindingflags to GetMethods ().
2807         All such calls should be reviewed to use the correct flags.
2808
2809 Thu Feb 21 19:23:46 CET 2002 Paolo Molaro <lupus@ximian.com>
2810
2811         * Type.cs, MonoType.cs: type_is_subtype_of () changed to include extra
2812         argument.
2813
2814 Thu Feb 21 16:56:51 CET 2002 Paolo Molaro <lupus@ximian.com>
2815
2816         * Type.cs: implemented IsAssignableFrom.
2817
2818 2002-02-21  Duco Fijma <duco@lorentz.xs4all.nl>
2819         * Guid.cs: fixed Guid.Guid(string) ctor. Changed format:
2820         "{0xdddddddd,0xdddd,0xdddd,{0xdd},{0xdd},{0xdd},{0xdd},{0xdd},{0xdd}}" 
2821         to "{0xdddddddd,0xdddd,0xdddd,{0xdd,0xdd,0xdd,0xdd,0xdd,0xdd}}" 
2822         The former is documented by Microsoft. The latter is how they
2823         actually implemented it in mscorlib:-)
2824
2825 Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>
2826
2827         * MonoCustomAttrs.cs: hooks to get the custom attributes from the
2828         runtime.
2829         * MonoType.cs: Implemented custom attributes methods.
2830
2831
2832 2002-02-21  Duco Fijma <duco@lorentz.xs4all.nl>
2833         * Guid.cs: 
2834
2835 Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>
2836
2837         * MonoCustomAttrs.cs: hooks to get the custom attributes from the
2838         runtime.
2839         * MonoType.cs: Implemented custom attributes methods.
2840
2841 2002-02-19  Dietmar Maurer  <dietmar@ximian.com>
2842
2843         * Array.cs (CopyTo): use GetLength() instead of GetUpperBound() 
2844
2845 2002-02-19  Duncan Mak  <duncan@ximian.com>
2846
2847         * Convert.cs: Finished up the missing methods in Convert. Added a
2848         new private method ConvertFromBase.
2849
2850 2002-02-19  Dietmar Maurer  <dietmar@ximian.com>
2851
2852         * String.cs: impl. IConvertible interface
2853
2854 2002-02-18  Duco Fijma <duco@lorentz.xs4all.nl>
2855         * Guid.cs: actual implementation for Guid.Guid(string) Ctor
2856
2857 2002-02-18  Duncan Mak  <duncan@ximian.com>
2858
2859         * Convert.cs: Changed from using Type.GetType (string) to just
2860         typeof (). Probably will speed things up a bit?         
2861
2862 2002-02-18  Ajay Kumar Dwivedi <AjayKumar.Dwivedi@dresdner-bank.com>
2863
2864         * Array.cs:         
2865         1. Fix for GetUpperBound to return correct values
2866         2. made some Properties virtual
2867         3. Adds IsFixedSize and IsReadOnly properties.
2868         4. changes CreateInstance(Type,int[],int[]) to throw Exception
2869         when third arg is null. InternalCall CreateInstance changed to  
2870         CreateInstanceImpl
2871         5. Fixed array.GetUpperBound at a couple of places
2872         6. IndexOf and LastIndexOf now use Object.Equals instead of "=="
2873         7. Added two FIXME's in BinarySearch functions.
2874
2875 2002-02-17  Duncan Mak  <duncan@ximian.com>
2876
2877         * TimeZone.cs:  Applied the rest of Ajay's patch for    
2878         IsDaylightSavingTime. Thanks a lot for the nice explanation of how
2879         it works!
2880
2881 2002-02-17  Duco Fijma  <duco@lorentz.xs4all.nl>
2882         * Guid.cs: added stub for Guid(string) ctor
2883
2884 2002-02-17  Duncan Mak  <duncan@ximian.com>
2885
2886         * Convert.cs: Near-complete implementation of Convert.cs
2887
2888         Added all the To* methods taking (object) and
2889         (object, IFormatProvider) as parameters.
2890
2891         Added [CLSCompliant (false)] attributes to methods dealing with
2892         unsigned types.
2893
2894         Added the missing section on converting to and from DateTime. Only
2895         6 missing methods, all marked with MonoTODOs. Will tackle them later.           
2896
2897 2002-02-16  Duncan Mak  <duncan@ximian.com>
2898
2899         * TimeZone.cs: patch from Ajay Kumar Dwivedi (adwiv@yahoo.com) to
2900         make IsDaylightSavingTime (DateTime) call 
2901         IsDaylightSavingTime (DateTime, DaylightTime).  
2902         
2903         Added internal class CurrentTimeZone from Ajay. It needs more work
2904         to fill in the appropriate internal calls.
2905         
2906 Sat Feb 16 12:41:41 CET 2002 Paolo Molaro <lupus@ximian.com>
2907
2908         * Type.cs: fix IsClass.
2909
2910 Sat Feb 16 12:02:02 CET 2002 Paolo Molaro <lupus@ximian.com>
2911
2912         * String.cs: fix Trim().
2913
2914 Fri Feb 15 21:02:46 CET 2002 Paolo Molaro <lupus@ximian.com>
2915
2916         * String.cs: fix more off by one errors.
2917
2918 Thu Feb 14 18:54:09 CET 2002 Paolo Molaro <lupus@ximian.com>
2919
2920         * MonoType.cs: fix IsValueTypeImpl.
2921         * Type.cs: fix IsEnum. Implement Equals methods.
2922
2923 Wed Feb 13 21:50:13 CET 2002 Paolo Molaro <lupus@ximian.com>
2924
2925         * Int32.cs: implement IConvertible interface.
2926         
2927 2002-02-12  Duncan Mak  <duncan@ximian.com>
2928
2929         * TimeZone.cs: Implemented and added to CVS.
2930
2931 2002-02-11  Duncan Mak  <duncan@ximian.com>
2932
2933         * Convert.cs: Implemented the ChangeType () methods.
2934
2935 Mon Feb 11 19:48:58 CET 2002 Paolo Molaro <lupus@ximian.com>
2936
2937         * Array.cs: make Clone() an internal call.
2938
2939 2002-02-09  Duco Fijma <duco@lorentz.xs4all.nl>
2940         * Changed Guid.NewGuid so that it can use both System.Random and 
2941           System.Security.Cryptography.RandomNumberGenerator
2942
2943 2002-02-09  Duco Fijma <duco@lorentz.xs4all.nl>
2944         * First version of Guid.NewGuid
2945
2946 2002-02-08  Duncan Mak  <duncan@ximian.com>
2947
2948         * RuntimeArgumentHandle.cs: Added to CVS.
2949
2950 Fri Feb 8 19:14:54 CET 2002 Paolo Molaro <lupus@ximian.com>
2951
2952         * CrossAppDomainDelegate.cs, AssemblyLoadEventHandler.cs,
2953         UnhandledExceptionEventHandler.cs: added delegates.
2954
2955 Fri Feb 8 18:06:20 CET 2002 Paolo Molaro <lupus@ximian.com>
2956
2957         * MarshalByRefObject.cs: add ToString () method
2958         (apparently needed by nunit).
2959         * _AppDomain.cs: uncomment ToString(): dietmar fixed the bug triggered
2960         by it in the runtime.
2961
2962 2002-02-08  Dan Lewis <dihlewis@yahoo.co.uk>
2963         
2964         * String.cs (Format): implemented
2965
2966 2002-02-07  Duncan Mak  <duncan@ximian.com>
2967         
2968         * DuplicateWaitObjectException:
2969         * InvalidCastException:
2970         * NotImplementedException:
2971         * NotSupportedException:
2972         * NullReferenceException:
2973         * OutOfMemoryException:
2974         * OverflowException:
2975         * RankException:
2976         * StackOverflowException.cs:
2977         * UnauthorizedAccessException: Added missing constructor used for serialization.
2978
2979 2002-02-07  Dietmar Maurer  <dietmar@ximian.com>
2980
2981         * String.cs (System.Compare): bug fix 
2982
2983 2002-02-06  Dietmar Maurer  <dietmar@ximian.com>
2984
2985         * Enum.cs (Parse,  GetHashCode): impl. 
2986
2987 2002-02-05  Duncan Mak  <duncan@ximian.com>
2988
2989         * DBNull.cs: This is my first crack at the DBNull class. I think I
2990         actually got most of the IConvertible methods right, but I haven't
2991         done the research to test whether or not this is the correct
2992         behavior. IConvertible.ToType () is the most iffy of all, IMHO.
2993
2994         * DllNotFoundException.cs: Inherits from TypeLoadException, not SystemException.
2995
2996 2002-02-05  Dietmar Maurer  <dietmar@ximian.com>
2997
2998         * Enum.cs: added more functionality (GetName, ToObject, Equals)
2999
3000 2002-01-31  Duncan Mak  <duncan@ximian.com>
3001
3002         * InvalidOperationException.cs:
3003         * NotFiniteNumberException.cs:
3004         * ObjectDisposedException.cs:
3005         * TypeInitializationException.cs: Added missing bits for serialization/
3006         
3007         * AppDomainUnloadedException.cs:
3008         * ApplicationException.cs:
3009         * ArgumentOutOfRangeException.cs:
3010         * ArithmeticException.cs:
3011         * ArrayTypeMismatchException:
3012         * BadImageFormatException.cs:
3013         * Exception.cs:
3014         * MissingMemberException.cs:
3015         * TypeLoadException.cs: Added missing bits for serialization.
3016
3017 2002-01-30  Duco Fijma <duco@lorentz.xs4all.nl>
3018         * Guid.cs: implemented everything but Guid.NewGuid
3019
3020 Tue Jan 29 22:32:36 CET 2002 Paolo Molaro <lupus@ximian.com>
3021
3022         * _AppDomain.cs: remove ToString() method: it doesn't seem right 
3023         to have it in this interface and it screws up the method vtable setup.
3024
3025 2002-01-28  Andrei Zmievski <andrei@php.net>
3026
3027         * Double.cs: implemented IConvertible interface.
3028
3029 2002-01-28  Miguel de Icaza  <miguel@ximian.com>
3030
3031         * ArgumentException.cs: Implement serialization constructor.
3032         (GetObjectData): Implement serializer.
3033         
3034         * ArgumentNullException.cs: Implement serialization constructor.
3035
3036         * Exception.cs: Implement serialization constructor.
3037         (GetObjectData): Implement serializer.
3038
3039 2002-01-23  Miguel de Icaza  <miguel@ximian.com>
3040
3041         * DateTime.cs (UnixEpoch): The Begining of the Unix epoch.
3042
3043 2002-01-23  Duncan Mak  <duncan@ximian.com>
3044
3045         * EntryPointNotFoundException.cs:
3046         * FormatException: Added missing constructor and related bits.
3047
3048         * TypeLoadException: Added missing constructor, methods and properties.
3049
3050 2002-01-23  Miguel de Icaza  <miguel@ximian.com>
3051
3052         * AppDomain.cs (GetAssemblies): Use foreach construct instead of
3053         manually getting the enumerator.
3054
3055         (AppDomain.AppDomain): Prime the loaded assemblies with the
3056         assemblies loaded by the runtime in our behalf.
3057
3058         * AppDomainSetup.cs: Remove private keyword, that is the default.
3059         Add a new property DisallowPublisherPolicy.
3060
3061         * AppDomain.cs (AppDomain.GetAssemblies): Implement.
3062
3063 Tue Jan 22 22:51:48 CET 2002 Paolo Molaro <lupus@ximian.com>
3064
3065         * MonoType.cs, Type.cs: many updates, corrected implementation,
3066         completed stubs.
3067
3068 2002-01-20  Andrei Zmievski <andrei@php.net>
3069
3070         * Byte.cs:
3071         * Char.cs: implemented IConvertible interface.
3072
3073         * Boolean.cs: use our own ToString() method directly.
3074
3075 2002-01-20  Duncan Mak  <duncan@ximian.com>
3076
3077         * Files I commited recently: Fixed indentation style.
3078
3079 2002-01-20 Nick Drochak  <ndrochak@gol.com>
3080
3081         * SerializableAttribute.cs: this attrib can be used on enums, structs, 
3082         and delegates too. Added the appropriate usage flags.
3083
3084 2002-01-18  Duncan Mak  <duncan@ximian.com>
3085
3086         * CharEnumerator.cs: Implemented.
3087         * String.cs (System): Fixed the GetEnumerator () method(s).
3088
3089         * ObsoleteAttribute.cs:
3090         * STAThreadAttribute.cs:
3091         * MTAThreadAttribute.cs:
3092         * ThreadStaticAttribute.cs:
3093         * LoaderOptimizationAttribute.cs:
3094         * PlatformNotSupportedException.cs:
3095         * LoaderOptimization.cs: Added to CVS.
3096
3097 2002-01-18  Duncan Mak  <duncan@ximian.com>
3098
3099         * AppDomainUnloadedException.cs:
3100         * MethodAccessException.cs:
3101         * ContextMarshalException.cs:
3102         * CannotUnloadAppDomainException.cs:
3103         * DllNotFoundException.cs:
3104         * EntryPointNotFoundException.cs:
3105         * FieldAccessException.cs:
3106         * TypeUnloadedException.cs:
3107         * MissingFieldException.cs: Added to CVS.
3108
3109         * ApplicationException.cs: 
3110         * MemberAccessException.cs:
3111         * MissingMemberException.cs
3112         * MissingMethodException.cs:
3113         * SystemException.cs: Added [Serializable] attribute.
3114
3115         * Exception.cs: Added [Serializable] attribute, made properties
3116         'Message', 'Source' and 'StackTrace' virtual methods, per 1.0
3117         spec.
3118
3119         * ContextStaticAttribute.cs: Added [Serializable] attribute and
3120         put in the missing constructor.
3121
3122         * Environment.cs: Commented out references to
3123         EnvironmentPermissionAttribute, because they're just stubbed out
3124         right now and has no implementation.
3125
3126 2002-01-16  Andrei Zmievski <andrei@php.net>
3127
3128         * Boolean.cs: implemented IConvertible interface
3129
3130 2002-01-15  Nick Drochak  <ndrochak@gol.com>
3131
3132         * ResolveEventArgs.cs: class should derive from EventArgs.
3133
3134 2002-01-14  Miguel de Icaza  <miguel@ximian.com>
3135
3136         * String.cs (System): Use DefaultMemberName for the String class.
3137
3138 Mon Jan 14 17:06:40 CET 2002 Paolo Molaro <lupus@ximian.com>
3139
3140         * String.cs: use IndexerName in index char accessor.
3141
3142 Thu Jan 10 21:05:23 CET 2002 Paolo Molaro <lupus@ximian.com>
3143
3144         * MonoType.cs: add rank to MonoTypeInfo and implement GetArrayRank.
3145         * String.c: eliminate 64k+ method calls in search.
3146         * Type.cs: handle byref and array types in ToString ().
3147
3148 2002-01-09  Duco Fijma <duco@lorentz.xs4all.nl>
3149
3150         * Guid.cs: created first version
3151
3152 2002-01-10  Dietmar Maurer  <dietmar@ximian.com>
3153
3154         * MonoType.cs: added missing TypeAttributes to MonoTypeInfo 
3155
3156 Wed Jan 9 19:35:07 CET 2002 Paolo Molaro <lupus@ximian.com>
3157
3158         * MulticastDelegate.cs: add == and != operator stubs.
3159         * String.cs: check for null in == operator.
3160         * Type.cs: use a virtual method to get TypeAttributes.
3161
3162 Tue Jan  8 23:30:19 EST 2002 Matt Kimball <matt@kimball.net>
3163         * String.cs: Fixed several off-by-one errors in LastIndexOf* methods
3164
3165 2002-01-09  Nick Drochak  <ndrochak@gol.com>
3166         
3167         * Environment.cs: Comment out Security attribute and put a MonoTODO
3168         there as a reminder.  We need mcs magic to handle security attributes in
3169         corlib.
3170
3171 2002-01-07  Duco Fijma <duco@lorentz.xs4all.nl>
3172         * Created IAppDomainSetup.cs
3173
3174 2002-01-06  Duco Fijma <duco@lorentz.xs4all.nl>
3175         * Created System._AppDomain interface in _AppDomain.cs
3176
3177 2002-01-06  Nick Drochak  <ndrochak@gol.com>
3178
3179         * ResolveEventArgs.cs: New File, completely implemented! ;)
3180
3181 Sat Jan 5 15:53:50 CET 2002 Paolo Molaro <lupus@ximian.com>
3182
3183         * Enum.cs: dummy ToString impl.
3184         * String.cs: dummy format implementations to get compiler errors
3185         somewhat working.
3186         * Type.cs: implemented filter delegates. FindMembers runs the filter, now.
3187
3188 2002-01-05  Ravi Pratap  <ravi@ximian.com>
3189
3190         * TODOAttribute.cs : Augment some more; provide two constructors
3191         with support for a comment too.
3192
3193 2002-01-05  Nick Drochak  <ndrochak@gol.com>
3194
3195         * Uncommented those MonoTODO's now that Ravi's got
3196         the class in there
3197
3198 2001-01-04  Ravi Pratap  <ravi@ximian.com>
3199
3200         * TODOAttribute.cs : Actually add this time ;-)
3201
3202         Change name to MonoTODO.
3203
3204 2002-01-04  Jeffrey Stedfast  <fejj@ximian.com>
3205
3206         * String.cs (Trim): Fixed a few logic bugs in the code that
3207         calculated how much to trim off the end of the string.
3208
3209 2001-01-04  Nick Drochak  <ndrochak@gol.com>
3210         
3211         * Commented out the [TODO] attributes for now.  We don't have the
3212         class written.  Also changed it to [MonoTODO]
3213
3214 2002-01-04  Ravi Pratap  <ravi@ximian.com>
3215
3216         * TODOAttribute.cs : Add. We use this attribute to tag all bits in
3217         our class libraries that are incomplete.
3218
3219         * Array.cs : Apply attribute wherever we find a FIXME which says
3220         we need something to be implemented there.
3221
3222         * Int32.cs : Ditto.
3223
3224         * MulticastDelegate.cs : Ditto.
3225
3226         * RuntimeFieldHandler.cs, RuntimeMethodHandle.cs,
3227         RuntimeTypeHandle.cs : Ditto.
3228
3229         * String.cs : Ditto.
3230
3231         * Type.cs : Ditto.
3232
3233         * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs, Delegate.cs : Ditto.
3234
3235         * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs, Single.cs, 
3236         UInt16.cs, UInt32.cs, ValueType.cs: Ditto.
3237
3238         * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs,
3239         Delegate.cs : Ditto.
3240
3241         * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs,
3242         Single.cs, UInt16.cs, UInt32.cs, ValueType.cs: Ditto.
3243         
3244 Thu Jan 3 23:24:04 CET 2002 Paolo Molaro <lupus@ximian.com>
3245
3246         * Delegate.cs: add Remove() stub.
3247         * Enum.cs: add ToObject().
3248         * Type.cs: add IsEnum property.
3249
3250 2002-01-03  Kristian Rietveld  <kris@gtk.org>
3251
3252         * Convert.cs: add non-CLS-compliant ToBoolean methods for char,
3253         DateTime and object.
3254
3255 2001-12-30  Nick Drochak  <ndrochak@gol.com>
3256
3257         * Byte.cs (Parse): Add comments to aid in testing.
3258
3259 2001-12-21  Miguel de Icaza  <miguel@ximian.com>
3260
3261         * Char.cs (Parse): Implement.
3262
3263         * Byte.cs (Parse): Implement a fast parser.
3264         
3265         * SByte.cs (Parse): Implement a fast parser.
3266
3267         * UInt16.cs (Parse): Implement a fast parser.
3268         
3269         * Int16.cs (Parse): Implement a fast parser.
3270
3271         * UInt32.cs (Parse): Implement a fast parser.
3272
3273         * Int32.cs (Parse): Implement a fast parser.
3274
3275 Fri Dec 21 15:14:52 CET 2001 Paolo Molaro <lupus@ximian.com>
3276
3277         * Array.cs: fix null ref in sort code.
3278         * UInt64.cs: add bare-bones parse.
3279
3280 Thu Dec 20 15:29:52 CET 2001 Paolo Molaro <lupus@ximian.com>
3281         
3282         * Byte.cs: removed use of Regexes.
3283
3284 Tue Dec 18 18:39:54 CET 2001 Paolo Molaro <lupus@ximian.com>
3285
3286         * Enum.cs: implemented GetValues(), GetNames(), GetName(),
3287         IsDefined(), GetUnderlyingType().
3288         * String.cs: fix one instance of Compare().
3289         * Type.cs: implemented GetProperties(), GetProperty().
3290
3291 Thu Dec 13 20:10:57 CET 2001 Paolo Molaro <lupus@ximian.com>
3292
3293         * Array.cs: implement CopyTo ().
3294         * Char.cs: implement ToString ().
3295         * Exception.cs: bugfix.
3296         * Int32.cs: bare-bones Parse ().
3297         * MonoType.cs: query the needed info with an internalcall.
3298         * String.cs: speedups, bugfixes, reduced copies.
3299         * Type.cs: added missing fields. Implemented many of the Is*
3300         properties. Implemented GetMethod(), GetConstructor(), GetMethods(),
3301         GetFields(), FindMembers(), ToString().
3302         
3303 2001-12-11  Dick Porter  <dick@ximian.com>
3304
3305         * DateTime.cs: Implemented FromFileTime() and ToFileTime()
3306
3307         * Console.cs: Use handles rather than casting file descriptors
3308
3309 2001-12-08  Nick Drochak  <ndrochak@gol.com>
3310
3311         * Byte.cs (Parse): Start implementation. Parse(string) works, but
3312         now we need to handle other formats
3313
3314 2001-12-06  Dietmar Maurer  <dietmar@ximian.com>
3315
3316         * DateTime.cs: added an icall to GetNow()
3317
3318 2001-12-04  Dietmar Maurer  <dietmar@ximian.com>
3319
3320         * Double.cs: added the parse method from Bob Smith
3321
3322 2001-11-28  Miguel de Icaza  <miguel@ximian.com>
3323
3324         * UInt64.cs: ditto.
3325
3326         * UInt32.cs: ditto.
3327
3328         * Int32.cs (Int32.CompareTo): Fix because we can not just
3329         substract the values.
3330
3331         Return possitive value if the object is null.
3332
3333         * Boolean.cs: (Boolean.CompareTo): ditto.
3334
3335         * Int16.cs (Int16.CompareTo): ditto.
3336
3337         * Byte.cs (Byte.CompareTo): ditto.
3338
3339         * SByte.cs (SByte.CompareTo): ditto.
3340
3341         * Char.cs (Char.CompareTo): ditto.
3342         
3343         * Decimal.cs (Decimal.CompareTo): ditto.
3344
3345         * Int64.cs (Int64.CompareTo): ditto.
3346
3347         * Single.cs: Ditto.
3348
3349         * UInt16.cs: Ditto.
3350
3351 2001-11-28  Nick Drochak <ndrochak@gol.com>
3352
3353         * Byte.cs: Throw NotImplementedException for Parse.
3354
3355 2001-11-27  Derek Holden  <dholden@draper.com>
3356
3357         * IntegerFormatter.cs: Formatting of type "Number" was not
3358         using NumberFormatInfo.NumberNegativePattern.
3359
3360 2001-11-26  Dick Porter  <dick@ximian.com>
3361
3362         * LocalDataStoreSlot.cs: No need to delete a system TLS slot in
3363         the finalise routine any more
3364
3365 2001-11-21  Miguel de Icaza  <miguel@ximian.com>
3366
3367         * ApplicationException.cs: internationalize by adding calls to
3368         Locale.GetText ().  And throw NotImplementedExceptions on calls
3369         that we have to implement.
3370
3371         * Version.cs: Ditto.
3372
3373         * ValueType.cs: ditto.
3374
3375         * UnauthorizedAccessException.cs: ditto.
3376
3377         * UInt32.cs: ditto.
3378
3379         * UInt64.cs: ditto.
3380
3381         * UInt16.cs: ditto.
3382
3383         * TypeLoadException.cs: ditto
3384
3385         * TypeInitializationException.cs: ditto.
3386
3387         * Type.cs: ditto.
3388
3389         * TimeSpan.cs: ditto.
3390
3391         * SystemException.cs: ditto.
3392
3393         * String.cs: ditto.
3394
3395         * StackOverflowException.cs: ditto.x
3396
3397         * Single.cs: ditto.
3398
3399         * SByte.cs: ditto.
3400
3401         * RuntimeTypeHandle.cs: ditto.
3402
3403         * RuntimeMethodHandle.cs: ditto.
3404
3405         * RuntimeFieldHandle.cs: ditto.
3406
3407         * Random.cs: ditto.
3408
3409         * OutOfMemoryException.cs: ditto.
3410
3411         * OperatingSystem.cs: ditto.
3412
3413         * ObjectDisposedException.cs: ditto.
3414
3415         * NullReferenceException.cs: ditto.
3416
3417         * NotImplementedException.cs: ditto.
3418
3419         * NotFiniteNumberException.cs: ditto.o
3420
3421         * MulticastNotSupportedException.cs: ditto.
3422
3423         * MissingMethodException.cs: ditto.
3424
3425         * MemberAccessException.cs: ditto.
3426
3427         * Math.cs: ditto.
3428
3429         * InvalidCastException.cs: ditto.
3430
3431         * IntegerFormatter.cs: ditto.
3432
3433         * Int32.cs: ditto.
3434
3435         * Int16.cs: ditto.
3436
3437         * IndexOutOfRangeException.cs: ditto.
3438
3439         * Environment.cs: ditto
3440
3441         * Enum.cs: ditto.
3442
3443         * DuplicateWaitObjectException.cs: ditto.
3444
3445         * DivideByZeroException.cs: ditto.
3446
3447         * Delegate.cs: ditto
3448
3449         * DecimalFormatter.cs: ditto.
3450
3451         * Decimal.cs: ditto.
3452
3453         * DateTime.cs: ditto.
3454
3455         * Convert.cs: ditto.
3456
3457         * Char.cs: ditto.
3458
3459         * Byte.cs: ditto.
3460
3461         * Boolean.cs: ditto.
3462
3463         * ArrayTypeMismatchException.cs: ditto.
3464
3465         * ArithmeticException.cs: ditto.
3466
3467         * ArgumentOutOfRangeException.cs: ditto.
3468
3469         * ArgumentNullException.cs: ditto.
3470
3471         * Enum.cs: Make it derive from ValueType, add CompareTo method.
3472
3473         * Attribute.cs: Reformat.
3474
3475 2001-11-14  Miguel de Icaza  <miguel@ximian.com>
3476
3477         * Decimal.cs, Double.cs, Byte.cs, Char.cs, Int16, UInt16, Int32,
3478         UInt32, Int64, UInt64, SByte, Single (CompareTo): Throw the
3479         exception if the value is null too.
3480
3481         * Char.cs (CompareTo): ditto.
3482
3483         * ApplicationException.cs: Added constructor that does serialization.
3484
3485         * ParamArrayAttribute.cs: Define attribute correctly.
3486
3487 Wed Nov 14 16:31:19 CET 2001 Paolo Molaro <lupus@ximian.com>
3488
3489         * AppDomain.cs: rename dummy interface _AppDomain to AppDomain_Intf.
3490         * Array.cs: fix Array.Copy.
3491         * AssemblyLoadEventArgs.cs: rename field.
3492         * CLSCompliantAttribute.cs: use correct name for the class.
3493         * Char.cs: fix IsLetter.
3494         * Console.cs, DateTime.cs, Decimal.cs, IConvertible.cs, Math.cs,
3495         SByte.cs, UInt16.cs, UInt32.cs, UInt64.cs, UIntPtr.cs: CLSCompliant updates.
3496         * Convert.cs: CLSCompliant updates, add ChangeType() methods.
3497         * Delegate.cs: renamed target field to m_target.
3498         * Enum.cs: added missing methods.
3499         * MonoType.cs: add a constructor and some needed properties.
3500         * Object.cs: implement GetType().
3501         * String.cs: CLSCompliant updates. Fixes everywhere to remove the
3502         ending 0 char.
3503         * Type.cs: add missing methods/properties.
3504
3505 2001-11-10  Sean MacIsaac  <macisaac@ximian.com>
3506
3507         * AttributeUseage.cs: Should define AttributeUsageAttribute.
3508
3509         * CLSCompliant.cs: Marked with AttributeUsage attribute.
3510
3511         * Decimal.cs: Fixed CLSCompliant attributes.
3512
3513         * Type.cs: changed _impl to internal (needs to be accessable by
3514         subclasses).
3515
3516         (TypeHandle): Marked as abstract, implementation removed.
3517
3518         (IsNotPublic, IsPublic, GetMethods, GetPropery, GetConstructor,
3519         GetMethod): Added stub implementations so NUnit would link against
3520         corlib
3521
3522 Tue Nov 6 09:11:43 CET 2001 Paolo Molaro <lupus@ximian.com>
3523
3524         * AppDomain.cs: use an internal constructor for AssemblyBuilder.
3525
3526 2001-11-05  Miguel de Icaza  <miguel@ximian.com>
3527
3528         * NonSerializedAttribute.cs: Add AttributeUsage rules for this
3529         attribute. 
3530
3531 Fri Nov 2 18:23:15 CET 2001 Paolo Molaro <lupus@ximian.com>
3532
3533         * String.cs: fix a couple of bugs.
3534         * AppDomain.cs: use new AppBuilder constructor.
3535         * Buffer.cs, GC.cs, NonSerializedAttribute.cs,
3536         NotImplementedException.cs, ObjectDisposedException.cs,
3537         UnauthorizedAccessException.cs: add implementation.
3538         * OverflowException.cs: fix class name.
3539
3540 2001-10-28  Jeffrey Stedfast  <fejj@ximian.com>
3541
3542         * String.cs: Don't use a terminating nil char for our internal
3543         array.
3544
3545 2001-10-27  Miguel de Icaza  <miguel@ximian.com>
3546
3547         * Delegate.cs (Delegate.CombineImpl): Implement.
3548         (Delegate.Combine): Implement.
3549
3550         * MulticastDelegate.cs (MulticastDelegate.Equals): Implement.
3551
3552         (MulticastDelegate.CombineImpl): This was not as trivial as I
3553         thought. 
3554
3555         * ContextStaticAttribute.cs: Added AttributeUsage to
3556         ContextStaticAttribute. 
3557
3558         * FlagsAttribute.cs: Add AttributeUsage to FlagsAttribute
3559
3560 2001-10-15  Martin Weindel <martin.weindel@t-online.de>
3561
3562         * added Decimal.cs * added DecimalFormatter.cs (internal class
3563         used from System.Decimal)
3564
3565 2001-10-11  Thomas Neidhart <tome@sbox.tugraz.at>
3566
3567         * Convert.cs: Added methods for Base64 transforming just used the
3568           existing System.Security.Cryptography.ToBase64Transform, should
3569           be changed to use a stand-alone class, e.g. Base64Encoder
3570           
3571 2001-10-10  Derek Holden  <dholden@draper.com>
3572
3573         * IntegerFormatter.cs: Added. Implements ToString for all the
3574         integer data types for all the format types.
3575
3576         * Byte.cs: Using IntegerFormatter for ToString's.
3577
3578         * SByte.cs: Using IntegerFormatter for ToString's.
3579
3580         * Int16.cs: Using IntegerFormatter for ToString's.
3581
3582         * Int32.cs: Using IntegerFormatter for ToString's.
3583
3584         * Int64.cs: Using IntegerFormatter for ToString's.
3585
3586         * UInt16.cs: Using IntegerFormatter for ToString's.
3587
3588         * UInt32.cs: Using IntegerFormatter for ToString's.
3589
3590         * UInt64.cs: Using IntegerFormatter for ToString's.
3591
3592 2001-10-07  Miguel de Icaza  <miguel@ximian.com>
3593
3594         * Exception.cs: Implement bits of serialization.
3595
3596         * RuntimeFieldHandle.cs: Implement Serialization features.
3597
3598         * Type.cs: Implement TypeHandle property.
3599
3600 2001-09-28  Dick Porter  <dick@ximian.com>
3601
3602         * LocalDataStoreSlot.cs: Implemented
3603
3604 Tue Sep 25 19:58:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
3605
3606         * String.cs: fix off-by-one error in Trim().
3607
3608 Tue Sep 25 18:52:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
3609
3610         * Type.cs: added GetType () method.
3611
3612 Tue Sep 25 17:29:02 CEST 2001 Paolo Molaro <lupus@ximian.com>
3613
3614         * MissingMethodException.cs, MissingMemberException.cs,
3615         MemberAccessException.cs: added.
3616
3617 Tue Sep 25 16:46:43 CEST 2001 Paolo Molaro <lupus@ximian.com>
3618
3619         * String.cs: don't access the string array out of bounds in
3620         LastIndexOf.  * Type.cs: fix return type of the Assembly property.
3621
3622 Mon Sep 24 20:35:24 CEST 2001 Paolo Molaro <lupus@ximian.com>
3623
3624         * String.cs: make Intern and IsIntern internalcalls.
3625
3626 2001-09-13  Dick Porter  <dick@ximian.com>
3627
3628         * Type.cs: Added a stub for the IsValueType property.
3629
3630         * SystemException.cs (System): Added the other constructor, so
3631         that System.Threading exceptions can inherit it.
3632
3633 2001-09-08  Jeffrey Stedfast  <fejj@ximian.com>
3634
3635         * String.cs (TrimStart): Don't keep looping through the trimchars
3636         once we've found a match.
3637         (TrimEnd): Same here.
3638         (Trim): And finally here.
3639
3640 2001-09-07  Ravi Pratap  <ravi@ximian.com>
3641
3642         * Char.cs (IsLetterOrDigit): Implement.
3643         (IsLower): Implement, but we need to be Unicode aware.
3644         (IsNumber): Implement.
3645         (IsPunctuation): Implement.
3646         (IsWhiteSpace): Implement.
3647         (ToUpper): Fix to subtract 32 from the ASCII value, not 33 :)
3648         (ToLower): Same here.
3649
3650 2001-09-04  Miguel de Icaza  <miguel@ximian.com>
3651
3652         * Object.cs: Shortcut, if (a == b) then return true.
3653
3654 Fri Sep 7 18:34:48 CEST 2001 Paolo Molaro <lupus@ximian.com>
3655
3656         * Delegate.cs: we need a pointer to the method thunk in
3657         the delegate object.
3658
3659 Fri Sep 7 12:28:01 CEST 2001 Paolo Molaro <lupus@ximian.com>
3660
3661         * AsyncCallback.cs, common.src: add AsyncCallback delegate.
3662
3663 2001-09-06  Jeffrey Stedfast  <fejj@ximian.com>
3664
3665         * String.cs (System): Don't mix uint and int.
3666
3667 2001-09-04  Jeffrey Stedfast  <fejj@ximian.com>
3668
3669         * String.cs (BoyerMoore): Modified to not use pointers and to instead
3670         use indexes.
3671         (IndexOf): Use BoyerMoore.
3672
3673 2001-09-02  Miguel de Icaza  <miguel@ximian.com>
3674
3675         * All over: Use the autogenerated enumerations from the ECMA
3676         documentation that Sergey wrote.
3677         
3678         * PlatformID.cs: Add Unix definition.
3679
3680         * OperatingSystem.cs: Use Unix instead of Linux here.
3681
3682         * MarshalByRefObject.cs: Mark class as [Serializable].
3683
3684 2001-08-28  Dietmar Maurer  <dietmar@ximian.com>
3685
3686         * Console.cs: impl. (write only)
3687         implemented the stdin stuff
3688
3689         * Int32.cs: impl. real op_Equal
3690
3691 2001-08-24  Miguel de Icaza  <miguel@ximian.com>
3692
3693         * (common.src): Removed IAsyncResult as it is not on CVS yet.
3694
3695         * UIntPtr.cs: Removed CLSCompliant attribute before the namespace,
3696         as it breaks the build.
3697
3698 2001-08-23  Michael Lambert <michaellambert@email.com>
3699
3700         * IntPtr.cs: Optimized unsafe declaration, implemented GetObjectData, 
3701         added CLSCompliant attribute
3702
3703         * IAsyncResult.cs: Added
3704
3705         * common.src: Added IAsyncResult.cs
3706
3707 2001-08-23  Michael Lambert <michaellambert@email.com>
3708
3709         * UIntPtr.cs: Added
3710
3711         * common.src: Added UIntPtr.cs
3712
3713 2001-08-20  Dietmar Maurer  <dietmar@ximian.com>
3714
3715         * Attribute.cs: uncomment some code to make it compile again
3716
3717         * mono.src: removed duplicated Attribute.cs
3718
3719 2001-08-16  Nick Drochak <ndrochak@gol.com>
3720
3721         * Attribute.cs: implemented all methods except GetHashCode()
3722
3723         * common.src: added Attribute.cs so it would compile in
3724
3725 2001-08-10  Dietmar Maurer  <dietmar@ximian.com>
3726
3727         * Object.cs: changed MemberWiseClone to MemberwiseClone, and
3728         marked it as InternalCall
3729         
3730         * common.src: removed UriFormatException.cs because the file is
3731         not there.
3732
3733         * RuntimeTypeHandle.cs: replaced IntrPtr with IntPtr
3734         * Char.cs: replaced byte with char
3735
3736         * Array.cs: make it work with the mono interpreter
3737
3738 2001-08-06  Miguel de Icaza  <miguel@ximian.com>
3739
3740         * Version.cs: Make the class sealed
3741
3742 2001-08-08  Bob Smith  <bob@thestuff.net>
3743
3744         * Random.cs: Many compile fixes.
3745         * Random.cs: I read a bad spec. Class updated to match real spec.
3746
3747 2001-08-06  Miguel de Icaza  <miguel@ximian.com>
3748
3749         * IntPtr.cs: Added and Completed implementation.
3750
3751         * Uri.cs: Add a note.
3752
3753 2001-08-06  Bob Smith  <bob@thestuff.net>
3754
3755         * Random.cs: Compile fix. Needs more testing.
3756
3757 2001-08-06 Garrett Rooney <rooneg@electricjellyfish.net>
3758
3759         * Uri.cs: Initial Implementation.  Parsing needs to be fixed to take 
3760         into account IPv6 addresses, url encoding needs to be implemented, and 
3761         various minor methods need to be written, but this is a decent start.
3762
3763 2001-08-06  Dietmar Maurer  <dietmar@ximian.com>
3764
3765         * common.src: added Object.cs
3766
3767         * mono.src: added ValueType.cs
3768
3769 2001-08-02  Dietmar Maurer  <dietmar@ximian.com>
3770
3771         * Math.cs: replaced libc with libm
3772
3773 2001-08-02  Bob Smith  <bob@thestuff.net>
3774
3775         * Random.cs: Implemented. Needs testing.
3776
3777 2001-08-02  Miguel de Icaza  <miguel@ximian.com>
3778
3779         * IServiceProvider.cs, EventHandler.cs: New files.
3780
3781 2001-08-02  Marcel Narings  <marcel@narings.nl>
3782         
3783         * DateTime.cs: Cleaned up a bit. Added the Add* family members.
3784         Added exceptions. Added IConvertible. Still needs some platform 
3785         dependend stuff, the Parse and ToString members
3786
3787 2001-08-01  Dietmar Maurer  <dietmar@ximian.com>
3788
3789         * Type.cs (GetTypeFromHandle): added placeholder 
3790
3791 2001-07-24  Derek Holden  <dholden@draper.com>
3792
3793         * Boolean.cs: Formatted to code style standard. Added GetTypeCode
3794         which is really an IConvertible defined method.
3795
3796         * Byte.cs: Added a missing Parse method. Put in Parse and ToString
3797         behavior, still need to do the main Parse and ToString.
3798
3799         * Char.cs: Added a bunch of missing ECMA methods. Commented a
3800         specification discrepency. Still didn't any unicode stuff, though
3801         every IsFoo(char c) method has an IsFoo(string, index)
3802         counterpart, added wrappers for those.
3803         
3804         * Convert.cs: Fixed NaN/Inf checking and double/float
3805         rounding. Added ToType for IConvertible classes
3806
3807         * Double.cs: Fixed ECMA min and max values. Added IsInfinity /
3808         IsNaN methods. Changed Inf/NaN internals.
3809
3810         * IConvertible.cs: Added comments for using
3811         Convert.ToType. Changed return values to draft base values.
3812
3813         * Int16.cs: Added a missing Parse statement. Put in behavior for
3814         overloaded ToString and Parse methods.
3815
3816         * Int32.cs: Added a missing Parse statement. Put in behavior for
3817         overloaded ToString and Parse methods.
3818
3819         * Int64.cs: Added a missing Parse statement. Put in behavior for
3820         overloaded ToString and Parse methods.
3821         
3822         * Single.cs: Put in ECMA epsilon value. Added IsInfinity / IsNaN
3823         methods. Changed Inf/NaN internals.
3824
3825         * SByte.cs: Added a missing Parse method. Put in Parse and
3826         ToString behavior, still need to do the main Parse and ToString.
3827
3828         * UInt16.cs: Added a missing Parse statement. Put in behavior for
3829         overloaded ToString and Parse methods.
3830
3831         * UInt32.cs: Added a missing Parse statement. Put in behavior for
3832         overloaded ToString and Parse methods.
3833
3834         * UInt64.cs: Added a missing Parse statement. Put in behavior for
3835         overloaded ToString and Parse methods.
3836         
3837 2001-07-20  Miguel de Icaza  <miguel@ximian.com>
3838
3839         * MulticastDelegate.cs: New File.
3840
3841         * Delegate.cs: New file.
3842
3843         * Enum.cs: New file.
3844
3845         * Attribute.cs: New file.
3846
3847         * Type.cs: New file.
3848
3849         * ParamArrayAttribute.cs: New file.
3850
3851         * RuntimeTypeHandle.cs: New file.
3852
3853         * MulticastDelegate.cs: Added.
3854
3855         * DateTime.cs: Added
3856
3857         * Delegate.cs: Added
3858
3859 2001-07-18  Michael Lambert <michaellambert@email.com>
3860
3861         * AttributeTargets.cs: Add.
3862
3863 2001-07-19  Jeffrey Stedfast  <fejj@ximian.com>
3864
3865         * Char.cs: Made ToUpper and ToLower public methods.
3866
3867         * String.cs: Lots and lots of compile fixes - just need to write
3868         DateTime.cs and this should build completely now.
3869
3870 2001-07-19  Bob Smith (bob@thestuff.net)
3871
3872         * Math.cs: Implemented. 
3873
3874 2001-07-19  Miguel de Icaza  <miguel@ximian.com>
3875
3876         * String.cs: Removed tolower and toupper.
3877
3878         * Char.cs: Moved ToLower and ToUpper from string to here. 
3879
3880         * Convert.cs ToByte (float value), ToByte (double value) Use IsNan
3881         instead of comparing the value to Nan.
3882
3883 2001-07-19  Duco Fijma (duco@lorentz.xs4all.nl)
3884
3885         * TimeSpan.cs: New implementation.
3886
3887 2001-07-18  Scott Sanders <scott@stonecobra.com>
3888
3889          * UriFormatExcpetion.cs: Add - 85% complete
3890
3891 2001-07-17  Jeffrey Stedfast  <fejj@ximian.com>
3892
3893         * String.cs (IndexOf): Slight optimization that allows skipping
3894         over a few chars here and there. This isn't as good as using my
3895         Boyer-Moore implementation, however, Boyer-Moore is only really
3896         good for long strings (I plan on making the code decide which
3897         string search algorithm it should use on-the-fly at some point).
3898         (LastIndexOf): Fix to work correctly.
3899         (BoyerMoore): Took out some unneeded code and fixed an edge-case.
3900
3901 2001-07-16  Michael Lambert <michaellambert@email.com>
3902
3903         * EventArgs.cs: Add.
3904         
3905 2001-07-16  Miguel de Icaza  <miguel@ximian.com>
3906
3907         * Version.cs: Remove my buggy comment.
3908
3909 2001-07-15  Sean MacIsaac  <macisaac@ximian.com>
3910
3911         * String.cs: Spelling error of IComparable, object's
3912         MemberwiseClone cannot be overridden.  Made indexer valid for now,
3913         but not sure what to do about this in the long run.  Seems to be a
3914         couple bugs in csc.exe having to do with multiple pointer defs in
3915         the same statement, and returning subclasses of a class in the
3916         return type of an interface function implementation.  Also moved
3917         operators inside of class definition.
3918
3919 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
3920
3921         * String.cs: A tom of compile fixes, although we still don't compile.
3922
3923         * IConvertible.cs: The To*Int64() methods return *Int64's, not
3924         *Int32's. Also, it's ToDateTime() not ToDateType().
3925
3926 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
3927
3928         * String.cs: Apparently I needed to at least write stubs for the
3929         IConvertible interfaces. *sigh*
3930
3931 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
3932
3933         * String.cs: Many logic/other fixes and better usage of the
3934         features of c#
3935         (tolower): New convenience method to help condense code.
3936         (toupper): Another new helper method.
3937         (Compare): Use the new helper methods.
3938         (ToLower): use tolower().
3939         (ToUpper): use toupper().
3940         (LastIndexOfAny): Implemented.
3941         (BoyerMoore): New private helper method that implements a modified
3942         version of the Boyer-Moore search algorithm. Noothing uses it yet
3943         as I'm not 100% sure it even works properly with unicode strings
3944         not to mention it uses a huge lookup-table :-)
3945         (Split): Implemented.
3946
3947 2001-07-13  Jeffrey Stedfast  <fejj@ximian.com>
3948
3949         * TODO: Added things that need to be finished in System.String
3950
3951         * String.cs: New source file implementing the System.String class
3952
3953 2001-07-12  Sean MacIsaac  <macisaac@ximian.com>
3954
3955         * TypeCode.cs: UInt64 was UInt63.
3956
3957         * Object.cs: Fixed a numer of compiler errors.
3958
3959         * Array.cs: Fixed some compiler errors.
3960
3961         * IComparable.cs: Fixed some compiler errors.
3962
3963         * ICloneable.cs: Fixed some compiler errors.
3964
3965         * IConvertible.cs: Fixed some compiler errors.
3966
3967         * IFormattable.cs: Fixed a compiler error.
3968
3969         * IFormatProvider.cs: Fixed a compiler error.
3970
3971         * IDisposable.cs: Fixed a compiler error.
3972
3973         * IFormatProvider.cs: Added public accesability type to
3974         IFormatProvider.
3975
3976         * Exception.cs: Added a using statement to remove compile time
3977         error.
3978
3979         * ApplicationException.cs: Removed a ; that was causing a compiler
3980         error.
3981
3982         * Int16.cs: Fixed some compiler errors.
3983
3984         * Int32.cs: Fixed some compiler errors.
3985
3986         * Int64.cs: Fixed some compiler errors.
3987
3988         * SystemException.cs: Fixed a compiler error.
3989
3990         * UInt16.cs: Fixed some compiler errors.
3991
3992         * UInt32.cs: Fixed some compiler errors.
3993
3994         * UInt64.cs: Fixed some compiler errors.
3995
3996         * Void.cs: Fixed a compiler error.      
3997
3998 2001-07-12  Joe Shaw  <joe@ximian.com>
3999
4000         * Array.cs: Fix backwards parameters to Array.SetValue()
4001         throughout.
4002         (BinarySearch): Fix backward logic surrounding whether to call
4003         value.CompareTo or comparer.Compare.
4004         (LastIndexOf): Stop being stupid. I am so not used to strongly
4005         bounded arrays...
4006         (Sort): Implement a quicksort.
4007
4008 2001-07-11  Joe Shaw  <joe@ximian.com>
4009
4010         * Array.cs: Change all instances of trying to access an array with
4011         the index operator to calls to GetValue and SetValue, and add
4012         InternalGetValue and InternalSetValue which are internal calls
4013         into the runtime. Ew.
4014
4015 2001-07-10  Joe Shaw  <joe@ximian.com>
4016
4017         * Array.cs: Implemented everything but Sort().
4018
4019 2001-07-09  Jeffrey Stedfast  <fejj@ximian.com>
4020
4021         * Object.cs (Object::Equals): Object variable name is `o'.
4022
4023 2001-07-06  Joe Shaw  <joe@ximian.com>
4024
4025         * Int16.cs, Int32.cs, Int64.cs, UInt16.cs, UInt32.cs, UInt64.cs:
4026         Implement the IComparable and IFormattable interfaces. Fix a typo
4027         (publig -> public)
4028
4029         * ApplicationException.cs, ArgumentException.cs,
4030         ArgumentNullException.cs, ArgumentOutOfRangeException.cs,
4031         ArtithmeticException.cs, ArrayTypeMismatchException.cs,
4032         DivideByZeroException.cs, DuplicateWaitObjectException.cs,
4033         ExecutionEngineException.cs, FormatException.cs,
4034         IndexOutOfRangeException.cs, InvalidCastException.cs,
4035         InvalidOperationException.cs, InvalidProgramException.cs,
4036         MulticateNotSupportedException.cs, NotFiniteNumberException.cs,
4037         NotSupportedException.cs, NullReferenceException.cs,
4038         OutOfMemoryException.cs, OverflowException.cs, RankException.cs,
4039         StackOverflowException.cs, SystemException.cs,
4040         TypeInitializationException.cs: Added all of the exceptions
4041         specified by the language spec. Mmmm... bloat.
4042
4043 2001-07-06  Miguel de Icaza  <miguel@ximian.com>
4044
4045         * Int64.cs, Int32.cs: Put.  Parsing and ToString missing.  Should
4046         do a generic routine all of these guys use.
4047
4048         * Int16.cs: identified missing methods.
4049
4050         * UInt16.cs, UInt32.cs, UInt64.cs: Add.
4051
4052 2001-06-26  Miguel de Icaza  <miguel@ximian.com>
4053
4054         * TypeCode.cs: Implement
4055
4056         * Void.cs: Implement.
4057
4058         * TODO: Add file to keep track of pending tasks.
4059
4060         * Object.cs, ValueType.cs: Implement.