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