1 2007-08-25 Alan McGovern <amcgovern@novell.com>
3 * DateTime.cs: Reverted DateTime changes.
5 2007-08-25 Robert Jordan <robertj@gmx.net>
7 * DateTime.cs: Implement internal To/FromBinary for the 1.1 profile.
9 2007-08-24 Zoltan Varga <vargaz@gmail.com>
11 * Array.cs: Fix min + max / 2 overflows in the BinarySearch and qsort methods.
14 2007-08-23 Marek Safar <marek.safar@gmail.com>
16 * DateTimeOffset.cs: New .NET 3.5 struct for 2.0 mscorlib.
18 2007-08-23 Eyal Alaluf <eyala@mainsoft.com>
20 * DateTime.cs: Numerous improvements to DateTime.Parse. It handles a lot
21 more possible formats and more correctly at that. It is also now easier
22 to manage the formats DateTime.Parse supports.
24 2007-08-17 Zoltan Varga <vargaz@gmail.com>
26 * Exception.cs: Make 1.0 and 2.0 object layout the same since this class is seen
27 by the runtime. Fixes #82459.
29 2007-08-16 Gert Driesen <drieseng@users.sourceforge.net>
31 * MonoCustomAttrs.cs: In IsDefined, throw ArgumentNullException if
32 attributeType is null to avoid a SIGSEGV (and match MS). Only partial
33 fix for bug #82431 on 1.0 profile; it fully fixes the problem for the
34 1.0 profile, but more changes (in the runtime) are required for the
35 2.0 profile. Added a FIXME explaining the problem.
37 2007-08-15 Gert Driesen <drieseng@users.sourceforge.net>
39 * MonoCustomAttrs.cs: In IsDefined, only walk inheritance chain if
40 both AttributeUsage.Inherited and inherit are true. Fixed bug #82431.
42 2007-08-13 Gert Driesen <drieseng@users.sourceforge.net>
44 * ArgumentException.cs: Ignore zero-length ParamName for Message.
45 Use ParamName property instead of field, since the property is marked
47 * Array.cs: Provide more meaningful exception message when destination
48 array is not long enough.
50 2007-08-11 Zoltan Varga <vargaz@gmail.com>
52 * Array.cs: Implement InternalArray__set_Item. Fixes #82345.
54 2007-08-08 Atsushi Enomoto <atsushi@ximian.com>
56 * IntPtr.cs : oops, do not ignore format in ToString(string).
58 2007-08-08 Atsushi Enomoto <atsushi@ximian.com>
60 * GC.cs, Exception.cs, IntPtr.cs, Enum.cs, DateTime.cs, Convert.cs
61 ConsoleKeyInfo.cs, String.cs, Object.cs, Attribute.cs,
62 Version.cs : couple of cosmetic 2.0 API fixes.
64 2007-08-06 Aaron Bockover <abockover@novell.com>
66 * Environment.cs (ReadXdgUserDir): Support the changes to the
67 xdg-user-dirs spec that allow $HOME to start the path; also allows
68 for quotes surrounding the path (Patch ported from Banshee,
71 2007-07-28 Miguel de Icaza <miguel@novell.com>
73 * MulticastDelegate.cs (Equals): do not cast to avoid exceptions,
74 instead use the "as" operator, as pointed out by Jesse Jones'
77 2007-07-21 Gert Driesen <drieseng@users.sourceforge.net>
79 * BitConverter.cs: Fixed exceptions to match MS. Fixed invalid use
80 of ArgumentOutOfRangeException and ArgumentException ctors that take
81 both parameter name and message. In ToString throws ArgumentException
82 instead of ArgumentOutOfRangeException when length is negative, and
83 return zero-length string when length is 0.
85 2007-07-20 Atsushi Enomoto <atsushi@ximian.com>
87 * AppDomainSetup.cs : fix serialization regression.
89 2007-07-20 Atsushi Enomoto <atsushi@ximian.com>
92 MonoTODO AppDomainInitializer as its implementation is wrong.
94 2007-07-20 Atsushi Enomoto <atsushi@ximian.com>
96 * AppDomainSetup.cs : added missing 2.0 members.
97 * AppDomain.cs : support AppDomainInitializer.
99 2007-06-06 Miguel de Icaza <miguel@novell.com>
101 * Int16.cs, UInt64.cs, SByte.cs, UInt16.cs, Byte.cs, Int32.cs,
102 Int64.cs, UInt32.cs: Fix for 81775.
104 I removed Parse from a Byte.cs and UInt16.cs as in various cases
105 they still depended on UInt32.cs for parsing, there is no reason
106 to keep all of this code duplicated (UInt64 is a different case
109 I was hoping for some feedback on whether my tests are correct,
110 but so far no takers.
112 2007-07-14 Zoltan Varga <vargaz@gmail.com>
114 * ModuleHandle.cs: Implement the generic versions of the ResolveXXXHandle () methods.
116 * ModuleHandle.cs: Add stubs for generic ResolveXXXHandle () methods.
118 2007-07-10 Alan McGovern <amcgovern@novell.com>
120 * Guid.cs: All whitespace should be trimmed from before and
121 after a string passed into the Guid constructor. Fixes #81958
123 2007-07-10 Zoltan Varga <vargaz@gmail.com>
125 * RuntimeTypeHandle.cs: Fix signatures of == and != operators.
127 * ModuleHandle.cs: Add missing 2.0 stuff.
129 2007-07-08 Zoltan Varga <vargaz@gmail.com>
131 * *.cs: Add missing ComVisible attributes.
133 * Delegate.cs: Add missing 2.0 CreateDelegate () methods.
135 2007-07-07 Gert Driesen <drieseng@users.sourceforge.net>
137 * DateTime.cs: In ParseExact, throw ArgumentNullException if format
138 is null; throw FormatException if formats array is empty or if one of
139 items is null or a zero-length string.
141 2007-07-06 Rodrigo Kumpera <rkumpera@novell.com>
143 * Double.cs (Parse): Fix for string ending in garbaga, it was just ignoring it
144 instead of throwing FormatException. Fixes #81777
146 2007-07-06 Rodrigo Kumpera <rkumpera@novell.com>
148 * Double.cs (Parse): Fix for whitespace only strings, it was returning zero
149 instead of throwing FormatException. Fixes #81630
151 2007-07-06 Alan McGovern <amcgovern@novell.com>
153 * DateTime.cs: If the format is null or empty, it should default to 'G'.
156 2007-07-06 Jonathan Chambers <joncham@gmail.com>
158 * __ComObject.cs: Support ExtensibleClassFactory.
161 2007-07-06 Aaron Bockover <abockover@novell.com>
163 * Environment.cs (InternalGetFolderPath): Try reading some
164 paths from ~/.config/user-dirs.dirs (XDG user dirs spec);
165 always return something for MyPictures
167 2007-07-04 Atsushi Enomoto <atsushi@ximian.com>
169 * Type.cs : 2.0 TypeHandle and ContainsGenericParameters are virtual
170 (required fix for 2.0 reflection API fixes).
172 2007-06-22 Jonathan Chambers <joncham@gmail.com>
174 * __ComObject.cs: Move interface lookup to unmanaged.
176 2007-06-21 Zoltan Varga <vargaz@gmail.com>
178 * Environment.cs: Bump corlib version.
180 * Delegate.cs: Applied patch from Robert Jordan (robertj@gmx.net). Keep
181 the dynamic method referenced by a delegate alive.
183 2007-06-05 David Ferguson <davecferguson@gmail.com>
185 * DateTime.cs: Changed DateTime.Parse() to throw a FormatException
186 instead of an ArgumentOutOfRangeException for .NET 2.0. An
187 ArgumentOutOfRangeException is still thrown for .NET 1.1.
190 Mon Jun 4 14:52:17 CEST 2007 Paolo Molaro <lupus@ximian.com>
192 * String.cs: optimized CompareOrdinal ().
194 2007-06-02 Zoltan Varga <vargaz@gmail.com>
196 * MonoCustomAttrs.cs (GetBase): Revert last change as it breaks the build.
198 * MonoCustomAttrs.cs (GetBase): Handle properties correctly. Fixes #81797.
200 2007-05-31 Zoltan Varga <vargaz@gmail.com>
202 * Delegate.cs: Add invoke_impl field. Reorder fields for better cache behavior. Add
203 SetMulticastDelegate icall.
205 * MulticastDelegate.cs (CombineImpl): Call SetMulticastDelegate () on newly created
208 * Environment.cs: Bump corlib version.
210 2007-05-25 Jonathan Chambers <joncham@gmail.com>
212 * __ComObject.cs: Add overload to GetInterface to allow
213 not throwing exceptions. Fixes as and is operators for COM objects.
215 2007-05-23 Atsushi Enomoto <atsushi@ximian.com>
217 * Array.cs : reverting Array.cs fixes since the runtime depends on
218 those method attributes.
220 2007-05-23 Atsushi Enomoto <atsushi@ximian.com>
222 * Int16.cs UInt64.cs UIntPtr.cs Double.cs CrossAppDomainDelegate.cs
223 ResolveEventHandler.cs IntPtr.cs UnhandledExceptionEventHandler.cs
224 Void.cs AssemblyLoadEventHandler.cs SByte.cs UInt16.cs DateTime.cs
225 Byte.cs TimeSpan.cs Decimal.cs Int32.cs Delegate.cs
226 AppDomainInitializer.cs MulticastDelegate.cs Int64.cs
227 EventHandler.cs Single.cs UInt32.cs AsyncCallback.cs :
228 cosmetic attribute fixes (ComVisible/Serializable).
230 2007-05-22 Atsushi Enomoto <atsushi@ximian.com>
232 * Convert.cs : completed 2.0 (ToBase64CharArray).
233 * String.cs : removed MonoTODO.
234 * DataMisalignedException.cs : removed extra .ctor().
235 * Array.cs : internalize extra members. Fixed reliability contract.
237 2007-05-17 Atsushi Enomoto <atsushi@ximian.com>
239 * DateTime.cs : added support for 'K'.
241 2007-05-11 Jonathan Chambers <joncham@gmail.com>
243 * __ComObject.cs: No need to call CoInitialize anymore since
244 Thread.ApartmentState was implemented.
246 2007-05-11 Jeffrey Stedfast <fejj@novell.com>
250 * TermInfoDriver.cs (WriteSpecialKey): Actually clear the screen
251 and reset the cursor position to 0,0 when the key is
253 (Clear): Reset the cursor position to 0,0
255 2007-05-09 Marek Safar <marek.safar@gmail.com>
257 * MulticastDelegate.cs: Fixed operators logic.
259 2007-05-09 Marek Habersack <mhabersack@novell.com>
261 * DateTime.cs: add a format used in ASP.NET QuickStarts
262 ("HH':'mm tt MM/dd/yyyy")
264 2007-04-30 Zoltan Varga <vargaz@gmail.com>
266 * Type.cs (Equals): Allow a null argument.
268 2007-04-27 Zoltan Varga <vargaz@gmail.com>
270 * Environment.cs (StackTrace): Avoid skipping a frame to be
273 2007-04-25 Atsushi Enomoto <atsushi@ximian.com>
275 * DateTimeTest.cs : looks like 'F' even removes preceding '.' ...
277 2007-04-25 Atsushi Enomoto <atsushi@ximian.com>
279 * DateTime.cs : implemented new-2.0 'F' pattern letter.
281 2007-04-24 Jeffrey Stedfast <fejj@novell.com>
283 Fixes the last of the bugs listed in bug #77525
285 * TermInfoDriver.cs (ctor): For known terminal types, set color16
286 to true (since we know they support 16 colours).
287 (Init): set the setlfgcolor and setlbgcolor format strings.
288 (BackgroundColor): Use the appropriate formatter string for
290 (ForegroundColor): Use the appropriate formatter string for
292 (TranslateColor): Now takes (and sets appropriately) an output
293 'bool light' argument.
295 2007-04-24 Marek Habersack <mhabersack@novell.com>
297 * TermInfoDriver.cs: don't include debug stuff by default - it
298 breaks multithreaded applications (they all attempt to open
299 console.log and fail because of sharing violation).
301 2007-04-23 Jeffrey Stedfast <fejj@novell.com>
303 * TermInfoDriver.cs (ReadKeyInternal): Since our input stream is
304 buffered, check if it has more buffered input in addition to our
305 timeout check. This makes it such that we will actually correctly
306 match multi-char escape sequences.
307 (Read): Changed the logic slightly wrt 'fresh' echoing. Once we
308 encounter a fresh char, all chars afterward should also be
309 considered 'fresh' even if 'fresh' is returned as false later.
310 (ReadLine): Same logic here.
312 2007-04-23 Jeffrey Stedfast <fejj@novell.com>
314 Fixes bug #80702 (via getting rid of the casting) and more.
316 The following change makes it such that even if an application
317 calls Console.SetOut() with its own output stream, we can still
318 properly echo user-input from stdin to the real stdout.
320 * TermInfoDriver.cs (ctor): Grab a reference to the original
321 Console.stdout so we can be sure we always echo to console.
322 (QueueEcho): No need to cast Console.stdout anymore.
324 (WriteConsole: Here too.
326 2007-04-20 Jeffrey Stedfast <fejj@novell.com>
328 * TermInfoDriver.cs (QueueEcho): Renamed from Echo(char). Use
329 CStreamWriter's new InternalWriteChars().
330 (Echo): Since we can no longer go thru CStreamWriter's ::Write()
331 method that does checks for special keys, do the checks here
332 instead - if it is a special key, flush the echo buffer and then
333 write the special key.
334 (EchoFlush): Also updated to use CStreamWriter's new
335 InternalWriteChars().
336 (Read): Use the Echo(key) variety.
338 (ReadLine): And here too.
340 * CStreamWriter.cs (InternalWriteChars): Write a char array
341 directly to stdout. Do not pass Go, do not collect $200.
343 2007-04-19 Jeffrey Stedfast <fejj@novell.com>
345 Optimization for echoing keypresses back to the console when the
346 user pastes a block of text rather than manually typing text.
348 * TermInfoDriver.cs (Echo): A new convenience function for echoing
349 characters/keys back to the console with an optimization twist and
351 (EchoFlush): Flush our pending echo queue
352 (Read): Make use of Echo() both for convenience and for speed.
354 (ReadKey): Make use of Echo()/EchoFlush() for simplicity of code,
355 but we won't get the same optimization out of it.
357 2007-04-19 Jeffrey Stedfast <fejj@novell.com>
361 * TermInfoDriver.cs: Changed 'buffer' to be a char array instead
362 of a byte array and stdin is now a StreamReader rather than a
364 (Init): Setup stdin as a StreamReader using Console.InputEncoding
366 (GetCursorPosition): Use stdin.Read() instead of the old
368 (AddToBuffer): Updated to allocate the correct array type for
370 (ReadKeyInternal): Updated to use stdin.Read() rather than
371 stdin.ReadByte(). This is the main reason we needed to use chars
372 instead of bytes. Characters entered by the user need to be
373 represented as unicode chars and not bytes like before.
374 (Match): Now takes a char[] buffer argument instad of byte[] and
375 compares the input buffer to the byte-map as chars.
377 2007-04-18 Jeffrey Stedfast <fejj@novell.com>
379 Fixes bug #81159: behave the same as mscorlib
381 * TermInfoDriver.cs (ReadKeyInternal): Now has an 'out bool fresh'
382 argument which is used to tell our caller if the key was freshly
383 read from the console or pre-buffered.
384 (Read): New implementation of Console.In.Read(char[], int, int)
385 that behaves exactly like mscorlib's implementation.
386 (ReadKey): Updated for the ReadKeyInternal() API change - only
387 echo if the key was fresh.
390 * CStreamReader.cs (Read): Call the new TermInfoDriver.Read()
392 2007-04-17 Jeffrey Stedfast <fejj@novell.com>
394 * CStreamWriter.cs (Write): Optimized this some more, we don't
395 need a temporary buffer. Just blit chunks of the src buffer
398 * CStreamReader.cs (Read): Need to increment our array index so
399 that we don't store each byte read into the same
400 position. Discovered this while testing bug #81159 (which appears
401 to work as expected with current svn, other than this buglet).
403 * TermInfoDriver.cs (CursorTop::set): SetCursorPosition() sets our
404 internal cursorTop variable, so no need to explicitly set it again
405 after calling SetCursorPosition().
406 (CursorLeft::set): Same idea here.
408 2007-04-17 Jeffrey Stedfast <fejj@novell.com>
410 * TermInfoDriver.cs (ReadLine): Implemented a workaround for
411 IronPython going behind System.Console's back when writing text to
412 the screen (it doesn't seem to use Console.stdout, instead it
413 creates its own file stream or something which just so happens to
414 write to the same file descriptor) by querying for the cursor
415 position in ReadLine(), so we lose no real performance (since we
416 have to wait for user input anyway).
418 2007-04-17 Jeffrey Stedfast <fejj@novell.com>
420 * TermInfoDriver.cs (Init): SetEcho(false), we'll be manually
421 echoing from now on (ReadLine() has already been doing this, might
422 as well make ReadKey() behave the same).
423 (GetCursorPosition): No longer need to disable/re-enable echo
424 anymore since it is now always false.
425 (ReadKey): Manually echo the key back to the console just like
426 ReadLine() has been doing (in the interest of consistancy) if
428 (ReadLine): No longer need to disable/re-enable echo, echo is
429 always off now. Also, fixed what appears to have been a typo.
431 2007-04-17 Jeffrey Stedfast <fejj@novell.com>
433 * TermInfoDriver.cs (IsSpecialKey): Oops, Enter should not be
434 treated as a special key. Just update out cursor state here like
435 we do with normal chars.
436 (WriteSpecialKey): Enter is a no-op now because it is not treated
437 as a special key anymore.
439 * CStreamWriter.cs (Write): Only flush our buffer if j > 0
441 2007-04-17 Jeffrey Stedfast <fejj@gnome.org>
443 Turns out my last patch was broken wrt handling some special keys
444 like Backspace and anything else that changed the cursor position
445 in some non-standard way.
447 * CStreamWriter.cs (Write): Instead of calling NotifyWrite(), we
448 instead need to check IsSpecialKey(), and, if so, flush whatever
449 we have saved in our temporary buffer and then call
450 WriteSpecialKey(). Otherwise go on as we did in the last patch.
452 * TermInfoDriver.cs (NotifyWrite): Broken up into 2 functions:
453 (IsSpecialKey): Returns true if we need to do some special voodoo
455 (WriteSpecialKey): Write the special key (using whatever voodoo
458 2007-04-16 Jeffrey Stedfast <fejj@gnome.org>
460 * CStreamWriter.cs (Write): Instead of writing 1 char at a time,
461 copy the bytes into a temporary char array (with a fixed max size)
462 so that we can minimize the number of Write() calls we make on the
463 underlying stream (and thus on the write() system call).
465 2007-04-17 Alp Toker <alp@atoker.com>
467 * Array.cs: Make GetRank() icall private. Subclasses should use the
468 public Rank property.
470 2007-04-16 Jeffrey Stedfast <fejj@novell.com>
472 * WindowsConsoleDriver.cs: Get rid of unused Echo property.
474 * NullConsoleDriver.cs: Get rid of Echo property.
476 * IConsoleDriver.cs: Get rid of Echo property.
478 * ConsoleDriver.cs (Echo::get/set): Removed, not needed.
480 * TermInfoDriver.cs (Echo::get/set): Removed, this isn't necessary
482 (ReadKey): If we are intercepting the key, call SetEcho (false)
483 and then reset back to true after reading the key.
484 (ReadLine): Same idea here.
485 (GetCursorPosition): We no longer need to keep track of the
486 previous echo state, we no longer have it :)
488 2007-04-16 Jeffrey Stedfast <fejj@novell.com>
490 Fix for bug #80710 (and a bug I introduced in my last fix due to
491 this code assuming the underlying term echo state was always
492 false) and other buglets that I noticed.
494 * TermInfoDriver.cs (ReadLine): Set (term) Echo to false as we do
495 our own manual echoing which prevents ^H from getting displayed on
496 the screen when the user hits backspace.
497 (ReadLine): If the user hits Backspace and builder.Length is 0, DO
498 NOT echo the backspace back to the console, ever.
499 (ReadLine): Only echo characters back to the console if echo is
500 set to true. Seems the Echo ConsoleDriver property is a Mono
501 extension, and I'm assuming this is the intended behavior? I can't
502 see what else the Echo property would be useful for...
504 2007-04-16 Jeffrey Stedfast <fejj@novell.com>
508 * TermInfoDriver.cs: Renamed the noEcho variable to echo, makes
509 the logic cleaner/simpler/etc. Plus it was never actually used
510 other than in the property methods which are called Echo.
511 (Init): Call ConsoleDriver.SetEcho() with the 'echo' value -
512 allows for a slight optimization if called from within the
514 (GetCursorPosition): Instead of calling the Echo property methods,
515 call ConsoleDriver.SetEcho() directly to toggle echo off (if echo
516 isn't already off, and then back on once we're finished getting
517 the position - assuming the echo state is on, of course) - this
518 avoids calling back into Init() which just felt dirty.
519 (Echo::set): If the Echo state differs from our current state,
520 call ConsoleDriver.SetEcho() with the new state (this is the
521 important piece of the fix for bug #81050).
522 (ReadKey): Simplified the echo logic to make it a bit clearer.
525 2007-04-16 Marek Safar <marek.safar@gmail.com>
527 * Char.cs (IsLetter): Faster version.
529 2007-04-15 Alp Toker <alp@atoker.com>
531 * Decimal.cs: Provide 2.0 Round() overloads using System.Math.
533 2007-04-15 Alp Toker <alp@atoker.com>
535 * Activator.cs: CreateInstance(Type,object[]) was not params before
538 2007-04-15 Alp Toker <alp@atoker.com>
540 * NonSerializedAttribute.cs: Inherited=false in 2.0.
542 2007-04-05 Dick Porter <dick@ximian.com>
544 * Environment.cs: Increment mono_corlib_version
546 2007-04-03 Alp Toker <alp@atoker.com>
548 * Array.cs: CreateInstance(Type,int[]) is params.
549 * AppDomain.cs: ExecuteAssemblyByName(string,Evidence,string[]) is
552 2007-04-03 Alp Toker <alp@atoker.com>
555 * Math.cs: Should be static classes in 2.0.
557 2007-04-03 Alp Toker <alp@atoker.com>
559 * Delegate.cs: DynamicInvoke(object[]) is params in 2.0.
561 2007-04-03 Alp Toker <alp@atoker.com>
563 * Delegate.cs: Combine(Delegate[]) is params in 2.0.
565 2007-03-27 Dick Porter <dick@ximian.com>
567 * Environment.cs: Increment mono_corlib_version;
569 2007-03-16 Miguel de Icaza <miguel@novell.com>
571 * BitConverter.cs: Revert the patch from 72237 as that introduces
572 a regression and we are not sure yet what we will be doing about
575 Introduce a new InternalInt64BitsToDouble method that provides the
576 fixed functionality, mark it as internal.
578 Introduce a new SwappableToDouble method that includes the
579 swapping ToDouble routine as introduced by Zoltan on 72237, this
580 is used by InternalInt64BitsToDouble.
582 * Math.cs (IEEERemainder): Use the InternalInt64BitsToDouble
583 routine here to preserve the semantics from Zoltan.
585 The problem with BitConverter.cs is that it is completely hossed.
586 In .NET 1.1 it is a bitwise copy, no attempt is ever done to do
587 endian-specific swapping. In .NET 2.0 it is *almost* like that,
588 but it is subtly broken: if data is unaligned then endian
589 conversions happen. If the data is properly aligned it behaves
592 In general BitConverter is a sad class that offers little control,
593 we will be introducing a new mono bit converter and encourage
594 users to use that instead of the entirely broken
597 2007-03-11 Gert Driesen <drieseng@users.sourceforge.net>
599 * Delegate.cs: Fixed bootstrap build.
601 2007-03-08 Gert Driesen <drieseng@users.sourceforge.net>
603 * StringComparer.cs: Renamed StringComparer classes and promoted them
604 to top-level classes. Merged Ordinal and OrdinalIgnoreCase comparers.
605 Fixes binary serialization compatibility with MS.
607 2007-03-06 Zoltan Varga <vargaz@gmail.com>
609 * Type.cs (Equals): Remove a useless check.
611 * Type.cs: Rename Type:Equals(Type) to EqualsInternal, and add support for checking
612 UnderlyingSystemType. Fixes #81037.
614 2007-03-05 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>
616 * TermInfoDriver.cs: adjust buffer indexes after *every* read. Fixes
617 bug #80329. Robert Jordan attached a similar patch to the bug report
618 but I didn't see it until after my commit...
620 2007-03-05 Peter Dettman <peter.dettman@iinet.net.au>
622 * Enum.cs: The above patch makes the formatting for specifiers 'x'
623 and 'X' behave like MS.NET, including the correct length for each
624 possible underlying type, and correctly using capital letters for
627 Patch also includes some more test cases in EnumTests.cs.
629 2007-02-25 Gert Driesen <drieseng@users.sourceforge.net>
631 * AppDomainSetup.cs: If configuration file is not an absolute path,
632 then throw a MemberAccessException if ApplicationBase is not set,
633 or otherwise consider it as a path relative to ApplicationBase.
634 Fixes bug #80934. Patch provided by Jamie Cansdale.
635 * AppDomain.cs: In CreateDomain, construct AppDomain with
636 ApplicationBase of default domain if not explicitly set in specified
637 AppDomainSetup. If config file is not set, then use filename of the
638 default domain config file. Base on patch provided by Jamie Cansdale.
640 2007-02-16 Sebastien Pouliot <sebastien@ximian.com>
642 * Random.cs: Fix exception messages ("then" -> "than"). Spotted by
643 Mark A. Nicolosi (#80873).
645 2007-02-12 Miguel de Icaza <miguel@novell.com>
647 * CStreamWriter.cs (Write with char []): take the lock once for
648 all characters and call manually the InternalWriteChar properly to
651 (Write with string parameter): same thing, if the driver is not
652 initialized use a fast path.
654 If the driver has not been initialized, use a fast path instead.
656 Mon Feb 12 21:54:57 CET 2007 Paolo Molaro <lupus@ximian.com>
658 * MonoType.cs: patch from Cedric Vivier <cedricv@neonux.com> to
659 get correctly non-public fields from generic types.
661 2007-02-08 Jonathan Chambers <joncham@gmail.com>
663 * __ComObject.cs: Add IUnknown field to object. Cleanup icalls.
665 2007-02-03 Zoltan Varga <vargaz@gmail.com>
667 * BitConverter.cs (ToDouble): Fix this on big-endian machines.
669 2007-01-30 Atsushi Enomoto <atsushi@ximian.com>
671 * TimeZone.cs: According to the docs, we should not throw when
672 converting to Localtime if we are a negative value. Instead we
673 return DateTime.MinValue.
675 2007-01-25 Atsushi Enomoto <atsushi@ximian.com>
677 * DateTime.cs : copy Kind in those members that return DateTime.
680 2007-01-20 Miguel de Icaza <miguel@novell.com>
682 * Array.cs (InternalArray__ICollection_Contains,
683 InternalArray__IndexOf): Cope with null values in the array (See
686 2007-01-19 Marek Habersack <grendello@gmail.com>
688 * AppDomain.cs: Make sure that domain
689 SetupInformation.ConfigurationFile is never null. MS.NET by
690 default copies the default domain's ConfigurationFile value
691 there. Fixes bug #80547.
693 2007-01-14 Jensen Somers <jensen.somers@gmail.com>
695 * ArraySegment.cs: Added Equals() method, operator == and !=
696 overloading and GetHashCode().
698 2007-01-10 Andy Hume <andyhume32@yahoo.co.uk>
700 * Fixes to a number of exception classes.
702 A project of mine uses #ctor(String,Exception) on
703 ObjectDisposedException, so I looked at adding that, and any
704 other similar constructors missing as per the class status report.
706 I also spotted inconsistent setting of HResult, and fixed
707 those too. For instance, ArgumentNullException sets HResult
708 only in three out of the four constuctors; not setting it in
709 the v2 (String,Exception) one -- and correctly not in the
710 Serialization constructor.
713 So, I fixed the remaining missing (String,Exception)
714 constructors in corlib (2 of), and fixed the Hresult setting
715 in all exceptions there (4 of).
717 The remaining Exception constructor omission listed was
718 InvalidCastException.ctor(System.String, System.Int32). MSDN says:
719 "This constructor supplies an HRESULT value that is
720 accessible to inheritors of the InvalidCastException class,
721 via the protected HResult property of the Exception class."
722 I added that method too, setting the HResult property from
725 2007-01-10 Atsushi Enomoto <atsushi@ximian.com>
727 * String.cs, StringComparer.cs : avoid extra string creation in
728 StringComparer.OrdinalIgnoreCase.
730 2007-01-05 Sebastien Pouliot <sebastien@ximian.com>
732 * DateTime.cs: Under 2.0 fix ParseExact to set DateTimeKind.Utc when
733 DateTimeStyles.AdjustToUniversal is used.
735 2007-01-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
737 * TermInfoDriver.cs: honor the backspace in ReadLine.
739 2006-12-30 Marek Safar <marek.safar@gmail.com>
741 * String.cs: Character based method only.
742 (IndexOf, LastIndexOf, Replace, IndexOfAny): Performance improvements.
743 (Substring): Returns same instance when index is 0.
745 2006-12-30 Alp Toker <alp@atoker.com>
748 * Math.cs: Implement missing Decimal.Ceiling methods for 2.0.
751 2006-12-22 Sebastien Pouliot <sebastien@ximian.com>
753 * DateTime.cs: Implement missing [To|From]Binary methods for 2.0.
754 * OperatingSystem.cs: Implement missing ServicePack and VersionString
756 * Version.cs: Add missing Major|MinorRevision properties for 2.0.
758 2006-12-14 Raja R Harinath <rharinath@novell.com>
760 * Type.cs (MakeGenericType): Can only be called on a generic type
763 2006-12-03 Miguel de Icaza <miguel@novell.com>
765 * DateTime.cs: Fix this on the 2.0 profile, return the
766 DateTimeKind for the Now property
768 2006-12-01 Duncan Mak <duncan@a-chinaman.com>
770 * ArgumentOutOfRangeException.cs (.ctor):
771 * NotFiniteNumberException.cs (.ctor): Add the 2.0 constructor
772 that takes a string and an inner Exception.
774 2006-12-01 Atsushi Enomoto <atsushi@ximian.com>
777 When comparing enumerations, two or more enumeration values might
778 match. Thus basically we should do complete matching, but right
779 now just do reverse order search since only numbered abbrev month
780 names matter (and full iteration is a mess). Fixed bug #80094.
782 2006-12-01 Atsushi Enomoto <atsushi@ximian.com>
785 use new internal clone-less DateTimeFormatInfo members.
787 2006-11-29 Martin Baulig <martin@ximian.com>
789 * INullableValue.cs: Removed.
791 2006-11-28 Duncan Mak <duncan@novell.com>
793 * ArgumentNullException.cs (.ctor): Added new constructor that's
796 * InsufficientMemoryException.cs: Added missing 2.0 exception.
798 2006-11-27 Jonathan Chambers <joncham@gmail.com>
800 * __ComObject.cs: Removed IDispatchMono.
802 2006-11-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
805 * Console.cs: lazy initialization of Console 2.0 (also when
806 CancelKeyPress is used).
808 2006-11-27 Miguel de Icaza <miguel@novell.com>
810 * Exception.cs (GetType): New method in 2.x, Another Moma catch.
812 Mon Nov 27 19:34:16 CET 2006 Paolo Molaro <lupus@ximian.com>
814 * GC.cs: implemented the needed methods with icalls.
816 2006-11-26 Miguel de Icaza <miguel@novell.com>
818 * Math.cs: Add Floor(Decimal d), for CreativeDocs.NET.
820 Go Moma! http://www.mono-project.com/Moma
822 * Decimal.cs: Refactor code to implement TryParse.
824 Also, avoid initializing messages on every call to stripStyles
826 2006-11-22 Miguel de Icaza <miguel@novell.com>
828 * DateTime.cs: A small performance hit, we store the actual time
829 span in a boxed object. This way, it can be updated from other
830 threads if necessary. We always unbox to get the value before
831 any potential updates.
833 Thanks to Gonzalo for catching this.
835 2006-11-21 Miguel de Icaza <miguel@novell.com>
837 * TimeZone.cs (CurrentSystemTimeZone): Cache the current year
838 daylight savings time in static variables.
840 (CurrentSystemTimeZone.OnDeserialization): Initialize
841 this_year_dlt and this_year on this method.
843 (TimeZone): init statically the currentTimeZone instead of
844 delaying that to the static property, avoiding a compare.
846 2006-11-22 Lluis Sanchez Gual <lluis@novell.com>
848 * Array.cs: (compare<T>) if a comparer is provided, it has
849 priority over other comparison methods.
851 2006-11-14 Miguel de Icaza <miguel@novell.com>
853 * Array.cs: TODOs will from now on be used to flag information
854 that will be developer-visible, not to flag internal information
855 that none of us reads or bothers about.
857 For those, use "FIXME" strings in the source code instead.
859 * AppDomain.cs: Update to be more useful.
861 2006-11-13 Atsushi Enomoto <atsushi@ximian.com>
863 * String.cs : fixed incorrect startIndex/length count in
864 IndexOf(string,StringComparison).
866 2006-11-07 Marek Safar <marek.safar@gmail.com>
868 * String.cs (LastIndexOf): If value is Empty, the return value is
869 the start index position in value.
871 2006-10-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
873 * TermInfoDriver.cs: prevent an invalid cast.
875 2006-10-26 Marek Safar <marek.safar@seznam.cz>
877 * String.cs (Concat): Add fast-path for empty strings.
879 2006-10-20 Jonathan Chambers <joncham@gmail.com>
881 * Variant.cs: Add support for bool and interfaces.
883 2006-10-18 Kornél Pál <kornelpal@gmail.com>
885 * Type.cs: Removed is_subtype_of because IsSubclassOf should be used
886 that is public and virtual. IsClass: Checking for ValueType is
887 unnecessary. IsEnum: UnderlyingSystemType is not used anymore so
888 no EnumBuilder hack is necessary. Checking for Enum is
889 unnecessary. IsSerializable: Walk BaseType for user defined types.
890 IsSubclassOf: Walk BaseType for user defined types.
892 * MonoType.cs: IsValueTypeImpl is unnecessary. IsSubclassOf: Unlike
893 Type system types throw ArgumentNullException on null Type
896 2006-10-14 Gert Driesen <drieseng@users.sourceforge.net>
898 * BadImageFormatException.cs: Changed message for default ctor to
899 match MS. Use internal message field of Exception to check whether
900 Message is null. Match MS default messages when no message is
901 set. Fixed ToString to match MS.
903 2006-10-09 Miguel de Icaza <miguel@novell.com>
905 * Environment.cs: Handle SpecialFolder.MyMusic
907 2006-10-07 Gert Driesen <drieseng@users.sourceforge.net>
909 * Enum.cs: Use different exception message depending on whether the
910 type of the passed in value is an Enum or not. Avoid looking up the
911 enum's underlying type twice in case of "D" or "d" format specifier.
913 2006-10-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
915 * TermInfoDriver.cs: don't allow backspace if we're at the beginning
916 position for a ReadLine.
918 2006-10-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
920 * TermInfoDriver.cs: ironpython autocompletion works now.
922 2006-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
924 * Console.cs: avoid casting on windows.
926 2006-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
933 * NullConsoleDriver.cs:
936 * WindowsConsoleDriver.cs: initial changes to handle cursor position
939 2006-09-21 Gert Driesen <drieseng@users.sourceforge.net>
941 * ArithmeticException.cs: Modified default message to match MS, to
942 ensure a local regression test passes on both Mono and .NET.
944 2006-09-21 Gert Driesen <drieseng@users.sourceforge.net>
946 * Exception.cs: Marked message internal to allow derived classes to
947 access the raw message (without changing the public API).
949 2006-09-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
955 * WindowsConsoleDriver.cs: don't switch to the alternate window.
956 Trigger the cancel event. Retrieve the cursor position at the
957 beginning, as we're going to keep track of it instead of querying it
960 2006-09-14 Jonathan Chambers <joncham@gmail.com>
962 * Environment.cs (ProcessorCount): Implement as icall.
963 Patch by Jason McFall.
965 2006-09-05 Raja R Harinath <rharinath@novell.com>
967 * DateTime.cs (Today) [NET_2_0]: Set kind to Local.
969 2006-09-02 Zoltan Varga <vargaz@gmail.com>
971 * Enum.cs (Equals): Use the generic Equals implementation from ValueType which
972 is faster and avoids allocations.
974 2006-09-01 Martin Baulig <martin@ximian.com>
976 * Array.cs (Array.InternalArray): Removed the helper class;
977 instead we use private generic methods in System.Array which are
978 inserted into the vtable at runtime.
980 2006-08-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
982 * ConsoleCancelEventArgs.cs: fix my build.
984 2006-08-22 Miguel de Icaza <miguel@novell.com>
986 * MulticastDelegate.cs: Make DynamicInvokeImpl internal in 2.0
988 * Converter.cs: update signature to final.
990 * ModuleHandle.cs: Removed the [Obsolete] flags as they removed
991 those in the final 2.0
993 * DateTime.cs: Fixed the signature.
995 * Convert.cs: Removed API calls that were deprecated in final 2.0
997 * Enum.cs: Updated to use the obsoletes flagged in 2.0.
999 * ConsoleCancelEventArgs.cs: Updated to 2.0
1001 2006-08-19 Miguel de Icaza <miguel@novell.com>
1003 * Attribute.cs: This needs to do a deep compare, not a shallow
1004 one. Ran into this bug with the VBNC compiler that compares two
1005 separate attributes for equality using this.
1007 * String.cs (StartsWith): Fix the overloaded constructor that
1008 takes a CultureInfo, if that is null, it means to use the current
1011 * TermInfoDriver.cs: Do not throw exceptions on the driver for
1012 SetWindowSize and SetWindowPosition, they can be treated as nops.
1014 2006-08-18 Zoltan Varga <vargaz@gmail.com>
1016 * *.cs: Use String.Empty instead of "" in a lot of places.
1018 2006-08-17 Sebastien Pouliot <sebastien@ximian.com>
1020 * DateTime.cs: Remove last patch to DateTime as the fix wasn't correct
1021 and made most x.509 unit tests fails. However the original problem is
1024 2006-08-14 Raja R Harinath <rharinath@novell.com>
1027 * Activator.cs (CreateInstance): Throw ArgumentException on open
1030 2006-08-14 Miguel de Icaza <miguel@novell.com>
1032 * MonoType.cs: Do the argument testinf for SetField later,
1033 otherwise the implicit (and not documented, but already considered
1034 side effect of checking SetProperty) did not work.
1038 2006-08-13 Atsushi Enomoto <atsushi@ximian.com>
1040 * String.cs : Normalize() and IsNormalized() implementation.
1042 2006-08-10 Jonathan Chambers <joncham@gmail.com>
1044 * __ComObject.cs: Added defintion of IDispatch interface, and
1045 property. Get CLSID of supertype for creation if class not
1046 ComImport attributed (allows for inheritance of RCW).
1047 * MonoType.cs: Implement IsCOMObjectImpl.
1049 2006-08-09 Atsushi Enomoto <atsushi@ximian.com>
1051 * DateTime.cs : fixed X509Certificate() case that regressed only
1054 2006-08-07 Kornél Pál <kornelpal@gmail.com>
1056 * Console.cs: Use correct code pages on Windows and initialize
1057 InputEncoding and OutputEncoding to the actual encodings used.
1059 2006-08-05 Duncan Mak <duncan@novell.com>
1061 * Char.cs (TryParse): Implemented missing 2.0 method, which fixed
1064 2006-07-28 Jonathan Chambers <joncham@gmail.com>
1066 * __ComObject.cs: Added support for marshalling objects.
1068 2006-07-24 Atsushi Enomoto <atsushi@ximian.com>
1070 * Char.cs : implemented utf32 conversion methods thus fixed bug #78856.
1072 2006-07-19 John Luke <john.luke@gmail.com>
1074 * TermInfoDriver.cs: switch order of alt and control when
1075 calling new ConsoleKeyInfo()
1077 2006-07-19 Kornél Pál <kornelpal@gmail.com>
1079 * String.cs: Improve CreateString () performance when length is zero.
1081 2006-07-18 Kornél Pál <kornelpal@gmail.com>
1083 * String.cs: Added CreateString () methods. Constructors with matching
1084 argument list are redirected to these methods that improves
1085 performance as well as fixes bug #78703.
1087 2006-07-15 Jonathan Chambers <joncham@gmail.com>
1089 * __ComObject.cs: Begin implementing COM Interop.
1090 * Environment.cs: Increment corlib version.
1092 2006-07-12 Zoltan Varga <vargaz@gmail.com>
1094 * Delegate.cs (DynamicInvokeImpl): Add support for bound delegates in Net 2.0.
1096 2006-07-11 Zoltan Varga <vargaz@gmail.com>
1098 * Double.cs (Parse): Fix handling of inner whitespace.
1100 2006-07-09 Zoltan Varga <vargaz@gmail.com>
1102 * Int32.cs: Fix a warning.
1104 2006-07-07 Atsushi Enomoto <atsushi@ximian.com>
1106 * TimeZone.cs : consider DateTimeKind in ToLocalTime() and
1107 ToUniversalTime(). Fixed bug #78784. Patch by Thong Nguyen.
1108 * DateTime.cs : DateTimeKind for UtcNow should be Utc.
1110 2006-06-28 Kornél Pál <kornelpal@gmail.com>
1112 * Char.cs: Implemented IsHighSurrogate and IsLowSurrogate methods.
1114 2006-06-27 Atsushi Enomoto <atsushi@ximian.com>
1116 * Double.cs : don't throw Exception in TryParse() for 'E'.
1119 2006-06-20 Jb Evain <jbevain@gmail.com>
1121 * Math.cs: implement Math.Truncate.
1123 2006-06-13 Atsushi Enomoto <atsushi@ximian.com>
1126 Another lame win32 dependent pattern. Fixed bug #78618.
1128 2006-06-09 Jonathan Chambers <jonathan.chambers@ansys.com>
1130 * Environment.cs: Implement Set/GetEnvironmentVariable for User/Machine.
1132 2006-06-07 Kornél Pál <kornelpal@gmail.com>
1134 * Environment.cs: Use Consts.FxFileVersion for Environment.Version
1135 as Consts.RuntimeVersion was removed.
1137 2006-06-05 Jonathan Chambers <jonathan.chambers@ansys.com>
1139 * Variant.cs: Added.
1140 * Environment.cs: Incremented corlib version since adding Variant.
1142 2006-06-01 Raja R Harinath <rharinath@novell.com>
1144 * Nullable.cs (operator==, operator!=): Remove.
1146 2006-05-31 Zoltan Varga <vargaz@gmail.com>
1148 * MonoDummy.cs: Removed as it is no longer needed.
1150 * Environment.cs: Bump corlib version.
1152 * Environment.cs: Revert the last change.
1154 * Environment.cs: Bump corlib version.
1156 * MonoAsyncCall.cs: New file.
1158 2006-05-30 Gert Driesen <drieseng@users.sourceforge.net>
1160 * Char.cs: Removed duplicate (explicit) interface implementation.
1161 * String.cs: Removed duplicate (explicit) interface implemenation.
1162 * MulticastDelegate.cs: Fixed API mismatches.
1164 2006-05-29 Paolo Molaro <lupus@ximian.com>
1166 * String.cs: make sure that the chars truncated by a stringbuilder
1169 2006-05-29 Martin Baulig <martin@ximian.com>
1172 (Exception.StackTrace): Use the new stack trace format which is
1173 very similar to the one of MS.NET - method name goes first,
1174 file / line number last and in the method name, we separate class
1175 and method name by `.'.
1178 (Environment.StackTrace): Enable line-number information.
1180 2006-05-24 Atsushi Enomoto <atsushi@ximian.com>
1183 Implement 2.0 TryParseExact(). Patch by Seo Sanghyeon.
1185 2006-05-17 Kazuki Oikawa <kazuki@panicode.com>
1187 * Array.cs : added internal sort method used
1188 in System.Collections.Generics.List<T>.Sort(Comparison<T>).
1190 2006-05-15 Zoltan Varga <vargaz@gmail.com>
1192 * Environment.cs: Bump corlib version.
1194 2006-05-10 Zoltan Varga <vargaz@gmail.com>
1196 * MonoType.cs (GetMethodImpl): Fix a warning.
1198 2006-05-08 Atsushi Enomoto <atsushi@ximian.com>
1200 * ArrayTest.cs : use proper comparer in IndexOf() and LastIndexOf().
1201 Patch by Kazuki Oikawa. Fixed bug #77277.
1203 2006-05-07 Zoltan Varga <vargaz@gmail.com>
1205 * Nullable.cs (Equals): Fix comparison to null. Fixes #78322.
1207 2006-04-28 Atsushi Enomoto <atsushi@ximian.com>
1209 * Nullable.cs : updated Nullable<T> API to 2.0 RTM.
1211 2006-04-26 Atsushi Enomoto <atsushi@ximian.com>
1213 * Double.cs : (Parse) handle currency symbol when
1214 AllowCurrencySymbol is passed as part of the style. Patch by
1215 nede@aliquant.com, modified to eliminate redundant Substring().
1216 This fixes bug #77721.
1218 2006-04-26 Atsushi Enomoto <atsushi@ximian.com>
1220 * MonoType.cs : (GetMethod) when zero-length type[] is explicitly
1221 passed, don't return methods with some arguments. Fixed bug #77367.
1223 2006-04-21 Gert Driesen <drieseng@users.souceforge.net>
1225 * Enum.cs: Provide meaningful message when type of passed in value
1226 does not match enum type.
1228 2006-04-19 Raja R Harinath <rharinath@novell.com>
1230 * Char.cs (Equals): Don't access 'm_value' field of other
1231 instances. Cast directly to 'char'.
1233 2006-04-13 Atsushi Enomoto <atsushi@ximian.com>
1235 * DateTime.cs : implement SpecifyKind(). Patch by Thong Nguyen.
1237 2006-04-13 Atsushi Enomoto <atsushi@ximian.com>
1239 * NumberFormatter.cs : general performance improvements. Avoid
1240 extraneous evaluation for simple formatting. Details are seen in
1241 bug #77792. Patch by Kazuki Oikawa.
1243 2006-04-13 Atsushi Enomoto <atsushi@ximian.com>
1245 * DateTime.cs : implement IsDaylightSavingTime().
1246 Patch by Seo Sanghyeon <tinuviel@sparcs.kaist.ac.kr>.
1248 2006-04-04 Atsushi Enomoto <atsushi@ximian.com>
1251 added some more [ReliabilityContract].
1252 removed some [CLSCompliant].
1253 renamed generic method parameter names.
1255 2006-03-31 Zoltan Varga <vargaz@gmail.com>
1257 * Environment.cs (SetEnvironmentVariable): Implement.
1259 2006-03-28 Atsushi Enomoto <atsushi@ximian.com>
1261 * Array.cs : oops, the last change caused regression. The array must
1262 be transparent to ReadOnlyCollection, not create another list.
1264 2006-03-28 Atsushi Enomoto <atsushi@ximian.com>
1266 * Array.cs : AsReadOnly<T>() in RTM returns ReadOnlyCollection<T>.
1267 Thus removed ReadOnlyArray<T> and ReadOnlyArrayEnumerator<T>.
1268 In 2.0 some members became non-virtual.
1270 2006-03-23 Atsushi Enomoto <atsushi@ximian.com>
1272 * String.cs : oops, NET_2_0.
1274 2006-03-23 Atsushi Enomoto <atsushi@ximian.com>
1276 * String.cs : added new IndexOf() and LastIndexOf() overloads, and
1277 IEnumerable<char>.GetEnumerator().
1279 2006-03-21 Kornél Pál <kornelpal@gmail.com>
1281 * String.cs: Make memcpy4 private as it is a helper method.
1282 Make memcpy internal to can be used from UnicodeEncoding.
1284 2006-03-19 Marek Safar <marek.safar@seznam.cz>
1286 * Nullable.cs (Compare, Equals): Added constrain as gmcs now correctly
1287 reports an error here.
1289 2006-03-16 Atsushi Enomoto <atsushi@ximian.com>
1291 * Double.cs : (Parse) reject String.Empty.
1293 Wed Mar 15 16:30:51 CET 2006 Paolo Molaro <lupus@ximian.com>
1295 * LocalDataStoreSlot.cs: implement as index in an array.
1296 Implemented finalizer and allow it to remove the data stored
1299 2006-03-15 Zoltan Varga <vargaz@gmail.com>
1301 * Environment.cs: Bump corlib version.
1303 2006-03-10 Zoltan Varga <vargaz@gmail.com>
1305 * MonoCustomAttrs.cs (IsDefined): Avoid a runtime assert if a type
1306 overwrites GetCustomAttributes () but not IsDefined ().
1308 2006-03-07 Peter Dennis Bartok <pbartok@novell.com>
1310 * Environment.cs: Bumped corlib version to 48 (due to r57532)
1312 2006-03-07 Martin Baulig <martin@ximian.com>
1314 * String.cs (String.FormatHelper): Try getting an `ICustomFormatter'
1315 from the `provider' if possible.
1317 2006-02-26 Gert Driesen <drieseng@users.souceforge.net>
1319 * DecimalFormatter.cs: Removed obsolete class, as it has been replaced
1321 * DoubleFormatter.cs: Same.
1322 * SingleFormatter.cs: Same.
1324 2006-02-21 Marek Safar <marek.safar@seznam.cz>
1326 * String.cs (Equals): Optimized for speed.
1328 2006-02-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1330 * TermInfoDriver.cs: patch by Mike Hull that fixes bug #77518.
1332 Mon Feb 20 11:19:54 CET 2006 Paolo Molaro <lupus@ximian.com>
1334 * MonoType.cs: patch from Joachim Ante <joe@otee.dk> to
1335 improve error messages.
1337 2006-02-15 Martin Baulig <martin@ximian.com>
1339 * Type.cs (Type.IsGenericInstance): Removed.
1341 2006-02-14 Ankit Jain <jankit@novell.com>
1342 Raja R Harinath <rharinath@novell.com>
1344 * ArraySegment.cs (.ctor): Fix bounds check. Rename param 'length' to
1347 2006-02-11 Zoltan Varga <vargaz@gmail.com>
1349 * TermInfoDriver.cs (CreateKeyInfoFromInt): Fix handling of tab and its
1352 * TermInfoDriver.cs (GetWindowDimensions): Obtain the exact terminal
1353 size using an icall.
1354 (GetCursorPosition): Convert the row and column to 0 based indexing.
1355 Also fix reading of large values.
1356 (CreateKeyInfoFromInt): Convert LF to ConsoleKey.Enter.
1358 * ConsoleDriver.cs (GetTtySize): New icall.
1360 2006-02-10 Zoltan Varga <vargaz@gmail.com>
1362 * Array.cs: Fix some methods which previously returned Nullable<T>.
1364 * Nullable.cs: Add T: struct constraint and fix constructor.
1366 Fri Feb 3 11:01:46 CET 2006 Paolo Molaro <lupus@ximian.com>
1368 * String.cs: changed StartsWith/EndsWith to faster versions.
1370 2006-02-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1372 * String.cs: implement 2.0 StartsWith and EndsWith new overloads. Based
1373 on a patch by Thong Nguyen.
1375 2006-01-31 Zoltan Varga <vargaz@gmail.com>
1377 * String.cs: Implement one of the new net 2.0 Split methods.
1379 2006-01-31 Atsushi Enomoto <atsushi@ximian.com>
1381 * String.cs : (LastIndexOf) Fixed bug #77412. It should not expect
1382 that value length is bigger than its index.
1384 2006-01-27 Zoltan Varga <vargaz@gmail.com>
1386 * DateTime.cs: Add some 2.0 methods and properties.
1388 2006-01-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1390 * Console.cs: if InternalCodePage returns -1, use the default encoding.
1391 Also match the UTF8 one properly. Patch by wall_john@sohu.com.
1393 2006-01-19 Atsushi Enomoto <atsushi@ximian.com>
1395 * ModuleHandle.cs : GetPEKind() is not public in 2.0 RTM.
1397 2006-01-16 Alp Toker <alp@atoker.com>
1399 * TimeSpan.cs: Simple implementation of NET 2.0 TryParse() using
1402 2006-01-05 Raja R Harinath <rharinath@novell.com>
1404 Fix regressions introduced by the fix to #71300.
1405 * Activator.cs (CreateInstance): Use Binder.SelectMethod instead
1406 of home-grown FindBestCtor.
1407 (FindBestCtor): Delete.
1409 2006-01-03 Zoltan Varga <vargaz@gmail.com>
1411 * Nullable.cs: Update to Net 2.0 RTM.
1413 * Nullable.cs: Add comments about runtime dependencies on the layout of
1416 2006-01-02 Sebastien Pouliot <sebastien@ximian.com>
1418 * Activator.cs: Now find the best ctor when null are used for
1419 paramaters. Fix bug #71300. Added checks for specific types (void,
1420 TypedReference, ArgIterator and RuntimeArgumentHandle).
1421 * Console.cs: Re-use Environment logic to detect Windows.
1422 * Type.cs: Re-applied r45150 as the real bug was in Activator.
1424 2006-01-02 Zoltan Varga <vargaz@gmail.com>
1426 * Activator.cs: Add a 'params' to one of the CreateInstance overloads.
1428 * RuntimeTypeHandle.cs RuntimeMethodHandle.cs RuntimeFieldHandle.cs:
1429 Add == and != operators.
1431 2005-12-23 Sebastien Pouliot <sebastien@ximian.com>
1433 * Environment.cs: Bump corlib version to 46.
1434 * TimeZone.cs: Partial fix for #76094. Added [Serializable] attribute
1435 and renamed internal CurrentTimeZone class to CurrentSystemTimeZone
1436 (like MS). This allows serialization roundtrip to work in Mono but
1437 there's still an issue when deserializing a stream from MS.
1439 2005-12-23 Sebastien Pouliot <sebastien@ximian.com>
1441 * NumberFormatter.cs: Fixed rounding for float and the string output
1442 now includes all the precision (not counting preceding zeros). This
1443 fix the DecimalTest.TestConstructSingleRounding_NotWorking test cases.
1445 2005-12-21 Sebastien Pouliot <sebastien@ximian.com>
1447 * Array.cs: Fixed Sort<T> with IComparable (generic or not) bug #77039
1449 2005-12-20 Carlos Alberto Cortez <calberto.cortez@gmail.com>
1451 * Array.cs: Added the Sort<T> methods (generics).
1453 2005-12-19 Sebastien Pouliot <sebastien@ximian.com>
1455 * Array.cs: Fixed BinarySearch when the array is empty (#77030). Added
1456 some null check which throws ArgumentNullException under 2.0.
1458 2005-12-15 Sebastien Pouliot <sebastien@ximian.com>
1460 * DateTime.cs: Added MonoTODO to ctor accepting a Calandar instance.
1461 * Double.cs: Under 2.0 throw a ArgumentException when parsing with
1462 NumberStyles.AllowHexSpecifier. Partial fix for #72221. Added the
1463 second, simpler, TryParse method (2.0).
1464 * Single.cs: Added the TryParse methods for 2.0.
1466 2005-12-15 Raja R Harinath <rharinath@novell.com>
1468 * Type.cs (IsGenericType): Make virtual.
1470 2005-12-08 Sebastien Pouliot <sebastien@ximian.com>
1472 * AppDomainSetup.cs: ApplicationBase throw exception on get (not on
1473 set). New behaviour is more like MS - but most issues (unit tests)
1474 were really path issues. Fix bug #71291.
1475 * DateTime.cs: Add more information when throwing an exception in
1476 ctor(long). Useful for debugging.
1478 2005-12-07 Zoltan Varga <vargaz@gmail.com>
1480 * Single.cs Double.cs: Fix warnings.
1482 2005-12-06 Sebastien Pouliot <sebastien@ximian.com>
1484 * Convert.cs: ToBase64String method didn't use the option parameter so
1485 we always included new lines. Fix bug #76876.
1487 2005-12-06 Sebastien Pouliot <sebastien@ximian.com>
1489 * AppDomainSetup.cs: Added missing ComVisible and removed LAMESPEC
1490 (the docs were fixed).
1491 * NumberFormatter.cs: Fixed the "NotWorking" case where 1.15 was
1492 misrounded compared to MS implementation. Extra care is required when
1493 dealing with the extra 2 digits information (e.g. double precision is
1494 15 digits but 17 are kept - for a reason ;-)
1496 2005-12-05 Ben Maurer <bmaurer@ximian.com>
1498 * Environment.cs: Bump version
1500 * Nullable.cs: New Box and Unbox methods for the jit
1502 2004-12-05 Peter Dennis Bartok <pbartok@novell.com>
1504 * Enum.cs: Properly handle "No bits set" case even if the sorted numbers
1505 list does not have enum value 0 as the first item. Fixes #76921
1507 2005-12-05 Sebastien Pouliot <sebastien@ximian.com>
1509 * AppDomain.cs: CreateComInstanceFrom isn't static in any profile.
1511 Mon Dec 5 15:14:59 CET 2005 Paolo Molaro <lupus@ximian.com>
1513 * Double.cs: remove unused icall.
1514 * BitConverter.cs: handle double binary format on ARM FPA.
1516 2005-12-02 Alp Toker <alp@atoker.com>
1519 * Type.cs: DeclaringMethod should return MethodBase, not MethodInfo
1521 2005-12-02 Alp Toker <alp@atoker.com>
1523 * AppDomain.cs: ReflectionOnlyPreBindAssemblyResolve renamed to
1524 ReflectionOnlyAssemblyResolve in 2.0 final
1526 2005-12-01 Alp Toker <alp@atoker.com>
1528 * String.cs: Add static and non-static Equals(... StringComparison) for
1531 2005-12-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1533 * TermInfoDriver.cs: special case for the escape key. Fixes bug #76781.
1535 2005-11-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1537 * TermInfoDriver.cs: if the cursor_address capability contains a %i, we
1538 have to add 1 to x and y when setting the cursor position.
1541 * Convert.cs: remove unused variables.
1543 Wed Nov 30 12:14:20 EST 2005 Paolo Molaro <lupus@ximian.com>
1545 * NumberFormatter.cs: work around arch-specific ulong cast behaviour
1548 Tue Nov 29 05:38:37 EST 2005 Paolo Molaro <lupus@ximian.com>
1550 * Convert.cs: fix endianess issue when converting to base-8
1551 format. All the base code would need a rewrite for efficience.
1553 2005-11-25 Sebastien Pouliot <sebastien@ximian.com>
1555 * String.cs: Added support for Compare(... StringComparison) in 2.0.
1557 2005-11-25 Alp Toker <alp@atoker.com>
1559 * Type.cs (IsVisible): New 2.0 property, implemented recursively.
1561 2005-11-17 Dick Porter <dick@ximian.com>
1563 * Environment.cs: Incremented corlib version
1565 2005-11-14 Carlos Alberto Cortez <calberto.cortez@gmail.com>
1567 * Int32.cs, UInt32.cs, Int16.cs, UInt16.cs, Int64.cs,
1568 UInt64.cs, Byte.cs, SByte.cs, Double.cs : Modify internal Parse
1569 methods to return the exception as an out parameter,
1570 instead of throwing it. This will be of special help
1571 to TryParse methods.
1572 * Environment.cs: Update corlib version to 42.
1574 2005-11-14 Raja R Harinath <rharinath@novell.com>
1576 * EventHandler.cs (EventHandler<TEventArgs>): Rename from EventHandler<T>.
1578 2005-11-11 Zoltan Varga <vargaz@gmail.com>
1580 * Type.cs (GetPseudoCustomAttributes): Return ComImportAttribute as well.
1582 2005-11-11 Lluis Sanchez Gual <lluis@novell.com>
1584 * TimeZone.cs: Removed incorrect double-check lock and unneeded
1587 2005-11-11 Marek Safar <marek.safar@seznam.cz>
1589 * Type.cs: IsNested implemented, signature fixes.
1591 2005-11-11 Raja R Harinath <rharinath@novell.com>
1593 * Array.cs (Resize<T>) [2-argument variant]: Fix nullref.
1595 2005-11-10 Zoltan Varga <vargaz@gmail.com>
1597 * Array.cs (Resize<T>): New internal method which takes a 'length' argument
1598 as well to avoid copying the whole array.
1600 2005-11-09 Atsushi Enomoto <atsushi@ximian.com>
1602 * Int64.cs : ditto for long.
1604 2005-11-09 Atsushi Enomoto <atsushi@ximian.com>
1606 * Int32.cs : Parse("2147483648", format_provider) should be rejected.
1608 2005-11-09 Sebastien Pouliot <sebastien@ximian.com>
1610 * AttributeTargets.cs: Added [ComVisible (true)] and [Serializable]
1612 * Base64FormattingOptions.cs: Added missing [Flags] attribute.
1613 * ConsoleKey.cs: Removed old BackSpace and WhiteSpace (they were
1614 already replaced by Backspace and Whitespace)
1615 * DateTime.cs: Moved DayOfWeek enum to it's own file.
1616 * DateTimeKind.cs: New (2.0) enum.
1617 * DayOfWeek.cs: New file (extracted from DateTime.cs).
1618 * DomainManagerInitializationFlags.cs: Removed extra [Serializable].
1619 * EnvironmentVariableTarget.cs: Added [ComVisible (true)] and fixed
1620 values (-1 to all of them).
1621 * Exception.cs: Added a LinkDemand for SerializationFormatter on
1622 GetObjectData method.
1623 * LoaderOptimization.cs: Added [ComVisible (true)] and [Serializable]
1624 on enum and added [Obsolete] to DomainMask and DisallowBindings in 2.0
1626 * PlatformID.cs: Added [ComVisible (true)] and [Serializable] in 2.0
1628 * StringComparison.cs: New (2.0) enum (needed for Uri).
1629 * TermInfoDriver.cs: Fixed BackSpace -> Backspace (see ConsoleKey.cs).
1630 * TypeCode.cs: Added [ComVisible (true)] and [Serializable] in 2.0
1633 2005-11-08 Atsushi Enomoto <atsushi@ximian.com>
1635 * Type.cs : I forgot to mention, some '(' were missing in the
1638 2005-11-08 Zoltan Varga <vargaz@freemail.hu>
1640 * Type.cs (GetPseudoCustomAttributes): Check for TypeAttributes.Serializable instead of
1641 IsSerializable property, since the latter returns true for delegates/enums.
1643 2005-11-05 Kornél Pál <kornelpal@hotmail.com>
1645 * Environment.cs: Use Consts.RuntimeVersion as Environment.Version that
1646 makes maintenance easier.
1648 2005-10-24 Martin Baulig <martin@ximian.com>
1650 * Type.cs (Type.IsGenericTypeDefinition): Make this virtual.
1652 2005-10-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1654 * String.cs: fix bound checkings for LastIndexOfAny. Closes bug #76519.
1656 2005-10-20 Raja R Harinath <rharinath@novell.com>
1658 * Array.cs (Swapper): Remove NET_2_0 guards from nested declaration.
1660 2005-10-16 Michal Moskal <malekith@nemerle.org>
1662 * TermInfoDriver.cs: Call Init () in Background/ForegroundColor.
1664 2005-10-14 Atsushi Enomoto <atsushi@ximian.com>
1666 * DateTime.cs : another crappy Windows dependent format.
1668 2005-10-14 Ben Maurer <bmaurer@ximian.com>
1670 * DateTime.cs: Speed up when parsing date time objects by not
1671 duplicating cultureinfo arrays.
1673 2005-10-13 Zoltan Varga <vargaz@gmail.com>
1675 * Type.cs (GetTypeCode): Applied patch from
1676 Mike Welham <mwelham@gmail.com>. Return TypeCode.Empty when null is
1679 2005-10-07 Zoltan Varga <vargaz@gmail.com>
1681 * Delegate.cs: Add support for delegate covariance and contravariance
1684 2005-10-03 Atsushi Enomoto <atsushi@ximian.com>
1686 * StringComparer.cs : (OrdinalIgnoreCaseComparer.Equals()) reverse.
1688 2005-09-26 Zoltan Varga <vargaz@gmail.com>
1690 * String.cs (ParseFormatSpecifier): Fix skipping of whitespace. Fixes
1693 2005-09-23 Miguel de Icaza <miguel@novell.com>
1695 * Decimal.cs: Fix typo, patch from Tomas Kukol <tomas.kukol@gmail.com>
1697 2005-09-19 Zoltan Varga <vargaz@gmail.com>
1699 * MonoCustomAttrs.cs (GetCustomAttributesInternal): Add
1700 attributeType parameter.
1701 (IsDefined): New icall.
1703 * MonoCustomAttrs.cs: Avoid instantiating all custom attrs of an
1704 object when only a specific attribute type is requested. Fixes #76062.
1706 * Environment.cs: Bump corlib version.
1708 2005-09-09 Zoltan Varga <vargaz@gmail.com>
1710 * TypeLoadException.cs MissingMethodException.cs MissingFieldException.cs: Add new ctors called by the runtime. Improve Message property.
1712 2005-09-14 Atsushi Enomoto <atsushi@ximian.com>
1714 * DateTime.cs : (_DoParse) don't check ticks range before computing
1715 the actual value. Fixed bug #76082.
1717 2005-09-14 Atsushi Enomoto <atsushi@ximian.com>
1719 * TimeZone.cs : When the target DateTime is in the range of
1720 DST end to DST + delta, don't adjust UtcOffset gap between that of
1721 DST and that of STD. This should fix bug #75985.
1723 2005-09-06 Atsushi Enomoto <atsushi@ximian.com>
1725 * TimeZone.cs, DateTime.cs :
1726 - ToLocalTime() and ToUniversalTime() are moved to TimeZone.
1727 - Added more COM patterns. Patch by Ankit Jain. Fixed bug #72132.
1728 - use ToLocalTime() and don't depend on the own offset computation.
1729 Parse() with 'Z' pattern is closer to correct value on switching
1730 Daylight Saving Time. See bug #75985.
1732 2005-09-06 Atsushi Enomoto <atsushi@ximian.com>
1734 * DateTime.cs : (DoParse) DateTimeStyles.AdjustToUniversal was not
1735 handled as expected and it kept time value as local one.
1736 Patch by Brion Vibber. Fixed bug #75995.
1738 2005-09-06 Atsushi Enomoto <atsushi@ximian.com>
1740 * DateTime.cs : Literal escape (\) was not checking format as
1741 expected. Fixed bug #75213.
1743 2005-09-05 Miguel de Icaza <miguel@novell.com>
1745 * MonoType.cs: Patch from Jonathan Chambers to implement
1748 2005-09-05 Martin Baulig <martin@ximian.com>
1750 Reflect latest API changes in the August CTP.
1752 * Type.cs (Type.HasGenericArguments): Removed.
1753 (Type.BindGenericParameters): Renamed to MakeGenericType().
1755 2005-09-01 Atsushi Enomoto <atsushi@ximian.com>
1757 * DateTime.cs : another idiotic COM dependent format.
1759 2005-09-01 Kornél Pál <kornelpal@hotmail.com>
1761 * __ComObject.cs: Fixed to be internal. Removed CLSCompliant attribute.
1762 Added some comments about the class.
1764 2005-08-30 Sebastien Pouliot <sebastien@ximian.com>
1766 * AppDomain.cs: Use the more concise property syntax for declarative
1768 * AppDomainManager.cs: Default HostSecurityManager is null.
1770 2005-08-25 Atsushi Enomoto <atsushi@ximian.com>
1772 * NumberFormatter.cs : eliminate non-ASCII character.
1774 2005-08-25 Marek Safar <marek.safar@seznam.cz>
1776 * Enum.cs: Better exception message.
1778 2005-08-21 Gert Driesen <drieseng@users.sourceforge.net>
1780 * Convert.cs: In FromBase64String, return empty byte array for zero
1781 length string. Pass bool to InternalFromBase64String to control
1782 whether to allow a whitespace-only string.
1783 * Environment.cs: Bump corlib version.
1785 2005-08-20 Zoltan Varga <vargaz@freemail.hu>
1787 * Environment.cs: Bump corlib version.
1789 2005-08-19 Zoltan Varga <vargaz@freemail.hu>
1791 * Math.cs: Implement a new 2.0 Round method.
1793 2005-08-19 Gert Driesen <drieseng@users.sourceforge.net>
1795 * Convert.cs: Throw OverflowException if result is larger than
1796 ushort.MaxValue to match MS.NET. Remove commented code.
1798 2005-08-17 Gert Driesen <drieseng@users.sourceforge.net>
1800 * Convert.cs: For now, do not throw OverflowException if hex prefixed
1801 value is negative for signed types (other than int64). Need to look
1804 2005-08-17 Gert Driesen <drieseng@users.sourceforge.net>
1806 * Convert.cs: Numerous fixed in overloads taking base to match
1807 behaviour of MS.NET. Throw ArgumentOutOfRangeException is string is
1808 empty. If base is 16, 8 or 2, then throw ArgumentException if first
1809 character is a negative sign. Throw OverflowException if hex prefixed
1810 value is negative for signed types (other than int64) to match MS.NET.
1812 2005-08-16 Atsushi Enomoto <atsushi@ximian.com>
1814 * DateTime.cs : added another COM dependent pattern (rather to describe
1815 how it works on .NET than to add the pattern itself...).
1817 2005-08-16 Atsushi Enomoto <atsushi@ximian.com>
1819 * DateTime.cs : added case for bug #53023.
1821 2005-08-10 Zoltan Varga <vargaz@freemail.hu>
1823 * Type.cs: Add IsGenericType property from NET 2.0.
1825 2005-08-10 Atsushi Enomoto <atsushi@ximian.com>
1827 * String.cs : added new StartsWith()/EndsWith() override, fixing
1828 existing EndsWith() which incorrectly assumed that both string
1829 lengths must be equivalent (they are not always equal).
1830 * StringComparer.cs : added Ordinal and OrdinalIgnoreCase.
1832 2005-08-09 Zoltan Varga <vargaz@freemail.hu>
1834 * String.cs: Implement Split(String[]) methods.
1836 2005-08-09 Miguel de Icaza <miguel@novell.com>
1838 * AppDomainSetup.cs: Full-pathization of the appBase should only
1839 be done on Windows, the ":" condition never applied to Linux.
1841 * ConsoleKey.cs: Include a few aliases for a few values that were
1842 introduced recently.
1844 2005-08-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1846 * ConsoleKey.cs: added Backspace, which has the same value as BackSpace.
1849 2005-08-08 Atsushi Enomoto <atsushi@ximian.com>
1851 * String.cs : (StartsWith) compared string lengths are not always the
1852 same in culture-sensitive comparison.
1854 2005-08-05 Gert Driesen <drieseng@users.sourceforge.net>
1856 * Array.cs: Changed protected ctor to private. Fixes API compatibility
1858 * RuntimeFieldHandle.cs: Equals methods and GetHashCode should only
1859 be exposed in 2.0 profile.
1860 * RuntimeMethodHandle.cs: Equals methods and GetHashCode should only
1861 be exposed in 2.0 profile.
1862 * RuntimeTypeHandle.cs: Equals methods and GetHashCode should only
1863 be exposed in 2.0 profile.
1864 * Type.cs: Added GetType method and implemented _Type interface.
1865 Fixes API compatibility with MS.NET.
1867 2005-07-28 Marek Safar <marek.safar@seznam.cz>
1869 * StringComparer.cs: Add generics version of string interfaces.
1871 2005-07-26 Atsushi Enomoto <atsushi@ximian.com>
1873 * StringComparer.cs : implemented StringCultureComparer.GetHashCode().
1875 2005-07-26 Zoltan Varga <vargaz@freemail.hu>
1877 * StringSplitOptions.cs MidpointRounding.cs: New files.
1879 * String.cs Math.cs: Add stubs for some new 2.0 APIs.
1881 2005-07-26 Marek Safar <marek.safar@seznam.cz>
1883 * StringComparer.cs: New file.
1885 2005-07-26 Raja R Harinath <harinath@gmail.com>
1887 * Enum.cs (GetValue): Make private. Return an ulong.
1888 (Parse): Tighten scope of couple of variables. Use ulong when
1891 2005-07-25 Raja R Harinath <rharinath@novell.com>
1893 * Enum.cs (FindName, GetValue): New. Carved out of ...
1894 (Parse): ... this. Refactor and simplify code. Avoid incurring
1895 exceptions when parsing names. Avoid allocating arrays unless
1896 necessary. Avoid conversion of an enumeration constant to its own
1897 type. (Incorporates ideas from a patch by Gonzalo Paniagua Javier.)
1899 2005-07-13 Lluis Sanchez Gual <lluis@novell.com>
1901 * MarshalByRefObject.cs: GetLifetimeService() should be virtual.
1904 2005-07-13 Miguel de Icaza <miguel@novell.com>
1906 * Array.cs: Patch from rodrigobamboo@gmail.com that fixes the
1907 signature for GetValue and SetValue to make the long [] argument
1908 be a params argument.
1910 2005-07-11 Pedro MartÃnez Juliá <pedromj@gmail.com>
1912 * Convert.cs: Fix the bug when Convert.ChangeType was using
1913 NumberFormatInfo instead of DateTimeFormatInfo when the type to
1914 change is a DateTime.
1916 2005-07-11 Martin Baulig <martin@ximian.com>
1918 * Array.cs: Use Type.Equals() instead of `==' to compare type
1921 2005-07-10 Kamil Skalski <nazgul@nemerle.org>
1923 * Type.cs: Mark BindGenericParameters as deprecated. Use
1924 MakeGenericType as default implementation with updated signature.
1926 2005-07-09 Zoltan Varga <vargaz@freemail.hu>
1928 * Attribute.cs (IsDefined): Fix IsDefined for ParameterInfo's. Fixes
1931 2005-07-05 Lluis Sanchez Gual <lluis@novell.com>
1933 * DelegateSerializationHolder.cs: When the deserialized target is
1934 a proxy, call IsInstanceOfType to force the proxy to load the
1935 real type of the remote object. This is needed to make sure that
1936 subsequent calls to GetType() return the expected type. This fixes
1939 2005-07-03 Ben Maurer <bmaurer@ximian.com>
1941 * OperatingSystem.cs: patch from Aleksandar Dezelin to fix
1944 2005-06-30 Sebastien Pouliot <sebastien@ximian.com>
1946 * Guid.cs: Avoid code duplication between overriden methods (new in
1947 2.0). Avoid exception processing when possible. Renamed parameters to
1948 match the framework. Added ComVisible to NET_2_0.
1950 2005-06-28 Elliott Draper <el@eldiablo.co.uk>
1952 * Activator.cs: This implements the generic Activator.CreateInstance<T>()
1953 function for NET_2_0. It's full signature is:
1954 public static T CreateInstance<T>();
1956 2005-06-28 Lluis Sanchez Gual <lluis@novell.com>
1958 * Decimal.cs: Renamed internal fields for the sake of serialization
1959 interoperability with MS.NET.
1960 * Exception.cs: In the StackTrace property, return the stack trace
1961 if it has a value, even if the exception has not been thrown
1962 (it may have been deserialized).
1964 2005-06-28 Martin Baulig <martin@ximian.com>
1966 * Array.cs (Array.InternalArray<T>): New nested class; derives
1967 from Array. This is now used by the runtime for arrays; fixes #74953.
1969 2005-06-27 Atsushi Enomoto <atsushi@ximian.com>
1971 * String.cs : added some extra whitespace characters for Trim().
1974 2005-06-13 Michal Moskal <malekith@nemerle.org>
1976 * MonoType.cs: Don't use MethodHandle in GetMethod/GetConstructor,
1977 since it now throws on MethodBuilders. Don't use FieldHandle in
1978 GetField (throws on FieldBuilder) - just use the name.
1980 2005-06-13 Martin Baulig <martin@ximian.com>
1983 (MonoType.getFullName): Added `bool assembly_qualified' argument.
1984 (MonoType.AssemblyQualifiedName): The interncall now adds the
1985 assembly name, so we don't need to do it here.
1986 (MonoType.FullName): Use the new getFullName() API.
1988 2005-06-14 Sebastien Pouliot <sebastien@ximian.com>
1990 * Char.cs: ToLowerInvariant and ToUpperInvariant are now public in
1991 NET_2_0. Added "new" white char and ComVisible for 2.0.
1993 2005-06-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1995 * Convert.cs: FromBase64String and FromBase64CharArray are now internal
1996 calls to avoid extra allocations.
1998 2005-06-09 Kamil Skalski <nazgul@nemerle.org>
2000 * Type.cs: Add MakeGenericType method form .NET 2.0 beta 2 API
2002 * Type.cs MonoType.cs: Add internal virtual
2003 Get{Method,Constructor,Field} for obtaining instanciated *Info objects
2004 from non-instanciated counterparts
2006 2005-06-09 Zoltan Varga <vargaz@freemail.hu>
2008 * ModuleHandle RuntimeMethodHandle.cs RuntimeTypeHandle.cs RuntimeFieldHandle.cs RuntimeArgumentHandle.cs: Add missing 2.0 attributes.
2010 2005-06-08 Zoltan Varga <vargaz@freemail.hu>
2012 * Type.cs: Add missing 2.0 attributes.
2014 2005-06-07 Carlos Alberto Cortez <calberto.cortez@gmail.com>
2016 * MonoCustomAttrs.cs: Added GetCustomAttributesDataInternal icall, and
2017 also internal method GetCustomAttributesData, used by
2018 System.Reflection.CustomAttributeData.
2020 2005-06-06 Sebastien Pouliot <sebastien@ximian.com>
2022 * Activator.cs: Added _Activator interface (and members) for 1.1 and
2023 missing attributes (for both 1.1 and 2.0).
2024 * String.cs: Made internal To[Lower|Upper]Invariant methods public for
2025 2.0. Reworked Trim() to skip a useless call. Added missing attribute
2027 * Type.cs: Added _Type, _MemberInfo interfaces (1.1/2.0). Added
2028 missing attribute for 2.0. Hided some public/protected methods.
2030 2005-06-06 Zoltan Varga <vargaz@freemail.hu>
2032 * ModuleHandle.cs: Update after PortableExecutableKinds name change.
2034 2005-06-06 Sebastien Pouliot <sebastien@ximian.com>
2036 * _AppDomain.cs: Added new members in the interface (added in 1.1 SP1)
2037 * AppDomain.cs: Added new members from _AppDomain interface.
2038 * AppDomainManager.cs: Fixed flags and added attributes.
2039 * DomainManagerInitializationFlags.cs: The flag has been renamed to
2040 AppDomainManagerInitializationOptions in beta2.
2042 2005-06-06 Zoltan Varga <vargaz@freemail.hu>
2044 * Type.cs MonoCustomAttrs.cs: Return SerializableAttribute for types as well.
2046 2005-06-06 Sebastien Pouliot <sebastien@ximian.com>
2048 * Exception.cs: Implements _Exception only for 2.0.
2050 2005-06-06 Zoltan Varga <vargaz@freemail.hu>
2054 * GC.cs UnhandledExceptionEventArgs.cs IntPtr.cs RuntimeFieldHandle.cs
2055 String.cs Object.cs Math.cs RuntimeMethodHandle.cs ModuleHandle.cs
2056 RuntimeTypeHandle.cs AppDomain.cs: Add some missing 2.0 methods/attributes.
2058 2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2061 * AppDomain.cs: if the assembly is loaded from a byte array, Location
2062 returns "". Fixes bug #74958.
2064 2005-06-04 Ben Maurer <bmaurer@ximian.com>
2066 * *.cs: More 2.0 API fixups
2068 * *.cs: In beta 2, generics are no longer non-cls-compliant.
2070 2005-06-05 Kazuki Oikawa <kazuki@panicode.com>
2072 * NumberFormatter.cs: Fixed the output of 0.ToString("00.00E00")
2073 that was different from MSFT.
2074 * String.cs: Fixed IndexOfAny thrown an exception
2075 when startIndex of arguments equals Length. (Closes bug #75083.)
2077 * Decimal.cs: Changed to use NumberFormatter in ToString.
2078 * NumberFormatter.cs: Implemented decimal formatter.
2080 2005-06-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2082 * Type.cs: reverted wrong fix for bug #71300 in r45150. This makes SSL
2083 support in System.Net work again.
2085 2005-06-01 Ben Maurer <bmaurer@ximian.com>
2087 * CharEnumerator.cs: add IEnumerable <char> support
2089 2005-05-30 Sebastien Pouliot <sebastien@ximian.com>
2091 * Activator.cs: Added missing validation on parameters.
2093 2005-05-28 Ben Maurer <bmaurer@ximian.com>
2095 * Type.cs: Check that the arguments of the `types' array are
2096 non-null. Fixes bug 71300
2098 2005-05-28 Sebastien Pouliot <sebastien@ximian.com>
2100 * AppDomainSetup.cs: Added new 2,0 constructors and the
2101 ActivationArguments property.
2102 * AppDomainManager.cs: Added using System.Runtime.Hosting as it is the
2103 new location for the ApplicationActivator class.
2104 * ApplicationActivator.cs: Moved to System.Runtime.Hosting namespace.
2106 2005-05-27 Vladimir Vukicevic <vladimir@pobox.com>
2108 * Environment.cs: bump corlib version for bug #75060.
2110 2005-05-27 Raja R Harinath <rharinath@novell.com>
2112 * Environment.cs (ExpandEnvironmentVariables): Rewrite
2113 sb.Append (s.SubString (a, b)) to sb.Append (s, a, b).
2114 * String.cs (FormatHelper): Rewrite sb.Append (s.SubString (a)) to
2115 sb.Append (s, a, s.Length - a). Avoid allocating 'pad' string --
2116 StringBuilder has an appropriate Append overload.
2118 2005-05-26 Zoltan Varga <vargaz@freemail.hu>
2120 * Type.cs (IsEnum): Special case EnumBuilder here.
2122 2005-05-26 Sebastien Pouliot <sebastien@ximian.com>
2124 * MonoType.cs: Changed call from GetName to UnprotectedGetName to
2125 allow call to work with serialization under a restrictive policy.
2126 The code path (the protected information) isn't being used.
2128 2005-05-25 Zoltan Varga <vargaz@freemail.hu>
2130 * Exception.cs: Use the new StackTrace ctor.
2132 * Type.cs: Improve support for user defined type subclasses.
2134 2005-05-25 Atsushi Enomoto <atsushi@ximian.com>
2136 * DateTime.cs : Added minimum digit parameter to ParseNumber() to
2137 reject 2 digit years for "yyyy".
2138 Use GetAllDateTimePatterns() instead of constant string.
2141 2005-05-25 Atsushi Enomoto <atsushi@ximian.com>
2143 * DateTime.cs : next_not_digit prevented some valid parse.
2144 Just remove it, since now we pass max length to ParseNumber() and
2145 thus it is not needed anymore. Fixed bug 63137.
2147 2005-05-24 Atsushi Enomoto <atsushi@ximian.com>
2149 * DateTime.cs : HH should not always block tt. Fixed bug #60912.
2150 Reset num after whitespace parsing.
2151 Added "M/d/yyyy HH':'mm':'ss tt" as an invariant pattern.
2153 2005-05-24 Atsushi Enomoto <atsushi@ximian.com>
2155 * DateTime.cs : Allow ',' where whitespaces are allowed.
2158 2005-05-22 Ben Maurer <bmaurer@ximian.com>
2160 * BitConverter.cs: Speed this up, fixing 74014. Patch from
2161 `Aleksandar Dezelin'.
2163 2005-05-20 Zoltan Varga <vargaz@freemail.hu>
2165 * Type.cs: Add some helper methods needed by other classes.
2167 * Array.cs: Improve support for user defined Type subclasses.
2169 * Type.cs: Rename GetTypeCode icall to GetTypeCodeInternal and add a managed
2170 wrapper function, not used yet.
2172 * Type.cs Array.cs: Revert this as it breaks the build.
2174 * Type.cs Array.cs: Improve support for user defined Type subclasses.
2176 2005-05-19 Ben Maurer <bmaurer@ximian.com>
2178 * Delegate.cs (Equals): Use `as' to protect in the case where !
2181 2005-05-19 Raja R Harinath <rharinath@novell.com>
2183 * Console.cs (Readline) [NET_2_0]: Avoid "uninitialized variable"
2186 2005-05-19 Miguel de Icaza <miguel@novell.com>
2188 * TermInfoDriver.cs: Removed warning.
2190 * Array.cs (Resize<T>, TrueForAll<T>, ConvertAll<TInput,TOutput>,
2191 FindLastIndex<T>: Parameter names are normative.
2192 Fix coding style ("Method<T>" not "Method <T>")
2193 Throw argument exceptions per argument.
2195 (FindAll): Fix bug, actually return the values that were computed,
2196 not a short version of the original array.
2198 2005-05-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2200 * Console.cs: fix error in the 2_0 side and split ReadLine in 2, one
2201 for each framework version.
2203 2005-05-15 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2206 * Exception.cs: .Net 1.1 already has these interfaces
2208 Mon May 16 18:23:49 CEST 2005 Paolo Molaro <lupus@ximian.com>
2210 * MonoCustomAttrs.cs, Type.cs: do not create a SerializableAttribute
2211 object on GetCustomAttributes (fixes bug #74717).
2213 2005-05-15 Atsushi Enomoto <atsushi@ximian.com>
2215 * DateTime.cs : for 'z' next_not_digit didn't work as expected.
2218 2005-05-15 Atsushi Enomoto <atsushi@ximian.com>
2220 * DateTime.cs : don't allow extraneous pattern characters also for
2221 non-exact parsing (ParseExact() was fine). Bug #74936 fixed
2223 2005-05-13 Gert Driesen <drieseng@users.sourceforge.net>
2225 * Activator.cs: Match exceptions thrown by MS.NET for
2226 CreateInstance overloads if type is abstract. Fixes bug #74861.
2228 2005-05-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2230 * OperatingSystem.cs: PlatformID.Unix.
2232 2005-05-09 Sebastien Pouliot <sebastien@ximian.com>
2234 * Environment.cs: Patch from Gonzalo to fix Environment.OSVersion.
2235 Platform under NET_2_0 to return PlatformID.Unix. Fix bug #74841.
2237 2005-05-07 Atsushi Enomoto <atsushi@ximian.com>
2239 * NumberFormatter.cs : roundtrip number is already rounded before
2240 FormatGeneral() and DefaultMaxPrecision was extraneous. This fixes
2243 2005-05-07 Ben Maurer <bmaurer@ximian.com>
2245 * Array.cs (BinarySearch): Patch from kazuki to pass arguments to
2246 the comparer in the same order as msft. Fixes #70725
2248 2005-05-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2250 * Enum.cs: the hashtable don't need to be synchronized any more, since
2251 it's only accessed from withint a lock.
2253 * Console.cs: stdin, stdout and stderr will never be finalized. Fixes
2256 2005-05-06 Zoltan Varga <vargaz@freemail.hu>
2258 * Array.cs: Remove CLSCompliant (false) attributes.
2260 2005-05-06 Martin Baulig <martin@ximian.com>
2262 * Predicate.cs, Action.cs, Comparision.cs, Converter.cs: Add
2263 [CLSCompliant(true)] attribute.
2265 2005-05-04 Miguel de Icaza <miguel@novell.com>
2267 * Enum.cs (MonoEnumInfo): Based on a patch from James Willcox,
2268 initialize cache as a static method. Fixes #74828.
2270 2005-05-03 Marek Safar <marek.safar@seznam.cz>
2272 * Console.cs: CancelKeyPress is stubbed.
2274 2005-04-25 Sebastien Pouliot <sebastien@ximian.com>
2276 * ActivationContext.cs: Updated for beta2.
2277 * AppDomainManager.cs: Updated for beta2.
2278 * ApplicationId.cs: Updated for beta2.
2279 * ApplicationIdentity.cs: Updated for beta2.
2280 * Exception.cs: Now use Assembly.UnprotectedGetName () as Exception
2281 doesn't leak the code base from the returned AssemblyName.
2283 2005-04-25 Martin Baulig <martin@ximian.com>
2285 * Environment.cs (Environment.Version): Changed to 2.0.50215.
2287 2005-04-22 Sebastien Pouliot <sebastien@ximian.com>
2289 * Attribute.cs: Added _Attribute interface to NET_2_0 to reduce the
2290 number of "missing" in the class status pages.
2292 2005-04-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2294 * MulticastDelegate.cs: (GetInvocationList) when building the list that
2295 is later traversed forward, mark 'this' as the end of the chain.
2298 2005-04-19 Zoltan Varga <vargaz@freemail.hu>
2300 * Environment.cs: Bump corlib version.
2302 2005-04-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2304 * WindowsConsoleDriver.cs: ignore key release events.
2306 2005-04-06 Atsushi Enomoto <atsushi@ximian.com>
2308 * Char.cs : ToUpper()/ToLower() comparison ranges were incorrect.
2310 2005-04-05 Sebastien Pouliot <sebastien@ximian.com>
2312 * _AppDomain.cs: Add security checks to the interface. Declarative
2313 security on events requires BOOTSTRAP_WITH_OLDLIB to work properly
2315 * AppDomain.cs: Add some (not complete) security checks. Bug#74411 is
2316 blocking some cases from working properly. Declarative security on
2317 events requires BOOTSTRAP_WITH_OLDLIB to work properly with older MCS.
2319 2005-04-04 Sebastien Pouliot <sebastien@ximian.com>
2321 * AppDomain.cs: Use the PolicyLevel to resolve the granted permissions
2322 on the AppDomain. Added an internal property to get the granted set.
2324 2005-04-04 Atsushi Enomoto <atsushi@ximian.com>
2327 Char.cs : use TextInfo for ToLower() and ToUpper().
2329 2005-03-31 Sebastien Pouliot <sebastien@ximian.com>
2331 * Exception.cs: Added Assert for TypeInformation to GetObjectData and
2332 ToString methods (not required for 2.0 as TypeInformation will be
2333 deprecated). Added null check for GetObjectData.
2335 Tue Mar 29 11:47:19 CEST 2005 Paolo Molaro <lupus@ximian.com>
2337 * Delegate.cs: allow IronPython 0.7 to compile.
2339 2005-03-24 Miguel de Icaza <miguel@novell.com>
2341 * Delegate.cs: Add CreateDelegate with a target option, currently
2342 internal as it is not exposed by the framework yet.
2344 2005-03-24 Zoltan Varga <vargaz@freemail.hu>
2346 * String.cs: Add some 2.0 methods.
2348 2005-03-24 Sebastien Pouliot <sebastien@ximian.com>
2350 * Activator.cs: Now use the supplied evidences when loading
2351 assemblies. Added LinkDemand for RemotingConfiguration on both
2353 * Console.cs: Added Assert for UnmanagedCode on OpenStandard[Error|
2354 Input|Output] as they use a handle on a FileStream (which is
2355 restricted otherwise). Added Demand for UnmanagedCode for the
2356 Set[Error|In|Out] methods.
2357 * MarshalByRefObject.cs: Added LinkDemand for Infrastructure on
2358 CreateObjRef, GetLifetimeService and InitializeLifetimeService.
2359 * RuntimeMethodHandle.cs: Added Demand for UnmanagedCode on
2360 GetFunctionPointer method.
2361 * TypedReference.cs: Added LinkDemand for ReflectionPermission's
2362 MemberAccess on MakeTypedReference.
2364 2005-03-14 Sebastien Pouliot <sebastien@ximian.com>
2366 * Environment.cs: Fix CAS unit tests for NET_1_1.
2367 * Exception.cs: Fix CAS unit tests for NET_1_1.
2369 2005-03-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2371 * Version.cs: don't ignore the last number. Fixes bug #73539.
2373 2005-03-11 Sebastien Pouliot <sebastien@ximian.com>
2375 * MonoType.cs: When the security manager is active, constructors and
2376 methods will return null if a linkdemand fails during reflection
2379 2005-03-11 Zoltan Varga <vargaz@freemail.hu>
2381 * Array.cs (Sort): Bail out early if length <= 1. Fixes #72721.
2383 2005-03-10 Zoltan Varga <vargaz@freemail.hu>
2385 * Environment.cs: Bump corlib version.
2387 2005-03-10 Martin Baulig <martin@ximian.com>
2389 * Nullable.cs (Nullable<T>.ToString): Return an empty string if
2392 2005-03-09 Zoltan Varga <vargaz@freemail.hu>
2394 * Activator.cs MonoType.cs: Applied patch from Carlos Alberto Cortez
2395 (carlos@unixmexico.org). Allow creation of valuetypes with no ctor.
2398 2005-03-04 Zoltan Varga <vargaz@freemail.hu>
2400 * Environment.cs: Bump corlib version.
2402 * Exception.cs (StackTrace): Return the wrapper info as well.
2404 2005-03-02 Kazuki Oikawa <kazuki@panicode.com>
2406 * NumberFormatter.cs: Some internal classes was converted to structs,
2407 and improved some points.
2409 2005-02-26 Kazuki Oikawa <kazuki@panicode.com>
2411 * NumberFormatter.cs: Improved performance and memory usage
2412 when integer standard format.
2423 * TimeSpan.cs: Improved these directly call to NumberFormatter.
2425 2005-02-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2427 * TermInfoDriver.cs: set the xmit mode if available. Handle key input
2428 and translate them into a ConsoleKeyInfo.
2429 * TermInfoReader.cs: added a method to return the bytes of a string
2431 * ConsoleKeyInfo.cs: added copy constructor and setters.
2433 2005-02-24 Zoltan Varga <vargaz@freemail.hu>
2435 * Array.cs: Add missing 2.0 attributes and correct some parameter names.
2437 2005-02-24 Carlos Alberto Cortez <calberto.cortez@gmail.com>
2439 * AppDomain.cs: Changed GetAssemblies, LoadAssembly, and Load signatures,
2440 and added some to support the reflection only methods. DoAssemblyResolve
2441 was modified to invoke the new PreBindAssemblyResolve event when the
2442 assembly is reflection only.
2444 2005-02-21 Zoltan Varga <vargaz@freemail.hu>
2446 * GC.cs Double.cs IntPtr.cs Array.cs Decimal.cs Math.cs Single.cs:
2447 Add net 2.0 ReliabilityContractAttributes.
2449 2005-02-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2451 * TermInfoDriver.cs: cygwin terminals are handled by the windows
2454 * TermInfoReader.cs:
2455 * TermInfoNumbers.cs:
2456 * KnownTerminals.cs:
2457 * TermInfoBooleans.cs:
2458 * TermInfoStrings.cs: documented.
2460 2005-02-19 Kazuki Oikawa <kazuki@panicode.com>
2462 * Array.cs: Reverse the order in the Equals calls.
2464 2005-02-18 Zoltan Varga <vargaz@freemail.hu>
2466 * Exception.cs (StackTrace): Implement this in managed code since it is
2467 needed by CAS. Fixes #72146.
2469 2005-02-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2471 * WindowsConsoleDriver.cs: implemented MoveBufferArea.
2473 2005-02-14 Raja R Harinath <rharinath@novell.com>
2475 * Array.cs (Array.Swapper) [!BOOTSTRAP_WITH_OLDLIB]: Make nested.
2478 2005-02-12 Ben Maurer <bmaurer@ximian.com>
2480 * Version.cs (CompareTo, Equals): Make sure the versions for
2481 generics handle `null'. The non-generics versions now just call
2482 the regular versions, to reduce code duplication.
2484 * Boolean.cs (CompareTo): make this really work for generics
2486 * Type.cs (GetProperty): Passing new Type [0] is different than
2487 null. null means `I don't care how many types this has,' while new
2488 Type [0] means `this must have 0 types.'
2490 2005-02-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2492 * corlib.dll.sources: added WindowsConsoleDriver.cs
2494 * System/ConsoleDriver.cs: use WindowsConsoleDriver on windows and
2495 implemented the few missing properties/methods.
2497 * System/IConsoleDriver.cs: uncommented all methods/properties.
2498 * System/TermInfoDriver.cs: implement changes from IConsoleDriver.
2499 * System/WindowsConsoleDriver.cs: implemented IConsoleDriver for
2500 windows. Only missing MoveBufferArea by now.
2502 2005-02-11 Zoltan Varga <vargaz@freemail.hu>
2504 * Type.cs (IsAssignableFrom): Add support for TypeBuilders.
2506 * Int32.cs AppDomain.cs: Fix warnings.
2508 2005-02-10 Marek Safar <marek.safar@seznam.cz>
2510 * IServiceProvider.cs: Is not ComVisible.
2512 * NonSerializedAttribute.cs: Fix AttributeUsage flags.
2514 * Type.cs: Fix ClassInterface attribute.
2516 Tue Feb 8 19:26:47 CET 2005 Paolo Molaro <lupus@ximian.com>
2518 * Delegate.cs: remove the finalizer from Delegate: this
2519 is handled internally by the runtime now.
2521 2005-02-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2523 * Activator.cs: provide the Type name when throwing an exception.
2525 2005-02-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2527 * TimeZone.cs: lock on the static Hashtable instead of 'this'. Fixes
2530 Fri Feb 4 15:46:04 CET 2005 Paolo Molaro <lupus@ximian.com>
2532 * Array.cs: provide specialized versions of some methods.
2534 Thu Feb 3 15:15:25 CET 2005 Paolo Molaro <lupus@ximian.com>
2536 * String.cs: provide a managed memcpy and memset method
2537 for use both in corlib and from the JIT. Implement
2538 some methods with the managed helpers and remove some icalls.
2540 2005-01-31 Sebastien Pouliot <sebastien@ximian.com>
2542 * Exception.cs: Added Data property for NET_2_0 (required for new
2545 2005-01-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2548 * TermInfoDriver.cs:
2549 * IConsoleDriver.cs:
2550 * Console.cs: added BufferWidth and BufferHeight.
2552 2005-01-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2556 * TermInfoDriver.cs:
2557 * IConsoleDriver.cs: added a few more properties and fixed cursor
2560 2005-01-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2562 * ConsoleDriver.cs: static class that forwards the Console 2.0 class
2563 calls to the proper driver.
2564 * TermInfoDriver.cs: terminfo based console driver.
2565 * IConsoleDriver.cs: interface implemented by console drivers.
2567 * ConsoleCancelEventArgs.cs:
2568 * ConsoleCancelEventHandler.cs:
2570 * ConsoleModifiers.cs:
2571 * ConsoleSpecialKey.cs:
2573 * ConsoleKey.cs: new enumerations.
2575 * ConsoleKeyInfo.cs: New file.
2577 * TermInfoReader.cs: reader for terminfo capabilities files.
2579 * TermInfoNumbers.cs:
2580 * TermInfoBooleans.cs:
2581 * TermInfoStrings.cs: enumations for terminfo property names.
2583 * KnownTerminals.cs: byte arrays for selected terminals.
2585 * Console.cs: added more 2.0 methods and implemented some of them.
2588 2005-01-30 Atsushi Enomoto <atsushi@ximian.com>
2590 * Int32.cs : (FindSign) IndexOf() is better than creating substring.
2592 2005-01-27 Sebastien Pouliot <sebastien@ximian.com>
2594 * BadImageFormatException.cs: Protect the fusion (GAC) log from being
2595 disclosed unless code has ControlPolicy and ControlEvidence.
2597 2005-01-27 Zoltan Varga <vargaz@freemail.hu>
2599 * Exception.cs: Compute stack trace on demand.
2601 2005-01-26 Sebastien Pouliot <sebastien@ximian.com>
2603 * Environment.cs: Removed hack for static class (NET_2_0). Added
2604 proper security for FailFast (documented in FDBK20543). Added new
2605 method IsRunningOnWindows to replace (Platform == 128) as the logic is
2606 gonna change in the future (Unix is id #4 in NET_2_0).
2608 2005-01-24 Sebastien Pouliot <sebastien@ximian.com>
2610 * Environment.cs: Added CAS security (both declarative and imperative)
2611 as a test. This shouldn't affect execution unless --security is
2614 2005-01-19 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
2615 * Type.cs: Corrected implementation for the Type.FilterNameIgnoreCase
2616 and Type.FilterName delegates They weren't dealing with the optional '*'
2617 at the end of the filter mask
2619 2005-01-19 Zoltan Varga <vargaz@freemail.hu>
2621 * Array.cs: Fix a typo in the previous patch.
2623 * Array.cs: Fix some test failures in the generic methods.
2625 * Array.cs: Implement AsReadOnly.
2627 2005-01-13 Geoff Norton <gnorton@customerdna.com>
2629 * Guid.cs: Fix endian issues (use Mono.Security.BitConverterLE). Fixes
2632 2005-01-11 Sebastien Pouliot <sebastien@ximian.com>
2634 * AppDomain.cs: Removed Activate and ActivateNewProcess methods. They
2635 have been removed from 2.0.
2637 2005-01-11 Zoltan Varga <vargaz@freemail.hu>
2639 * Boolean.cs Char.cs Single.cs Double.cs: Implement IComparable<T> in
2642 2005-01-10 Sebastien Pouliot <sebastien@ximian.com>
2644 * ApplicationIdentity.cs: Throw ArgumentNullException if name is null.
2645 Add default culture (neutral) to the name when none is specified.
2646 * AppDomain.cs: Changed IsDefaultAppDomain (2.0). Is seems that we
2649 2005-01-09 Sebastien Pouliot <sebastien@ximian.com>
2651 * DateTime.cs: Reverted last patch for utc as it broke all certificate
2652 handling and another unit test in DateTime.
2654 2005-01-09 Miguel de Icaza <miguel@ximian.com>
2656 * DateTime.cs: Return immediately if useutc is set to true, there
2657 is no need to do the extra computation (which also happened to
2658 create a new DateTime using the `use_localtime' constructor, which
2659 lead to the erroneous date returns when using 'u' or `U'
2662 Fixes another bug in the regression test suite.
2664 2005-01-08 Sebastien Pouliot <sebastien@ximian.com>
2666 * AppDomain.cs: Fix the DefaultDomain property to return the root
2667 domain (as it seems that the root's Id isn't always 0).
2668 * BitConverter.cs: The "special support" for ToString(new byte[0]) is
2669 only for NET_2_0 - previously this was an ArgumentOutOfRangeException.
2671 2005-01-08 Miguel de Icaza <miguel@ximian.com>
2673 * IntegerFormatter.cs: The - sign inside the "negative" section in
2674 a multi-format string means `show the sign' only if it is the
2675 first token, not `copy verbatim'. In the other sections it means
2678 This makes things like: (-34).ToString ("#;-#") show up as "-34"
2681 The bad news is that this code needs to be rewritten to handle all
2682 the formatting cases, see bug #71112 for details.
2684 * Convert.cs (Convert.ToType): Throw an InvalidCastException if
2685 the conversion is invalid, not ArgumentException, this fixes
2686 another regression in our test suite.
2688 2005-01-08 Sebastien Pouliot <sebastien@ximian.com>
2690 * AppDomain.cs: Add ApplicationIdentity property for 2.0;
2691 * AppDomainManager.cs: Remove HostRefusedSet support (it does not
2694 2005-01-08 Zoltan Varga <vargaz@freemail.hu>
2696 * DateTime.cs: Create MaxValue and MinValue using a different constructor to avoid static
2697 initialization problems.
2699 2005-01-02 Ben Maurer <bmaurer@ximian.com>
2701 * Int32.cs: NumberStyles.AllowExponent was supported by the
2702 Int32.Parse function. From Akira <mei@work.email.ne.jp>. Fixes bug
2705 2005-01-01 Atsushi Enomoto <atsushi@ximian.com>
2707 * Base64FormattingOptions.cs : it was not in System namespace.
2709 2004-12-21 Atsushi Enomoto <atsushi@ximian.com>
2711 * DateTime.cs : If no progress on value string, don't regard as
2712 matched. This fixes bug #70707.
2714 2004-12-20 Sebastien Pouliot <sebastien@ximian.com>
2716 * Environment.cs: Bump corlib version.
2718 2004-12-16 Zoltan Varga <vargaz@freemail.hu>
2720 * Array.cs (DoBinarySearch): Fix a warning.
2722 2004-12-08 Zoltan Varga <vargaz@freemail.hu>
2724 * Environment.cs: Bump corlib version.
2726 * AppDomain.cs: Add new DefineInternalDynamicAssembly () method.
2728 2004-12-06 Ben Maurer <bmaurer@ximian.com>
2730 * Exception.cs: Prevent stringifying the type name on the
2731 ctor. this gets called a few times on every execution to create a
2734 2004-12-06 Martin Baulig <martin@ximian.com>
2736 * Decimal.cs: Decimal constant support has been merged into GMCS,
2739 2004-12-06 Zoltan Varga <vargaz@freemail.hu>
2741 * Environment.cs: Bump corlib version.
2743 * Environment.cs: Bump corlib version.
2745 2004-11-30 Zoltan Varga <vargaz@freemail.hu>
2747 * MonoType.cs (UnderlyingSystemType): Make this return this as in
2748 MS.NET. Fixes #56245.
2750 2004-11-29 Atsushi Enomoto <atsushi@ximian.com>
2752 * GC.cs : Collect(generation) actually does not throw an exception
2753 even if generation > MaxGeneration (MS document bug).
2755 2004-11-28 Zoltan Varga <vargaz@freemail.hu>
2757 * Exception.cs: Implement _Exception under NET_2_0.
2759 * Byte.cs SByte.cs UInt16.cs Int16.cs: Make these compile under csc 2.0.
2761 * AccessViolationException.cs DataMisalignedException.cs OperationCanceledException.cs
2762 NotCancelableException.cs TimeoutException.cs: New files.
2764 2004-11-23 Raja R Harinath <rharinath@novell.com>
2766 * Decimal.cs [NET_2_0]: Use old code till GMCS imports decimal
2769 2004-11-23 Raja R Harinath <rharinath@novell.com>
2771 * Decimal.cs [BOOTSTRAP_WITH_OLDLIB]: Use old code for compilers
2772 without decimal constant support.
2774 2004-11-23 Marek Safar <marek.safar@seznam.cz>
2776 * Decimal.cs: Updated to use compiler decimal constant support.
2778 2004-11-20 Zoltan Varga <vargaz@freemail.hu>
2780 * MonoType.cs: Revert last change since it breaks remoting.
2782 2004-11-18 Zoltan Varga <vargaz@freemail.hu>
2784 * MonoType.cs (UnderlyingSystemType): Make this return this as in
2785 MS.NET. Fixes #56245.
2787 2004-11-17 Carlos Alberto Cortez <carlos@unixmexico.org>
2789 * INullable.cs: New interface added.
2790 * Nullable.cs: Methods added. Also a static Nullable class
2791 containing static methods.
2793 2004-11-15 Sebastien Pouliot <sebastien@ximian.com>
2795 * BitConverter.cs: Added support for special case when ToString is
2796 called with (new byte [0]).
2798 2004-11-10 Lluis Sanchez <lluis@novell.com>
2800 * Exception.cs: Added setter for StackTrace.
2802 2004-11-07 Ben Maurer <bmaurer@ximian.com>
2804 * IntegerFormatter.cs: Avoid .ToCharArray
2806 2004-11-06 Ben Maurer <bmaurer@ximian.com>
2808 * Single.cs, Double.cs (GetHashCode): Better hashcode impl
2810 2004-11-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2812 * InvalidOperationException.cs: make the message more meaningful and
2813 real. Fixes bug #69055.
2815 2004-10-28 Ben Maurer <bmaurer@ximian.com>
2817 * String.cs: Rather than == String.Empty, use .Length == 0. It
2818 is a bit faster (avoids a method call, and the code is less complex).
2820 2004-10-24 Fawad Halim <fawad@fawad.net>
2821 * Environment.cs: If an Environment variable value isn't found, leave the trailing % of the reference for further matches.
2822 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.
2823 This fixes bug #64995.
2825 2004-10-19 Lluis Sanchez <lluis@novell.com>
2827 * MarshalByRefObject.cs: Field _identity is not serializable.
2828 This fixes bug #68567.
2830 2004-10-17 Ben Maurer <bmaurer@ximian.com>
2832 * DateTime.cs (ZeroPad): Use unsafe code to speed this up. We
2833 avoid entering slow integer formatting code.
2835 (_ToString): Use ZeroPad here when possible, as it is faster.
2837 2004-10-11 Martin Baulig <martin@ximian.com>
2839 * Environment.cs: Bump corlib version to 28.
2841 2004-10-08 Zoltan Varga <vargaz@freemail.hu>
2843 * Convert.cs (ToType): Throw an exception when converting null to a
2844 valuetype. Fixes #67780.
2846 2004-10-08 Atsushi Enomoto <atsushi@ximian.com>
2848 * DateTime.cs : Performance fix. ParseExact() implementation should
2849 avoid s = s.Substring(1).
2851 2004-10-08 Atsushi Enomoto <atsushi@ximian.com>
2853 * DateTime.cs : When it it not exact parse, 'Z' is allowed as a suffix
2854 of m/s/t/z. This fixes bug 66723.
2856 Wed Oct 6 12:37:54 CEST 2004 Paolo Molaro <lupus@ximian.com>
2858 * String.cs: make GetHashCode() managed.
2860 2004-10-04 Zoltan Varga <vargaz@freemail.hu>
2862 * AppDomain.cs: Make ThreadStatic variables static. Fixes #56614.
2864 * Runtime*Handle.cs ModuleHandle.cs: Add Equals + GetHashCode.
2866 * ModuleHandle.cs: Add missing methods.
2868 * RuntimeTypeHandle.cs: Add GetModuleHandle () method.
2870 2004-10-03 Zoltan Varga <vargaz@freemail.hu>
2872 * AttributeTargets.cs: Add 2.0 GenericParameter value.
2874 * Environment.cs: Bump corlib version.
2876 2004-10-02 Zoltan Varga <vargaz@freemail.hu>
2878 * Int32.cs UInt32.cs Byte.cs SByte.cs Int16.cs UInt16.cs Int64.cs UInt64.cs: Implement 2.0 TryParse methods.
2880 2004-09-30 Geoff Norton <gnorton@customerdna.com>
2882 * Convert.cs: ConvertToBase* was not endian aware. Implemented EndianSwap
2883 and swapping of all values before going into the BitConverter so that values
2884 are returned with proper endianess.
2886 2004-09-23 Martin Garton <martin@wrasse.demon.co.uk>
2888 * Convert.cs: ToType was returning unconverted object when it should
2889 fail with an ArgumentException.
2891 2004-09-27 Zoltan Varga <vargaz@freemail.hu>
2893 * Array.cs: Add stub for AsReadOnly<T>.
2895 2004-09-25 Zoltan Varga <vargaz@freemail.hu>
2897 * Type.cs: Add MakePointerType && stub for ReflectionOnlyGetType.
2899 * MonoCustomAttrs.cs (GetCustomAttributesBase): Add support for
2902 2004-09-24 Zoltan Varga <vargaz@freemail.hu>
2904 * MonoCustomAttrs.cs (GetCustomAttributesBase): Add support for
2907 * MonoCustomAttrs.cs: Beginnings of support for returning 2.0 pseudo
2910 * MonoCustomAttrs.cs (RetrieveAttributeUsage): Avoid infinite recursion.
2912 * MonoCustomAttrs.cs (GetCustomAttributes): Fix the 'attributeType is
2913 sealed' optimization.
2915 * Type.cs: Implement 2.0 StructLayoutAttribute property.
2917 * Type.cs Add GetPseudoCustomAttributes () method.
2919 2004-09-24 Martin Baulig <martin@ximian.com>
2921 * Type.cs (Type.GetGenericParameterConstraints): New public method.
2923 2004-09-23 Zoltan Varga <vargaz@freemail.hu>
2925 * MonoCustomAttrs.cs (GetCustomAttributes): Rename the icall to
2926 GetCustomAttributesInternal and add a 'pseudoAttrs' argument.
2928 * Type.cs: Tweak Module property in 2.0 build.
2930 2004-09-23 Martin Baulig <martin@ximian.com>
2932 * Type.cs (Type.GenericParameterAttributes): New public property.
2934 2004-09-23 Martin Baulig <martin@ximian.com>
2936 * GenericParameterAttributes.cs: New file.
2938 2004-09-22 Zoltan Varga <vargaz@freemail.hu>
2940 * ModuleHandle.cs: Updated after changes to Module class.
2942 2004-09-21 Geoff Norton <gnorton@customerdna.com>
2944 * Type.cs: BindingFlags.IgnoreCase was being ignored, this reimplements
2945 this filter. Fixes bug #65778.
2947 2004-09-20 Zoltan Varga <vargaz@freemail.hu>
2949 * Environment.cs: Bump corlib version.
2951 2004-09-19 Zoltan Varga <vargaz@freemail.hu>
2953 * ModuleHandle.cs: New file.
2955 * RuntimeFieldHandle.cs: Add an internal ctor.
2957 2004-09-19 Dick Porter <dick@ximian.com>
2959 * Console.cs: Use the internal wrappers for StreamReader and
2960 StreamWriter that catch IOException.
2962 2004-09-16 Sebastien Pouliot <sebastien@ximian.com>
2964 * Environment.cs: Bumped mono_corlib_version to 25.
2966 2004-09-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2968 * AppDomain.cs: added SetupInformationNoCopy property, since
2969 SetupInformation creates a copy now, all updates to it should use the
2970 actual data. Fixes bug #61991 take 2.
2972 2004-09-09 Tim Coleman <tim@timcoleman.com>
2973 * Base64FormattingOptions.cs: New enum
2974 * Convert.cs: Add new ToBase64String methods for Fx 2.0
2976 2004-09-08 Marek Safar <marek.safar@seznam.cz>
2979 * GC.cs: Class is static for NET_2_0.
2981 2004-09-07 Ben Maurer <bmaurer@users.sourceforge.net>
2983 * Activator.cs: Make sure not to call .GetType on a
2984 null argument. fixes 63852
2986 2004-09-06 Ben Maurer <bmaurer@users.sourceforge.net>
2988 * Array.cs (Clear): make this an icall.
2990 2004-09-05 Ben Maurer <bmaurer@users.sourceforge.net>
2992 * MonoCustomAttribute.cs: Avoid the call to GetBase when possible.
2994 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2996 * Environment.cs: (ExpandEnvironmentVariables) don't nullify the case
2997 insensitive enironment variables hashtable once we create it.
2999 2004-09-04 Sebastien Pouliot <sebastien@ximian.com>
3001 * AppDomain.cs: Changed 2 imperative security demands to declarative
3002 (unsupported) so it doesn't (for now) call the security runtime.
3004 2004-09-02 Zoltan Varga <vargaz@freemail.hu>
3006 * Delegate.cs: Free the delegate trampoline in the finalizer.
3008 2004-08-26 Sebastien Pouliot <sebastien@ximian.com>
3010 * ApplicationId.cs: Completed GetHashCode using information from MS
3013 2004-08-23 Sebastien Pouliot <sebastien@ximian.com>
3015 * Boolean.cs: Added TryParse static method for NET_2_0 profile.
3017 2004-08-19 Atsushi Enomoto <atsushi@ximian.com>
3019 * DateTime.cs : When hour format is "hh", MS.NET (maybe incorrectly)
3020 allows 12, that should not be accepted (13 is rejected) and
3021 interpreted as 0. This fixes bug 63376.
3023 2004-08-17 Sebastien Pouliot <sebastien@ximian.com>
3025 * Version.cs: Fixed Clone so we can use it on versions with only
3026 major/minor or major/minor/build.
3028 2004-08-17 Martin Baulig <martin@ximian.com>
3030 * MonoType.cs (MonoType.getFullName): Added `bool full_name'
3031 argument specifying whether or not to include the type arguments.
3032 (MonoType.FullName): Don't include the type arguments.
3033 (MonoType.ToString): Include them here.
3035 * Environment.cs: Bumped mono_corlib_version to 24.
3037 2004-08-16 Duncan Mak <duncan@ximian.com>
3039 * AttributeUsageAttribute.cs: Change the AttributeUsage to
3040 AttributeTargets.Class, from AttributeTargets.All, fixes Zoltan's
3043 2004-08-11 Marek Safar <marek.safar@seznam.cz>
3045 * AppDomain.cs: Fixed typo of DefineDynamicAssembly argument.
3046 Added call to AddPermissionRequests to pass permissions
3048 * Environment.cs: Added a few Fx 2.0 methods
3050 2004-08-09 Sebastien Pouliot <sebastien@ximian.com>
3052 * ApplicationId.cs: Fixed typo to fix NET_2_0 compilation.
3053 * AppDomain.cs: Fixed use of Evidence and AppDomainSetup (copies, not
3054 references). Added (non-obsolete) Fx 2.0 properties and methods.
3055 * AppDomainSetup.cs: Added internal copy constructor.
3056 * DomainManagerInitializationFlags.cs: Fixed values.
3058 2004-08-08 Sebastien Pouliot <sebastien@ximian.com>
3060 * AppDomainInitializer.cs: New Fx 2.0 class for AppDomain.
3061 * AppDomainManager.cs: New Fx 2.0 class for AppDomain.
3062 * ApplicationActivator.cs: New Fx 2.0 class for AppDomain.
3063 * ApplicationId.cs: New Fx 2.0 class.
3064 * ApplicationIdentity.cs: Fixed ToString.
3065 * DomainManagerInitializationFlags.cs: New Fx 2.0 flags for AppDomain.
3067 2004-08-05 Sebastien Pouliot <sebastien@ximian.com>
3069 * AppDomain.cs: Added a new icall, getDomainByID, to get the an
3070 AppDomain using it's Id. Completed SetAppDomainPolicy.
3071 * Environment.cs: Bumped mono_corlib_version to 23.
3073 2004-08-02 Martin Baulig <martin@ximian.com>
3075 * DateTime.cs, TimeSpan.cs, Guid.cs, Version.cs: Implement IComparable<T>.
3077 2004-07-29 Atsushi Enomoto <atsushi@ximian.com>
3079 * Environment.cs : GacPath on windows is based on mscorlib.dll, and
3080 now its location is changed.
3082 2004-07-21 Lluis Sanchez Gual <lluis@novell.com>
3084 * Environment.cs: Return the MS.NET 2.0 beta1 runtime version for the
3087 2004-07-18 Martin Baulig <martin@ximian.com>
3089 * Array.cs: Ben Maurer implemented all the new generic methods
3092 2004-07-17 Martin Baulig <martin@ximian.com>
3094 * Decimal.cs: Implement IComparable<Decimal>.
3096 2004-07-17 Martin Baulig <martin@ximian.com>
3098 * Byte.cs, Int16.cs, Int32.cs, Int64.cs, SByte.cs, String.cs,
3099 UInt16.cs, UInt32.cs, UInt64.cs: Implement IComparable<T>.
3101 2004-07-13 Sebastien Pouliot <sebastien@ximian.com>
3103 * ActivationContext.cs: New class in Fx 2.0. Required for
3104 System.Security.Policy.
3105 * ApplicationIdentity.cs: New class in Fx 2.0. Required for
3106 System.Security.Policy.
3107 * IApplicationDescription.cs: New interface in Fx 2.0. Required for
3108 System.Security.Policy.
3109 * IHostContext.cs: New interface in Fx 2.0. Required for
3110 System.Security.Policy.
3112 2004-07-12 Geoff Norton <gnorton@customerdna.com>
3114 * DateTime.cs: Patch for bug #61112. Our DateTime wasn't roundtripping over timezone
3115 boundaries properly. This patch checkes ToLocalTime() to see if we're tripping over a boundary
3116 and will add/subtract the hour if needed
3118 2004-07-07 Geoff Norton <gnorton@customerdna.com>
3120 * Monotype.cs: Patch for bug #58844. Dont throw exceptions right away;
3121 pass through all the possibly BindingInfo's and keep a bool value as to the type
3122 of exception we might need to throw;
3124 2004-07-07 Geoff Norton <gnorton@customerdna.com>
3126 * Patch to fix bug #58973
3128 2004-07-02 Jackson Harper <jackson@ximian.com>
3130 * PlatformID.cs: New 2.0 values.
3132 2004-06-25 Ben Maurer <bmaurer@ximian.com>
3134 * Environment.cs: GetFolderPath has new behavior. r=miguel
3136 2004-06-23 Sebastien Pouliot <sebastien@ximian.com>
3138 * DateTime.cs: Throw ArgumentOutOfRangeException if the year is
3139 bigger than 9999. Fix bug #41845.
3140 * FloatingPointFormatter.cs: Applied correction from Jon Skeet on
3141 the "R"eversible format for negative numbers.
3143 2004-06-21 Jackson Harper <jackson@ximian.com>
3145 * Decimal.cs: Make sure to use invariant culture when parsing
3146 floats stringified with the invariant culture. Patch by Rodrigo
3149 2004-06-19 Atsushi Enomoto <atsushi@ximian.com>
3151 * FloatingPointFormatter.cs : Literal string should be kept in the
3154 2004-06-18 Atsushi Enomoto <atsushi@ximian.com>
3156 * DateTime.cs : Concatenating whitespace removal was not working fine.
3157 Modified FormatException message (1 cent kindness).
3159 2004-06-18 Ben Maurer <bmaurer@ximian.com>
3161 * Action.cs, ArraySegment.cs, Comparison.cs, Converter.cs, Predicate.cs:
3162 new generics classes
3163 * IComparable.cs: add the new <T> version.
3164 * EventHandler.cs: new <T> version.
3166 2004-06-18 Dick Porter <dick@ximian.com>
3168 * String.cs: The icall can cope with embedded \0 now.
3170 2004-06-18 Atsushi Enomoto <atsushi@ximian.com>
3173 - Added new common pattern "yyyy/M/dZ"
3174 - empty string should not be compared in _ParseEnum()
3175 - Use culture independent string comparison in _ParseString()
3176 - Whitespace removal should be checked after '..' token check (some
3177 pattern such like es-ES LongDatePattern contains spaces in '..').
3178 - formats null check should be done (to throw ArgumentNullException)
3180 - When specified one character format, dates are incorrectly regarded
3181 as to use invariant culture.
3183 2004-06-18 Gert Driesen <drieseng@users.sourceforge.net>
3185 * ArgIterator.cs: changed layout to Auto
3186 * DateTime.cs: changed layout to Auto
3188 2004-06-18 Gert Driesen <drieseng@users.sourceforge.net>
3190 * DateTime.cs: CRLF to LF
3192 2004-06-17 Sebastien Pouliot <sebastien@ximian.com>
3194 * Decimal.cs: Fixed regression in System.Data caused by the recent
3195 changes. Adapted (and moved) the code to correct the scale from
3196 SqlMoney. Removed unused (and unusable) IsOne and fixed IsZero (where
3197 scale has no importance).
3199 2004-06-17 Lluis Sanchez Gual <lluis@ximian.com>
3201 * Activator.cs: In CreateInstance(), use Public|Instance if access binding
3202 attributes are omitted.
3204 2004-06-17 Atsushi Enomoto <atsushi@ximian.com>
3206 * DateTime.cs : GetDateTimeFormats(char, IFormatProvider) should also
3207 check if the format character is valid.
3209 2004-06-17 Atsushi Enomoto <atsushi@ximian.com>
3211 * DateTime.cs : AddDays(double) rounds the input.
3213 2004-06-17 Atsushi Enomoto <atsushi@ximian.com>
3215 * DateTime.cs : Incorrect maxvalue comparison in ToUniversalTime().
3216 Fixed ToLocalTime() as well, but it does check range for MinValue.
3218 2004-06-17 Atsushi Enomoto <atsushi@ximian.com>
3220 * DateTime.cs : Added overflow check in ToUniversalTime() and
3221 ToLocalTime(). Fixed bug #60253.
3223 2004-06-16 Sebastien Pouliot <sebastien@ximian.com>
3225 * FloatingPointFormatter.cs: Implemented "R" format using Jon Skeet
3226 source code (with permission). Fix (biggest) part of bug #60110.
3227 http://www.yoda.arachsys.com/csharp/floatingpoint.html
3229 2004-06-15 Sebastien Pouliot <sebastien@ximian.com>
3231 * Decimal.cs: Fixed scale after Round (a different scale is correct
3232 from a math point of view but affect the string representation of the
3233 value). Note: other operations also have scale problems!
3234 * DecimalFormatter.cs: Fixed FormatGeneral to match Fx 1.1 output.
3235 * FloatingPointFormatter.cs: Fixed ToString which doesn't use banker's
3236 rounding (which is the rounding provided by Math.Round). This fix bug
3237 #60111. The code (new Round methods) should be moved elsewhere (as it
3238 may also be required elsewhere) post Mono 1.0.
3240 2004-06-15 Gert Driesen <drieseng@users.sourceforge.net>
3242 * AppDomainSetup.cs: added TODO for serialization
3243 * ExecutionEngineException.cs: added missing serialization ctor
3244 * InvalidProgramException.cs: added missing serialization ctor
3245 * MulticastNotSupportedException.cs: added missing serialization ctor
3246 * ObsoleteAttribute.cs: fixed serialization compatibility with MS.NET
3247 * Random.cs: fixed serialization compatibility with MS.NET
3249 2004-06-15 Paolo Molaro <lupus@ximian.com>
3251 * Type.cs: removed unused (and non-existing) icall type_is_instance.
3253 2004-06-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3255 * Environment.cs: use internalGetHome instead of getting "HOME" as
3256 that variable may not be defined.
3258 2004-06-14 Sebastien Pouliot <sebastien@ximian.com>
3260 * TimeSpan.cs: Fixed timespan with large values for hours or minutes
3261 (overflow is only checked for days but can also occurs in hours and
3262 minutes which uses Int32 when multiplying). The new results match MS
3265 2004-06-14 Atsushi Enomoto <atsushi@ximian.com>
3267 * FloatingPointFormatter.cs : Recognize '%' and '\u2030' and replace
3268 them with matching NumberFormatInfo properties.
3270 2004-06-14 Atsushi Enomoto <atsushi@ximian.com>
3272 * Double.cs : Use IFormatProvider.GetFormat() instead of literal '-'.
3273 * FloatingPointFormatter.cs :
3274 Use NumberFormatInfo.NegativeSign. This change saves many XSLT test
3276 Format Permille pattern (It is undocumented but actually available,
3277 and used in xsl:format-number).
3279 2004-06-14 Raja R Harinath <rharinath@novell.com>
3281 * Console.cs (Console.Write, Console.WriteLine): Disable __arglist
3282 version with BOOTSTRAP_WITH_OLDLIB.
3283 * String.cs (STring.Concat): Likewise.
3285 2004-06-13 Atsushi Enomoto <atsushi@ximian.com>
3287 * FloatingPointFormatter.cs :
3288 - Don't format more than 15 fraction digits. Don't report to Pedro
3289 directly (removing the error message with his concent).
3290 - When format string starts with '.', it means integral part format
3291 is not specified. Ignore '.' characters after the first
3292 appearance. Fixed bug #59890.
3293 - 0.0 is formatted only before the third ';' appearance.
3295 2004-06-11 Sebastien Pouliot <sebastien@ximian.com>
3297 * DateTime.cs: Added a AddRoundedMilliseconds which use the "old Mono"
3298 rounding logic which worked for FromOADate (while the newer didn't).
3299 * TimeSpan.cs: Now throw an OverflowException when the timespan is
3300 over MaxValue or under MinValue.
3302 2004-06-11 Martin Baulig <martin@ximian.com>
3304 * Console.cs (Write, WriteLine): Implemented the varargs versions.
3306 2004-06-11 Martin Baulig <martin@ximian.com>
3308 * String.cs (Concat): Implemented the varargs version.
3310 2004-06-10 Sebastien Pouliot <sebastien@ximian.com>
3312 * Decimal.cs: Hacked the Parse method to allow the runtime C code to
3313 decode it properly (i.e. matching MS results). Fixed the Round method
3314 for negative decimal numbers (moved code from Math.cs).
3315 * Math.cs: Now use Decimal class for Round(Decimal,int). Required to
3316 fix a bug when rounding a negative decimal.
3318 2004-06-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3320 * AppDomain.cs: set the _principal to null when changing the policy.
3321 * Console.cs: remove ClsCompliant attribute from a method marked as
3322 internal and added comment.
3324 2004-06-10 Gert Driesen <drieseng@users.sourceforge.net>
3326 * Delegate.cs: marked protected fields private to match public
3327 API of MS.NET, marked DynamicInvokeImpl and GetMethodImpl
3328 protected to fix public API
3329 * Enum.cs: marked ctor protected to match public API of MS.NET
3330 * MulticastDelegate.cs: marked DynamicInvokeImpl protected to
3331 match public API of MS.NET
3333 2004-06-10 Atsushi Enomoto <atsushi@ximian.com>
3335 * DateTime.cs : Added more common patterns.
3337 2004-06-09 Sebastien Pouliot <sebastien@ximian.com>
3339 * Decimal.cs: Fixed banker rounding by calling Math.Round. This won't
3340 be a performance winner (the actual Math code has a note to wait a
3341 better Decimal implementation) but it returns the correct results
3342 (without adding new code in corlib or the runtime). Fix #37744.
3344 2004-06-09 Atsushi Enomoto <atsushi@ximian.com>
3347 - A bunch of fixes (patch by Steven Brown). Fraction seconds are
3348 now represented as double. Strict token check for 'Z'.
3349 - Pattern validity check in GetDateTimeFormats(char).
3350 - Fixed pattern "yyyy/M/d HH:mm:ss".
3352 2004-06-09 Sebastien Pouliot <sebastien@ximian.com>
3354 * Decimal.cs: Fixed remainder (and optimized some cases not to call
3355 unmanaged code). Simplified divide. Removed workaround for bug #59793.
3356 Fixed GetHashCode to return different result for X and -X.
3358 2004-06-08 Atsushi Enomoto <atsushi@ximian.com>
3361 - Now re-checked all common format patterns. They should be tried
3362 with both current culture and invariant culture. Since '/' covers
3363 '-', removed extraneous patterns. Added more common patterns
3364 such as "yyyy-MM-dd" and X509Certificate pattern (it is valid
3365 only after NET_1_1). Commented out 1 character format patterns.
3366 - The format patterns we should try should not be obtained by
3367 GetAllDateTimePatterns(). Just use 'd', 'D', 't', 'T', ... (one
3368 character patterns), to handle UTC correctly. Examined patterns
3369 are changed, to 1) common patterns with specified (or current)
3370 culture, 2) common patterns with invariant, 3) The above "one
3371 character patterns" with specified (or current) culture.
3372 - When trying to parse some kind of patterns such as RFC1123,
3373 always use invariant DateTimeFormatInfo so that they can avoid
3374 parsing with culture-dependent calendar.
3375 - Check "GMT" only when doing Parse(). Don't it when ParseExact().
3376 - Removed extraneous '-' case. It is not special one.
3377 - When ParseExact(), allow only '/' for '/' pattern character.
3378 - When Parse(), allow any non-letter & non-number characters.
3379 - When pattern is not fully parsed, reject that format.
3380 - Added "exact" parameter to some ParseExact().
3381 - RFC1123 pattern is (again) now parsed in local time. I regressed
3382 some problems in previous fix.
3384 2004-06-08 Sebastien Pouliot <sebastien@ximian.com>
3386 * Decimal.cs: Fixed cast to integer types to truncate (not round) the
3389 2004-06-07 Duncan Mak <duncan@ximian.com>
3391 * Exception.cs (Source): This can return null.
3393 2004-06-07 Sebastien Pouliot <sebastien@ximian.com>
3395 * DateTime.cs: Fixed FromFileTime for negative values. Fixed
3396 constructor to limit range of milliseconds from 0,999. Fixed
3397 ToType method to work for object, string and DateTime.
3399 2004-06-07 Sebastien Pouliot <sebastien@ximian.com>
3401 * DateTime.cs: Fixed OLE Automation date conversions: timezone
3402 insensitive, wrong exception in FromOADate, handling of Min/Max
3403 values, negative doubles where integer part is negative but
3404 decimals are positive! Charming format ;-)
3406 2004-06-06 Sebastien Pouliot <sebastien@ximian.com>
3408 * String.cs: Fixed Join in case separator parameter is null.
3409 * TimeSpan.cs: Cache format errors during parsing and throw
3410 FormatException only if there was no overflow.
3412 2004-06-06 Gert Driesen <drieseng@users.sourceforge.net>
3414 * MonoCustomAttrs.cs: fixed issue where an empty array was
3415 returned when GetCustomAttributes was invoked with null
3416 attribute type and there was only one result
3418 2004-06-06 Sebastien Pouliot <sebastien@ximian.com>
3420 * Decimal.cs: Fixed ToString(String.Empty) to default ("G").
3421 * Int16.cs: Fixed ToString(String.Empty) to default ("G").
3422 * Int32.cs: Fixed ToString(String.Empty) to default ("G").
3423 * Int64.cs: Fixed ToString(String.Empty) to default ("G").
3424 * SByte.cs: Fixed ToString(String.Empty) to default ("G").
3425 * UInt16.cs: Fixed ToString(String.Empty) to default ("G").
3426 * UInt32.cs: Fixed ToString(String.Empty) to default ("G").
3427 * UInt64.cs: Fixed ToString(String.Empty) to default ("G").
3429 2004-06-05 Sebastien Pouliot <sebastien@ximian.com>
3431 * Convert.cs: Fixed the convertion of negative integers (byte, short,
3432 int and long) into string in a specific base (2, 8, 10 or 16).
3434 2004-06-04 Sebastien Pouliot <sebastien@ximian.com>
3436 * Math.cs: Fixed IEEERemainder to return -0 (0x8000000000000000) when
3437 the dividend is negative and the result is 0 (remainder).
3439 2004-06-03 Sebastien Pouliot <sebastien@ximian.com>
3441 * Delegate.cs: Fix the NullReferenceException in Combine(Delegate[]).
3443 2004-06-02 Sebastien Pouliot <sebastien@ximian.com>
3445 * TimeSpan.cs: Fixed overflow issues when delaing with big (days) time
3446 spans. Fixed parsing when only days are presents in the string (which
3447 should be illegal according to the documentation but is supported).
3449 2004-06-01 Sebastien Pouliot <sebastien@ximian.com>
3451 * TimeSpan.cs: Fixed exceptions in FromXXX methods as they are
3452 somewhat different from the documentation.
3454 2004-06-01 Gert Driesen <drieseng@users.sourceforge.net>
3456 * Type.cs: added missing attributes on InvokeMember
3458 2004-06-01 Miguel de Icaza <miguel@ximian.com>
3460 * String.cs: Flag concat with four arguments internal.
3462 2004-05-31 Sebastien Pouliot <sebastien@ximian.com>
3464 * Array.cs: Fixed legal case where value is null.
3465 * Byte.cs: Fixed ToString when format is an empty string (use "G").
3466 * Guid.cs: Renamed private fields (and changed some to signed) to
3467 match MS implementation and allow serialization to work. Fix
3470 2004-05-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3472 * DateTime.cs: adjust milliseconds for fraction specifier ('f').
3474 2004-05-30 Miguel de Icaza <miguel@ximian.com>
3476 * Console.cs: Remove *again* the version of WriteLine with four
3477 arguments; That should *not* be added.
3479 Flag it as internal as people migrate their code.
3481 2004-05-29 Sebastien Pouliot <sebastien@ximian.com>
3483 * Convert.cs: Fixed ToSByte(string,IFormatProvider) to throw
3484 ArgumentNullException (only case, all other returns 0). Fixed exception
3485 reporting for hex prefix only strings. Fixed ChangeTo where null could
3486 be misinterpreted between null and Empty.
3488 2004-05-28 Sebastien Pouliot <sebastien@ximian.com>
3490 * Convert.cs: Fixed integer parsing for special cases (0x, 0X for base
3491 16), non-base 10 negative numbers ... see new unit tests. Fixed the
3492 case when we parse Int64.MinValue (positive doesn't fit a signed long).
3494 2004-05-28 Jackson Harper <jackson@ximian.com>
3496 * Environment.cs: Increment version number.
3498 2004-05-28 Zoltan Varga <vargaz@freemail.hu>
3500 * AppDomain.cs (Load): Try loading from assemblyRef.CodeBase if exists.
3503 2004-05-28 Atsushi Enomoto <atsushi@ximian.com>
3505 * DateTime.cs : I reverted my fix by accident :(
3507 2004-05-28 Atsushi Enomoto <atsushi@ximian.com>
3510 - In ToString(), Don't use culture-dependent daynames to format
3511 Universal/RFC1123 date/time. Also, use FullDateTimePattern for 'U'.
3512 - Fixed GetDateTimeFormats () that generated incorrect 'U' value
3513 (since the format string is the same as 'F').
3515 2004-05-28 Atsushi Enomoto <atsushi@ximian.com>
3517 * DateTime.cs : don't adjust utc value in ToString(). It must output
3518 the same time value, just adding 'Z' for UTC.
3520 2004-05-28 Atsushi Enomoto <atsushi@ximian.com>
3522 * DateTime.cs : in 'Z' case, remove the 'Z' char from input before
3525 2004-05-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3527 * AppDomainSetup.cs: InitAppDomainSetup is not needed now.
3529 2004-05-27 Sebastien Pouliot <sebastien@ximian.com>
3531 * Byte.cs: Fixed parsing for "-0" which is valid for unsigned types.
3532 * Convert.cs: Convert with a base parameter cannot parse negative
3533 string numbers, even "-0".
3534 * UInt16.cs: Fixed parsing for "-0" which is valid for unsigned types.
3535 * UInt32.cs: Fixed parsing for "-0" which is valid for unsigned types.
3536 * UInt64.cs: Fixed parsing for "-0" which is valid for unsigned types.
3538 2004-05-27 Atsushi Enomoto <atsushi@ximian.com>
3541 - Added "yyyy/MM/dd HH:mm:ss 'GMT'" and "yyyy-MM-dd HH:mm:ss 'GMT'"
3542 to common formats (yes, I know it is nothing more than hack)
3543 - Fixed some GetDateTimeFormats() that just returned patterns.
3544 - For InvariantCulture, now try both supported formats and our
3546 - It was accepting incorrectly extraneous characters. That caused
3547 some UTC/non-UTC bug.
3548 - RFC1123 string should return universal time. Uncomment again (the
3549 problem should went away because of the extra characters fix above.
3551 With some of the changes above, fixed bug #47720.
3553 2004-05-27 Atsushi Enomoto <atsushi@ximian.com>
3555 * DateTime.cs : quick revert 'Z' support for certificate verifications.
3557 2004-05-26 Sebastien Pouliot <sebastien@ximian.com>
3559 * Array.cs: Removed duplicate condition if LastIndexOf.
3561 2004-05-26 Atsushi Enomoto <atsushi@ximian.com>
3564 - Added "yyyy-MM-dd HH:mm:ss" to "compatible patterns".
3566 - As a quick remedy to accept more patterns, Parse() now also tries
3567 InvariantInfo patterns (this is because we have no more than one
3568 pattern for each pattern component.)
3569 - In _DoParse(), 'Z' should not be read as timezone specifier. Some
3570 culture uses 'Z' as AM/PM designer, and it should be recognized as
3571 part of the UTCpattern (if it actually UTC pattern for the culture
3574 2004-05-26 Gert Driesen (drieseng@users.sourceforge.net)
3576 * MonoCustomAttrs.cs: Fixed issue with AllowMultiple, as MS
3577 seems to allow multiple attributes with AllowMultiple at
3580 2004-05-26 Sebastien Pouliot <sebastien@ximian.com>
3582 * Byte.cs: Throw an OverflowException for negative numbers.
3583 * Convert.cs: Accept 0x and 0X as prefix when parsing base16 strings.
3584 * Environment.cs: Bumped mono_corlib_version to 20 (rng interface).
3586 2004-05-25 Sebastien Pouliot <sebastien@ximian.com>
3588 * Array.cs: Fixed possible integer overflow.
3589 * BitConverter.cs: Fixed a possible integer overflow in ToString.
3590 * Guid.cs: Added an internal method to create a random Guid without
3591 using CryptoConfig (which is heavy on first use). This is only used
3592 in S.R.E.ModuleBuilder to speedup MCS compilation.
3593 * String.cs: Fixed reported exception for PadLeft|Right. Fixed
3594 possible integer overflow in methods that takes index and count
3597 2004-05-25 Zoltan Varga <vargaz@freemail.hu>
3599 * String.cs: Add new Strcpy icalls which take a char array as
3602 2004-05-25 Atsushi Enomoto <atsushi@ximian.com>
3604 * DateTime.cs : added more invariant format patterns. This should
3605 really fix bug #57656.
3607 2004-05-25 14:14 CET Patrik Torstensson <totte@hiddenpeaks.com>
3609 * BitConverter.cs (ToBoolean): Return true or false instead
3610 of unsafe returing byte as bool. Fixes bug #58874.
3612 2004-05-25 Atsushi Enomoto <atsushi@ximian.com>
3614 * DateTime.cs : In ToString(string, IFormatProvider), use "G" if
3615 string format argument is null.
3617 2004-05-25 Lluis Sanchez Gual <lluis@ximian.com>
3619 * Version.cs: Rename of data fields to match those in Microsoft.NET.
3620 Patch by PAF@design.ru.
3622 2004-05-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3624 * DateTime.cs: allow double quotes in the formats. Don't set
3625 next_not_digit to true in presence of single or double quotes. Patch by
3628 2004-05-24 Zoltan Varga <vargaz@freemail.hu>
3630 * AppDomainSetup.cs (InitAppDomainSetup): This one returns void.
3632 2004-05-23 Sebastien Pouliot <sebastien@ximian.com>
3634 * Array.cs: Fixed exception when we try to Clear outside bounds.
3635 * Boolean.cs: Fixed Equals for True!=True (see bugzilla #58874).
3636 * BitConverter.cs: Fixed negative index and integer overflow in
3638 * Buffer.cs: Fixed integer overflow in BlockCopy.
3640 2004-05-22 Sebastien Pouliot <sebastien@ximian.com>
3642 * Array.cs: Clear can now work on multidimentional arrays.
3643 * IntPtr.cs: We now only accept 32bits values in the long constructor
3644 unless we're on a 64 bits machine.
3645 * UIntPtr.cs: We now only accept 32bits unsigned values in the ulong
3646 constructor unless we're on a 64 bits machine.
3648 2004-05-22 Duncan Mak <duncan@ximian.com>
3650 * Convert.cs: The file was mostly in DOS endings already, for the
3651 sake of consistency, converted it all to DOS endings.
3652 (ToType): When value is null, immediately return null and don't
3653 ever throw a NullReferenceException. When conversionType is null,
3654 throw an InvalidCastException. Give a better error message when
3655 attempting to convert to a DBNull as well.
3657 2004-05-21 Sebastien Pouliot <sebastien@ximian.com>
3659 * Decimal.cs: Fixed To... methods that needs to trunk the integer part
3660 of Decimal (and not use the banker's rounding like Convert.To...).
3661 * Single.cs: Fixed CompareTo and Equals (copied fix from Double) wrt
3662 to NaN compares (see new unit tests).
3664 2004-05-20 Sebastien Pouliot <sebastien@ximian.com>
3666 * Convert.cs: Added checks for integer overflow for From|ToBase64Char.
3667 Also fixed the case where wide (16 bits) characters were converted to
3670 2004-05-19 Gert Driesen (drieseng@users.sourceforge.net)
3672 * ThreadStaticAttribute.cs
3673 * ContextStaticAttribute.cs
3675 * ObsoleteAttribute.cs : now that Inherited is false by
3676 default on AttributeUsageAttribute (as it should be) we
3677 need to explicitly set Inherited to false for those
3678 attributes should it be be false.
3680 2004-05-19 Gert Driesen (drieseng@users.sourceforge.net)
3682 * AttributeUsageAttribute.cs: Inherited property should be
3683 true by defaultrs.cs: respect Inherited property, and
3685 2004-05-19 Gert Driesen (drieseng@users.sourceforge.net)
3687 * MonoCustomAttrs.cs: respect Inherited property, and
3688 AllowMultiple property of a CustomAttribute. This fixes
3689 a major issue we had with respect to custom attributes.
3691 2004-05-19 Gert Driesen (drieseng@users.sourceforge.net)
3693 * MonoType.cs: throw ArgumentNullException when type parameter in
3694 GetCustomAttributes(Type, bool) is null
3696 2004-05-18 Sebastien Pouliot <sebastien@ximian.com>
3698 * Buffer.cs: Added checks for null source and destination. Fix failing
3699 CryptoStream unit test.
3700 * Guid.cs: Fixed thread-safety issue. Simplified implementation to use
3701 pseudo-random numbers to generate GUIDs (as per section 3.4 of the
3702 spec). This removes the TODO to get the computer MAC address and
3703 the chances to get a duplicate GUID (across different machines).
3705 2004-05-17 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
3707 * TimeSpan.cs: Only catch expected exceptions, if we get other exceptions
3708 than OverflowExceptions then something went wrong internally
3710 2004-05-17 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
3712 * Char.cs: Fix long standing bug with ToLower/ToUpper not being
3715 2004-05-14 Zoltan Varga <vargaz@freemail.hu>
3717 * Buffer.cs: Optimize BlockCopy.
3719 * Environment.cs: Bump corlib version.
3721 2004-05-14 Atsushi Enomoto <atsushi@ximian.com>
3723 * __ComObject.cs : This class is not regarded as CLSCompliant by csc.
3724 See also bug #58478.
3726 2004-05-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3728 * AppDomainSetup.cs: don't throw an exception if dynamic_base has not
3729 been set. Just return null as MS. Fixes bug #58120.
3731 2004-05-14 Marek Safar <marek.safar@seznam.cz>
3733 * Boolean.cs, Byte.cs, Char.cs, DBNull.cs, DateTime.cs,
3734 Decimal.cs, Double.cs, Enum.cs, Int16.cs, Int32.cs,
3735 Int64.cs, IntegerFormatter.cs, SByte.cs, Single.cs,
3736 String.cs, UInt16.cs, UInt32.cs, UInt64.cs: Removed
3737 useless [CLSCompliant (false)]
3740 2004-05-13 Sebastien Pouliot <sebastien@ximian.com>
3742 * __ComObject.cs: To please corcompare (no implementation).
3744 2004-05-13 Zoltan Varga <vargaz@freemail.hu>
3746 * Environment.cs: Bump corlib version.
3748 2004-05-13 Sebastien Pouliot <sebastien@ximian.com>
3750 * Environement.cs: Removed two security attributes for CurrentDirectory
3751 that weren't documented (and anyway we don't support them).
3753 2004-05-11 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
3755 * Char.cs: Fix exceptions
3757 2004-05-11 Lluis Sanchez Gual <lluis@ximian.com>
3759 * MissingMemberException.cs: Fix in serialization constructor.
3761 2004-05-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3763 * Environment.cs: GetGacPath return value is resolved at runtime on
3766 2004-05-07 Sebastien Pouliot <sebastien@ximian.com>
3768 * Convert.cs: ToBase64CharArray method was depending on a bug in
3769 S.S.C.ToBase64Transform class to work. Added an internal method to
3770 provide the same functionality (multiple block processing).
3772 2004-05-06 Jackson Harper <jackson@ximian.com>
3774 * Environment.cs: Make $HOME the personal directory.
3776 2004-05-06 Sebastien Pouliot <sebastien@ximian.com>
3778 * Convert.cs: ToBase64String method was depending on a bug in
3779 S.S.C.ToBase64Transform class to work. Added an internal method to
3780 provide the same functionality (multiple block processing).
3782 2004-05-05 Sebastien Pouliot <sebastien@ximian.com>
3784 * Environment.cs: Completed OSVersion property.
3785 * Version.cs: Added internal CreateFromString() to "try" to build the
3786 best version number form the specified string.
3788 2004-05-01 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
3790 * TimeSpan.cs: Redid a lot of stuff in TimeSpan from scratch.
3791 Fixes several potential bugs and makes things way faster.
3793 2004-05-01 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
3795 * TimeSpan.cs: Formatting changes
3797 2004-04-29 Ben Maurer <bmaurer@users.sourceforge.net>
3799 * Activator.cs: change _flags to a const.
3800 * IntegerFormatter.cs: make tables readonly.
3801 * Convert.cs: tables readonly
3802 * DateTime.cs: ditto.
3803 * IntPtr.cs: avoid a cctor.
3805 2004-04-29 Jackson Harper <jackson@ximian.com>
3808 * Type.cs: NET_2_0 now instead of 1_2.
3810 2004-04-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3812 * Environment.cs: implemented GetLogicalDrives.
3814 2004-04-28 Miguel de Icaza <miguel@ximian.com>
3816 * Applied patch from Atsushi Enomoto that allows Synchronized
3817 writers to have a `dont close' flag, this fixes 52094
3819 2004-04-29 Lluis Sanchez Gual <lluis@ximian.com>
3821 * MonoCustomAttrs.cs, MonoType.cs: Property.GetGetMethod() does not
3822 return the method if it is private (it did until now because of a
3823 bug). Make sure it works as it worked before the fix.
3824 * Type.cs: Implemented FilterAttribute delegate.
3826 2004-04-28 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
3828 * IntegerFormatter.cs: Prevent the use of the explicit static constuctor
3830 2004-04-27 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
3832 * IntegerFormatter.cs: Made functions internal (needed by other patches)
3834 2004-04-27 Lluis Sanchez Gual <lluis@ximian.com>
3836 * DateTime.cs: TODO cleaning.
3837 * Delegate.cs: GetObjectData should be virtual.
3838 * IntegerFormatter.cs: Method factorization. I don't want to fix bugs in
3839 30 methods almost identical.
3840 * MulticastDelegate.cs: Implemented GetObjectData.
3842 2004-04-26 Jackson Harper <jackson@ximian.com>
3844 * Environment.cs: Things going bump in the night.
3846 2004-04-25 Miguel de Icaza <miguel@ximian.com>
3848 * Convert.cs (toBase64Transform): Make private.
3850 2004-04-25 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
3854 * DecimalFormatter.cs:
3855 * FloatingPointFormatter.cs: Call invariant Char functions
3856 * Guid.cs: Call invariant Char and String functions
3857 * String.cs: Call invariant Char functions
3859 2004-04-25 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
3861 * String.cs: Refactored the Invariant ToXXX into its own internal methods
3862 so they are directly callable within corlib (can prevent early
3863 construction of CultureInfo, InvariantCulture and related classes)
3865 2004-04-24 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
3867 * String.cs: Managed impl. of Invariant parts of ToLower, ToUpper
3868 * Char.cs: Managed impl. of Invariant parts of ToLower, ToUpper
3870 2004-04-24 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
3872 * String.cs: Check for null values
3874 2004-04-23 Peter Bartok <pbartok@novell.com>
3876 * Environment.cs: GetLogicalDrives now returns "/" instead of null. Gonzalo
3877 will do a better fix in the future, but this way apps can at least use it.
3879 2004-04-23 Sebastien Pouliot <sebastien@ximian.com>
3881 * Environment.cs: Better support for GetFolderPath (same results as MS
3884 2004-04-22 Lluis Sanchez Gual <lluis@ximian.com>
3886 * Activator.cs: Removed TODOs for finished methods.
3887 * AppDomainSetup.cs: When setting a relative path to ApplicationBase, it
3888 must be relative to the current directory, not the temp directory.
3889 Implemented DynamicBase.
3890 * Convert.cs: No need to create a ToBase64Transform instance at every call
3891 to ToBase64CharArray.
3892 * DateTime.cs: Implemented missing methods FromFileTimeUtc and
3894 * Decimal.cs: Implemented FromOACurrency and ToOACurrency.
3895 * Delegate.cs: Removed class TODO.
3896 * IntegerFormatter.cs: Use Char.IsLetter and Char.IsDigit instead of ad-hoc
3898 * Type.cs: Removed TODOs for things already implemented.
3900 2004-04-21 Lluis Sanchez Gual <lluis@ximian.com>
3902 * Char.cs: Implemented culture-dependent ToLower and ToUpper methods.
3903 * MulticastDelegate.cs: Removed unused code.
3905 2004-04-19 Lluis Sanchez Gual <lluis@ximian.com>
3907 * AppDomain.cs: Implemented DynamicDirectory and SetDynamicBase.
3908 * Array.cs: Removed some TODOs in CreateInstance and IndexOf.
3909 * BadImageFormatException.cs: TODO reformat.
3910 * DateTime.cs: Implemented GetDateTimeFormats and GetDateTimeFormats.
3911 * DelegateSerializationHolder.cs: Made class internal.
3912 * Enum.cs: Removed TODO for localization, since this is something that has
3913 to be done for all classes.
3914 * Environment.cs: Removed TODO.
3915 * Exception.cs: Changed ToString to use StringBuilder.
3916 * MonoDummy.cs: Made class internal.
3917 * UnitySerializationHolder.cs: Added support for modules.
3919 2004-04-16 David Sheldon <dave-mono@earth.li>
3921 * DecimalFormatter.cs: Don't append a decimal point after the
3922 end of a number. ((decimal)1).ToString("P0") should be "100 %", not
3925 2004-04-09 Miguel de Icaza <miguel@ximian.com>
3927 * OutOfMemoryException.cs: Removed the call to Locale.GetText from
3930 2004-04-10 Gert Driesen (drieseng@users.sourceforge.net)
3932 * MonoDummy.cs: added MonoTODO to make sure we remove this class
3933 when its no longer needed
3935 2004-04-09 David Sheldon <dave-mono@earth.li>
3937 * Convert.cs: Allow + signs in strings for ToInt32, and
3940 2004-04-08 Atsushi Enomoto <atsushi@ximian.com>
3942 * Nullable.cs : usingdecl should also be conditional.
3944 2004-04-07 Martin Baulig <martin@ximian.com>
3946 * Nullable.cs: New file.
3948 2004-04-07 Martin Baulig <martin@ximian.com>
3950 * Type.cs (Type.GetGenericArguments): Make this abstract.
3952 2004-04-07 Jackson Harper <jackson@ximian.com>
3954 * Environment.cs: Increase corlib version number.
3956 2004-04-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3959 (ExpandEnvironmentVariables): on windows, env. vars. are case
3962 2004-04-06 Sebastien Pouliot <sebastien@ximian.com>
3964 * AppDomain.cs: Added static to [ThreadStatic] _principal field.
3965 Removed [ThreadStatic] for _principalPolicy (not required).
3967 2004-04-06 Miguel de Icaza <miguel@ximian.com>
3969 * Guid.cs: Flag as Sequential.
3971 2004-04-02 Dick Porter <dick@ximian.com>
3973 * String.cs: More sanity checks in Replace(). Fixes bug 55822.
3975 2004-04-02 Sebastien Pouliot <sebastien@ximian.com>
3977 * Environment.cs: Implement ExpandEnvironmentVariables static method.
3978 Now call the runtime to get the username (fix #56144).
3980 2004-04-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3982 * MonoType.cs: AssemblyQualifiedName now displays culture, version...
3985 2004-03-29 Miguel de Icaza <miguel@ximian.com>
3987 * Console.cs: If we fail to open stdin/stdout/stderr, create
3988 readers with a NullStream. This can happen if our caller does not
3989 setup stdin/stoud/stderr file handles. #56158 exposed this, but
3990 it will happen elsewhere.
3992 2004-03-29 Lluis Sanchez Gual <lluis@ximian.com>
3994 * Convert.cs: In ToSingle(double), removed checks for Single.MaxValue
3995 and Single.MinValue. MS.NET don't do it. This fixes bug #56005.
3996 * Guid.cs: Added support for guid strings in the "N" and "P" formats in
3997 the constructor. This fixes bug #54019.
3999 2004-03-23 Lluis Sanchez Gual <lluis@ximian.com>
4001 * FloatingPointFormatter.cs: Made the class thread safe. Had to move some
4002 internal variables to structures that are moved around methods.
4003 Factorized some common formatting code into FormatNumberInternal.
4005 2004-03-23 Dick Porter <dick@ximian.com>
4007 * DateTime.cs: Allow any character for DateSeparator when parsing,
4008 except TimeSeparator, a digit or a letter. Fixes bug 54047. Also
4009 deleted the previous fix for 54721, because this covers it too.
4011 2004-03-23 Dick Porter <dick@ximian.com>
4013 * DateTime.cs: Check the date string for too many digits when
4014 parsing. Fixes bugs 53023 and 53025.
4016 2004-03-22 Dick Porter <dick@ximian.com>
4018 * String.cs: Use the provider when converting strings to other
4021 * DateTime.cs: Add MM-dd-yyyy to the list of standard date parsing
4022 formats. Fixes bug 54721.
4024 2004-03-22 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4026 * Console.cs: Styled, optimized calls
4027 * CrossAppDomainDelegate.cs: Small header fix
4028 * Buffer.cs: Style, improve errors
4029 * BitConverter.cs: Style, improve errors, remove obsolete comment
4030 * Attribute.cs: Style, improve errors, small fix
4031 * Array.cs: Style, improve errors, small fix, added TODOs
4032 * Activator.cs: Style, localized errors, added error checks
4033 * Byte.cs: Style, localized errors, fixed wrong exception parameters
4036 * AppDomainSetup.cs: Style
4037 * AppDomain.cs: Style, implemented two methods (redirect)
4039 2004-03-21 Jackson Harper <jackson@ximian.com>
4041 * FloatingPointFormatter.cs: Set precision from number format info
4042 when it is not specified. This fixes bug #54983.
4044 2004-03-18 Nick Drochak <ndrochak@ieee.org>
4046 * Math.cs: Use IsNaN() method not "x == NaN".
4048 2004-03-16 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4050 * EntryPointNotFoundException.cs
4051 * DuplicateWaitObjectException.cs
4052 * DllNotFoundException.cs
4053 * DivideByZeroException.cs
4054 * ContextMarshalException.cs
4055 * CannotUnloadAppDomainException.cs
4056 * BadImageFormatException.cs
4057 * ArrayTypeMismatchException.cs
4058 * ArithmeticException.cs
4059 * ArgumentOutOfRangeException.cs
4060 * ArgumentNullException.cs
4061 * ArgumentException.cs
4062 * ApplicationException.cs
4063 * AppDomainUnloadedException.cs: Added missing HResult overrides
4065 * BadImageFormatException.cs: Improved/ Fixed implementation
4067 2004-03-15 Sebastien Pouliot <sebastien@ximian.com>
4069 * Random.cs: Corrected random value when Next is called with a
4070 negative value. Testing indictae that our results aren't exactly the
4071 same as MS, we have a +/- 1 (probably rounding errors due to
4072 different implementation).
4074 2004-03-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4076 * Environment.cs: updated corlib version.
4078 2004-03-15 Lluis Sanchez Gual <lluis@ximian.com>
4080 * Boolean.cs, Byte.cs, Char.cs, Double.cs, Int16.cs, Int32.cs, Int64.cs,
4081 SByte.cs, Single.cs, UInt16.cs, UInt32.cs, UInt64.cs: Renamed internal
4082 field "value" to "m_value", so it is interoperable with MS.NET when
4083 serializing and deserializing data. Based on the patch from Daniel
4086 2004-03-14 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4088 * TypeInitializationException.cs
4089 * SystemException.cs
4090 * StackOverflowException.cs
4092 * OverflowExceptionException.cs
4093 * OutOfMemoryException.cs
4094 * NullReferenceException.cs
4095 * NotSupportedException.cs
4096 * NotFiniteNumberException.cs
4097 * InvalidOperationException.cs
4098 * InvalidCastException.cs
4099 * IndexOutOfRangeException.cs
4100 * FormatException.cs
4101 * ExecutionEngineException.cs: improved parameter names
4103 2004-03-13 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4106 * EntryPointNotFoundException.cs
4107 * DuplicateWaitObjectException.cs
4108 * DoubleFormatter.cs
4109 * DllNotFoundException.cs
4110 * DivideByZeroException.cs
4111 * DelegateSerializationHolder.cs
4114 * ContextStaticAttribute.cs
4115 * ContextMarshalException.cs
4116 * ContextBoundObject.cs
4117 * CLSCompliantAttribute.cs
4119 * CannotUnloadAppDomainException.cs
4120 * BadImageFormatException.cs
4121 * AttributeUsageAttribute.cs
4122 * AttributeTargets.cs
4124 * AssemblyLoadEventHandler.cs
4125 * AssemblyLoadEventArgs.cs
4126 * ArrayTypeMismatchException.cs
4127 * ArithmeticException.cs
4128 * ArgumentOutOfRangeException.cs
4129 * ArgumentNullException.cs
4130 * ArgumentException.cs
4132 * ApplicationException.cs
4133 * AppDomainUnloadedException.cs
4134 * AppDomain.cs: Mono styled, fixed exceptions/ locales
4135 removed excess usings
4137 2004-03-10 Sebastien Pouliot <sebastien@ximian.com>
4139 * Convert.cs: FromBase64 now ignore some characters (tab, LF, CR and
4140 spaces) which fixed #54939. Changed the way that the length is
4141 validated (multiple of 4) because the ignored characters must not be
4142 included in the count.
4144 2004-03-10 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4146 * String.cs: Monostyled
4148 2004-03-09 Jackson Harper <jackson@ximian.com>
4150 * Char.cs: Only use a byte for numeric data.
4152 2004-03-09 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4154 * TypedReference.cs: Added missing Attributes
4155 * ParamArrayAttribute.cs: Small style fix
4156 * OperatingSystem.cs: Added .Net 1.1 member
4158 2004-03-09 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4160 * FieldAccessException.cs
4161 * FormatException.cs
4162 * InvalidCastException.cs
4163 * InvalidOperationException.cs
4164 * MemberAccessException.cs
4165 * MethodAccessException.cs
4166 * MissingFieldException.cs: Locale strings
4167 * MissingMemberException.cs: Locale strings
4168 * MissingMethodException.cs: Locale strings
4169 * NotFiniteNumberException.cs
4170 * NotImplementedException.cs
4171 * NotSupportedException.cs
4172 * NullReferenceException.cs
4173 * ObjectDisposedException.cs
4174 * OutOfMemoryException.cs
4175 * OverflowExceptionException.cs
4176 * PlatformNotSupportedException.cs
4177 * RankException.cs: Added missing HResult overrides
4179 2004-03-09 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4181 * RuntimeTypeHandle.cs
4182 * RuntimeMethodHandle.cs
4183 * RuntimeFieldHandle.cs: Implemented serialization (partially untested)
4185 2004-03-09 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4189 * ExecutionEngineException.cs
4190 * FieldAccessException.cs
4191 * FormatException.cs
4194 * IndexOutOfRangeException.cs
4196 * InvalidCastException.cs
4197 * InvalidOperationException.cs
4198 * InvalidProgramException.cs
4199 * IServiceProvider.cs
4200 * LoaderOptimization.cs
4201 * LoaderOptimizationAttribute.cs
4202 * MarshalByRefObject.cs
4204 * MemberAccessException.cs
4205 * MethodAccessException.cs
4206 * MissingFieldException.cs
4207 * MissingMemberException.cs
4208 * MissingMethodException.cs
4209 * MultiCastDelegate.cs
4210 * MulticastNotSupportedException.cs
4211 * NonSerializedAttribute.cs
4212 * NotFiniteNumberException.cs
4213 * NotImplementedException.cs
4214 * NotSupportedException.cs
4215 * NullReferenceException.cs
4216 * ObjectDisposedException.cs
4217 * ObsoleteAttribute.cs
4218 * OperatingSystem.cs
4219 * OutOfMemoryException.cs
4220 * OverflowExceptionException.cs
4222 * PlatformNotSupportedException.cs
4225 * ResolveEventArgs.cs
4226 * ResolveEventHandler.cs
4227 * RuntimeFieldHandle.cs
4228 * RuntimeMethodHandle.cs
4229 * RuntimeTypeHandle.cs: Mono styled, fixed exceptions/ locales
4230 removed excess usings
4232 2004-03-08 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4234 * SystemException.cs: Exceptions set the HResult
4235 * TypeLoadException.cs: Exceptions set the HResult, fixed wrong exception usage
4236 * SByte.cs: Implemented two missing methods, fix wrong parameters for ArgumentNullException
4238 2004-03-08 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4241 * TypeLoadException.cs
4242 * TypeInitializationException.cs
4245 * ThreadStaticAttribute.cs
4246 * SystemException.cs
4247 * STAThreadAttribute.cs
4248 * StackOverflowException.cs
4249 * SingleFormatter.cs
4251 * SerializableAttribute.cs: Mono styled, fixed exceptions/ locales
4252 removed excess usings
4254 2004-03-08 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4256 * UnauthorizedAccessException.cs: Exceptions set the HResult
4257 * UInt64.cs: Implemented two missing methods
4258 * UInt32.cs: Fix wrong parameters for ArgumentNullException, simpler convert
4259 * UInt16.cs: Fix wrong parameters for ArgumentNullException, simpler convert
4261 2004-03-08 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4267 * UnitySerializationHolder.cs
4268 * UnhandledExceptionEventHandler.cs
4269 * UnauthorizedAccessException.cs
4273 * UInt16.cs: Mono styled, Locale.GetText fixes, msg fixes
4275 2004-03-04 Lluis Sanchez Gual <lluis@ximian.com>
4277 * Environment.cs: Bump corlib version.
4279 2004-03-04 Jackson Harper <jackson@ximian.com>
4281 * Char.cs: New managed implementation. Modified patch by Andreas Nahr.
4283 2004-02-27 Lluis Sanchez Gual <lluis@ximian.com>
4285 * String.cs: Concat() fixed crash when one of the arguments is an object
4286 whose ToString() method returns null.
4287 * TypeLoadException.cs: Added some serialization fiels, needed for
4288 compatibility with MS.NET.
4290 2004-02-23 Ben Maurer <bmaurer@users.sourceforge.net>
4292 * String.cs (Equals): Speed up this method by avoiding Array
4293 Bounds Checks and by comparing by 32 bit words rather than 16 bit chars.
4295 This gives between 0x (for 1 char) and >2x (for large strings)
4296 factor of improvement.
4298 A big thanks to Miguel, who suggested the integer compares.
4300 2004-02-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4302 * MonoType.cs: use the binder in GetPropertyImpl.
4304 2004-02-22 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4306 * Math.cs: MonoStyled, replaced space with tabs,
4307 speedup of some methods by avoiding method calls
4309 2004-02-18 Atsushi Enomoto <atsushi@ximian.com>
4311 * Char.cs : optimized IsSeparator(), IsWhiteSpace() and IsDigit().
4312 (Moved from InternalCall to Managed code).
4314 2004-02-17 Martin Baulig <martin@ximian.com>
4316 * MonoType.cs (GetConstructors): Renamed the interncall to
4317 GetConstructors_internal(), made it internal and added a `Type
4318 reflected_type' argument to it.
4319 (GetEvents, GetFields): Likewise.
4320 (GetMethodsByName): Added `Type reflected_type' argument.
4321 (GetPropertiesByName): Likewise.
4323 2004-02-16 Jackson Harper <jackson@ximian.com>
4325 * FloatingPointFormater.cs: Allow precision to be up to the number
4326 of decimals without rounding.
4328 2004-02-14 Zoltan Varga <vargaz@freemail.hu>
4330 * Delegate.cs (Equals): Do not compare method_ptr, since it might
4331 point to a trampoline.
4333 2004-02-12 Jackson Harper <jackson@ximian.com>
4335 * AppDomainSetup.cs: If relative paths are used they should be
4336 rooted in the temp directory.
4338 2004-02-11 Marek Safar <marek.safar@seznam.cz>
4340 * Type.cs (FilterNameIgnoreCase_impl): Added extra check for speedup.
4342 2004-02-10 Zoltan Varga <vargaz@freemail.hu>
4344 * AppDomain.cs (Load): Check that assemblyRef.Name is not empty, to
4345 avoid an assert in the runtime.
4347 2004-02-08 Duncan Mak <duncan@ximian.com>
4349 * Convert.cs (ToType): Always let a Convert.ChangeType call
4350 succeed if the source object is already of the destination type.
4352 Patch by Ian MacLean (ianm@activestate.com).
4354 2004-02-05 Sebastien Pouliot <sebastien@ximian.com>
4356 * AppDomain.cs: Implemented SetPrincipalPolicy and SetThreadPrincipal.
4358 2004-02-02 Zoltan Varga <vargaz@freemail.hu>
4360 * Environment.cs: Bump corlib version.
4362 2004-02-02 Sebastien Pouliot <sebastien@ximian.ca>
4364 * DateTime.cs: Corrected support for "Z" in the mask (Parse). This
4367 2004-01-27 Sebastien Pouliot <spouliot@videotron.ca>
4369 * Exception.cs: Changed ToString to remove the \n when no stack trace
4370 is present (which fixed a unit test for SecurityException). Changed
4371 all \n to Environment.NewLine.
4373 2004-01-27 Lluis Sanchez Gual <lluis@ximian.com>
4375 * ContextBoundObject.cs: Removed TODO.
4377 2004-01-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4379 * TimeSpan.cs: fixed bug #52075. Days (int) don't rely on TotalDays
4380 (double), which might round up.
4382 2004-01-19 Jackson Harper <jackson@ximian.com>
4384 * FloatingPointFormatter.cs: Use the default decimal digits count
4385 if they are not specified. This fixes bug #52927.
4387 2004-01-19 Zoltan Varga <vargaz@freemail.hu>
4389 * Environment.cs: Bump version number.
4391 2004-01-19 Lluis Sanchez Gual <lluis@ximian.com>
4393 * Type.cs: Added internal call for IsInstanceOfType. The old implementation
4394 uses IsAssignableFrom(o.GetType()), which is not always valid for
4395 transparent proxies (because GetType will not return the type of the remote
4396 object if its assembly is not present).
4398 2004-01-18 David Sheldon <dave-mono@earth.li>
4400 * FloatingPointFormatter.cs: Skip the decimal point if we have an
4401 integer mantassa. So: 1E+15, rather than 1.E+15.
4403 2004-01-18 David Sheldon <dave-mono@earth.li>
4405 * Array.cs (GetValue/SetValue): Throw NullRef exception like .NET 1.1,
4406 even though docs say it should be an ArgumentNull. Two test cases now
4407 pass. See also nickd's commit of 2003-12-24.
4409 2004-01-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4411 * Environment.cs: increased corlib version.
4413 2004-01-14 Lluis Sanchez Gual <lluis@ximian.com>
4415 * MonoCustomAttrs.cs: Removed attribute cache. Attribute instances can't
4416 be reused because they could be modified. This fixes bug #52655.
4418 2004-01-12 Patrik Torstensson
4420 * Environment.cs: Bump corlib version number due to new StringBuilder
4422 * String.cs: New internal method to support the new StringBuilder that
4423 uses the string as a buffer (until ToString is called)
4425 2004-01-12 Zoltan Varga <vargaz@freemail.hu>
4427 * Environment.cs: Bump corlib version number for real this time.
4429 * AppDomain.cs (LoadAssembly): Pass the assembly name as a string to
4430 the runtime, so it can take into account the Culture etc.
4432 * Environment.cs: Bump corlib version number.
4434 2004-01-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4436 * MonoType.cs: GetMethods renamed to GetMethodsByName. It takes a
4437 new parameter with the method name and a boolean for ignoring case.
4438 Removed some string comparisons no longer needed.
4440 2004-01-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4442 * MonoType.cs: GetProperties renamed to GetPropetiesByName. It takes a
4443 new parameter with the property name and a boolean for ignoring case.
4446 2004-01-11 David Sheldon <dave-mono@earth.li>
4448 * DateTime.cs: Correct processing of formats with multiple '-'s, fixing
4451 2004-01-10 Zoltan Varga <vargaz@freemail.hu>
4453 * AppDomain.cs: Keep track of type resolve and assembly resolve
4454 events in progress to prevent infinite recursion.
4456 2004-01-06 Miguel de Icaza <miguel@ximian.com>
4458 * Console.cs: Test for UTF-8 being present anywhere on the
4459 string, also do ToUpper instead of ToLower, which will work even
4460 around the ICU bug with different locales (#52065), and addresses #52101
4462 2004-01-05 Zoltan Varga <vargaz@freemail.hu>
4464 * Environment.cs: Bump version.
4466 2003-12-24 Ben Maurer <bmaurer@users.sourceforge.net>
4468 * Type.cs (IsNotPublic): One would normally assume that
4469 IsNotPublic == !IsPublic, but this is not the case (note to MS,
4470 make better names ;-). Fixes #52547, `Type.IsNotPublic not
4471 correct for Nested types'
4473 2003-12-24 Nick Drochak <ndrochak@ieee.org>
4475 * Array.cs (CreateInstance): Throw NullRef exception like .NET 1.1,
4476 even though docs say it should be an ArgumentNull. Sent email to MS
4479 2003-12-23 Lluis Sanchez Gual <lluis@ximian.com>
4481 * Exception.cs: Several changes to make it compatible with MS.NET (needed
4482 for remoting interoperability): set a default value for hresult, added
4483 initialization of class_name, serialization field RemoteStackTrace must
4484 be RemoteStackTraceString, added ser. field ExceptionMethod.
4486 * IndexOutOfRangeException.cs: Added serialization constructor.
4488 2003-12-22 Bernie Solomon <bernard@ugsolutions.com>
4491 Int64 (Parse): Fix overflow checking for AllowHexSpecifier
4493 2003-12-20 Zoltan Varga <vargaz@freemail.hu>
4495 * MonoType.cs (GetMethodImpl): Only call FindMostDerivedMatch if the
4496 user supplied no parameter info, but not when the user supplied an
4497 empty parameter list. This fixes IKVM.
4499 * Environment.cs: Bump corlib version.
4501 2003-12-19 Dick Porter <dick@ximian.com>
4503 * String.cs: Added Compare shortcut for length==0.
4505 2003-12-17 Zoltan Varga <vargaz@freemail.hu>
4507 * Environment.cs: Bump corlib version.
4509 2003-12-17 Dick Porter <dick@ximian.com>
4511 * String.cs: Fix StartsWith and EndsWith when the argument is the
4512 empty string. Fixes bug 52283.
4514 2003-12-16 Zoltan Varga <vargaz@freemail.hu>
4516 * Environment.cs (HasShutdownStarted): Implement.
4518 2003-12-15 Zoltan Varga <vargaz@freemail.hu>
4520 * Environment.cs (HasShutdownStarted): Make this static under NET 1.1.
4522 * Environment.cs: Bump version number.
4524 2003-12-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4526 * DateTime.cs: don't bail out with that year out of range error on
4527 stuff like "MM/dd/yyyy HH:MM:ss".
4529 2003-12-13 Zoltan Varga <vargaz@freemail.hu>
4531 * Environment.cs: Make it a const instead.
4533 * Environment.cs: Make version field static.
4535 2003-12-10 Zoltan Varga <vargaz@freemail.hu>
4537 * Type.cs: Make DefaultBindingFlags protected.
4539 * Environment.cs: Applied patch from Todd Berman (tbermann@gentoo.org).
4540 Add new GacPath property + its associated icall.
4542 2003-12-09 Anirban Bhattacharjee <banirban@novell.com>
4544 * DateTime.cs : Bugs fixed (41845, 51422)
4545 * MonoType.cs : Exception message changed
4547 2003-12-08 Martin Baulig <martin@ximian.com>
4549 * Type.cs (MakeByRefType): New public method.
4551 2003-12-08 Zoltan Varga <vargaz@freemail.hu>
4553 * Environment.cs: Add a version number for the corlib-runtime interface
4554 to make it easier to diagnose problems resulting from a mismatch
4557 2003-12-08 Patrik Torstensson <p@rxc.se>
4559 * Type.cs (GetMethod): Check type arguments within array
4560 * MonoType.cs (GetMethodImpl): Handle methods with a new slot
4561 (same signature but different classes (derived level)
4563 2003-12-07 Zoltan Varga <vargaz@freemail.hu>
4565 * Type.cs (MakeArrayType): Add argument checking.
4567 2003-12-06 Dick Porter <dick@ximian.com>
4569 * String.cs: Don't use CompareInfo for non-culture-sensitive
4570 IndexOf and LastIndexOf methods.
4572 2003-12-06 Ravindra <rkumar@novell.com>
4574 * DateTime.cs: Made Parse(string, IFormatProvider) method to
4575 use second argument. Fixed bug #51464.
4577 2003-12-04 Martin Baulig <martin@ximian.com>
4579 * Type.cs (Type.MakeArrayType): New public method.
4581 2003-12-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4584 (BlockCopy): make the exception thrown helpful.
4586 2003-12-03 Dick Porter <dick@ximian.com>
4588 * String.cs: Calling Replace on an empty string returns itself.
4590 2003-12-03 Zoltan Varga <vargaz@freemail.hu>
4592 * MonoType.cs: Get rid of get_type_info, use a separate icall for
4593 each property instead.
4595 2003-12-02 Dick Porter <dick@ximian.com>
4597 * Decimal.cs: Fix NumberFormatInfo lookup. Patch by
4598 Mohammad DAMT (mdamt@cdl2000.com), fixes bug 51443.
4600 2003-12-01 Dick Porter <dick@ximian.com>
4602 * String.cs: Make Compare, IndexOf, LastIndexOf, StartsWith,
4603 Replace, ToLower, ToUpper and Equals use the correct CultureInfo.
4605 2003-11-28 Dick Porter <dick@ximian.com>
4610 * Boolean.cs: Do string compares with the Invariant culture.
4612 2003-11-27 Ben Maurer <bmaurer@users.sourceforge.net>
4614 * Array.cs: make the enumerator ICloneable
4616 2003-11-27 Ben Maurer <bmaurer@users.sourceforge.net>
4618 * Decimal.cs (ToXXX): Call Convert.ToXXX.
4620 2003-11-26 Zoltan Varga <vargaz@freemail.hu>
4622 * AppDomain.cs: Applied patch from ztashev@openlinksw.co.uk (Zdravko Tashev).
4623 Implement Load(byte[]) methods.
4625 * BadImageFormatException.cs: Fix ToString.
4627 2003-11-24 Zoltan Varga <vargaz@freemail.hu>
4629 * MonoType.cs: Make Standard|HasThis match Standard in GetMethod and
4630 GetConstructor, as done by MS.
4632 2003-11-19 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4634 * FloatingPointFormatter.cs: Removed some unused variables to prevent csc compiler warnings
4636 2003-11-18 Lluis Sanchez Gual <lluis@ximian.com>
4638 * TypeInitializationException.cs: Added missing serialization constructor.
4640 2003-11-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4642 * AppDomainSetup.cs: Don't add an extra '/' at the end of
4643 ApplicationBase. The tests pass now with mono.
4645 2003-11-18 Zoltan Varga <vargaz@freemail.hu>
4647 * ValueType.cs: New optimized implementation for Equals and GetHashCode.
4649 2003-11-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4651 * Environment.cs: use Directory in CurrentDirectory property.
4652 We were not throwing any exception when setting the directory to an
4655 2003-11-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4658 * Delegate.cs: implemented 1.1 stuff.
4661 * IntPtr.cs: removed extra attribute.
4662 * PlatformID.cs: added WinCE.
4664 2003-11-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4667 (Equals): compare the fields of structs too.
4668 (GetHashCode): combine the hash code of all the fields.
4669 Fixes bug #50901 (will remove the icall in a couple of days).
4671 2003-11-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4673 * Array.cs: fixed Clear for non-zero bounded arrays. Fixes bug #50968.
4675 2003-11-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4677 * DateTime.cs: handle century when we try to parse 4-digit years and
4678 only 2 digits are present. Fixes bug #49394.
4680 2003-11-13 Miguel de Icaza <miguel@ximian.com>
4682 * Console.cs: On utf-8 consoles, use unmarked output.
4684 2003-11-13 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4686 * IAppDomainSetup.cs:
4689 * Type.cs: Added missing attribute
4691 2003-11-12 Lluis Sanchez Gual <lluis@ximian.com>
4693 * Environment.cs: Added internal method for getting the path to
4696 2003-11-12 Jackson Harper <jackson@ximian.com>
4698 * Environment.cs: Add MyMusic and MyPictures to the SpecialFolder
4699 enum. This fixes the SWF build.
4701 2003-11-12 Miguel de Icaza <miguel@ximian.com>
4703 * PlatformID.cs: Remove Unix platform, we cant expose constants
4704 that are not in the framework.
4706 * OperatingSystem.cs: Adjust for the breakage.
4708 * RuntimeMethodHandle.cs: Fix signature.
4710 * Double.cs: Fix signature of TryParse.
4712 * String.cs (Concat (object, object, object, object)): Add missing method.
4714 * OperatingSystem.cs: Removed Equals, GetHashCode, they were not
4715 in the .NET Framework.
4717 * Enum.cs: Hide constructor.
4719 Fix ToUint16 to be explicitly implemented.
4721 * Console.cs: Add couple of extra missing methods (Write and
4722 WriteLine overloaded)
4724 2003-11-11 Miguel de Icaza <miguel@ximian.com>
4726 * AppDomain.cs, Activator.cs: New unimplmented entry points from
4727 1.1 (Com activation related).
4729 * Exception.cs: Formatting.
4731 * IServiceProvider.cs: Add ComVisible (true).
4733 * AppDomainSetup.cs: Add a couple more properties from .NET 1.1
4735 2003-11-03 Lluis Sanchez Gual <lluis@ximian.com>
4737 * AppDomain.cs: Added some null checks in Load methods. This fixes bug
4740 2003-11-01 Zoltan Varga <vargaz@freemail.hu>
4742 * AppDomain.cs: Make the SetDomain icalls private + call InternalInvoke
4743 on MonoMethod instead of Invoke.
4745 2003-11-01 Pedro MartÃnez Juliá <yoros@wanadoo.es>
4747 * DateTime.cs: Fixed Add* methods handling. Now it works properly
4748 with extreme values (there is a bug with Overflow and Underflow in
4751 2003-10-31 Pedro MartÃnez Juliá <yoros@wanadoo.es>
4753 * DateTime.cs: Fixed a few format bugs.
4755 2003-10-31 Zoltan Varga <vargaz@freemail.hu>
4757 * AppDomain.cs (InternalPushDomainRef): New icalls.
4759 * AppDomain.cs (InvokeInDomain): New method to execute code in a
4760 different appdomain.
4762 2003-10-27 Zoltan Varga <vargaz@freemail.hu>
4764 * AppDomain.cs: Fix prototype of InternalIsFinalizingForUnload.
4766 2003-10-25 Zoltan Varga <vargaz@freemail.hu>
4768 * AppDomain.cs (IsFinalizingForUnload): Implement.
4770 * AppDomain.cs (Unload): Move the notification of OnUnload listeners
4773 2003-10-25 Martin Baulig <martin@ximian.com>
4775 * MonoType.cs: Don't make this sealed.
4777 2003-10-24 Zoltan Varga <vargaz@freemail.hu>
4779 * AppDomain.cs: Add InternalInvokeInDomain[ByID] icalls.
4781 2003-10-24 Pedro MartÃnez Juliá <yoros@wanadoo.es>
4783 * DateTime.cs: When handling '-' as a date separator, MS.NET uses
4784 the same symbol in the parse (not DateTimeFormatInfo.DateSeparator).
4786 2003-10-22 Dick Porter <dick@ximian.com>
4788 * DateTime.cs: Handle '-' as a date separator when parsing formats.
4790 2003-10-20 Duncan Mak <duncan@ximian.com>
4792 * Delegate.cs (CreateDelegate): Avoid creating an extra Type array
4793 and merge the two iterations into one.
4795 2003-10-15 Zoltan Varga <vargaz@freemail.hu>
4797 * TypedReference.cs: Add new field used by the runtime.
4799 2003-10-15 Martin Baulig <martin@ximian.com>
4801 * Type.cs (Type.DeclaringMethod): For a generic method's type
4802 parameter, return this method - otherwise, return null.
4804 2003-10-14 Martin Baulig <martin@ximian.com>
4806 The generics API has changed in the spec since it was added here;
4807 these modifications make it match the spec again.
4810 (GetGenericParameters): Renamed to `GetGenericArguments'.
4811 (HasGenericParameters): Renamed to `HasGenericArguments'.
4812 (HasUnboundGenericParameters): Renamed to `ContainsGenericParameters'.
4813 (IsGenericTypeDefinition): New property.
4814 (IsUnboundGenericParameter): Renamed to `IsGenericParameter'.
4816 * MonoType.cs (ContainsGenericParameters): Implement this here;
4817 this is no interncall anymore.
4819 2003-10-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4821 * Delegate.cs: add the method name to the exception when it cannot be
4823 * Exception.cs: fix nullref in Source.
4825 2003-10-10 Zoltan Varga <vargaz@freemail.hu>
4827 * Array.cs: Add argument checking to GetValue and SetValue.
4829 2003-10-09 Miguel de Icaza <miguel@ximian.com>
4831 * DateTime.cs: Patch from Chris Turchin: the DateTime.MaxValue
4832 should not be TimeSpan.MaxValue, because it overflow. Set this to
4835 2003-10-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4837 * MonoCustomAttrs.cs: from_cache is now thread-safe. Yeah, I got a
4838 duplicate entry exception.
4840 2003-10-08 Ben Maurer <bmaurer@users.sourceforge.net>
4842 * DateTime.cs (ToString): Total rewrite, fixes #49358.
4844 2003-10-03 Zoltan Varga <vargaz@freemail.hu>
4846 * AppDomain.cs: Change accessibility of DoTypeResolve to fix build.
4848 2003-10-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4851 (Equals): check that the object is an Enum before comparing the types.
4853 2003-09-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4855 * Array.cs: reduced xsp allocated memory by 1/2.
4857 2003-09-25 Martin Baulig <martin@ximian.com>
4859 * Type.cs (Type.IsGenericTypeDefinition): Removed this method
4860 since it was identical to GetGenericTypeDefinition().
4861 (Type.IsGenericInstance): New property.
4863 2003-09-24 Duncan Mak <duncan@ximian.com>
4865 * Math.cs (Abs): Fix double Locale.GetText bug reported by
4866 davejp@volny.cz. This fixes #48788.
4868 2003-09-14 Pedro MartÃnez Juliá <yoros@wanadoo.es>
4870 * FloatingPointFormatter.cs: Add the necessary castings to char
4873 2003-09-13 Pedro MartÃnez Juliá <yoros@wanadoo.es>
4875 * FloatingPointFormatter.cs: Make the method calls more functional
4876 for protecting the values from different threads (make it more
4879 2003-09-13 Pedro MartÃnez Juliá <yoros@wanadoo.es>
4881 * FloatingPointFormatter.cs: Fix a bug with the negative value of
4884 2003-09-12 Pedro MartÃnez Juliá <yoros@wanadoo.es>
4886 * FloatingPointFormatter.cs: Applied a lot of improvements in string
4887 construction, make use of Append/Insert with the "count" parameter.
4888 Thanks to Ben Maurer.
4890 2003-09-10 Pedro MartÃnez Juliá <yoros@wanadoo.es>
4892 * FloatingPointFormatter.cs: Fix a bug with Custm Format.
4894 * FloatingPointFormatter.cs: Fix a little bug I've introduced the
4897 2003-09-10 Pedro MartÃnez Juliá <yoros@wanadoo.es>
4899 * DoubleFormatter.cs: A few optimizations. Now, only one object
4900 is created to convert all double numbers.
4902 * SingleFormatter.cs: A few optimizations. Now, only one object
4903 is created to convert all float numbers.
4905 * FloatingPointFormatter.cs: Split the "number type parameters" from
4906 the "numver value and format parameters". The first ones are in the
4907 constructor and the others are in a method.
4909 2003-09-09 Zoltan Varga <vargaz@freemail.hu>
4911 * Array.cs: Added argument checking to some NET_1_1 methods.
4913 2003-09-04 Martin Baulig <martin@ximian.com>
4915 * Type.cs (GetGenericTypeDefinition): Make this method virtual.
4917 2003-08-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4919 * Array.cs: added the new overloaded CreateInstance, GetValue, SetValue
4920 taking 'longs'. All tests pass.
4922 2003-08-26 Ben Maurer <bmaurer@users.sourceforge.net>
4924 * Exception.cs: Add ClassInterface attr. Implement TargetSite and
4925 Source. Remove MonoTODO attributes (class is 100% done). Also
4926 passes all Rotor tests for Exception!
4928 2003-08-26 Ben Maurer <bmaurer@users.sourceforge.net>
4930 * Enum.cs: Remove [MonoTODO]'s that had been completed.
4932 2003-08-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4934 * String.cs: fixed bug #47802.
4936 2003-08-21 Ben Maurer <bmaurer@users.sourceforge.net>
4938 * String.cs: Created method FormatHelper that does formatting,
4939 using a StringBuilder.
4941 2003-08-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4943 * Array.cs: patch by lb@lb.ods.org that fixes bug #47707.
4945 2003-08-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4947 * Delegate.cs: CreteDelegate (Type, MethodInfo) only supports static
4950 2003-08-11 Duncan Mak <duncan@ximian.com>
4952 * Environment.cs (Version): Return the same numbers as the MS
4955 2003-08-10 Miguel de Icaza <miguel@ximian.com>
4957 * Array.cs: Applied patch from Thong (Tum) Nguyen; Removed
4958 replicated tests, and have a routine that does the heavy lifting.
4960 2003-08-08 Lluis Sanchez Gual <lluis@ximian.com>
4962 * DateTime.cs: Fixed DoParse. It was calling the wrong constructor
4964 * Environment.cs: return $HOME for ApplicationData folder.
4966 2003-08-04 Duncan Mak <duncan@ximian.com>
4968 * FloatingPointFormatter.cs (Normalize): Apply a patch from Aleksey
4969 Demakov <avd@openlinksw.com> to fix formatting for Big power of 10
4970 floating point values. This fixes bug #46175.
4972 * Convert.cs (ToUInt16): Throw an OverflowException correctly, as
4973 noted by c5n4kh6u02@sneakemail.com in
4974 http://bugzilla.ximian.com/show_bug.cgi?id=43098.
4976 Sat Aug 2 13:01:46 BST 2003 Malte Hildingson <malte@amy.udd.htu.se>
4978 * Double.cs: added icall Double.AssertEndianity.
4980 Fri Aug 1 16:47:17 CEST 2003 Paolo Molaro <lupus@ximian.com>
4982 * Type.cs, MonoType.cs: implemented generic-specific methods.
4984 2003-07-29 Miguel de Icaza <miguel@ximian.com>
4986 * Buffer.cs: Add new internal MemCopy call.
4990 Tue Jul 29 12:13:16 CEST 2003 Paolo Molaro <lupus@ximian.com>
4992 * Type.cs, MonoType.cs, ArgIterator.cs: pass the handles values
4993 to icalls, to avoid special cases in some call conventions.
4995 2003-07-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4997 * Enum.cs: added Serializable attribute.
4999 2003-07-25 Duncan Mak <duncan@ximian.com>
5001 * AppDomain.cs (Equals):
5002 (GetHashCode): Removed because they do not need to be defined
5005 2003-07-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5007 * TypeLoadException.cs: removed unused fields. TypeName returns "" if
5008 cannot even get the type.
5010 2003-07-24 Miguel de Icaza <miguel@ximian.com>
5012 * Type.cs: Added generics stubs.
5014 2003-07-23 Duncan Mak <duncan@ximian.com>
5016 * Environment.cs (SpecialFolder): Added 'Desktop' and 'MyComputer'
5017 as values for NET_1_1.
5018 (GetFolderPath): Return the empty string ("") for values of
5019 SpecialFolder that have no corresponding equivalents in
5020 Linux. Return "$HOME/Desktop" for SpecialFolder.DesktopDirectory
5021 and "$HOME" for SpecialFolder.Personal.
5023 * IntPtr.cs (GetObjectData): Mark it as an interface
5024 implementation, instead of a public method.
5026 * Guid.cs (NewGuid): Remove MonoTODOAttribute.
5028 * TypeLoadException.cs (GetObjectData):
5029 Create stubs for the fields that are being serialized.
5031 * UIntPtr.cs: Removed erroneous CLSCompliantAttributes.
5033 2003-07-23 Lluis Sanchez Gual <lluis@ximian.com>
5035 * Enum.cs: Fixed enum formatting. For flag enums, if one of
5036 the flags is unnamed, ToString() returns the integer value.
5038 2003-07-22 Jerome Laban <jlaban@wanadoo.fr>
5040 * Guid.cs: Fixed ToString (), was producing incorrect string.
5042 2003-07-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5044 * AppDomainSetup.cs: fixed bug #46609.
5046 Thu Jul 17 17:28:27 CEST 2003 Paolo Molaro <lupus@ximian.com>
5048 * MonoType.cs: use an icall for IsPrimitiveImpl ().
5050 Thu Jul 17 15:23:17 CEST 2003 Paolo Molaro <lupus@ximian.com>
5052 * Guid.cs: faster ToString ().
5054 2003-07-15 Pedro MartÃnez Juliá <yoros@wanadoo.es>
5056 * FloatingPointFormatter.cs: Few changes for get working Rotor
5059 2003-07-13 Zoltan Varga <vargaz@freemail.hu>
5061 * Type.cs (IsAssignableFrom): Implement this as an icall since the
5062 runtime already includes the neccessary logic.
5064 2003-07-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5066 * AppDomainSetup.cs: remove the "file://" prefix from ApplicationBase
5067 if it's present and get the full path for non-Uri paths.
5069 2003-07-2 Lluis Sanchez Gual <lluis@ximian.com>
5071 * DateTime.cs: Fixed formatting of fractions of second.
5073 2003-06-30 Zoltan Varga <vargaz@freemail.hu>
5075 * Console.cs: Turn off buffering for the streams returned by
5076 OpenStandardOutput () and OpenStandardError () if the buffer size is 0.
5078 2003-06-28 Lluis Sanchez Gual <lluis@ximian.com>
5080 * Random.cs: Changed behavior of Random to match MS.NET. When Next is
5081 called with maxvalue==0 or minvalue==maxvalue, MS.NET internally generates
5082 a new random number (although it is not needed), while mono did not.
5083 As a result, the sequence of random numbers could be different for the
5086 Thu Jun 26 16:06:35 CEST 2003 Paolo Molaro <lupus@ximian.com>
5088 * FloatingPointFormatter.cs: use dec_len2 as default precision.
5090 2003-06-26 Lluis Sanchez Gual <lluis@ximian.com>
5092 * DateTime.cs: Modified constructor. Check for valid value of TimeSpan must
5093 be done after the correspondig UTC offset has been applied.
5095 2003-06-26 Lluis Sanchez Gual <lluis@ximian.com>
5097 * Object.cs: Object must have the Serializable attribute.
5098 * DateTime.cs: Fixed _DoParse() so it correctly applies the utc offset
5099 to the resulting date. Also fixed _ToString so now correctly formates the
5102 Wed Jun 18 19:22:22 CEST 2003 Paolo Molaro <lupus@ximian.com>
5104 * Enum.cs: fix race in cache (bug#41841).
5106 Wed Jun 18 18:52:11 CEST 2003 Paolo Molaro <lupus@ximian.com>
5108 * FloatingPointFormatter.cs: if the precision is not specified, use
5109 the default precision for the data type.
5111 Wed Jun 18 18:11:30 CEST 2003 Paolo Molaro <lupus@ximian.com>
5113 * Array.cs: throw ArgumentOutOfRangeException in Copy if needed
5114 (patch by tum@veridicus.com (Thong (Tum) Nguyen)).
5116 2003-06-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5118 * MonoType.cs: don't throw nullref when the return type for a property
5119 is specified and the property doesn't have a get accessor.
5121 2003-06-10 Duncan Mak <duncan@ximian.com>
5123 * Array.cs (CreateInstance): Fixed a typo. It should throw
5124 ArgumentNullException instead of ArgumentException.
5126 2003-06-09 Duncan Mak <duncan@ximian.com>
5128 * Array.cs: Revert the last revert. I fixed it.
5129 (Sort): Put a try-catch block around qsort, and wrap whatever
5130 Exception we get into a InvalidOperationException.
5132 2003-06-08 Jackson Harper <jackson@latitudegeo.com>
5134 * Array.cs: Revert last patch, it broke some other functionality.
5136 2003-06-08 Duncan Mak <duncan@ximian.com>
5138 * Array.cs: Throw more exceptions. This fixes the errors we see
5139 from the Rotor testsuite.
5141 (CreateInstance): Throw ArgumentNullException when the input are
5142 null. Throw ArgumentOutOfRangeException when bounds + length is
5143 greater than Int32.MaxValue.
5144 (LastIndexOf): Throw ArgumentOutOfRangeException if index is outside
5145 the valid range of indices of array.
5146 (Sort): Throw InvalidOperationException when comparer is null and
5147 none of the elements in keys implements IComparable.
5149 2003-06-08 Duncan Mak <duncan@ximian.com>
5151 * Array.cs (CreateInstance): Throw a TypeLoadException if the
5152 Length of the input array 'lengths' is greater than 255 so that we
5153 won't see the g_assert that is in mono_array_class_get in class.c.
5155 This fixes bug #44304.
5157 2003-06-05 Nick Drochak <ndrochak@gol.com>
5159 * UnitySerializataionHolder.cs: Cleanups according to class status page
5161 Wed Jun 4 16:59:39 CEST 2003 Paolo Molaro <lupus@ximian.com>
5163 * ArgIterator.cs, TypedReference.cs, RuntimeArgumentHandle.cs,
5164 RuntimeTypeHandle.cs: implemented the needed stuff to handle
5167 2003-06-02 Sebastien Pouliot <spouliot@videotron.ca>
5169 * Random.cs: New implementation based on Knuth ran3 to fix #43597.
5170 See http://www.library.cornell.edu/nr/bookcpdf/c7-1.pdf. Commited
5171 for Ben Maurer after review and testing.
5173 2003-05-28 Ben Maurer <bmaurer@users.sourceforge.net>
5175 * Array.cs: Added better argument checking to Array.Sort ()
5176 * DBNull.cs: Made the conversions throw like they do in MS.
5178 2003-05-24 Philip Van Hoof <me@freax.org>
5180 * Math.cs: Add the MS.NET 1.1 methods (BigMul, DivRem, DivRem).
5182 2003-05-21 Pedro MartÃnez Juliá <yoros@wanadoo.es>
5184 * FloatingPointFormatter.cs: Take care with the explicit precision
5185 and round the number to that precision.
5187 * DoubleFormatter.cs: Adapt to the two level precision (15 - 17).
5189 * SingleFormatter.cs: Adapt to the two level precision (7 - 8).
5191 2003-05-20 Philip Van Hoof <me@freax.org>
5193 * DateTime.cs (FromOADate, GetDateTimeFormats, ToOADate):
5196 2003-05-20 Zoltan Varga <vargaz@freemail.hu>
5198 * AppDomainSetup.cs: Added new field which is used to notify the
5199 runtime that the search path has changed.
5201 2003-05-18 Pedro MartÃnez Juliá <yoros@wanadoo.es>
5203 * FloatingPointFormatter.cs: Fixed NullReferenceException bug I've
5204 introduced the last change I've done.
5206 2003-05-17 Ben Maurer <bmaurer@users.sourceforge.net>
5208 * Array.cs: Fixed SyncRoot to behave like MS (return this). Removed
5209 MonoTODO from SyncRoot (because fixed) and IsSynchronized (it was
5210 behaving correctly).
5212 2003-05-17 Pedro MartÃnez Juliá <yoros@wanadoo.es>
5214 * FloatingPointFormatter.cs: Fixed little format mismatches.
5216 2003-05-16 Pedro MartÃnez Juliá <yoros@wanadoo.es>
5218 * FloatingPointFormatter.cs: Fixed "-0" result emited.
5220 2003-05-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5222 * AppDomain.cs: Added null argument check in Load().
5223 * Activator.cs: fixed bug #39926.
5225 2003-05-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5227 * Enum.cs: fixed bugs #41522 and #42879.
5229 2003-05-12 Zoltan Varga <vargaz@freemail.hu>
5231 * String.cs: Tweak IndexOf and LastIndexOf to match specification and
5232 undocumented MS behaviour.
5234 2003-05-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5236 * Activator.cs: applied patch for bug #39926. Thanks to Jean Marc and
5239 2003-05-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5241 * String.cs: fixed bug #41411 and another similar problem in
5242 LastIndexOf (string).
5244 2003-05-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5246 * String.cs: patch by Jean Marc <jean-marc.andre@polymtl.ca> that fixes
5249 2003-05-09 Zoltan Varga <vargaz@freemail.hu>
5251 * MulticastDelegate.cs (GetInvocationList): Avoid ArrayList
5252 construction if the delegate list only has one element.
5254 2003-05-01 Pedro MartÃnez Juliá <yoros@wanadoo.es>
5256 * Environment.cs: Changed the method GetFolderPath because it must
5257 return at least a directory name (not null).
5259 * Convert.cs: In ToType, if the destination type is unknown, try to
5260 cast the value to object (then, the calling method will downcast it
5261 to the type it wants).
5263 2003-04-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5265 * Enum.cs: fixed bug #41522.
5267 Tue Apr 29 13:58:16 CEST 2003 Paolo Molaro <lupus@ximian.com>
5269 * Enum.cs: protect with the lock also the lookup (bug #41841).
5271 Tue Apr 29 13:24:32 CEST 2003 Paolo Molaro <lupus@ximian.com>
5273 * MonoType.cs: allow a null name if InvokeMember is called with
5274 BindingFlags.CreateInstance set.
5276 2003-04-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5278 * Enum.cs: reverted my previous patch.
5280 2003-04-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5282 * Enum.cs: fixed bug #41841.
5284 2003-04-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5287 (GetPropertyImpl): handle BindingFlags.IgnoreCase.
5289 2003-04-22 Pedro MartÃnez Juliá <yoros@wanadoo.es>
5291 * FloatingPointFormatter.cs: Little fixes for get the same results
5292 as MS.NET and show a message when something goes wrong with the
5293 parser of Custom Formats.
5295 2003-04-22 Nick Drochak <ndrochak@gol.com>
5297 * Double.cs (ToString):
5298 * Single.cs (ToString): Handle case where param is a CultureInfo.
5300 2003-04-18 Zoltan Varga <vargaz@freemail.hu>
5302 * Object.cs ValueType.cs: Make the Object::GetHashCode() and
5303 ValueType::Equals() icalls static non-virtual, so they can be called
5304 by the code in RuntimeHelpers.
5306 2003-04-18 Miguel de Icaza <miguel@ximian.com>
5308 * Delegate.cs (operator ==): Do not crash if the second argument
5309 is null. Bug fix submitted by Juan Cri.
5311 2003-04-18 Eduardo Garcia Cebollero <kiwnix@yahoo.es>
5313 * Array.cs: Deleted the exception in Array.Initialize(), it looks
5314 like the method do nothing for C#, is still a MonoTODO until
5315 we find a compiler that uses that.
5317 2003-04-14 Miguel de Icaza <miguel@ximian.com>
5319 * Delegate.cs (Delegate): Seems like a typo, we were checking the
5320 a field rather than the argument
5322 * MonoType.cs: Make GetNestedType an external method implementation.
5324 2003-04-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5326 * Enum.cs: fixed bug #41294.
5328 2003-04-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5330 * DateTime.cs: fixes bug #40910, part 2.
5332 2003-04-11 Dietmar Maurer <dietmar@ximian.com>
5334 * String.cs (Equals): avoid the internal call, code cleanups
5336 2003-04-11 Alan Tam <Tam@SiuLung.com>
5338 * Convert.cs: fixed bug #41085.
5340 2003-04-10 Lluis Sanchez Gual <lluis@ideary.com>
5342 * AppDomain.cs: Added internal method for getting process guid.
5344 2003-04-09 Ville Palo <vi64pa@kolumbus.fi>
5346 * Array.cs: Little fix to compare () method.
5348 2003-04-09 Zoltan Varga <vargaz@freemail.hu>
5350 * String.cs (Equals): Add trivial optimization.
5352 2003-04-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5354 * DateTime.cs: fixed bug #40910.
5356 2003-04-05 Miguel de Icaza <miguel@ximian.com>
5358 * Console.cs: Make stderr, stdout and stdin use synchronized
5359 versions of the their readers/writers.
5361 2003-04-04 Dick Porter <dick@ximian.com>
5363 * Version.cs: Make operator== and operator!= cope with null
5364 objects. Didn't change operator<, operator<=, operator> or
5365 operator>= because its not meaningful to use those to compare
5366 against null, and throwing a NullReferenceException is probably
5367 the best thing to do there anyway.
5371 2003-04-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5373 * AppDomain.cs: fixed InvalidCastException.
5375 2003-03-30 Zoltan Varga <vargaz@freemail.hu>
5377 * Array.cs (Copy): Call FastCopy() earlier to avoid the expensive
5378 type checks and let it decide whenever a fast copy is possible.
5380 2003-03-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5383 (GetMethodImpl): support BindingFlags.IgnoreCase flag. Fixes bug #40322.
5385 2003-03-25 Zoltan Varga <vargaz@freemail.hu>
5387 * Activator.cs (CreateInstance): Call GetConstructor with the right
5388 arguments so the nonPublic argument is handled correctly.
5390 2003-03-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5392 * Type.cs: fixed bug #40123.
5394 2003-03-22 Pedro MartÃnez Juliá <yoros@wanadoo.es>
5396 * FloatingPointFormatter.cs: Fixed some bugs for get the same
5397 results than MS.NET. Added simple error recovering, now ToString
5398 will return a general format if there is any exception in the
5399 process of formatting. This make the library more robust while the
5400 formatters are refined.
5402 2003-03-16 Pedro MartÃnez Juliá <yoros@wanadoo.es>
5404 * FloatingPointFormatter.cs: Added support for group separators.
5406 2003-03-16 Pedro MartÃnez Juliá <yoros@wanadoo.es>
5409 * Double.cs: Apply changes of .ToString methods.
5410 * SingleFormatter.cs:
5411 * DoubleFormatter.cs: Simple wrappers to FloatingPointFormatter.
5412 * FloatingPointFormatter.cs: New class. Implementation of double and
5413 single formatters. It is unified now and parametrized with precission
5416 2003-03-15 Lluis Sanchez Gual <lluis@ideary.com>
5418 * AppDomain.cs: fixes bugs #39380 and #39331.
5420 2003-03-06 Nick Drochak <ndrochak@gol.com>
5422 * TimeSpan.cs (Negate): Throw exception when value is MinValue.
5424 2003-03-04 Dick Porter <dick@ximian.com>
5427 * Double.cs: Temporarily reverted the Double and Single ToString()
5428 change, because it broke nunit.
5431 2003-03-04 Pedro MartÃnez Juliá <yoros@wanadoo.es>
5433 * Double.cs: Changed ToString method. Added NumberFormatInfo support
5434 with DoubleFormatter class.
5435 * Single.cs: Changed ToString method. Added NumberFormatInfo support
5436 with SingleFormatter class.
5437 * DoubleFormatter.cs: New class with Double formatting functions.
5438 * SingleFormatter.cs: New class with Single formatting functions.
5440 2003-03-03 Lluis Sanchez Gual <lluis@ideary.com>
5442 * Activator.cs: Added support for activation using activation attributes.
5443 * AppDomain.cs: Added internal method to get the default context from the runtime.
5445 2003-02-28 Elan Feingold <efeingold@mn.rr.com>
5447 * DateTime.cs: FileTime is expressed in Universal time, and as such must
5448 be converted before subtracting the magic offset.
5449 * DateTime.cs: Strings in the format "2003-02-27T10:05:03-11:00" (note
5450 the timezone at the end) *must* be parsed by DateTime.Parse() for
5451 compatibility with Microsoft.
5453 2003-02-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5456 * MonoCustomAttrs.cs: fix for the regression test failure (see bug
5459 * IntPtr.cs: added serialization .ctor
5461 2003-02-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5463 * AppDomain.cs: check for null in Unload and changed method name.
5465 2003-02-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5467 * MonoCustomAttrs.cs: fixed bug #38238.
5469 2003-02-17 Martin Baulig <martin@ximian.com>
5471 * Exception.cs (Exception.ToString): Print a newline between the
5472 exception message and the stack trace.
5474 2003-02-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5476 * AppDomain.cs: implemented GetCurrentThreadId ().
5478 2003-02-14 Patrik Torstensson
5480 * Exception.cs: Fixed message output formating
5482 2003-02-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5485 (Parse): ignore everything after a \0 (MS parses: "512\0hola" as 512).
5487 2003-02-12 Miguel de Icaza <miguel@ximian.com>
5489 * Type.cs: IsClass should return false for Enumerations
5491 2003-02-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5493 * MonoCustomAttrs.cs: return the correct array type in the short case.
5496 2003-02-08 Pedro MartÃenz Juliá <yoros@wanadoo.es>
5498 * Math.cs: Fix a few methods (like Round) and add with comments the
5499 new methods: BigMul and DivRem that were in ECMA specs.
5501 2003-02-07 Patrik Torstensson
5503 * Exception.cs: Fixed formating
5505 2003-02-05 Patrik Torstensson
5507 * AppDomain.cs: Partly fixed the unload method
5509 2003-02-04 Patrik Torstensson
5511 * AppDomain.cs: Fixed lease issue with appdomain
5513 2003-02-04 Lluis Sanchez Gual <lluis@ideary.com>
5515 * MarshalByRefObject.cs: Implemented GetLifetimeService() and
5516 InitializeLifetimeService().
5518 2003-02-03 Patrik Torstensson
5520 * AppDomain.cs: New internalcalls for handling domain/context switches
5521 * AppDomain.cs (CreateDomain): Return transparant proxy for appdomain object
5523 2003-02-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5525 * AppDomain.cs: implemented AppendPrivatePath, ClearPrivatePath
5526 and ClearShadowCopyPath and fixed GetType ().
5528 * Attribute.cs: clean up.
5530 * Console.cs: removed UnixConsoleEncoding. Use Default.
5532 2003-02-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5534 * Attribute.cs: fixed all IsDefined overloads. Gotta fix
5535 GetCustomAttributes later.
5537 2003-01-31 Patrik Torstensson
5539 * Buffer.cs: Changed access level of BlockCopyInternal
5541 Thu Jan 30 19:54:30 CET 2003 Paolo Molaro <lupus@ximian.com>
5543 * String.cs, IntegerFormatter.cs: use const where appropriate.
5545 2003-01-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5547 * MonoCustomAttrs.cs: fixed GetBase () for Type. Thanks to Zoltan for
5550 2003-01-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5552 * MonoCustomAttrs.cs: fixed shortcut in GetCustomAttributes.
5553 The argument ICustomAttributeProvider can be of other types different
5554 from Type. Handle it.
5556 2003-01-28 Zoltan Varga <vargaz@freemail.hu>
5558 * DateTime.cs: fix FromFileTime so the time returned by
5559 File::GetLastModificationTime etc. is in the correct timezone.
5561 2003-01-28 Patrik Torstensson
5562 * Exception.cs: reverted formating/endline changes (sorry guys)
5564 2003-01-28 Patrik Torstensson
5566 * MarshalByRefObject.cs: implemented GetObjectIdentity
5567 * Exception.cs: added support for remote exceptions
5569 2003-01-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5571 * DateTime.cs: fixed bug #37225.
5573 2003-01-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5575 * Enum.cs: Clone the arrays in GetNames and GetValues. Thanks lupus!
5577 2003-01-27 Zoltan Varga <vargaz@freemail.hu>
5579 * AppDomain.cs: Added DoTypeResolve method which will be called by
5580 the runtime to raise TypeResolve events.
5582 2003-01-27 Duncan Mak <duncan@ximian.com>
5584 * Enum.cs (ToType): Implement this using Convert.ToType.
5586 2003-01-21 Miguel de Icaza <miguel@ximian.com>
5588 * Math.cs: Remove Pow's implementation body as it was wrong. The
5589 C code does the right thing. The code was trying to handle a
5590 number of cases, and that was incorrect.
5592 2003-01-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5594 * CharEnumerator.cs: fix to Current by crainaj@hotmail.com. Closes
5597 2003-01-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5599 * Enum.cs: added caching to GetInfo.
5601 2003-01-23 Dick Porter <dick@ximian.com>
5603 * Environment.cs (System): Implemented ExitCode
5605 2003-01-23 Zoltan Varga <vargaz@freemail.hu>
5607 * Type.cs (IsInstanceOfType): fixed regression caused by the change
5610 2003-01-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5612 * MonoType.cs: re-added lines that were removed in the previous commit.
5614 2003-01-16 Lluis Sanchez Gual <lsg@ctv.es>
5616 * Type.cs: corrected property IsSerializable. It should always return
5617 true for enums and delegates
5618 * MonoType.cs: added serialization support.
5619 * Delegate.cs: added serialization support.
5620 * DBNull.cs: added serialization support.
5621 * UnitySerializationHolder.cs: supports serialization of Assembly,
5622 MonoType and DBNull.
5623 * DelegateSerializationHolder.cs: added.
5625 2003-01-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5627 * Exception.cs: changed default message to match MS one.
5629 2003-01-12 Patrik Torstensson <totte@race-x-change.com>
5631 * String.cs: Fixed bug with CompareOrdinal
5633 2003-01-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5635 * Enum.cs: implements IFormattable.
5637 2003-01-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5639 * AppDomain.cs: implemented DoCallBack method.
5641 (GetConstructorImpl): when the flag is BindingFlags.Default, set it to
5644 NUnit2 tests start moving.
5646 2003-01-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5648 * Activator.cs: fixed bug #36052. Also added checks to avoid trying to
5649 instantiate an abstract class.
5651 2003-01-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5654 (IsSubclassOf): return false when null. Use != instead of Equals.
5656 2003-01-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5658 * Type.cs: fixed IsSubclassOf. Patch from Zoltan Varga.
5660 Fri Jan 3 20:18:51 CET 2003 Paolo Molaro <lupus@ximian.com>
5662 * MonoType.cs: fixed Namespace property for nested types.
5664 Fri Jan 3 16:18:27 CET 2003 Paolo Molaro <lupus@ximian.com>
5666 * MonoCustomAttrs.cs: create properly typed arrays when returning
5667 arrays of attributes of a given type.
5669 Fri Jan 3 11:10:14 CET 2003 Paolo Molaro <lupus@ximian.com>
5671 * MonoType.cs: fixed MemberType property for nested types.
5673 2003-01-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5675 * String.cs: fixed bug #36209.
5677 2002-12-20 Lluis Sanchez Gual <lsg@ctv.es>
5679 * Activator.cs: implemented method GetObject.
5681 2002-12-28 Marcus Urban <mathpup@mylinuxisp.com>
5683 * Activator.cs: Since the documentation indicates the method
5684 either succeeds or throws one of the listed exceptions, we weren't
5685 expecting that CreateInstance might be returning null.
5687 For more information on the bug, see http://bugs.ximian.com/show_bug.cgi?id=36109
5689 2002-12-20 Lluis Sanchez Gual <lsg@ctv.es>
5691 * MarshalByRefObject.cs: implemented CreateObjRef.
5693 2002-12-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5695 * DateTime.cs: fixed bug #30076.
5696 * TimeZone.cs: provide the parameter name in a exception.
5698 2002-12-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5700 * DecimalFormatter.cs: fixed bug #35560.
5702 Wed Dec 4 16:04:28 CET 2002 Paolo Molaro <lupus@ximian.com>
5704 * Type.cs: implemented GetInterfaceMap (needs an updated runtime).
5706 2002-12-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5708 * Array.cs: use Object.Equals (obj, obj) to compare objects to avoid
5709 nulls. Fixes #34909.
5711 2002-12-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5713 * AppDomain.cs: DoAssemblyResolve now returns when one of the handlers
5714 returns a non-null assembly.
5716 2002-12-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5718 * MulticastDelegate.cs: make GetInvocationList work for more than 1
5721 2002-12-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5723 * MulticastDelegate.cs: implemented GetInvocationList. I'll check later
5724 if this is the correct order of invocation.
5726 2002-12-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5728 * Type.cs: changed the signature of internal_from_name. Modified
5729 the overloads of GetType to use it and check the typeName argument.
5730 Implemented FindInterfaces.
5732 2002-11-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5734 * MarshalByRefObject.cs: undo latest changes. It breaks the build by
5735 some obscure reasons (try make -f makefile.gnu using a corlib which has
5736 the modified version).
5738 2002-11-26 Miguel de Icaza <miguel@ximian.com>
5740 * String.cs (Concat): Reduce the number of compares required.
5742 Mon Nov 18 17:54:22 CET 2002 Paolo Molaro <lupus@ximian.com>
5744 * Activator.cs: throw a MissingMethodException if the default
5745 constructor is not found in CreateInstance.
5747 2002-11-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5750 (Equals (str, str)): use 'as' instead of casting to object.
5751 (Equals (obj)): check the length of the strings (until now,
5752 "Hello".Equals ((object) "Hellow World!) was true!).
5754 2002-11-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5756 * MonoType.cs: implemented GetEvent (name, flags).
5758 2002-11-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5760 * AppDomain.cs: implemented a couple of methods called from the runtime
5761 to fire AssemblyLoad and AssemblyResolve events.
5763 2002-10-31 Dick Porter <dick@ximian.com>
5765 * Environment.cs: MonoIO methods now have an error parameter
5767 2002-10-29 Zoltan Varga <vargaz@freemail.hu>
5769 * Enum.cs: Added support for whitespaces in Enum:Parse().
5771 2002-10-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5773 * Type.cs: fixed GetProperty (string, Type []) and removed get_property
5774 internal call. Closes bug #32992.
5776 2002-10-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5778 * Exception.cs: display the inner exception, if any, in ToString ().
5780 2002-10-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5782 * Environment.cs: fixed StackTrace property.
5784 2002-10-16 Nick Drochak <ndrochak@gol.com>
5786 * Enum.cs (Parse): Then fix the code so that it works too.
5788 2002-10-15 Nick Drochak <ndrochak@gol.com>
5790 * Enum.cs (Parse): Use unsigned casts to avoid compiler warnings.
5792 2002-10-12 Nick Drochak <ndrochak@gol.com>
5794 * IntegerFormatter.cs: Fix compiler warnings.
5796 2002-10-11 Tim Haynes <thaynes@openlinksw.com>
5798 * Type.cs (GetConstructors): Use the correct flags.
5800 2002-10-09 Nick Drochak <ndrochak@gol.com>
5802 * IntegerFormatter.cs: Suppress insignificant leading zeros
5804 Fri Sep 27 15:06:29 CEST 2002 Paolo Molaro <lupus@ximian.com>
5806 * MonoCustomAttrs.cs: applied patch by "Si Jingnan"
5807 <stonewell@21cn.com> to return also derived types.
5809 2002-09-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5811 * Activator.cs: little fix in CreateInstance (Type, bool).
5813 2002-09-19 Duncan Mak <duncan@ximian.com>
5815 * Array.cs (CopyTo): Revert back to 1.40, this is stopping
5816 I18N/Common from building right now.
5818 2002-09-19 Nick Drochak <ndrochak@gol.com>
5820 * Array.cs (CopyTo): Account for Object type and base (primitive) types
5821 * Type.cs (IsAssignableFrom): return false for a null parameter
5823 2002-09-19 Nick Drochak <ndrochak@gol.com>
5825 * Array.cs (CopyTo): Check that source type can be cast automatically
5826 to the destination type.
5828 2002-09-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5830 * Type.cs: implemented IsAssignableFrom, DefaultBinder and
5833 2002-09-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5835 * Char.cs: implemented ToString (char)
5836 * IntegerFormatter.cs: made it internal.
5838 2002-09-13 Nick Drochak <ndrochak@gol.com>
5840 * Enum.cs (Format): handle the "d" format for both signed and unsigned
5843 2002-09-12 Dick Porter <dick@ximian.com>
5845 * UIntPtr.cs: Remove the [StructLayout(LayoutKind.Auto)]
5846 attribute, as there doesn't appear to be any struct
5847 layout-depending code here (and corcompare says it should be
5848 LayoutKind.Sequential)
5850 * Decimal.cs: Stub out missing methods, add
5851 [DecimalConstantAttribute] to the constant fields (as shown by
5854 * LocalDataStoreSlot.cs:
5857 * Array.cs: Stub out missing methods.
5859 * TypedReference.cs:
5860 * ArgIterator.cs: Stub out
5862 * AppDomainSetup.cs:
5863 * AppDomain.cs: Stub out missing methods, add missing
5864 ClassInterface(ClassInterfaceType.None) attribute.
5866 2002-09-12 Nick Drochak <ndrochak@gol.com>
5868 * Double.cs (ToString): Throw exception when "X" format is passed in.
5870 Wed Sep 11 15:26:34 CEST 2002 Paolo Molaro <lupus@ximian.com>
5872 * MonoType.cs: implemented Module property.
5874 Wed Sep 11 12:49:51 CEST 2002 Paolo Molaro <lupus@ximian.com>
5876 * MonoType.cs, Type.cs: implemented InvokeMember.
5878 Wed Sep 11 11:06:43 CEST 2002 Paolo Molaro <lupus@ximian.com>
5880 * Delegate.cs: check the type passed to CreateDelegate is a Delegate
5881 type. Check the method signature matches.
5883 Sat Sep 7 10:16:52 CEST 2002 Paolo Molaro <lupus@ximian.com>
5885 * RuntimeMethodHandle.cs: implemented GetFunctionPointer().
5887 2002-09-06 Miguel de Icaza <miguel@ximian.com>
5889 * Console.cs: Specify an encoder, otherwise we will get the UTF8
5890 encoder that by default emits the byte markers.
5892 Fri Sep 6 20:14:04 CEST 2002 Paolo Molaro <lupus@ximian.com>
5894 * Delegate.cs: look also for non-public methods until we have the
5895 security checks in place.
5897 Fri Sep 6 12:20:06 CEST 2002 Paolo Molaro <lupus@ximian.com>
5899 * MonoType.cs: consider also the full name in GetInterface.
5901 Fri Sep 6 12:11:28 CEST 2002 Paolo Molaro <lupus@ximian.com>
5903 * MonoType.cs: implemented GetMembers, GetConstructorImpl and
5904 GetMethodImpl using the binder.
5905 * Type.cs: GetConstructorImpl/GetConstructor fixes.
5907 2002-09-03 Jonathan Pryor <jonpryor@vt.edu>
5908 * Enum.cs: Get rid of warning CS0162.
5910 2002-09-04 Miguel de Icaza <miguel@ximian.com>
5912 * Double.cs, Single.cs, Char.cs, Boolean.cs: Use internal for the
5913 actual value instead of public.
5915 * LocalDataStoreSlot.cs: Make constructor internal.
5917 * Int16.cs, UInt16.cs, Int32.cs, UInt32.cs, Int64.cs, UInt64.cs,
5918 SByte.cs, Byte.cs, Char.cs: Use internal for the actual value
5921 2002-09-03 Jonathan Pryor <jonpryor@vt.edu>
5922 * Enum.cs: Fixed Enum.Format so that the "x" format specifier would work
5925 2002-08-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5927 * DateTime.cs: fixed buglet.
5929 Tue Aug 27 16:39:47 CEST 2002 Paolo Molaro <lupus@ximian.com>
5931 * MonoType.cs: speedup access to common data.
5933 2002-08-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5935 * Double.cs: implemented TryParse.
5937 * Math.cs: PowImpl is now private.
5939 * MissingFieldException.cs: implemented Message.
5941 * RuntimeMethodHandle.cs: stubbed GetFunctionPointer.
5943 * _AppDomain.cs: Uncommented ToString.
5945 2002-08-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5948 (IsValueTypeImpl): it's virtual, not abstract. Implemented.
5950 2002-08-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5952 * ArgumentException.cs: use the field instead of the property for
5955 * ArgumentOutOfRangeException.cs: modified Message.
5958 (_DoParse): throw out of range exception for year. Removed check
5959 for month (it's done in the constructor).
5961 2002-08-21 Miguel de Icaza <miguel@ximian.com>
5963 * Environment.cs: Implemented OSVersion property.
5965 2002-08-21 Dietmar Maurer <dietmar@ximian.com>
5967 * Exception.cs: set stack_trace to null
5969 Wed Aug 21 13:02:20 CEST 2002 Paolo Molaro <lupus@ximian.com>
5971 * AppDomain.cs: implemented ToString().
5973 2002-08-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5975 * AppDomain.cs: securityInfo can be null in CreateDomain.
5977 2002-08-19 Dick Porter <dick@ximian.com>
5979 * MonoType.cs: Add a space before the Assembly name in
5980 AssemblyQualifiedName (needed for resource files so the MS runtime
5983 2002-08-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
5985 * AppDomain.cs: parameter name when throwing ArgumentNullException.
5987 * ArgumentException.cs: modified Message to do what MS does.
5989 * ArgumentNullException.cs: don't use {0} in message.
5991 * Exception.cs: use Message property in ToString ().
5993 2002-08-14 Cesar Octavio Lopez Nataren <cesar@ciencias.unam.mx>
5995 * WeakReference.cs: Changed the constructor and GetObjectData
5996 method needed for ISerializable implementation in order to be
5997 compatible with SOAP generated by MS.
5999 Wed Aug 14 17:34:07 CEST 2002 Paolo Molaro <lupus@ximian.com>
6001 * MonoType.cs, Type.cs: DeclaringType/ReflectedType fixes.
6003 2002-08-12 Dietmar Maurer <dietmar@ximian.com>
6005 * Exception.cs (ToString): changed the ouput format.
6007 2002-08-07 Dietmar Maurer <dietmar@ximian.com>
6009 * MonoType.cs: moved get_method icall to this class, we can
6010 remove it as soon someone provides a full featured GetMethodImpl.
6012 * Type.cs: use GetMethodImpl everywhere.
6014 * Delegate.cs: new CreateDelegate implementations.
6016 2002-08-06 Tim Coleman <tim@timcoleman.com>
6018 Fix bug #28582. Now checks parameters for properties
6021 2002-08-04 Nick Drochak <ndrochak@gol.com>
6023 * Buffer.cs: Throw correct exception in GetByte() and SetByte().
6025 2002-08-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
6028 (FormatSpecifier): allow white space between the comman and the width
6031 2002-07-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
6036 * UInt64.cs: fixed bug #28050. May be a MS bug?
6038 Thu Jul 18 14:47:03 CEST 2002 Paolo Molaro <lupus@ximian.com>
6040 * MonoType.cs: fix IsArrayImpl.
6042 2002-07-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
6044 * String.cs: make ToLower (culture) and ToUpper (culture) use the
6045 default ToLower and ToUpper and don't throw NotImplemented.
6047 Sat Jul 13 15:09:01 CEST 2002 Paolo Molaro <lupus@ximian.com>
6049 * Type.cs: make GettTypeCode an icall. Test implementation of
6052 2002-07-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
6054 * AppDomainSetup.cs: implemented LoaderOptimization.
6056 2002-07-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
6058 * Activator.cs: some more intermediate results checking in
6059 in CreateInstance and CreateInstanceFrom and use GetConstructor and
6060 Invoke only with Type [] until the other overloaded versions work.
6062 2002-07-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
6064 * Activator.cs: reformatted. Implemented CreateInstance* methods
6065 that return ObjectHandle.
6067 * AppDomain.cs: implemented CreateInstance*AndUnwrap methods.
6069 2002-07-03 Nick Drochak <ndrochak@gol.com>
6071 * Decimal.cs (Divide): Short cut the case where the dividend is 0 (and
6072 the divisor is not) and avoid the icall, which seems to have a bug.
6074 2002-07-03 Nick Drochak <ndrochak@gol.com>
6076 * Double.cs (CompareTo): Correctly handle the case where the instance
6077 is NaN. Also return 0 if the values are equal.
6079 2002/07/03 Nick Drochak <ndrochak@gol.com>
6081 * MissingMethodException: Add missing Message property
6082 * MissingMemberException: Add missing Message property
6084 2002-06-30 Nick Drochak <ndrochak@gol.com>
6086 * Double.cs (CompareTo): Just see which is bigger. Don't use the
6087 subtraction trick, it doesn't work when the values have a diference of
6090 * Single.cs (CompareTo): same
6092 2002-06-27 Martin Baulig <martin@gnome.org>
6094 * UIntPtr.cs (UIntPtr.Zero): Use an explicit `u' suffix in the
6095 constructor argument. [FIXME: The implicit conversion to an
6096 unsigned integer doesn't work with mcs.]
6098 2002-06-26 Martin Baulig <martin@gnome.org>
6100 * DecimalFormatter.cs: Removed MSTEST stuff, use `System',
6101 not `S = System'. This file now compiles with mcs.
6103 * String.cs: Removed the already ifdef-outed __arglist Concat function
6104 to make it compile with mcs.
6106 2002-06-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
6108 * IntegerFormatter.cs:
6109 (FormatParse.FormatNumber): fixed custom format for negative numbers.
6111 2002-06-21 Martin Baulig <martin@gnome.org>
6113 * Double.cs: Replace the private `enum State' with constants since this
6114 will avoid some bigger headaches in mcs.
6116 Thu Jun 20 17:51:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
6118 * TimeSpan.cs: do not pollute the namespace with the
6121 2002-06-18 Nick Drochak <ndrochak@gol.com>
6123 * ArgumentException.cs: Use the message given in the constructor when
6124 accessing the Message property. Thanks to Dietmar for the help with
6127 2002-06-17 Dietmar Maurer <dietmar@ximian.com>
6129 * MonoType.cs: GetField is now a InternalCall
6131 2002-06-13 Nick Drochak <ndrochak@gol.com>
6133 * DateTime.cs: (Parse): Accept dates that have no hour,min,sec. in the
6134 sortable format(s), e.g. "2002-02-25"
6136 2002/06/12 Nick Drochak <ndrochak@gol.com>
6138 * Random.cs (Next): Fix math error. Return a number within the range.
6140 2002-06-12 Nick Drochak <ndrochak@gol.com>
6142 * String.cs (IndexOf): Return -1 if start index is equal to string
6145 2002-06-10 Duncan Mak <duncan@ximian.com>
6147 * Convert.cs (ToDouble): Remove rounding in ToDouble (float).
6148 (ToType): Added null field in conversionTable to avoid
6149 IndexOutOfRangeException. Changed what exceptions we throw to match
6152 2002-06-11 Nick Drochak <ndrochak@gol.com>
6154 * Int64.cs (Parse): Added unique strings to the messages where we throw
6155 a FormatException. Needed these to debug, so just left them in since
6156 they might be useful later. Fixed Currency parsing where we weren't
6157 looking at CurrencyDecimalSeparator, etc.
6159 2002-06-09 Lawrence Pit <loz@cable.a2000.nl>
6161 * DateTime.cs: fixes to pass tests M0 to M6:
6162 if yy pattern then year values >= 30 are in 20th century
6163 rfc1123 pattern is always in GMT, therefor useutc must be false
6164 made GetNow() internal static so it can be called from TimeZone.
6165 * TimeZone.cs: removed dependency on year 2002 from initialization of
6168 2002-06-09 Duncan Mak <duncan@ximian.com>
6170 * Convert.cs (ToType): Rearranged what Exceptions we throw to
6173 2002-06-08 Duncan Mak <duncan@ximian.com>
6175 * Decimal.cs: Added support for the IConvertible interface.
6177 2002-06-08 Martin Baulig <martin@gnome.org>
6179 * Enum.cs (IsDefined): `value' may be of the enum's type itself, it
6180 doesn't necessarily need to be of the enum's underlying type.
6182 2002/06/07 Nick Drochak <ndrochak@gol.com>
6184 * String.cs: Add [Serializable] to class
6185 * SByte.cs (Parse): Add [CLSCompliant(false)] to all the overloads
6187 2002-06-04 Nick Drochak <ndrochak@gol.com>
6189 * Double.cs (Parse): Recognize the group separator string, but still we
6190 don't check the format for the proper number of digits between
6191 separators. Also throw OverflowException when we get Pos or Neg
6192 Infinity from runtime.
6194 2002-06-03 Duncan Mak <duncan@ximian.com>
6196 * Convert.cs (ToDouble): Fixed ToDouble (byte value).
6198 Mon Jun 3 12:18:18 CEST 2002 Paolo Molaro <lupus@ximian.com>
6200 * Type.cs: fixed GetTypeCode.
6202 2002-06-02 Duncan Mak <duncan@ximian.com>
6204 * Convert.cs (ToInt16): use Convert.ToInt16 (int) instead of a direct
6205 cast from an int so that we throw OverFlowException correctly.
6207 (ToInt64): Use a new 64bit version of ConvertToBase.
6209 (ConvertToBase): Add checks for overflow (checks Int32.MinValue
6210 and Int32.MaxValue).
6212 (ConvertFromBase64): New 64-bit version of ConvertFromBase.
6214 2002-06-02 Nick Drochak <ndrochak@gol.com>
6216 * Convert.cs (ToSByte): Check for special value.
6217 * Single.cs (Parse):
6218 * UInt16.cs (Parse):
6219 * UInt32.cs (Parse): Throw OverflowException if negative
6221 2002-06-02 Duncan Mak <duncan@ximian.com>
6223 * Convert.cs (DBNull): Point it to DBNull.Value.
6224 (IsDBNull): Instead of checking typecodes, just check to see if
6225 it's the same as the DBNull field.
6227 2002-06-02 Nick Drochak <ndrochak@gol.com>
6229 * Convert.cs (ConvertFromBase): Detect bad digits correctly.
6231 2002-06-02 Duncan Mak <duncan@ximian.com>
6233 * Char.cs (Parse): Simplify the Exception handling.
6235 * Convert.cs (ToDecimal): Remove call to Math.Round () when
6236 converting from a float.
6238 2002-05-30 Martin Baulig <martin@gnome.org>
6240 * MonoType.cs (GetInterface): Implemented.
6242 Thu May 23 17:17:28 CEST 2002 Paolo Molaro <lupus@ximian.com>
6244 * Activator.cs: implemented CreateInstance ().
6246 2002-05-22 Duncan Mak <duncan@ximian.com>
6248 * Convert.cs (ConvertToBase): Added new 64bit version.
6249 (BuildConvertedString64): New 64bit version of
6250 BuildConvertedString.
6252 This fixes bug 25068.
6254 (ConvertFromBase): Added additional test for checking if the
6255 digits are valid. Thanks to Miguel for coming up with this test.
6257 This fixes bug 25071.
6259 2002-05-21 Duncan Mak <duncan@ximian.com>
6261 * Convert.cs (ToType): Rearranged to fit the new layout of
6264 (conversionTable): Rearranged to fit the layout of the
6265 System.TypeCode enum.
6267 This should fix bug 25075.
6269 2002-05-21 Duncan Mak <duncan@ximian.com>
6271 * Convert.cs (ToString): Fixed the ToString methods. Previously I had
6272 mixed up the two code paths, one for converting to a specific base
6273 (this case), another from converting from a foreign base to base10
6274 (used by ToInt16|32|64 (string, int)). This fixes bug 25068.
6276 * Convert.cs (ToByte)
6277 (ToSByte): Fixed bug 25074. Added more bits to ConvertFromBase so
6278 that we won't confuse FormatException with OverflowException.
6280 2002-05-22 Lawrence Pit <loz@cable.a2000.nl>
6282 * Environment.cs: CommandLine missed spaces between arguments.
6283 Implemented StackTrace. Returning MachineName in UserDomainName
6286 Tue May 21 17:25:49 CEST 2002 Paolo Molaro <lupus@ximian.com>
6288 * MonoCustomAttrs.cs: handle inherit argument.
6290 2002-05-21 Nick Drochak <ndrochak@gol.com>
6292 * Math.cs (Pow): Change icall method name and insert parameter
6293 checks in for infinities and NaN.
6295 2002-05-13 Miguel de Icaza <miguel@ximian.com>
6297 * Double.cs (Parse): Reimplement by cleaning up the string first,
6298 and then passing to strtof in the mono runtime.
6300 * Single.cs (Parse): Use the Double implementation and cast to
6303 2002-05-21 Nick Drochak <ndrochak@gol.com>
6306 (Ceiling): Check for "special" values
6307 (Floor): Check for "special" values
6308 (Round): Fix off-by-one error on decimal shifting
6310 2002-05-20 Lawrence Pit <loz@cable.a2000.nl>
6312 * DateTime.cs: ToString () using "G" format specifier
6314 2002-05-19 Martin Baulig <martin@gnome.org>
6316 * Convert.cs (FromBase64CharArray): Do correct exception handling.
6318 2002-05-19 Martin Baulig <martin@gnome.org>
6320 * Convert.cs (FromBase64CharArray): Convert the char array using
6321 System.Text.UTF8Encoding, not UnicodeEncoding (which is UTF-16) to
6324 2002-05-17 Miguel de Icaza <miguel@ximian.com>
6326 * MonoType.cs: Style changes.
6328 * Type.cs: Style changes.
6330 2002-05-16 Piers Haken <piersh@friksit.com
6332 * UInt64.cs: fix declaration of IConvertible.To* overrides.
6334 2002-05-16 Nick Drochak <ndrochak@gol.com>
6336 * BitConverter.cs (ToString): Add parameter check for invalid start
6339 * Console.cs: Use AutoFlush on the StreamWriter for stdin and stdout
6340 now that StreamWriter uses buffering
6342 2002-05-14 Miguel de Icaza <miguel@ximian.com>
6344 * Double.cs: Oops. Also handle exponents without finding a dot.
6346 2002-05-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
6348 * ChangeLog: removed empty entry at the top of the file.
6350 * Int32.cs: made static functions used by Parse internal.
6354 * UInt64.cs: removed static fucntions used by Parse and use the ones
6357 2002-05-12 Daniel Morgan <danmorg@sc.rr.com>
6359 * IServiceProvider.cs: added using System
6361 2002-05-09 Daniel Morgan <danmorg@sc.rr.com>
6363 * Single.cs: copied ToString() and Parse() methods from
6364 Double to Single and modified a tiny bit for Single.
6365 There is still a FIXME for Double and Single about
6366 passing the format and provider info to the icall too.
6368 2002-05-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
6373 * UInt64.cs (Parse): don't use Char.IsNumber to test for hex digits.
6374 Don't use a delegate to test for valid digits.
6376 2002-05-01 Duncan Mak <duncan@ximian.com>
6379 * Math.cs: Added missing CLSCompliant attributes where necessary.
6381 2002-04-30 Duncan Mak <duncan@ximian.com>
6383 * ArgumentException.cs (Message):
6384 * ArgumentOutOfRangeException.cs (Message): Added.
6386 2002-04-30 Nick Drochak <ndrochak@gol.com>
6388 * MonoType.cs: Remove unused variable and eliminate a compiler warning.
6390 Mon Apr 29 15:32:02 CEST 2002 Paolo Molaro <lupus@ximian.com>
6392 * Environment.cs: support for Exit(), CommandLine, CommandLineArgs ().
6394 2002-04-28 Duncan Mak <duncan@ximian.com>
6396 * DivideByZeroException.cs: Added missing serialization constructor.
6398 * UnauthorizedAccessException.cs: Added the missing Serializable attribute.
6400 2002-04-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
6402 * Math.cs: fix Floor () and Round (). Closes #23960.
6404 2002-04-27 Nick Drochak <ndrochak@gol.com>
6406 * Array.cs (IList.Contains): Should throw a RankException if this is
6407 called on a Rank > 1 array. Not in the docs, but this is what the
6410 2002-04-26 Duncan Mak <duncan@ximian.com>
6412 * MissingMemberException.cs: Made the message variable 'protected'
6413 instead of 'private', so that we can see it in
6414 MissingMethodException and MissingFieldException.
6416 * MissingFieldException.cs:
6417 * MissingMethodException.cs: Added missing (string, string)
6418 constructor, and also the Message property.
6420 2002-04-26 Martin Baulig <martin@gnome.org>
6422 * Enum.cs: Implemented the IConvertible methods.
6424 2002-04-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
6426 * SByte.cs: little change in Parse (string) to avoid incorrect
6427 OverflowException thrown (reported by nickd).
6429 2002-04-22 Miguel de Icaza <miguel@ximian.com>
6431 * ValueType.cs: Add Serializable attribute.
6433 * String.cs: ifdef-out out the __arglist Concat function until I
6434 add support for that to mcs.
6436 2002-04-24 Patrik Torstensson <patrik.torstensson@labs2.com>
6438 * AppDomain.cs (GetValue): usage of the correct icall (bug)
6440 Wed Apr 24 21:15:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
6442 * GC.cs: implement most of the methods as icalls.
6444 2002-04-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
6446 * DecimalFormatter.cs (ToString): return correct value when the
6447 decimal number is 0.
6449 2002-04-24 Patrik Torstensson <patrik.torstensson@labs2.com>
6451 * Type.cs (GetProperty): fixed call syntax (needs an empty array not null)
6452 * MonoType.cs (GetPropertyImpl) : basic implementation (ignores types, bindingAttr, modifiers)
6454 2002-04-24 Nick Drochak <ndrochak@gol.com>
6456 * Double.cs (Parse): Handle case where there are no digits before the
6457 decimal point, such as ".1".
6459 2002-04-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
6464 * UInt64.cs: fixed bug #23738 (hex numbers parsed wrong).
6466 2002-04-23 Patrik Torstensson <patrik.torstensson@labs2.com>
6468 * String.cs (Split): fixed invalid split of count 0 and 1.
6470 2002-04-23 Patrik Torstensson <patrik.torstensson@labs2.com>
6472 * String.cs (LastIndexOf): fixed argument checking.
6473 * String.cs (Equals): made internal for performace.
6475 2002-04-23 Nick Drochak <ndrochak@gol.com>
6477 * String.cs (Join): check argument and throw exception if needed
6479 2002-04-23 Nick Drochak <ndrochak@gol.com>
6481 * String.cs (StartsWith): check argument and throw exception if needed
6483 2002-04-22 Nick Drochak <ndrochak@gol.com>
6485 * String.cs (IndexOfAny): check arguments and throw exceptions as
6486 neccessary. ALso remove some debug WriteLines.
6488 2002-04-20 Dietmar Maurer <dietmar@ximian.com>
6490 * String.cs: use internal constructors
6493 Thu Apr 18 17:16:15 CEST 2002 Paolo Molaro <lupus@ximian.com>
6495 * MonoType.cs: make GetElementType its own icall.
6497 2002-04-18 Nick Drochak <ndrochak@gol.com>
6499 * String.cs: Modified file. Re-add methods needed by the unit tests.
6501 Thu Apr 18 12:38:32 CEST 2002 Paolo Molaro <lupus@ximian.com>
6503 * String.cs: some code speedups and restored GetTypeCode().
6505 2002-04-17 Patrik Torstensson <patrik.torstensson@labs2.com>
6507 * String.cs: New implementation using internal calls.
6509 2002-04-16 Nick Drochak <ndrochak@gol.com>
6511 * DecimalFormatter.cs: Trim off excess null characters from the string
6512 that decimal2string gives back.
6514 2002-04-16 Nick Drochak <ndrochak@gol.com>
6516 * String.cs (SubString): revert my change. I can't reproduce the
6519 2002-04-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
6521 * Attribute.cs: added GetHashCode and Equals.
6523 2002-04-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
6525 * Enum.cs: little improvements to Format ().
6527 Thu Apr 11 12:28:13 CEST 2002 Paolo Molaro <lupus@ximian.com>
6529 * String.cs: internalcall GetHashCode().
6530 * Array.cS: optimize access to elements.
6532 Wed Apr 10 21:20:19 CEST 2002 Paolo Molaro <lupus@ximian.com>
6534 * String.cs: make IndexOfAny() use an internalcall.
6536 2002-04-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
6541 * UInt64.cs: fixed error when testing for validity of flags.
6543 2002-04-11 Nick Drochak <ndrochak@gol.com>
6545 * Double.cs: Use an internal call for ToString(). This is just a simple
6546 implementation to get away from throwing a NotImplementedException.
6548 2002-04-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
6553 * UInt64.cs: changed Type.GetType () by typeof (), as suggested by
6557 * Int64.cs: throw an OverFlowException when parsing a string
6558 containing a dot followed by any non '0' number.
6560 2002-04-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
6565 * UInt64.cs: added complex Parse ().
6567 2002-04-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
6572 * Int64.cs: added complex Parse ().
6574 2002-04-09 Nick Drochak <ndrochak@gol.com>
6576 * Array.cs (BinarySearch): Add checks on paramters before using them
6577 and throw exceptions as needed.
6579 * Enum.cs (Format): Check if [Flags] is applied to enum and convert
6580 "G" format to "F" if so.
6582 Tue Apr 9 13:12:09 CEST 2002 Paolo Molaro <lupus@ximian.com>
6584 * MonoCustomAttrs.cs: return arrays of type Attribute[]
6585 instead of object[].
6587 2002/04/09 Nick Drochak <ndrochak@gol.com>
6589 * String.cs (Substring): Copy only non-null characters to the new
6592 2002-04-09 Nick Drochak <ndrochak@gol.com>
6594 * IntegerFormatter.cs: Don't use a format character to indicate a
6595 custom format was passed in. It was using 'z' to indicate a custom
6596 format, but really it should throw a format exception if the user
6597 tries to use "z" as the format string. Now it does.
6599 * Activator.cs: New File.
6601 2002-04-08 Nick Drochak <ndrochak@gol.com>
6603 * Enum.cs (ToString): Big ugly fix for the case where [Flags] is
6604 applied to an enum. Need to handle the different possible integer
6605 types of an enum somehow. Can anyone say generics?
6607 Mon Apr 8 06:22:42 2002 Piers Haken <piersh@friskit.com>
6609 * Convert.cs: switched the To*(object) methods to use
6610 IConvertible directly instead of calling ChangeType
6612 Sat Apr 6 20:08:41 CEST 2002 Paolo Molaro <lupus@ximian.com>
6614 * ValueType.cs: make Equals() an internalcall.
6616 Fri Apr 5 15:38:54 CEST 2002 Paolo Molaro <lupus@ximian.com>
6618 * Type.cs: also look for nested types in FindMembers.
6619 * MonoType.cs: make GetNestedTypes() an internalcall.
6621 2002-04-05 Nick Drochak <ndrochak@gol.com>
6623 * Enum.cs (Parse): Handle different underlying types.
6625 2002/04/04 Nick Drochak <ndrochak@gol.com>
6627 * Enum.cs (IsDefined): Throw exception when type of value to look for
6628 is not the correct one. Attempt to have it work with string values
6629 too, but not sure if the unit tests are getting that far yet.
6631 2002-04-04 Nick Drochak <ndrochak@gol.com>
6633 * Decimal.cs: Fix a couple of typos.
6635 Wed Apr 3 19:46:00 CEST 2002 Paolo Molaro <lupus@ximian.com>
6637 * Enum.cs: the values array is of the enum and not of the underlying
6638 type. Updates and some bug fixes.
6639 * MonoType.cs: make the internalcall return FullName instead of the
6640 assembly qualified name.
6641 * Type.cs: make ToString () simply return FullName.
6643 2002-04-03 Nick Drochak <ndrochak@gol.com>
6645 * Type.cs (GetTypeCode): provide some of the implementation for this
6646 method. It's still too simplistic to be considered complete.
6648 2002-04-02 Dietmar Maurer <dietmar@ximian.com>
6650 * Object.cs: fixed FieldGetter/FieldSetter signature
6652 2002-04-02 Nick Drochak <ndrochak@gol.com>
6654 * Environment.cs: add MonoTODO's on parts that should have it.
6656 2002-04-01 Nick Drochak <ndrochak@gol.com>
6658 * Enum.cs: added reality checks (check parameters to most methods that
6661 2002-03-30 Dietmar Maurer <dietmar@ximian.com>
6663 * Object.cs: added FieldGetter/FieldSetter
6665 2002-03-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
6667 * IntegerFormatter.cs: fixed initialization error in static
6670 2002-03-28 Dietmar Maurer <dietmar@ximian.com>
6672 * Delegate.cs: added new field to store a trampoline function
6674 2002-03-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
6676 * IntegerFormatter.cs: added workaround for bug #22668. First patch to
6677 make custom format strings work (not fully functional yet).
6679 2002/03/28 Nick Drochak <ndrochak@gol.com>
6681 * IntegerFormatter.cs: Change class from internal to public. Add
6682 necessary [CLSCompliant(false)] attributes.
6684 2002-03-27 Duco Fijma <duco@lorentz.xs4all.nl>
6685 * _AppDomain.cs, AppDomain.cs: renamed method GetDate to GetData
6688 2002-03-28 Nick Drochak <ndrochak@gol.com>
6690 * Type.cs: Added MonoTODO tags on members that have FIXME, etc.
6692 2002-03-27 Dan Lewis <dihlewis@yahoo.co.uk>
6694 * Console.cs: Modified to get std handles from MonoIO.
6695 * Environment.cs: removed PAL dependencies.
6697 2002-03-25 Miguel de Icaza <miguel@ximian.com>
6699 * String.cs (System): Removed internal enumeration, because
6700 bootstrapping the corlib at this point does not support
6703 * IntPtr.cs: Temporary work-around until I fix the assembly
6706 2002-03-24 Martin Baulig <martin@gnome.org>
6708 * Enum.cs (GetValues): According to the docu this is sorted after
6711 * String.cs (System): Removed enumeration, because it is pretty
6712 hard to support enumerations in /nostdlib mode for the core types.
6714 Tue Mar 19 18:18:49 CET 2002 Paolo Molaro <lupus@ximian.com>
6716 * Array.cs: move error handling in the catch block.
6717 * MulticastDelegate.cs: remove == and != operators that were
6718 removed with the delegate changes (when you add stuff, please do not
6719 remove existing functionality!).
6720 * Type.cs: if a property is not found in a type, search for it
6721 in the parent types, too.
6723 2002-03-18 Dan Lewis <dihlewis@yahoo.co.uk>
6725 * Math.cs: changed to use icall instead of PAL.
6727 2002-03-18 Dietmar Maurer <dietmar@ximian.com>
6729 * Double.cs: added check for NaN (Bug [22082])
6731 2002-03-19 Nick Drochak <ndrochak@gol.com>
6733 * Enum.cs (Equals): check for null and throw if it is.
6734 * Enum.cs (Format): check for null parameters and throw if necessary.
6735 This method still needs more argument checking.
6737 2002-03-18 Dietmar Maurer <dietmar@ximian.com>
6739 * Enum.cs (Equals): check if Enums are of the same type
6741 2002-03-18 Nick Drochak <ndrochak@gol.com>
6743 * Double.cs: Explicitly handle comparisons in CompareTo() for
6744 Positive/Negative Infinity and NaN. Unit Test now passes on Linux.
6746 * Enum.cs(CompareTo): Check types of values before trying to compare.
6747 Throw exceptions if types are invalid or don't match.
6749 2002-03-14 Miguel de Icaza <miguel@ximian.com>
6751 * Array.cs: Add some extra debugging information.
6753 2002-03-15 Nick Drochak <ndrochak@gol.com>
6755 * Array.cs: Added IList and IEnumerable.
6757 2002-03-14 Miguel de Icaza <miguel@ximian.com>
6759 * UInt64.cs, UInt32.cs, UInt16.cs: Mark public parse methods as
6762 2002-03-14 Dietmar Maurer <dietmar@ximian.com>
6764 * Delegate.cs (Equals): also compare method_ptr
6765 (GetHashCode): returm method_ptr as hash
6767 2002-03-13 Duco Fijma <duco@lorentz.xs4all.n>
6768 * TimeSpan.cs: removed the use of Custom Numeric Format Strings,
6769 such as 42.ToString("0000000"), as these are (currently) not implemented
6770 in System.IntegerFormatter. TimeSpan luckely can do with Standard
6771 Numeric Format Strings, such as 42.ToString("D7").
6773 2002-03-12 Duncan Mak <duncan@ximian.com>
6775 * FieldAccessException.cs:
6776 * MethodAccessException.cs:
6777 * PlatformNotSupportedException.cs: Inherit from
6778 MemberAccessException, not SystemException.
6780 * ObsoleteAttribute.cs: Made Message and IsError properties
6783 Tue Mar 12 19:21:18 CET 2002 Paolo Molaro <lupus@ximian.com>
6785 * GC.cs: make SuppressFinalize() a nop.
6786 * Delegate.cs: fix == operator.
6788 2002-03-13 Nick Drochak <ndrochak@gol.com>
6790 * Enum.cs: Add IConvertible methods. Cyclic dependancy fixed in the
6791 runtime that goes with this patch.
6793 2002-03-10 Martin Baulig <martin@gnome.org>
6795 * Int32.cs (Parse): Correctly parse negative numbers.
6797 2002-03-08 Martin Baulig <martin@gnome.org>
6799 * String.cs (Split): Really fix it this time. Also adding several new
6800 testcase to the testsuite.
6802 2002-03-08 Martin Baulig <martin@gnome.org>
6804 * Array.cs (Copy): Optimized: removed duplicate null check, removed
6805 two duplicate GetLowerBound() calls and one duplicate IsValueType.
6807 Fri Mar 8 18:49:19 CET 2002 Paolo Molaro <lupus@ximian.com>
6809 * Object.cs: commit my hacked GetHashCode(): it's good enough for now.
6810 * String.cs: use the dumb code for IndexOf(string): this is worth
6811 15-20 % speedup in mcs compile with mint.
6813 Fri Mar 8 12:45:44 CET 2002 Paolo Molaro <lupus@ximian.com>
6815 * String.cs: revert change to Split() that broke the compiler (hi martin!:-).
6817 2002-03-07 Martin Baulig <martin@gnome.org>
6819 * String.cs (Join): Throw an ArgumentNullException.
6820 (LastIndexOf (string,int,int)): This method does a backwards search,
6821 so startIndex points to the end of value, not to its beginning. Don't
6822 throw an exception if startIndex equals this.Length. Always return -1
6823 if startIndex is smaller than the length of value.
6824 (Replace (string,string)): Replace all occurences of oldValue.
6825 If newValue is null, all occurences of oldValue are to be removed.
6826 (Split (char[],int)): Return an empty array if maxCount is zero, throw
6827 an ArgumentOutOfRangeException if it's less than zero. Return maxValue
6828 elements, not maxValue+1.
6830 Thu Mar 7 17:16:06 CET 2002 Paolo Molaro <lupus@ximian.com>
6832 * MonoType.cs: make GetEvents() an internal call.
6833 * MulticastDelegate.cs: copy the passed in array.
6835 2002-03-06 Martin Baulig <martin@gnome.org>
6837 * Array.cs (Copy): Use FastCopy when appropriate and do correct
6840 2002-03-06 Duco Fijma <duco@lorentz.xs4all.nl>
6841 * CharEnumerator.cs: fixes to CharEnumertor.MoveNext, fixing
6842 some of the failures found be new tests (see ChangeLog in
6843 Test/System). Comments added to this method, based on
6844 the representation invariant of this class, that (try to) explain
6845 why it now should be correct.
6847 2002-03-06 Dietmar Maurer <dietmar@ximian.com>
6849 * Int64.cs (Parse): bug fix for max. negative value.
6851 2002-03-07 Nick Drochak <ndrochak@gol.com>
6853 * RuntimeTypeHandle.cs: Add Serializable attribute as the docs say.
6854 I need to understand what the difference between the attribute and
6857 2002-03-06 Martin Baulig <martin@gnome.org>
6859 * Array.cs (Copy): Always throw an ArrayTypeMismatchException, not
6860 an InvalidCastException if the widening conversion failed. See
6861 testcases #M94-#M96.
6863 * Array.cs (CopyTo): Bug fix from Ajay Dwivedi, correctly handle
6864 arrays with non-zero lower bounds. Also adding testcases #F10-#F13
6867 * Array.cs (CopyTo): Reverted my last change, it was incorrect.
6868 (Copy): Actually allow copying multi-dimensional arrays.
6870 2002-03-05 Duncan Mak <duncan@ximian.com>
6873 (DBNull) Added the missing field.
6874 (IsDBNull) Fixed typo.
6875 (ToByte (string, int)) Implemented.
6876 (ToString (byte, int)) Implemented.
6878 (BuildConvertedString) internal functions used for converting values to
6886 * UInt32.cs: Implemented the IConvertible interface.
6888 * CharEnumerator.cs: Renamed to variables to be clearer and
6889 changed some of the tests to conform to the 1.0 spec.
6891 2002-03-06 Martin Baulig <martin@gnome.org>
6893 * Array.cs (Copy): Calculate absolute array position here and use
6894 GetValueImpl() and SetValueImpl() with that position. We can now
6895 copy multi-dimensional arrays.
6896 (CopyTo): Small bug fix.
6898 2002-03-05 Duco Fijma <duco@lorentz.xs4all.nl>
6900 * Version.cs: CompareTo changed according the LAMESPEC discovered by
6901 Nick (See VersionTest.cs).
6902 * CharEnumerator.cs: fixed two bugs in MoveNext. It had an off-by-one
6903 error comparing the current position (idx) against the length of the
6904 string iterated and it set idx to an unrecognized special value (-2)
6906 Tue Mar 5 17:34:14 CET 2002 Paolo Molaro <lupus@ximian.com>
6908 * SByte.cs, UInt64.cs: implement IConvertible interface. Nobody wants
6909 to do this dirty work, but someone has to do it (and I need it to pass
6910 the "200 sample tests compiled on linux" mark).
6912 2002-03-06 Nick Drochak <ndrochak@gol.com>
6915 * DecimalFormatter.cs
6922 * RuntimeMethodHandle.cs
6923 * RuntimeTypeHandle.cs
6926 Add [MonoTODO]'s to places where we currently throw a
6927 NotImplementedException.
6929 2002-03-05 Dietmar Maurer <dietmar@ximian.com>
6931 * Int16.cs (Parse): do not overflow on max negative value
6933 * Int32.cs (Parse): do not overflow on max negative value
6935 Mon Mar 4 20:36:05 CET 2002 Paolo Molaro <lupus@ximian.com>
6937 * Type.cs: fixed IsClass.
6938 * MonoType.cs: fixed MemberType, IsPrimitiveImpl, IsPointerImpl,
6939 IsByRefImpl. Added GetInterfaces().
6940 * IServiceProvider.cs: compilation fix.
6942 Mon Mar 4 18:37:03 CET 2002 Paolo Molaro <lupus@ximian.com>
6944 * Array.cs: allow copying an empty array to an empty array.
6946 Mon Mar 4 17:59:16 CET 2002 Paolo Molaro <lupus@ximian.com>
6948 * String.cs: fixed LastIndexOf (string) to do a bit of argument
6951 2002-03-04 Duco Fijma <duco@lorentz.xs4all.nl>
6952 * Version.cs: many fixes to failures found by the newly created
6953 test cases for this class. Specifically, the CompareTo member
6954 returned wrong values due to the use of Int32.MaxValue as a special
6955 value indicating an "undefined" version component. Also implemented the
6956 missing operators (==, <, >, etc.), one missing constructor and
6957 and some exception throwing.
6959 2002-03-04 Nick Drochak <ndrochak@gol.com>
6961 * IServiceProvider.cs: Add missing attribute: ComVisible(false)
6962 * Attribute.cs: Add missing attributes: Serializable and
6963 AttributeUsage(AttributeTargets.All)
6965 Mon Mar 4 11:26:49 CET 2002 Paolo Molaro <lupus@ximian.com>
6967 * MonoType.cs: implemented GetConstructors(), GetFields(),
6968 GetMethods(), GetProperties().
6969 * Object.cs: added debugging icall obj_address().
6970 * Type.cs: fixed the binding flags for some Get* methods.
6971 Implemented FindMembers() as calls to the specific GetMember
6974 2002-03-01 Duco Fijma <duco@lorentz.xs4all.nl>
6975 * BitConverter.cs: fixed one little bug: ToString(s, n, 0)
6976 should give an exception for n>=s.Length.
6978 2002-03-01 Martin Baulig <martin@gnome.org>
6980 * Array.cs: More argument checking and bug fixing.
6982 2002-03-01 Miguel de Icaza <miguel@ximian.com>
6984 * BitConverter.cs: Indentation match
6986 * AppDomain.cs: Added MonoTODOs to this too.
6988 * Buffer.cs: Added MonoTODOs to this.
6990 2002-03-01 Martin Baulig <martin@gnome.org>
6992 * Array.cs: Added argument checking to all methods where it was missing.
6994 2002-03-01 Duco Fijma <duco@lorentz.xs4all.nl>
6996 * BitConverter.cs: Fixed bugs in ToString methods
6998 Fri Mar 1 15:20:00 CET 2002 Paolo Molaro <lupus@ximian.com>
7000 * MulticastDelegate.cs: implement operators so mcs3 can be used on linux.
7002 2002-03-01 Nick Drochak <ndrochak@gol.com>
7004 * BitConverter.cs: Throw ArgumentException like mscorlib, instead of
7005 ArgumentOutOfRangeException like the docs say.
7007 2002-03-01 Martin Baulig <martin@gnome.org>
7009 * Enum.cs (CompareTo): Correctly override this method from IComparable.
7011 * Console.cs (setIn, setOut, setError): It's called SetIn, SetOut, SetError.
7013 2002-02-28 Martin Baulig <martin@gnome.org>
7015 * String.cs: This file now passes the testsuite on Linux :-)
7017 * String.cs (Intern, IsInterned): The interncalls are now called _Intern and _IsInterned;
7018 make them private and provide C# wrappers which do proper argument checking.
7020 * String.cs (Format): Correctly handle escaped brackets.
7022 * String.cs (_CompareChar): New internal function which compares two chars.
7023 (_Compare): Provide an internal compare method which can do all sorts of
7024 comparision and call it from all the Compare() methods. Also fixed a lot of
7025 bugs here, this code now actually passes the testsuite.
7027 2002-02-28 Duncan Mak <duncan@ximian.com>
7029 * Convert.cs: Added the missing methods. The new class status page
7030 kicks ass, it even found my typos! Woohoo!
7031 (ConvertFromBase): Moved the Exception throwing in here and
7032 removed the other occurances so it's all centralized now.
7033 (ISDBNull): Implemented.
7034 (GetTypeCode): Implemented.
7036 2002-02-27 Duco Fijma <duco@lorentz.xs4all.nl>
7037 * Guid.cs: Guid.ToString("") and Guid.ToString(null) is now understood as Guid.ToString("D")
7038 just as in mscorlib. There is (probably) a documentation bug in the MS FrameWork SDK, which
7039 states that a lacking format should be interpreted as "N".
7040 Also added [Serializable] attribute
7041 * TimeSpan.cs: some formatting and added the [Serializable] attribute
7043 2002-02-26 Duncan Mak <duncan@ximian.com>
7045 * WeakReference.cs: Committed for Ajay Kumar Dwivedi.
7047 2002-02-26 Martin Baulig <martin@gnome.org>
7049 * TimeZone.cs: Use an internal enum rather than magic numbers to access the
7050 fields of the interncall GetTimeZoneData.
7052 * DateTime.cs: Implemented Parse and fixed a few bugs.
7054 * String.cs (TrimStart): Small fix.
7056 2002-02-26 Martin Baulig <martin@gnome.org>
7058 * DateTime.cs: ParseExact is now fully functional.
7060 * String.cs (TrimEnd): Small fix.
7062 2002-02-26 Duco Fijma <duco@lorentz.xs4all.nl>
7063 * TimeSpan.cs: Added method TimeSpan.FromMilliseconds, mysteriously
7064 missing for about six months.
7066 Tue Feb 26 14:21:19 CET 2002 Paolo Molaro <lupus@ximian.com>
7068 * UInt64.cs: fixed Parse method () to handle some of the NumberStyle flags.
7070 2002-02-26 Martin Baulig <martin@gnome.org>
7072 * DateTime.cs: Miguel already committed this, but there was still a
7073 ChangeLog entry for this missing ....
7074 We're now reusing functionality from TimeSpan, printing dates is
7075 fully implemented, currently working on parsing.
7077 * TimeZone.cs: Fully implemented this. There's a new InternCall in the
7080 Fri Feb 22 18:47:08 CET 2002 Paolo Molaro <lupus@ximian.com>
7082 * MonoType.cs: disable constructor.
7083 * Object.cs: make GetType() an internalcall.
7084 * Type.cs: added correct bindingflags to GetMethods ().
7085 All such calls should be reviewed to use the correct flags.
7087 Thu Feb 21 19:23:46 CET 2002 Paolo Molaro <lupus@ximian.com>
7089 * Type.cs, MonoType.cs: type_is_subtype_of () changed to include extra
7092 Thu Feb 21 16:56:51 CET 2002 Paolo Molaro <lupus@ximian.com>
7094 * Type.cs: implemented IsAssignableFrom.
7096 2002-02-21 Duco Fijma <duco@lorentz.xs4all.nl>
7097 * Guid.cs: fixed Guid.Guid(string) ctor. Changed format:
7098 "{0xdddddddd,0xdddd,0xdddd,{0xdd},{0xdd},{0xdd},{0xdd},{0xdd},{0xdd}}"
7099 to "{0xdddddddd,0xdddd,0xdddd,{0xdd,0xdd,0xdd,0xdd,0xdd,0xdd}}"
7100 The former is documented by Microsoft. The latter is how they
7101 actually implemented it in mscorlib:-)
7103 Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>
7105 * MonoCustomAttrs.cs: hooks to get the custom attributes from the
7107 * MonoType.cs: Implemented custom attributes methods.
7110 2002-02-21 Duco Fijma <duco@lorentz.xs4all.nl>
7113 Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>
7115 * MonoCustomAttrs.cs: hooks to get the custom attributes from the
7117 * MonoType.cs: Implemented custom attributes methods.
7119 2002-02-19 Dietmar Maurer <dietmar@ximian.com>
7121 * Array.cs (CopyTo): use GetLength() instead of GetUpperBound()
7123 2002-02-19 Duncan Mak <duncan@ximian.com>
7125 * Convert.cs: Finished up the missing methods in Convert. Added a
7126 new private method ConvertFromBase.
7128 2002-02-19 Dietmar Maurer <dietmar@ximian.com>
7130 * String.cs: impl. IConvertible interface
7132 2002-02-18 Duco Fijma <duco@lorentz.xs4all.nl>
7133 * Guid.cs: actual implementation for Guid.Guid(string) Ctor
7135 2002-02-18 Duncan Mak <duncan@ximian.com>
7137 * Convert.cs: Changed from using Type.GetType (string) to just
7138 typeof (). Probably will speed things up a bit?
7140 2002-02-18 Ajay Kumar Dwivedi <AjayKumar.Dwivedi@dresdner-bank.com>
7143 1. Fix for GetUpperBound to return correct values
7144 2. made some Properties virtual
7145 3. Adds IsFixedSize and IsReadOnly properties.
7146 4. changes CreateInstance(Type,int[],int[]) to throw Exception
7147 when third arg is null. InternalCall CreateInstance changed to
7149 5. Fixed array.GetUpperBound at a couple of places
7150 6. IndexOf and LastIndexOf now use Object.Equals instead of "=="
7151 7. Added two FIXME's in BinarySearch functions.
7153 2002-02-17 Duncan Mak <duncan@ximian.com>
7155 * TimeZone.cs: Applied the rest of Ajay's patch for
7156 IsDaylightSavingTime. Thanks a lot for the nice explanation of how
7159 2002-02-17 Duco Fijma <duco@lorentz.xs4all.nl>
7160 * Guid.cs: added stub for Guid(string) ctor
7162 2002-02-17 Duncan Mak <duncan@ximian.com>
7164 * Convert.cs: Near-complete implementation of Convert.cs
7166 Added all the To* methods taking (object) and
7167 (object, IFormatProvider) as parameters.
7169 Added [CLSCompliant (false)] attributes to methods dealing with
7172 Added the missing section on converting to and from DateTime. Only
7173 6 missing methods, all marked with MonoTODOs. Will tackle them later.
7175 2002-02-16 Duncan Mak <duncan@ximian.com>
7177 * TimeZone.cs: patch from Ajay Kumar Dwivedi (adwiv@yahoo.com) to
7178 make IsDaylightSavingTime (DateTime) call
7179 IsDaylightSavingTime (DateTime, DaylightTime).
7181 Added internal class CurrentTimeZone from Ajay. It needs more work
7182 to fill in the appropriate internal calls.
7184 Sat Feb 16 12:41:41 CET 2002 Paolo Molaro <lupus@ximian.com>
7186 * Type.cs: fix IsClass.
7188 Sat Feb 16 12:02:02 CET 2002 Paolo Molaro <lupus@ximian.com>
7190 * String.cs: fix Trim().
7192 Fri Feb 15 21:02:46 CET 2002 Paolo Molaro <lupus@ximian.com>
7194 * String.cs: fix more off by one errors.
7196 Thu Feb 14 18:54:09 CET 2002 Paolo Molaro <lupus@ximian.com>
7198 * MonoType.cs: fix IsValueTypeImpl.
7199 * Type.cs: fix IsEnum. Implement Equals methods.
7201 Wed Feb 13 21:50:13 CET 2002 Paolo Molaro <lupus@ximian.com>
7203 * Int32.cs: implement IConvertible interface.
7205 2002-02-12 Duncan Mak <duncan@ximian.com>
7207 * TimeZone.cs: Implemented and added to CVS.
7209 2002-02-11 Duncan Mak <duncan@ximian.com>
7211 * Convert.cs: Implemented the ChangeType () methods.
7213 Mon Feb 11 19:48:58 CET 2002 Paolo Molaro <lupus@ximian.com>
7215 * Array.cs: make Clone() an internal call.
7217 2002-02-09 Duco Fijma <duco@lorentz.xs4all.nl>
7218 * Changed Guid.NewGuid so that it can use both System.Random and
7219 System.Security.Cryptography.RandomNumberGenerator
7221 2002-02-09 Duco Fijma <duco@lorentz.xs4all.nl>
7222 * First version of Guid.NewGuid
7224 2002-02-08 Duncan Mak <duncan@ximian.com>
7226 * RuntimeArgumentHandle.cs: Added to CVS.
7228 Fri Feb 8 19:14:54 CET 2002 Paolo Molaro <lupus@ximian.com>
7230 * CrossAppDomainDelegate.cs, AssemblyLoadEventHandler.cs,
7231 UnhandledExceptionEventHandler.cs: added delegates.
7233 Fri Feb 8 18:06:20 CET 2002 Paolo Molaro <lupus@ximian.com>
7235 * MarshalByRefObject.cs: add ToString () method
7236 (apparently needed by nunit).
7237 * _AppDomain.cs: uncomment ToString(): dietmar fixed the bug triggered
7238 by it in the runtime.
7240 2002-02-08 Dan Lewis <dihlewis@yahoo.co.uk>
7242 * String.cs (Format): implemented
7244 2002-02-07 Duncan Mak <duncan@ximian.com>
7246 * DuplicateWaitObjectException:
7247 * InvalidCastException:
7248 * NotImplementedException:
7249 * NotSupportedException:
7250 * NullReferenceException:
7251 * OutOfMemoryException:
7252 * OverflowException:
7254 * StackOverflowException.cs:
7255 * UnauthorizedAccessException: Added missing constructor used for serialization.
7257 2002-02-07 Dietmar Maurer <dietmar@ximian.com>
7259 * String.cs (System.Compare): bug fix
7261 2002-02-06 Dietmar Maurer <dietmar@ximian.com>
7263 * Enum.cs (Parse, GetHashCode): impl.
7265 2002-02-05 Duncan Mak <duncan@ximian.com>
7267 * DBNull.cs: This is my first crack at the DBNull class. I think I
7268 actually got most of the IConvertible methods right, but I haven't
7269 done the research to test whether or not this is the correct
7270 behavior. IConvertible.ToType () is the most iffy of all, IMHO.
7272 * DllNotFoundException.cs: Inherits from TypeLoadException, not SystemException.
7274 2002-02-05 Dietmar Maurer <dietmar@ximian.com>
7276 * Enum.cs: added more functionality (GetName, ToObject, Equals)
7278 2002-01-31 Duncan Mak <duncan@ximian.com>
7280 * InvalidOperationException.cs:
7281 * NotFiniteNumberException.cs:
7282 * ObjectDisposedException.cs:
7283 * TypeInitializationException.cs: Added missing bits for serialization/
7285 * AppDomainUnloadedException.cs:
7286 * ApplicationException.cs:
7287 * ArgumentOutOfRangeException.cs:
7288 * ArithmeticException.cs:
7289 * ArrayTypeMismatchException:
7290 * BadImageFormatException.cs:
7292 * MissingMemberException.cs:
7293 * TypeLoadException.cs: Added missing bits for serialization.
7295 2002-01-30 Duco Fijma <duco@lorentz.xs4all.nl>
7296 * Guid.cs: implemented everything but Guid.NewGuid
7298 Tue Jan 29 22:32:36 CET 2002 Paolo Molaro <lupus@ximian.com>
7300 * _AppDomain.cs: remove ToString() method: it doesn't seem right
7301 to have it in this interface and it screws up the method vtable setup.
7303 2002-01-28 Andrei Zmievski <andrei@php.net>
7305 * Double.cs: implemented IConvertible interface.
7307 2002-01-28 Miguel de Icaza <miguel@ximian.com>
7309 * ArgumentException.cs: Implement serialization constructor.
7310 (GetObjectData): Implement serializer.
7312 * ArgumentNullException.cs: Implement serialization constructor.
7314 * Exception.cs: Implement serialization constructor.
7315 (GetObjectData): Implement serializer.
7317 2002-01-23 Miguel de Icaza <miguel@ximian.com>
7319 * DateTime.cs (UnixEpoch): The Begining of the Unix epoch.
7321 2002-01-23 Duncan Mak <duncan@ximian.com>
7323 * EntryPointNotFoundException.cs:
7324 * FormatException: Added missing constructor and related bits.
7326 * TypeLoadException: Added missing constructor, methods and properties.
7328 2002-01-23 Miguel de Icaza <miguel@ximian.com>
7330 * AppDomain.cs (GetAssemblies): Use foreach construct instead of
7331 manually getting the enumerator.
7333 (AppDomain.AppDomain): Prime the loaded assemblies with the
7334 assemblies loaded by the runtime in our behalf.
7336 * AppDomainSetup.cs: Remove private keyword, that is the default.
7337 Add a new property DisallowPublisherPolicy.
7339 * AppDomain.cs (AppDomain.GetAssemblies): Implement.
7341 Tue Jan 22 22:51:48 CET 2002 Paolo Molaro <lupus@ximian.com>
7343 * MonoType.cs, Type.cs: many updates, corrected implementation,
7346 2002-01-20 Andrei Zmievski <andrei@php.net>
7349 * Char.cs: implemented IConvertible interface.
7351 * Boolean.cs: use our own ToString() method directly.
7353 2002-01-20 Duncan Mak <duncan@ximian.com>
7355 * Files I commited recently: Fixed indentation style.
7357 2002-01-20 Nick Drochak <ndrochak@gol.com>
7359 * SerializableAttribute.cs: this attrib can be used on enums, structs,
7360 and delegates too. Added the appropriate usage flags.
7362 2002-01-18 Duncan Mak <duncan@ximian.com>
7364 * CharEnumerator.cs: Implemented.
7365 * String.cs (System): Fixed the GetEnumerator () method(s).
7367 * ObsoleteAttribute.cs:
7368 * STAThreadAttribute.cs:
7369 * MTAThreadAttribute.cs:
7370 * ThreadStaticAttribute.cs:
7371 * LoaderOptimizationAttribute.cs:
7372 * PlatformNotSupportedException.cs:
7373 * LoaderOptimization.cs: Added to CVS.
7375 2002-01-18 Duncan Mak <duncan@ximian.com>
7377 * AppDomainUnloadedException.cs:
7378 * MethodAccessException.cs:
7379 * ContextMarshalException.cs:
7380 * CannotUnloadAppDomainException.cs:
7381 * DllNotFoundException.cs:
7382 * EntryPointNotFoundException.cs:
7383 * FieldAccessException.cs:
7384 * TypeUnloadedException.cs:
7385 * MissingFieldException.cs: Added to CVS.
7387 * ApplicationException.cs:
7388 * MemberAccessException.cs:
7389 * MissingMemberException.cs
7390 * MissingMethodException.cs:
7391 * SystemException.cs: Added [Serializable] attribute.
7393 * Exception.cs: Added [Serializable] attribute, made properties
7394 'Message', 'Source' and 'StackTrace' virtual methods, per 1.0
7397 * ContextStaticAttribute.cs: Added [Serializable] attribute and
7398 put in the missing constructor.
7400 * Environment.cs: Commented out references to
7401 EnvironmentPermissionAttribute, because they're just stubbed out
7402 right now and has no implementation.
7404 2002-01-16 Andrei Zmievski <andrei@php.net>
7406 * Boolean.cs: implemented IConvertible interface
7408 2002-01-15 Nick Drochak <ndrochak@gol.com>
7410 * ResolveEventArgs.cs: class should derive from EventArgs.
7412 2002-01-14 Miguel de Icaza <miguel@ximian.com>
7414 * String.cs (System): Use DefaultMemberName for the String class.
7416 Mon Jan 14 17:06:40 CET 2002 Paolo Molaro <lupus@ximian.com>
7418 * String.cs: use IndexerName in index char accessor.
7420 Thu Jan 10 21:05:23 CET 2002 Paolo Molaro <lupus@ximian.com>
7422 * MonoType.cs: add rank to MonoTypeInfo and implement GetArrayRank.
7423 * String.c: eliminate 64k+ method calls in search.
7424 * Type.cs: handle byref and array types in ToString ().
7426 2002-01-09 Duco Fijma <duco@lorentz.xs4all.nl>
7428 * Guid.cs: created first version
7430 2002-01-10 Dietmar Maurer <dietmar@ximian.com>
7432 * MonoType.cs: added missing TypeAttributes to MonoTypeInfo
7434 Wed Jan 9 19:35:07 CET 2002 Paolo Molaro <lupus@ximian.com>
7436 * MulticastDelegate.cs: add == and != operator stubs.
7437 * String.cs: check for null in == operator.
7438 * Type.cs: use a virtual method to get TypeAttributes.
7440 Tue Jan 8 23:30:19 EST 2002 Matt Kimball <matt@kimball.net>
7441 * String.cs: Fixed several off-by-one errors in LastIndexOf* methods
7443 2002-01-09 Nick Drochak <ndrochak@gol.com>
7445 * Environment.cs: Comment out Security attribute and put a MonoTODO
7446 there as a reminder. We need mcs magic to handle security attributes in
7449 2002-01-07 Duco Fijma <duco@lorentz.xs4all.nl>
7450 * Created IAppDomainSetup.cs
7452 2002-01-06 Duco Fijma <duco@lorentz.xs4all.nl>
7453 * Created System._AppDomain interface in _AppDomain.cs
7455 2002-01-06 Nick Drochak <ndrochak@gol.com>
7457 * ResolveEventArgs.cs: New File, completely implemented! ;)
7459 Sat Jan 5 15:53:50 CET 2002 Paolo Molaro <lupus@ximian.com>
7461 * Enum.cs: dummy ToString impl.
7462 * String.cs: dummy format implementations to get compiler errors
7464 * Type.cs: implemented filter delegates. FindMembers runs the filter, now.
7466 2002-01-05 Ravi Pratap <ravi@ximian.com>
7468 * TODOAttribute.cs : Augment some more; provide two constructors
7469 with support for a comment too.
7471 2002-01-05 Nick Drochak <ndrochak@gol.com>
7473 * Uncommented those MonoTODO's now that Ravi's got
7476 2001-01-04 Ravi Pratap <ravi@ximian.com>
7478 * TODOAttribute.cs : Actually add this time ;-)
7480 Change name to MonoTODO.
7482 2002-01-04 Jeffrey Stedfast <fejj@ximian.com>
7484 * String.cs (Trim): Fixed a few logic bugs in the code that
7485 calculated how much to trim off the end of the string.
7487 2001-01-04 Nick Drochak <ndrochak@gol.com>
7489 * Commented out the [TODO] attributes for now. We don't have the
7490 class written. Also changed it to [MonoTODO]
7492 2002-01-04 Ravi Pratap <ravi@ximian.com>
7494 * TODOAttribute.cs : Add. We use this attribute to tag all bits in
7495 our class libraries that are incomplete.
7497 * Array.cs : Apply attribute wherever we find a FIXME which says
7498 we need something to be implemented there.
7502 * MulticastDelegate.cs : Ditto.
7504 * RuntimeFieldHandler.cs, RuntimeMethodHandle.cs,
7505 RuntimeTypeHandle.cs : Ditto.
7507 * String.cs : Ditto.
7511 * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs, Delegate.cs : Ditto.
7513 * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs, Single.cs,
7514 UInt16.cs, UInt32.cs, ValueType.cs: Ditto.
7516 * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs,
7517 Delegate.cs : Ditto.
7519 * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs,
7520 Single.cs, UInt16.cs, UInt32.cs, ValueType.cs: Ditto.
7522 Thu Jan 3 23:24:04 CET 2002 Paolo Molaro <lupus@ximian.com>
7524 * Delegate.cs: add Remove() stub.
7525 * Enum.cs: add ToObject().
7526 * Type.cs: add IsEnum property.
7528 2002-01-03 Kristian Rietveld <kris@gtk.org>
7530 * Convert.cs: add non-CLS-compliant ToBoolean methods for char,
7531 DateTime and object.
7533 2001-12-30 Nick Drochak <ndrochak@gol.com>
7535 * Byte.cs (Parse): Add comments to aid in testing.
7537 2001-12-21 Miguel de Icaza <miguel@ximian.com>
7539 * Char.cs (Parse): Implement.
7541 * Byte.cs (Parse): Implement a fast parser.
7543 * SByte.cs (Parse): Implement a fast parser.
7545 * UInt16.cs (Parse): Implement a fast parser.
7547 * Int16.cs (Parse): Implement a fast parser.
7549 * UInt32.cs (Parse): Implement a fast parser.
7551 * Int32.cs (Parse): Implement a fast parser.
7553 Fri Dec 21 15:14:52 CET 2001 Paolo Molaro <lupus@ximian.com>
7555 * Array.cs: fix null ref in sort code.
7556 * UInt64.cs: add bare-bones parse.
7558 Thu Dec 20 15:29:52 CET 2001 Paolo Molaro <lupus@ximian.com>
7560 * Byte.cs: removed use of Regexes.
7562 Tue Dec 18 18:39:54 CET 2001 Paolo Molaro <lupus@ximian.com>
7564 * Enum.cs: implemented GetValues(), GetNames(), GetName(),
7565 IsDefined(), GetUnderlyingType().
7566 * String.cs: fix one instance of Compare().
7567 * Type.cs: implemented GetProperties(), GetProperty().
7569 Thu Dec 13 20:10:57 CET 2001 Paolo Molaro <lupus@ximian.com>
7571 * Array.cs: implement CopyTo ().
7572 * Char.cs: implement ToString ().
7573 * Exception.cs: bugfix.
7574 * Int32.cs: bare-bones Parse ().
7575 * MonoType.cs: query the needed info with an internalcall.
7576 * String.cs: speedups, bugfixes, reduced copies.
7577 * Type.cs: added missing fields. Implemented many of the Is*
7578 properties. Implemented GetMethod(), GetConstructor(), GetMethods(),
7579 GetFields(), FindMembers(), ToString().
7581 2001-12-11 Dick Porter <dick@ximian.com>
7583 * DateTime.cs: Implemented FromFileTime() and ToFileTime()
7585 * Console.cs: Use handles rather than casting file descriptors
7587 2001-12-08 Nick Drochak <ndrochak@gol.com>
7589 * Byte.cs (Parse): Start implementation. Parse(string) works, but
7590 now we need to handle other formats
7592 2001-12-06 Dietmar Maurer <dietmar@ximian.com>
7594 * DateTime.cs: added an icall to GetNow()
7596 2001-12-04 Dietmar Maurer <dietmar@ximian.com>
7598 * Double.cs: added the parse method from Bob Smith
7600 2001-11-28 Miguel de Icaza <miguel@ximian.com>
7606 * Int32.cs (Int32.CompareTo): Fix because we can not just
7607 substract the values.
7609 Return possitive value if the object is null.
7611 * Boolean.cs: (Boolean.CompareTo): ditto.
7613 * Int16.cs (Int16.CompareTo): ditto.
7615 * Byte.cs (Byte.CompareTo): ditto.
7617 * SByte.cs (SByte.CompareTo): ditto.
7619 * Char.cs (Char.CompareTo): ditto.
7621 * Decimal.cs (Decimal.CompareTo): ditto.
7623 * Int64.cs (Int64.CompareTo): ditto.
7629 2001-11-28 Nick Drochak <ndrochak@gol.com>
7631 * Byte.cs: Throw NotImplementedException for Parse.
7633 2001-11-27 Derek Holden <dholden@draper.com>
7635 * IntegerFormatter.cs: Formatting of type "Number" was not
7636 using NumberFormatInfo.NumberNegativePattern.
7638 2001-11-26 Dick Porter <dick@ximian.com>
7640 * LocalDataStoreSlot.cs: No need to delete a system TLS slot in
7641 the finalise routine any more
7643 2001-11-21 Miguel de Icaza <miguel@ximian.com>
7645 * ApplicationException.cs: internationalize by adding calls to
7646 Locale.GetText (). And throw NotImplementedExceptions on calls
7647 that we have to implement.
7649 * Version.cs: Ditto.
7651 * ValueType.cs: ditto.
7653 * UnauthorizedAccessException.cs: ditto.
7661 * TypeLoadException.cs: ditto
7663 * TypeInitializationException.cs: ditto.
7667 * TimeSpan.cs: ditto.
7669 * SystemException.cs: ditto.
7673 * StackOverflowException.cs: ditto.x
7679 * RuntimeTypeHandle.cs: ditto.
7681 * RuntimeMethodHandle.cs: ditto.
7683 * RuntimeFieldHandle.cs: ditto.
7687 * OutOfMemoryException.cs: ditto.
7689 * OperatingSystem.cs: ditto.
7691 * ObjectDisposedException.cs: ditto.
7693 * NullReferenceException.cs: ditto.
7695 * NotImplementedException.cs: ditto.
7697 * NotFiniteNumberException.cs: ditto.o
7699 * MulticastNotSupportedException.cs: ditto.
7701 * MissingMethodException.cs: ditto.
7703 * MemberAccessException.cs: ditto.
7707 * InvalidCastException.cs: ditto.
7709 * IntegerFormatter.cs: ditto.
7715 * IndexOutOfRangeException.cs: ditto.
7717 * Environment.cs: ditto
7721 * DuplicateWaitObjectException.cs: ditto.
7723 * DivideByZeroException.cs: ditto.
7725 * Delegate.cs: ditto
7727 * DecimalFormatter.cs: ditto.
7729 * Decimal.cs: ditto.
7731 * DateTime.cs: ditto.
7733 * Convert.cs: ditto.
7739 * Boolean.cs: ditto.
7741 * ArrayTypeMismatchException.cs: ditto.
7743 * ArithmeticException.cs: ditto.
7745 * ArgumentOutOfRangeException.cs: ditto.
7747 * ArgumentNullException.cs: ditto.
7749 * Enum.cs: Make it derive from ValueType, add CompareTo method.
7751 * Attribute.cs: Reformat.
7753 2001-11-14 Miguel de Icaza <miguel@ximian.com>
7755 * Decimal.cs, Double.cs, Byte.cs, Char.cs, Int16, UInt16, Int32,
7756 UInt32, Int64, UInt64, SByte, Single (CompareTo): Throw the
7757 exception if the value is null too.
7759 * Char.cs (CompareTo): ditto.
7761 * ApplicationException.cs: Added constructor that does serialization.
7763 * ParamArrayAttribute.cs: Define attribute correctly.
7765 Wed Nov 14 16:31:19 CET 2001 Paolo Molaro <lupus@ximian.com>
7767 * AppDomain.cs: rename dummy interface _AppDomain to AppDomain_Intf.
7768 * Array.cs: fix Array.Copy.
7769 * AssemblyLoadEventArgs.cs: rename field.
7770 * CLSCompliantAttribute.cs: use correct name for the class.
7771 * Char.cs: fix IsLetter.
7772 * Console.cs, DateTime.cs, Decimal.cs, IConvertible.cs, Math.cs,
7773 SByte.cs, UInt16.cs, UInt32.cs, UInt64.cs, UIntPtr.cs: CLSCompliant updates.
7774 * Convert.cs: CLSCompliant updates, add ChangeType() methods.
7775 * Delegate.cs: renamed target field to m_target.
7776 * Enum.cs: added missing methods.
7777 * MonoType.cs: add a constructor and some needed properties.
7778 * Object.cs: implement GetType().
7779 * String.cs: CLSCompliant updates. Fixes everywhere to remove the
7781 * Type.cs: add missing methods/properties.
7783 2001-11-10 Sean MacIsaac <macisaac@ximian.com>
7785 * AttributeUseage.cs: Should define AttributeUsageAttribute.
7787 * CLSCompliant.cs: Marked with AttributeUsage attribute.
7789 * Decimal.cs: Fixed CLSCompliant attributes.
7791 * Type.cs: changed _impl to internal (needs to be accessable by
7794 (TypeHandle): Marked as abstract, implementation removed.
7796 (IsNotPublic, IsPublic, GetMethods, GetPropery, GetConstructor,
7797 GetMethod): Added stub implementations so NUnit would link against
7800 Tue Nov 6 09:11:43 CET 2001 Paolo Molaro <lupus@ximian.com>
7802 * AppDomain.cs: use an internal constructor for AssemblyBuilder.
7804 2001-11-05 Miguel de Icaza <miguel@ximian.com>
7806 * NonSerializedAttribute.cs: Add AttributeUsage rules for this
7809 Fri Nov 2 18:23:15 CET 2001 Paolo Molaro <lupus@ximian.com>
7811 * String.cs: fix a couple of bugs.
7812 * AppDomain.cs: use new AppBuilder constructor.
7813 * Buffer.cs, GC.cs, NonSerializedAttribute.cs,
7814 NotImplementedException.cs, ObjectDisposedException.cs,
7815 UnauthorizedAccessException.cs: add implementation.
7816 * OverflowException.cs: fix class name.
7818 2001-10-28 Jeffrey Stedfast <fejj@ximian.com>
7820 * String.cs: Don't use a terminating nil char for our internal
7823 2001-10-27 Miguel de Icaza <miguel@ximian.com>
7825 * Delegate.cs (Delegate.CombineImpl): Implement.
7826 (Delegate.Combine): Implement.
7828 * MulticastDelegate.cs (MulticastDelegate.Equals): Implement.
7830 (MulticastDelegate.CombineImpl): This was not as trivial as I
7833 * ContextStaticAttribute.cs: Added AttributeUsage to
7834 ContextStaticAttribute.
7836 * FlagsAttribute.cs: Add AttributeUsage to FlagsAttribute
7838 2001-10-15 Martin Weindel <martin.weindel@t-online.de>
7840 * added Decimal.cs * added DecimalFormatter.cs (internal class
7841 used from System.Decimal)
7843 2001-10-11 Thomas Neidhart <tome@sbox.tugraz.at>
7845 * Convert.cs: Added methods for Base64 transforming just used the
7846 existing System.Security.Cryptography.ToBase64Transform, should
7847 be changed to use a stand-alone class, e.g. Base64Encoder
7849 2001-10-10 Derek Holden <dholden@draper.com>
7851 * IntegerFormatter.cs: Added. Implements ToString for all the
7852 integer data types for all the format types.
7854 * Byte.cs: Using IntegerFormatter for ToString's.
7856 * SByte.cs: Using IntegerFormatter for ToString's.
7858 * Int16.cs: Using IntegerFormatter for ToString's.
7860 * Int32.cs: Using IntegerFormatter for ToString's.
7862 * Int64.cs: Using IntegerFormatter for ToString's.
7864 * UInt16.cs: Using IntegerFormatter for ToString's.
7866 * UInt32.cs: Using IntegerFormatter for ToString's.
7868 * UInt64.cs: Using IntegerFormatter for ToString's.
7870 2001-10-07 Miguel de Icaza <miguel@ximian.com>
7872 * Exception.cs: Implement bits of serialization.
7874 * RuntimeFieldHandle.cs: Implement Serialization features.
7876 * Type.cs: Implement TypeHandle property.
7878 2001-09-28 Dick Porter <dick@ximian.com>
7880 * LocalDataStoreSlot.cs: Implemented
7882 Tue Sep 25 19:58:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
7884 * String.cs: fix off-by-one error in Trim().
7886 Tue Sep 25 18:52:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
7888 * Type.cs: added GetType () method.
7890 Tue Sep 25 17:29:02 CEST 2001 Paolo Molaro <lupus@ximian.com>
7892 * MissingMethodException.cs, MissingMemberException.cs,
7893 MemberAccessException.cs: added.
7895 Tue Sep 25 16:46:43 CEST 2001 Paolo Molaro <lupus@ximian.com>
7897 * String.cs: don't access the string array out of bounds in
7898 LastIndexOf. * Type.cs: fix return type of the Assembly property.
7900 Mon Sep 24 20:35:24 CEST 2001 Paolo Molaro <lupus@ximian.com>
7902 * String.cs: make Intern and IsIntern internalcalls.
7904 2001-09-13 Dick Porter <dick@ximian.com>
7906 * Type.cs: Added a stub for the IsValueType property.
7908 * SystemException.cs (System): Added the other constructor, so
7909 that System.Threading exceptions can inherit it.
7911 2001-09-08 Jeffrey Stedfast <fejj@ximian.com>
7913 * String.cs (TrimStart): Don't keep looping through the trimchars
7914 once we've found a match.
7915 (TrimEnd): Same here.
7916 (Trim): And finally here.
7918 2001-09-07 Ravi Pratap <ravi@ximian.com>
7920 * Char.cs (IsLetterOrDigit): Implement.
7921 (IsLower): Implement, but we need to be Unicode aware.
7922 (IsNumber): Implement.
7923 (IsPunctuation): Implement.
7924 (IsWhiteSpace): Implement.
7925 (ToUpper): Fix to subtract 32 from the ASCII value, not 33 :)
7926 (ToLower): Same here.
7928 2001-09-04 Miguel de Icaza <miguel@ximian.com>
7930 * Object.cs: Shortcut, if (a == b) then return true.
7932 Fri Sep 7 18:34:48 CEST 2001 Paolo Molaro <lupus@ximian.com>
7934 * Delegate.cs: we need a pointer to the method thunk in
7935 the delegate object.
7937 Fri Sep 7 12:28:01 CEST 2001 Paolo Molaro <lupus@ximian.com>
7939 * AsyncCallback.cs, common.src: add AsyncCallback delegate.
7941 2001-09-06 Jeffrey Stedfast <fejj@ximian.com>
7943 * String.cs (System): Don't mix uint and int.
7945 2001-09-04 Jeffrey Stedfast <fejj@ximian.com>
7947 * String.cs (BoyerMoore): Modified to not use pointers and to instead
7949 (IndexOf): Use BoyerMoore.
7951 2001-09-02 Miguel de Icaza <miguel@ximian.com>
7953 * All over: Use the autogenerated enumerations from the ECMA
7954 documentation that Sergey wrote.
7956 * PlatformID.cs: Add Unix definition.
7958 * OperatingSystem.cs: Use Unix instead of Linux here.
7960 * MarshalByRefObject.cs: Mark class as [Serializable].
7962 2001-08-28 Dietmar Maurer <dietmar@ximian.com>
7964 * Console.cs: impl. (write only)
7965 implemented the stdin stuff
7967 * Int32.cs: impl. real op_Equal
7969 2001-08-24 Miguel de Icaza <miguel@ximian.com>
7971 * (common.src): Removed IAsyncResult as it is not on CVS yet.
7973 * UIntPtr.cs: Removed CLSCompliant attribute before the namespace,
7974 as it breaks the build.
7976 2001-08-23 Michael Lambert <michaellambert@email.com>
7978 * IntPtr.cs: Optimized unsafe declaration, implemented GetObjectData,
7979 added CLSCompliant attribute
7981 * IAsyncResult.cs: Added
7983 * common.src: Added IAsyncResult.cs
7985 2001-08-23 Michael Lambert <michaellambert@email.com>
7989 * common.src: Added UIntPtr.cs
7991 2001-08-20 Dietmar Maurer <dietmar@ximian.com>
7993 * Attribute.cs: uncomment some code to make it compile again
7995 * mono.src: removed duplicated Attribute.cs
7997 2001-08-16 Nick Drochak <ndrochak@gol.com>
7999 * Attribute.cs: implemented all methods except GetHashCode()
8001 * common.src: added Attribute.cs so it would compile in
8003 2001-08-10 Dietmar Maurer <dietmar@ximian.com>
8005 * Object.cs: changed MemberWiseClone to MemberwiseClone, and
8006 marked it as InternalCall
8008 * common.src: removed UriFormatException.cs because the file is
8011 * RuntimeTypeHandle.cs: replaced IntrPtr with IntPtr
8012 * Char.cs: replaced byte with char
8014 * Array.cs: make it work with the mono interpreter
8016 2001-08-06 Miguel de Icaza <miguel@ximian.com>
8018 * Version.cs: Make the class sealed
8020 2001-08-08 Bob Smith <bob@thestuff.net>
8022 * Random.cs: Many compile fixes.
8023 * Random.cs: I read a bad spec. Class updated to match real spec.
8025 2001-08-06 Miguel de Icaza <miguel@ximian.com>
8027 * IntPtr.cs: Added and Completed implementation.
8029 * Uri.cs: Add a note.
8031 2001-08-06 Bob Smith <bob@thestuff.net>
8033 * Random.cs: Compile fix. Needs more testing.
8035 2001-08-06 Garrett Rooney <rooneg@electricjellyfish.net>
8037 * Uri.cs: Initial Implementation. Parsing needs to be fixed to take
8038 into account IPv6 addresses, url encoding needs to be implemented, and
8039 various minor methods need to be written, but this is a decent start.
8041 2001-08-06 Dietmar Maurer <dietmar@ximian.com>
8043 * common.src: added Object.cs
8045 * mono.src: added ValueType.cs
8047 2001-08-02 Dietmar Maurer <dietmar@ximian.com>
8049 * Math.cs: replaced libc with libm
8051 2001-08-02 Bob Smith <bob@thestuff.net>
8053 * Random.cs: Implemented. Needs testing.
8055 2001-08-02 Miguel de Icaza <miguel@ximian.com>
8057 * IServiceProvider.cs, EventHandler.cs: New files.
8059 2001-08-02 Marcel Narings <marcel@narings.nl>
8061 * DateTime.cs: Cleaned up a bit. Added the Add* family members.
8062 Added exceptions. Added IConvertible. Still needs some platform
8063 dependend stuff, the Parse and ToString members
8065 2001-08-01 Dietmar Maurer <dietmar@ximian.com>
8067 * Type.cs (GetTypeFromHandle): added placeholder
8069 2001-07-24 Derek Holden <dholden@draper.com>
8071 * Boolean.cs: Formatted to code style standard. Added GetTypeCode
8072 which is really an IConvertible defined method.
8074 * Byte.cs: Added a missing Parse method. Put in Parse and ToString
8075 behavior, still need to do the main Parse and ToString.
8077 * Char.cs: Added a bunch of missing ECMA methods. Commented a
8078 specification discrepency. Still didn't any unicode stuff, though
8079 every IsFoo(char c) method has an IsFoo(string, index)
8080 counterpart, added wrappers for those.
8082 * Convert.cs: Fixed NaN/Inf checking and double/float
8083 rounding. Added ToType for IConvertible classes
8085 * Double.cs: Fixed ECMA min and max values. Added IsInfinity /
8086 IsNaN methods. Changed Inf/NaN internals.
8088 * IConvertible.cs: Added comments for using
8089 Convert.ToType. Changed return values to draft base values.
8091 * Int16.cs: Added a missing Parse statement. Put in behavior for
8092 overloaded ToString and Parse methods.
8094 * Int32.cs: Added a missing Parse statement. Put in behavior for
8095 overloaded ToString and Parse methods.
8097 * Int64.cs: Added a missing Parse statement. Put in behavior for
8098 overloaded ToString and Parse methods.
8100 * Single.cs: Put in ECMA epsilon value. Added IsInfinity / IsNaN
8101 methods. Changed Inf/NaN internals.
8103 * SByte.cs: Added a missing Parse method. Put in Parse and
8104 ToString behavior, still need to do the main Parse and ToString.
8106 * UInt16.cs: Added a missing Parse statement. Put in behavior for
8107 overloaded ToString and Parse methods.
8109 * UInt32.cs: Added a missing Parse statement. Put in behavior for
8110 overloaded ToString and Parse methods.
8112 * UInt64.cs: Added a missing Parse statement. Put in behavior for
8113 overloaded ToString and Parse methods.
8115 2001-07-20 Miguel de Icaza <miguel@ximian.com>
8117 * MulticastDelegate.cs: New File.
8119 * Delegate.cs: New file.
8121 * Enum.cs: New file.
8123 * Attribute.cs: New file.
8125 * Type.cs: New file.
8127 * ParamArrayAttribute.cs: New file.
8129 * RuntimeTypeHandle.cs: New file.
8131 * MulticastDelegate.cs: Added.
8133 * DateTime.cs: Added
8135 * Delegate.cs: Added
8137 2001-07-18 Michael Lambert <michaellambert@email.com>
8139 * AttributeTargets.cs: Add.
8141 2001-07-19 Jeffrey Stedfast <fejj@ximian.com>
8143 * Char.cs: Made ToUpper and ToLower public methods.
8145 * String.cs: Lots and lots of compile fixes - just need to write
8146 DateTime.cs and this should build completely now.
8148 2001-07-19 Bob Smith (bob@thestuff.net)
8150 * Math.cs: Implemented.
8152 2001-07-19 Miguel de Icaza <miguel@ximian.com>
8154 * String.cs: Removed tolower and toupper.
8156 * Char.cs: Moved ToLower and ToUpper from string to here.
8158 * Convert.cs ToByte (float value), ToByte (double value) Use IsNan
8159 instead of comparing the value to Nan.
8161 2001-07-19 Duco Fijma (duco@lorentz.xs4all.nl)
8163 * TimeSpan.cs: New implementation.
8165 2001-07-18 Scott Sanders <scott@stonecobra.com>
8167 * UriFormatExcpetion.cs: Add - 85% complete
8169 2001-07-17 Jeffrey Stedfast <fejj@ximian.com>
8171 * String.cs (IndexOf): Slight optimization that allows skipping
8172 over a few chars here and there. This isn't as good as using my
8173 Boyer-Moore implementation, however, Boyer-Moore is only really
8174 good for long strings (I plan on making the code decide which
8175 string search algorithm it should use on-the-fly at some point).
8176 (LastIndexOf): Fix to work correctly.
8177 (BoyerMoore): Took out some unneeded code and fixed an edge-case.
8179 2001-07-16 Michael Lambert <michaellambert@email.com>
8181 * EventArgs.cs: Add.
8183 2001-07-16 Miguel de Icaza <miguel@ximian.com>
8185 * Version.cs: Remove my buggy comment.
8187 2001-07-15 Sean MacIsaac <macisaac@ximian.com>
8189 * String.cs: Spelling error of IComparable, object's
8190 MemberwiseClone cannot be overridden. Made indexer valid for now,
8191 but not sure what to do about this in the long run. Seems to be a
8192 couple bugs in csc.exe having to do with multiple pointer defs in
8193 the same statement, and returning subclasses of a class in the
8194 return type of an interface function implementation. Also moved
8195 operators inside of class definition.
8197 2001-07-14 Jeffrey Stedfast <fejj@ximian.com>
8199 * String.cs: A tom of compile fixes, although we still don't compile.
8201 * IConvertible.cs: The To*Int64() methods return *Int64's, not
8202 *Int32's. Also, it's ToDateTime() not ToDateType().
8204 2001-07-14 Jeffrey Stedfast <fejj@ximian.com>
8206 * String.cs: Apparently I needed to at least write stubs for the
8207 IConvertible interfaces. *sigh*
8209 2001-07-14 Jeffrey Stedfast <fejj@ximian.com>
8211 * String.cs: Many logic/other fixes and better usage of the
8213 (tolower): New convenience method to help condense code.
8214 (toupper): Another new helper method.
8215 (Compare): Use the new helper methods.
8216 (ToLower): use tolower().
8217 (ToUpper): use toupper().
8218 (LastIndexOfAny): Implemented.
8219 (BoyerMoore): New private helper method that implements a modified
8220 version of the Boyer-Moore search algorithm. Noothing uses it yet
8221 as I'm not 100% sure it even works properly with unicode strings
8222 not to mention it uses a huge lookup-table :-)
8223 (Split): Implemented.
8225 2001-07-13 Jeffrey Stedfast <fejj@ximian.com>
8227 * TODO: Added things that need to be finished in System.String
8229 * String.cs: New source file implementing the System.String class
8231 2001-07-12 Sean MacIsaac <macisaac@ximian.com>
8233 * TypeCode.cs: UInt64 was UInt63.
8235 * Object.cs: Fixed a numer of compiler errors.
8237 * Array.cs: Fixed some compiler errors.
8239 * IComparable.cs: Fixed some compiler errors.
8241 * ICloneable.cs: Fixed some compiler errors.
8243 * IConvertible.cs: Fixed some compiler errors.
8245 * IFormattable.cs: Fixed a compiler error.
8247 * IFormatProvider.cs: Fixed a compiler error.
8249 * IDisposable.cs: Fixed a compiler error.
8251 * IFormatProvider.cs: Added public accesability type to
8254 * Exception.cs: Added a using statement to remove compile time
8257 * ApplicationException.cs: Removed a ; that was causing a compiler
8260 * Int16.cs: Fixed some compiler errors.
8262 * Int32.cs: Fixed some compiler errors.
8264 * Int64.cs: Fixed some compiler errors.
8266 * SystemException.cs: Fixed a compiler error.
8268 * UInt16.cs: Fixed some compiler errors.
8270 * UInt32.cs: Fixed some compiler errors.
8272 * UInt64.cs: Fixed some compiler errors.
8274 * Void.cs: Fixed a compiler error.
8276 2001-07-12 Joe Shaw <joe@ximian.com>
8278 * Array.cs: Fix backwards parameters to Array.SetValue()
8280 (BinarySearch): Fix backward logic surrounding whether to call
8281 value.CompareTo or comparer.Compare.
8282 (LastIndexOf): Stop being stupid. I am so not used to strongly
8284 (Sort): Implement a quicksort.
8286 2001-07-11 Joe Shaw <joe@ximian.com>
8288 * Array.cs: Change all instances of trying to access an array with
8289 the index operator to calls to GetValue and SetValue, and add
8290 InternalGetValue and InternalSetValue which are internal calls
8291 into the runtime. Ew.
8293 2001-07-10 Joe Shaw <joe@ximian.com>
8295 * Array.cs: Implemented everything but Sort().
8297 2001-07-09 Jeffrey Stedfast <fejj@ximian.com>
8299 * Object.cs (Object::Equals): Object variable name is `o'.
8301 2001-07-06 Joe Shaw <joe@ximian.com>
8303 * Int16.cs, Int32.cs, Int64.cs, UInt16.cs, UInt32.cs, UInt64.cs:
8304 Implement the IComparable and IFormattable interfaces. Fix a typo
8307 * ApplicationException.cs, ArgumentException.cs,
8308 ArgumentNullException.cs, ArgumentOutOfRangeException.cs,
8309 ArtithmeticException.cs, ArrayTypeMismatchException.cs,
8310 DivideByZeroException.cs, DuplicateWaitObjectException.cs,
8311 ExecutionEngineException.cs, FormatException.cs,
8312 IndexOutOfRangeException.cs, InvalidCastException.cs,
8313 InvalidOperationException.cs, InvalidProgramException.cs,
8314 MulticateNotSupportedException.cs, NotFiniteNumberException.cs,
8315 NotSupportedException.cs, NullReferenceException.cs,
8316 OutOfMemoryException.cs, OverflowException.cs, RankException.cs,
8317 StackOverflowException.cs, SystemException.cs,
8318 TypeInitializationException.cs: Added all of the exceptions
8319 specified by the language spec. Mmmm... bloat.
8321 2001-07-06 Miguel de Icaza <miguel@ximian.com>
8323 * Int64.cs, Int32.cs: Put. Parsing and ToString missing. Should
8324 do a generic routine all of these guys use.
8326 * Int16.cs: identified missing methods.
8328 * UInt16.cs, UInt32.cs, UInt64.cs: Add.
8330 2001-06-26 Miguel de Icaza <miguel@ximian.com>
8332 * TypeCode.cs: Implement
8334 * Void.cs: Implement.
8336 * TODO: Add file to keep track of pending tasks.
8338 * Object.cs, ValueType.cs: Implement.