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