2010-07-21  Miguel de Icaza  <miguel@novell.com>

	* Array.cs: Fixes a couple of other cases where we were missing
	the handling for null values, fixes a broken case of null
	handling. 

2010-07-21  Jb Evain  <jbevain@novell.com>

	* AppDomain.cs: add IsFullyTrusted stub.

2010-07-20  Miguel de Icaza  <miguel@novell.com>

	* Array.cs: fast path for the case where the pivot is null;
	Fixes the crash on the build.

2010-07-17  Miguel de Icaza  <miguel@novell.com>

	* Array.cs: Fix for bug #622101, this reverts portions of the
	broken patch that was introduced as part of the fix for #351638
	which was mostly a set of optimizations, but some were just
	wrong. 

2010-07-14  Miguel de Icaza  <miguel@novell.com>

	* DateTime.cs: This is the Retina Display of DateTime structs.
	Unlike our previous Chubby DateTime that took 16 bytes of memory,
	this slim version of DateTime only uses 8 bytes.

	This fixes a couple of bugs 592221 and 622127.   Additionally, it
	turns out that the original Microsoft documentation did not spell
	this out, but newer versions of the docs state that SetConstant on
	a FieldBuilder should be capable of serializing DateTimes (which
	is where this issue came from).

	This is necessary to fix two crashers exposed by the CLR test
	suite. 

2010-07-08 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* DateTime.cs: allow between 1 and 7 digits after the dot.
	Fixes bug #594559.

2010-07-05 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* TimeSpan.cs: two consecutive colons produce an error now.
	Fixes bug #598467.

2010-06-29  Sebastien Pouliot  <sebastien@ximian.com>

	* Attribute.cs: Fix GetHashCode to match MS behavior (needed for
	Moonlight)

2010-06-25  Zoltan Varga  <vargaz@gmail.com>

	* Array.cs (SortImpl): Fix the 'fast path' which used 'as' to cast objects so
	it never sorted the items array if it was not a object[]. Fixes #616416.

2010-06-22  Jb Evain  <jbevain@novell.com>

	* Guid.cs: properly throw if the parsed guid has more data after
	parsing a correct guid. Fixes #616050.

2010-06-21 Rodrigo Kumpera  <rkumpera@novell.com>

	* Environment.cs: bump up corlib version.

2010-06-21 Rodrigo Kumpera  <rkumpera@novell.com>

	* Type.cs (StructLayoutAttribute): This raises on v4.

	* MonoType.cs (StructLayoutAttribute): Implement this
	under v4.

2010-06-21  Jb Evain  <jbevain@novell.com>

	* TimeSpan.cs: add the net_4_0 parsing code in Moonlight.

2010-06-21  Jb Evain  <jbevain@novell.com>

	* Guid.cs: bring Parse/ParseExact/TryParse/TryParseExact in
	Moonlight as well.

2010-06-21  Jb Evain  <jbevain@novell.com>

	* TypeAccessException.cs: TypeAccessException is part of moonlight 4.

2010-06-21  Jb Evain  <jbevain@novell.com>

	* Version.cs: bring Parse/TypeParse in for moonlight.

2010-06-21  Jb Evain  <jbevain@novell.com>

	* Array.cs: implement IStructuralComparable and IStructuralEquatable
	on moonlight as well.

2010-06-16  Miguel de Icaza  <miguel@novell.com>

	* Random.cs: Do not call Math.Abs blindly when we get an int
	value, as Math.Abs (Int32.MinValue) throws an overflow exception,
	and our constructor uses Environment.TickCount which means that
	eventually we will get a crash. 

	Fixes #605797

2010-06-15  Jonathan Pryor  <jpryor@novell.com>

	* Convert.cs: Instead of manually checking for NaN, Infinity, etc.,
	  use `checked` expressions to generate OverflowExceptions.  Ensure
	  that OverflowExceptions are generated for needed types.  Fixes #596339

2010-06-08  Jonathan Pryor  <jpryor@novell.com>

	* String.cs: Fix String.Split(String[],int,StringSplitOptions) so that:
	  - it properly obeys the 'count' parameter; Fixes #601772.
	  - "...".Split(new[]{"."}, 2, StringSplitOptions.RemoveEmptyEntries).Length==0
	  - "A..".Split (new String[] { "." }, 2, StringSplitOptions.RemoveEmptyEntries) == new[]{"A"}
	  - Remove duplicative array handling code by using List<String>.

2010-06-04  Damien Diederen  <dd@crosstwine.com>

	* Char.cs (GetUnicodeCategory): Handle astral planes
	in (string,int) overload.

	If the string element at index starts a surrogate pair, we decode
	the full codepoint and "query" the higher planes of the database.

	This commit fixes bug 480178.

	CAUTION: This commit depends on the following runtime change:

	  System.Char icall: New Unicode category tables compatible with
	  MS .NET.

	Without it, Mono will suffer a low-level (internal call) crash
	when initializing System.Char.

	COMPATIBILITY

	The updated Mono runtime as been verified to produce the same
	results as Microsoft's; here are the MD5 sums of their Unicode
	category database dumps (generated via create-category-table
	--dump, compiled and executed under the relevant runtime):

	    eba45e00acdc82f9a08873465110aef4  v2.0.50727.dump
	    eba45e00acdc82f9a08873465110aef4  v3.5.21022.dump
	    56fd5c828fbb9083693835680667fd2c  v4.0.30319.dump

	    eba45e00acdc82f9a08873465110aef4  gmcs.dump
	    56fd5c828fbb9083693835680667fd2c  dmcs.dump

	These results will naturally differ if support for .NET v4 or
	astral planes is disabled when building the runtime.  Note, also,
	that these are different from the results produced by Mono prior
	to the introduction of these changes, even for the BMP.

	Other versions of the internal database can be easily generated
	using create-category-table(.cs), but this currently requires a
	rebuild.

	PERFORMANCE

	Direct array indexing is mandatory for code points in the
	U+0000..U+FFFF range; as pointed out by Andreas Nahr, performing
	bi-level lookups in the Char.Is*(char) predicates cause the JIT to
	stop inlining them and results in an important performance drop.

	The simple data access pattern used for higher planes, suggested
	by Paolo Molaro, is fairly efficient but currenly only used by
	this non-optimized method.

2010-06-04  Jb Evain  <jbevain@novell.com>

	* Exception.cs: add stub for SerializeObjectState.

2010-06-03  Jb Evain  <jbevain@novell.com>

	* AppDomain.cs: add net_4_0's PermissionSet property.

2010-05-31 Rodrigo Kumpera  <rkumpera@novell.com>

	* Lazy.cs: Remove some stupid leftover from previous changes.

2010-05-27  Jb Evain  <jbevain@novell.com>

	* AppDomain.cs (DefineDynamicAssembly): add new net_4_0 overloads.

2010-05-17  Atsushi Enomoto  <atsushi@ximian.com>

	* Enum.cs : TryParse() should raise ArgumentException when the
	  type parameter is not an enum. Fixed bug #604134

2010-05-11 Rodrigo Kumpera  <rkumpera@novell.com>

	* GC.cs: Add EPHEMERON_TOMBSTONE reandonly variable.

2010-05-06 Rodrigo Kumpera  <rkumpera@novell.com>

	* GC.cs: Add new register_ephemeron_array icall.

2010-04-25  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* TimeSpan.cs: Support custom formats in ToString().

2010-04-23  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* Lazy.cs: Include in Moonlight build.

2010-04-22  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* TimeSpan.cs: The final 4.0 release removed the restriction of
	preceding zeroes when parsing, and it also added 't' and 'T' as valid
	formats equivalent to 'c' (default).

2010-04-16 Rodrigo Kumpera  <rkumpera@novell.com>

	* MonoType.cs (GetInterface): Compare against the name
	of the generic type definition.

	Fixes #484246.

2010-04-16 Rodrigo Kumpera  <rkumpera@novell.com>

	* MonoCustomAttrs.cs (GetBasePropertyDefinition): Use
	GetBaseMethod instead of GetMethodDefinition otherwise
	we skip intermediate overloads.

	Fixes #499569.

2010-04-16  Sebastien Pouliot  <sebastien@ximian.com>

	* Environment.cs: Ensure elevated trust when calling
	GetFolderPath on Moonlight

2010-04-16  Sebastien Pouliot  <sebastien@ximian.com>

	* Action.cs: SL4 moved some Action in mscorlib
	* Funcs.cs: SL4 moved some Func<> in mscorlib
	* String.cs: Make IsNullOrWhiteSpace available, internally, 
	before NET_4_0 (or SL4) since it's proving useful.

2010-04-15  Jb Evain  <jbevain@novell.com>

	* Guid.cs: rework the Guid parser to implement the net_4_0
	[Try]ParseExact methods.

2010-04-15  Jérémie Laval  <jeremie.laval@gmail.com>

	* Tuple.cs:
	* Tuples.cs: Add BOOTSTRAP_NET_4_0 define

2010-04-13 Rodrigo Kumpera  <rkumpera@novell.com>

	* MonoCustomAttrs.cs: Raise an exception if the runtime
	returned a null cattr.

2010-04-13  Zoltan Varga  <vargaz@gmail.com>

	* Convert.cs (ToInt32): Do a checked cast. Fixes #596339.

2010-04-12  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* TimeSpan.cs: Implement support for custom formats parsing. This
	should as well include the bits required to easily implement the same
	for ToString methods, when the final release fixes the mess we found
	in the latest beta.

2010-04-08 Rodrigo Kumpera  <rkumpera@novell.com>

	* Type.cs: Add ResolveInternal virtual call that
	resolves a given type to it's concrete type.

2010-03-07 Rodrigo Kumpera  <rkumpera@novell.com>

	* Enum.cs (GetInfo): Don't use isinst tests as they can
	return true for both signed and unsigned version of a
	primitive type.

	* Enum.cs (FindPosition): Ditto.

2010-04-06  Marek Safar  <marek.safar@gmail.com>

	* Array.cs: Don't make read-only collection read-only.

2010-03-31  Miguel de Icaza  <miguel@novell.com>

	* UInt32.cs, Int64.cs, UInt64.cs: cope with the case that the
	IFormatProvider is not a NumberFormatInfo, preventing a crash.
	This was already handled by Int32.cs, but these other routines
	were never properly updated. 

	Fixes #588356

	* DateTimeOffset.cs: Add support for format K in DateTimeOffset,
	fixes bug 589227.

	* DateTime.cs: Add serialization support, fixes #588198.

	Perhaps we should change the format as well since this is the new
	format serialized anyways (see bug 592221, it saves 4 bytes of
	memory as well)

2010-03-30  Sebastien Pouliot  <sebastien@ximian.com>

	* InvalidTimeZoneException.cs
	* TimeZoneNotFoundException.cs:
		Fix Moonlight since these types now reside in mscorlib
		(instead of System.Core) for NET_4_0 and also for SL4

2010-03-30  Jb Evain  <jbevain@novell.com>

	* MonoType.cs: let the binder reorder arguments when invoking
	params methods.
	* Activator.cs (CreateInstance): use BindToMethod instead of
	SelectMethod to make sure that params constructors are properly called.

	Fixes #591877

2010-03-29  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* TimeSpan.cs: Implement all the overloads of both TryParseExact and
	ParseExact methods, by detecting the specific semantic changes in the
	parse process, so we can properly re-utilize our new approach. This
	included indicating our parser its culture sensitiveness, usage of colon as
	day separator fallback or as a precise separator, and other minor bits.
	We are only missing composite parsing right now.

2010-03-29  Sebastien Pouliot  <sebastien@ximian.com>

	* AppDomainSetup.cs: Add new (FX4 and SL4) SetCompatibilitySwitches
	method (empty is good enough for moonlight testing)
	* Environment.cs: Expose MyVideos in Moonlight build

2010-03-26  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* TimeSpan.cs: We always give higher precedence to the first found
	error, but for versions before 4.0 we need to give a higher one to
	per-element overflow *specifically* (as opposed to int32 overflow,
	which remains the same). This is not needed for 4.0, so report
	per-element overflow as a normal error. 
	This should fix a compatibility case, as well as simplifying the code.

2010-03-25 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* MonoAsyncCall.cs: remove unused field.
	* Delegate.cs: add new IsTransparentProxy property.
	* MulticastDelegate.cs: add new HasSingleTarget property.
	* Environment.cs: bump up corlib version.

2010-03-25  Sebastien Pouliot  <sebastien@ximian.com>

	* AppDomain.cs: Add new properties that are in both FX4 and SL4
	since Moonlight needs them (for testing purpose).
	* Environment.cs: FailFast overloads are present in SL4 (and also
	needed for testing Moonlight)

2010-03-24  Sebastien Pouliot  <sebastien@ximian.com>

	* AppDomain.cs: Change default value from null to false for new
	(NET_4_0 and SL4) IsCompatibilitySwitchSet. Not sure when (or even
	if) it can return null (at least not when testing SL4 RC). 
	Fix DRT198

2010-03-22  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* TimeSpan.cs: When parsing ticks, we used to only parse
	the first 7 digits, and more than that would cause a FormatException -
	starting in 4.0 we need to throw an OverflowException, however. Also,
	for hours/minutes/seconds, two or more preceding zeroes will cause an
	OverflowException as well.

2010-03-22  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* TimeSpan.cs: Create a new Parser.Execute method for 4.0 -and use the
	previous impl for 2.0-, to handle the new semantics gracefully -
	specifically the new 'dd:hh:mm:ss' format and related bits, instead of
	of a ton of #ifdef blocks. Remove any 4.0 bits from the previous
	version as well, to keep it clean.

2010-03-19  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* TimeSpan.cs: Move the error detection code to a separate method.
	This way depending on the version we decide what error takes
	precedence: OverlowException in 2.0, and FormatException in 4.0. This
	also lets us keep the Execute() code cleaner and easier to understand.

2010-03-18  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* TimeSpan.cs: Put the error info in a single field, to make it easier
	to preserve the very first error we get while parsing, and discard the
	next ones. This will help us in a pair of cases where we were
	overriding the previous error and reporting the wrong exception.

2010-03-17  Sebastien Pouliot  <sebastien@ximian.com>

	* String.cs: SL4 includes new IsNullOrWhiteSpace and Concat/Join 
	overloads.

2010-03-17  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* TimeSpan.cs: TimeSpan is actually implementing IFormattable.

2010-03-17  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* AppDomain.cs: Added MonoTODO for IsCompatibilitySwitchSet.

2010-03-16  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* TimeSpan.cs: In 4.0 the Parse/TryParse methods always try to use its
	associated CultureInfo.NumberFormat.NumberDecimalSeparator value, as well as
	providing backwards compatibility by also supporting '.' as the
	separator.

2010-03-16  Jb Evain  <jbevain@novell.com>

	* AppDomainSetup.cs
	* Tuple.cs
	* ChangeLog
	* Exception.cs
	* String.cs
	* Console.cs
	* Tuples.cs
	* Activator.cs
	* AppDomain.cs:
		Use MOONLIGHT symbol to disambiguate MonoTouch and Moonlight code.

2010-03-16  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* Enum.cs: Added a few 4.0 api to Moonlight.

2010-03-16  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* AppDomain.cs: Added IsCompatibilitySwitchSet for .NET 4.0 and Moonlight.

2010-03-15  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* TimeSpan.cs: In 4.0 if the part parsed as days exceeds the allowed
	range -this is, 23-, then it is processed as days instead - opposed to
	2.0, where we are throwing an OverflowException.

2010-03-15  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* TimeSpan.cs: Make the colon parsing optional -and adjust the name to
	reflect it-, so we can properly parse the case where we only have the
	hours and minutes. This subtle bug was hidden before, since a string
	such "10:12" would be parsed correctly, but "10:12  " (trailing white
	space) was getting a FormatException.

2010-03-12  Sebastien Pouliot  <sebastien@ximian.com>

	* Tuple.cs, Tuples.cs: Add them to NET_2_1 since they are parts
	of SL4

2010-03-08  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* TimeSpan.cs: Implement 4.0 overloads of TryParse/Parse.

2010-03-08  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* TimeSpan.cs: Implement 4.0 ToString overloads.

2010-03-06 Rodrigo Kumpera  <rkumpera@novell.com>

	* UIntPtr.cs: Remove some v4 custom attributes that were
	on Beta2 but aren't there on RC.

2010-03-05  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* TimeSpan.cs: Implement correctly the TryParse method, instead of
	using a try/catch block.

2010-03-04 Rodrigo Kumpera  <rkumpera@novell.com>

	* Type.cs : Fix for bug #574696: don't recurse into base types in GetMember when
	getting properties.
	Patch by Eberhard Beilharz <eb1@sil.org>

2010-03-03  Miguel de Icaza  <miguel@novell.com>

	* Decimal.cs: Disable the fast double2decimal code, and go back to
	string parsing as there is a rounding/precision bug.

		//
		// We cant use the double2decimal method
		// because it incorrectly turns the floating point
		// value 1.23456789E-25F which should be:
		//    0.0000000000000000000000001235
		// into the incorrect:
		//   0.0000000000000000000000001234
		//
		//    The code currently parses the double value 0.6 as
		//    0.600000000000000
		//
		// And we have a patch for that called (trim

2010-03-03 Rodrigo Kumpera  <rkumpera@novell.com>

	* Type.cs (Equals): Better version that does less
	trips to runtime land.

2010-03-03 Rodrigo Kumpera  <rkumpera@novell.com>

	* MonoType.cs: Add v4 security properties.

2010-03-03 Rodrigo Kumpera  <rkumpera@novell.com>

	* Type.cs: Add v4 security properties.

2010-03-03 Rodrigo Kumpera  <rkumpera@novell.com>

	* Type.cs: Fix identation.

2010-03-03 Rodrigo Kumpera  <rkumpera@novell.com>

	* Activator.cs: : Implement new v4 overloads and [Obsolete].

2010-03-03 Rodrigo Kumpera  <rkumpera@novell.com>

	* AppDomain.cs: Add bunch of trivial overloads.

2010-03-01 Rodrigo Kumpera  <rkumpera@novell.com>

	* TypeSpec.cs: New file. Managed code implementation of type name
	parsing.

	* Type.cs: Implement new v4 overloads of GetType.

2010-03-01  Zoltan Varga  <vargaz@gmail.com>

	* Array.cs (CreateArray): Disallow creation of arrays of unfinished types.

2010-03-01  Miguel de Icaza  <miguel@novell.com>

	* DateTime.cs (DoParse): patch from Tom Philpot, while using
	TryParse if s is null, we should return false, not crash.

2010-02-28 Rodrigo Kumpera  <rkumpera@novell.com>

	* Type.cs: Forgot a pair of #if NET_4_0.

2010-02-28  Miguel de Icaza  <miguel@novell.com>

	* Decimal.cs: If the NumberFormatInfo is broken and contains the
	same character for grouping than is used for decimals, the decimal
	separator gets a priority.  This issue was exposed by the
	Silverlight Test suite.

	Allow null trailing characters when parsing, this is valid in
	.NET: "5\0" and "5\0\0\0\0", but "5\05" is not.

	* Decimal.cs: Enabling the unmanaged double to decimal and float
	to decimal conversions code again as I am unable to find any
	regressions in corlib, System.Data, the Silverlight test suite or
	Rotor's test suite.

	I am enabling it hoping that we can find the original problem that
	lead us to use the slow path.

2010-02-27 Rodrigo Kumpera  <rkumpera@novell.com>

	* AggregateException.cs: Fix ctor vibility.

	* Type.cs: IsEnum and IsSerializable are virtual
	properties now.

	* Tuple.cs: Fix Tuple'8 Create method.

2010-02-27 Rodrigo Kumpera  <rkumpera@novell.com>

	* UIntPtr.cs: Add some v4 custom attributes.

2010-02-27 Rodrigo Kumpera  <rkumpera@novell.com>

	* Float.cs: New v4 operators.

2010-02-27 Rodrigo Kumpera  <rkumpera@novell.com>

	* IntPtr.cs: Add some v4 custom attributes.

2010-02-27 Rodrigo Kumpera  <rkumpera@novell.com>

	* Double.cs: New v4 operators.

2010-02-27 Rodrigo Kumpera  <rkumpera@novell.com>

	* Type.cs: Make cor-compare happy.

2010-02-26 Rodrigo Kumpera  <rkumpera@novell.com>

	* Lazy.cs: Implement all lazy modes.

2010-02-26 Rodrigo Kumpera  <rkumpera@novell.com>

	* ExecutionEngineException.cs: Type is obsolete.

2010-02-26 Rodrigo Kumpera  <rkumpera@novell.com>

	* Type.cs: Implement new v4 IsEnumDefined ().

2010-02-24 Rodrigo Kumpera  <rkumpera@novell.com>

	* Type.cs: Implement new v4 GetEnumValue ().

2010-02-24 Rodrigo Kumpera  <rkumpera@novell.com>

	* Type.cs: Implement new v4 GetEnumValues ().

	* MonoType.cs: Ditto.

2010-02-23 Rodrigo Kumpera  <rkumpera@novell.com>

	* Type.cs: Use the right kind of annotations.

2010-02-23 Rodrigo Kumpera  <rkumpera@novell.com>

	* Type.cs:  Implement new v4 GetEnumNames ().

2010-02-22 Rodrigo Kumpera  <rkumpera@novell.com>

	* Type.cs:  Implement new v4 GetEnumUnderlyingType ().

2010-02-22 Rodrigo Kumpera  <rkumpera@novell.com>

	* Type.cs: Implement new v4 GetTypeCodeImpl ().

2010-02-19 Rodrigo Kumpera  <rkumpera@novell.com>

	* Type.cs: Implement new v4 behavior for Equals.
	
Fri Feb 19 09:05:36 CET 2010 Paolo Molaro <lupus@ximian.com>

	* Decimal.cs: fixed Remainder (bug #576341).

2010-02-13 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* Environment.cs: implement SystemPageSize.

Fri Feb 12 18:38:01 CET 2010 Paolo Molaro <lupus@ximian.com>

	* InsufficientExecutionStackException.cs: new exception type in 4.0.

2010-02-11 Rodrigo Kumpera  <rkumpera@novell.com>

	* MonoType.cs: Implement GetCustomAttributesData.

2010-02-06  Chris Toshok  <toshok@ximian.com>

	* AppDomain.cs (SetupInformationNoCopy): make this internal for
	moonlight.

2010-02-02  Jérémie Laval  <jeremie.laval@gmail.com>

	* AggregateException.cs:
	* OperationCanceledException.cs: Port to .NET 4 beta 2 API

2010-01-31  Zoltan Varga  <vargaz@gmail.com>

	* Enum.cs: Fix a warning.

2010-01-29  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* Version.cs: Implement Parse and TryParse.

2010-01-28  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* AppDomain.cs: LoadSatellite: add a boolean parameter specifiying
	whether we should throw on exceptions or not.

2010-01-28  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* TimeSpan.cs: TryParse: Handle null values to not throw ANEs.

2010-01-25 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* Array.cs: updates to the API from beta2.
	* _AppDomain.cs: no GetLifeTimeService() in 4.0

2010-01-25  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* Enum.cs: Implement TryParse and do the required refactoring of our
	Parse method to support it.

2010-01-25  Atsushi Enomoto  <atsushi@ximian.com>

	* Single.cs : parse MaxValue and PositiveInfinity as expected.
	  Patch by Tiaan Geldenhuys.

2010-01-21  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* Activator.cs: When calling CreateInstance() and no default .ctor is
	found for the type, don't pass the member argument to the
	MissingMethodException, to have a better and simpler error message.
	Fixes #396986.

2010-01-20 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* Tuples.cs: explicitly implement IStructural*.

2010-01-17  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* UInt64.cs: Implement a lightweight version of the Parse method for
	the overload that does not take IFormatProvider/NumberStyle
	parameters - this gets us a nice speed up, just like we do for the
	other number types.
	Fixes #338022.

2010-01-15 Rodrigo Kumpera  <rkumpera@novell.com>

	* Array.cs: Implement IStructuralComparer.

2010-01-15  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* Int32.cs: In Parse() cast the parsed value to long *before* changing
	its sign - this way we preserve the original value, instead of
	accidentally changing it. This was happening parsing _exactly_
	MaxValue + 1.
	Fixes #475815.

2010-01-15  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : In AddMilliseconds(), it seems fractional
	  milliseconds are first rounded and then added.

2010-01-15  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTimeOffset.cs : preserve fractions (it is somehow dropped).

2010-01-13  Atsushi Enomoto  <atsushi@ximian.com>

	* Double.cs : no need to preserve old code.

2010-01-12  Atsushi Enomoto  <atsushi@ximian.com>

	* Double.cs : AllowLeading/TrailingWhite should also check those
	  surrounding string constants such as "NaN".

2010-01-11  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* Int32.cs: Implement support for exponent in the Parse methods.
	Fixes #542464.

2010-01-10  Zoltan Varga  <vargaz@gmail.com>

	* GC.cs: Add stubs for new net 4.0 methods.

2010-01-07  Jb Evain  <jbevain@novell.com>

	* MonoType.cs (.MemberType): return the proper member type
	for generic parameters.

2010-01-07  Sebastien Pouliot  <sebastien@ximian.com>

	* Convert.cs: Fix line endings in ToBase64String (bug #568778)
	and also the default line length. Code changed to not require
	a BinaryReader over a MemoryStream to reduce memory requirements.

2010-01-07  Zoltan Varga  <vargaz@gmail.com>

	* TermInfoDriver.cs (GetCursorPosition): Avoid waiting 1 sec here.

2010-01-03  Zoltan Varga  <vargaz@gmail.com>

	* Array.cs: Fix ArrayReadOnlyList.CopyTo. Fixes #564095.

2010-01-03  Zoltan Varga  <vargaz@gmail.com>

	* DateTime.cs (TryParseExact): Handle exceptions. Fixes #567857.

2009-12-21  Marek Habersack  <mhabersack@novell.com>

	* Int32.cs: treat terminating null as whitespace

2009-12-19  Zoltan Varga  <vargaz@gmail.com>

	* String.cs: Fix the various IndexOf and LastIndexOf methods so they handle
	"" and a non-zero startIndex correctly. Fixes #566106.

2009-12-17  Sebastien Pouliot  <sebastien@ximian.com>

	* String.cs: Fix #565602 right-padding empty strings.

2009-12-15  Marek Safar  <marek.safar@gmail.com>

	* Array.cs: Optimize sort operations on all primitive types.

2009-12-14 Rodrigo Kumpera  <rkumpera@novell.com>

	Type.cs (IsCompilerContext): The default implementation now checks if the
	type's assembly is under compiler context or not.

2009-12-12 Rodrigo Kumpera  <rkumpera@novell.com>

	* Environment.cs: Bump corlib version.

2009-12-12 Rodrigo Kumpera  <rkumpera@novell.com>

	* MonoType.cs: Make the GetConstructorImpl machinery available
	to be used by others.

	* Type.cs (MakeGenericType): Is any of the arguments is not a system
	type create an instance of MonoGenericClass instead. 

2009-12-09  Jb Evain  <jbevain@novell.com>

	* StringComparer.cs (GetHashCode): properly throw
	an ANE instead of an NRE.

2009-12-09  Miguel de Icaza  <miguel@novell.com>

	* Enum.cs: Add new .NET 4.0 API.

2009-12-08  Marek Habersack  <mhabersack@novell.com>

	* Type.cs: added overloads for the == and != operators (4.0).

2009-12-08 Rodrigo Kumpera  <rkumpera@novell.com>

	* Type.cs: Add virtual property IsCompilerContext to cleanup
	compiler context resolution across SRE.

2009-12-05  Mark Probst  <mark.probst@gmail.com>

	* String.cs: A new LOS_limit variable which gives the maximum
	string length that's not put in the LOS.

	* StringBuilder.cs: Copy the string also if it's in the LOS and
	chopping it would bring its size below the LOS limit.

	* Environment.cs: Bump corlib version.

2009-12-03  Stephane Delcroix  <stephane@delcroix.org>

	* DateTimeOffset.cs: fix dates arithmetic to avoid throwing
	while crossing dst boundaries.

2009-12-03  Jb Evain  <jbevain@novell.com>

	* Attribute.cs: remove code duplication.

2009-12-02  Jb Evain  <jbevain@novell.com>

	* Enum.cs (IConvertible.ToType): properly convert enum values
	to strings instead of their numeric value.

2009-12-02  Jb Evain  <jbevain@novell.com>

	* Environment.cs (mono_corlib_version): bump.
	* Attribute.cs: when retrieving custom attributes defined
	on parameters belonging to a virtual method, walk
	the inheritance chain to check for parameters attributes
	all the way down.

2009-12-01  Jb Evain  <jbevain@novell.com>

	* Type.cs (MakeByRefType): throw a TypeLoadException when being
	called on type which is already ByRef.

2009-11-26  Sebastien Pouliot  <sebastien@ximian.com>

	* Random.cs: Fix case where the diff between min and max
	is very large in Next(int,int). Fix bug #558593

2009-11-25  Zoltan Varga  <vargaz@gmail.com>

	* Delegate.cs (GetHashCode): Fix this so it is constant.

2009-11-24  Jb Evain  <jbevain@novell.com>

	* Array.cs: use ContainsGenericParameters instead of
	IsGenericTypeDefinition as it catches more cases.

2009-11-24  Jb Evain  <jbevain@novell.com>

	* Array.cs (IList.this[int]): prevent the use of the IList indexer 
	when dealing with a multi dimensional array.

2009-11-24  Jb Evain  <jbevain@novell.com>

	* Array.cs (Clear): throw an IndexOutOfRangeException instead
	of an ArgumentOutRangeException for a negative length.

2009-11-24  Jb Evain  <jbevain@novell.com>

	* Array.cs (CreateInstance): do not allow open generic types.

2009-11-24  Jb Evain <jbevain@novell.com>

	* Array.cs (CreateInstance): do not allow void arrays.

2009-11-23  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* Array.cs: When sorting and we are sorting value types implementing
	IComparable<T>, use its corresponding Comparer<T>.Default helper. 
	This way we avoid casting our values to IComparable<T>, and thus we 
	avoid *all* the boxing for them. Using Comparer<T>.Default seems to be
	slower for reference types, so we don't use it for those ones.

2009-11-22  Miguel de Icaza  <miguel@novell.com>

	* Environment (IsUnix): expose this common property, so we avoid
	duplicating code. 

2009-11-18  Marek Safar  <marek.safar@gmail.com>

	* Type.cs: Use faster string comparers.

2009-11-17  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTimeOffset.cs : fix parse failure on missing colon.
	  Fixed bug #547675, patch by Santa Marta (see bugzilla).

2009-11-13  Marek Safar  <marek.safar@gmail.com>

	* Lazy.cs: Check recursive initializations.

2009-11-11 Rodrigo Kumpera  <rkumpera@novell.com>

	* Type.cs: Fix Make(Array|ByRef|Pointer)Type to not crash
	with user types. 

	* Type.cs (MakeGenericType): Don't crash with user types.

	* Type.cs (GetGenericParameterConstraints): Don't crash with user types.

	* Type.cs (GenericParameterAttributes): Don't crash with user types.

	* Type.cs (IsInstanceOfType): Don't crash with user types.

	* Type.cs (IsAssignableFrom): Better handle User Types.

	* Type.cs (GetInterfaceMap): Don't crash with user types.

	* Type.cs (Equals): Fix behavior to be more MS compatible.

2009-11-11  Sebastien Pouliot  <sebastien@ximian.com>

	* Console.cs: Reduce duplication between OpenStandard[Input|
	Output|Error] and, for Moonlight, don't return a NullStream if
	security is disabled (e.g. when smcs executes) r: alan
	Note: include changes from r145773 (2-6) from toshok

2009-11-10  Miguel de Icaza  <miguel@novell.com>

	* Lazy.cs: Updated API to 4.0 Beta 2

2009-11-08  Juraj Skripsky  <js@hotfeet.ch>

	* Array.cs (Sort):
	- Sort(..) without IComparer param call Sort(.., (IComparer)null) siblings
	- Sort(keys, items,..) with items == null call Sort(keys,..) siblings
	Add missing argument checks. Add SortImpl method to be used by
	List<T>.Sort(Comparison <T>).

	Part 3 of 3 fixing bug #351638.

2009-11-08  Juraj Skripsky  <js@hotfeet.ch>

	* Array.cs (Sort): Add and call
	- SortImpl methods which do the real work without argument checking
	- MoveNullKeysToFront methods which do a null <-> non-null sorting and
	ensure that all non-null object implement IComparable/IComparable<T>

	Part 2 of 3 fixing bug #351638.

2009-11-08  Juraj Skripsky  <js@hotfeet.ch>

	* Array.cs (Sort): optimize qsort by employing multiple, faster copies
	of the inner-most loops:
	- for case "comparer != null"
	- for case "pivot is IComparable<T>"
	- for case "pivot is IComparable"
	Remove compare methods as the inner loops now do their work.
	Use GetValueImpl instead of GetValue in swap.

	Part 1 of 3 fixing bug #351638.

2009-11-03  Miguel de Icaza  <miguel@novell.com>

	* TermInfoDriver.cs (CheckWindowDimensions) Avoid extra checks, as
	the condition was always checked previously.

	(WriteSpecialKey): Actually write the tab character.
	
2009-11-02  Miguel de Icaza  <miguel@novell.com>

	* More NET_2_0 define removal, assume that it is now always true. 

2009-10-30  Sebastien Pouliot  <sebastien@ximian.com>

	* MonoType.cs: Don't pass null value to icalls 
	GetCorrespondingInflated[Constructor|Method]

2009-10-28  Lluis Sanchez Gual  <lluis@novell.com>

	* MarshalByRefObject.cs: In InitializeLifetimeService, if a lease
	exists for the object return it, instead of always creating
	a new one. Fixes bug #544357.

2009-10-27  Sebastien Pouliot  <sebastien@ximian.com>

	* String.cs: Remove unused (and unneeded) internal call defs.
	Reduce duplication (and fix test) for Concat (object,object).
	Avoid allocating zero-length strings in the cases where the
	FX does not do so.

2009-10-22  Miguel de Icaza  <miguel@novell.com>

	*  String.cs (IsNullOrWhiteSpace, Concat, Join): New 4.0 methods. 

	* IntPtr.cs (Add, Subtract): New 4.0 methods.

	* Tuple.cs: Updated signature.

2009-10-19  Marek Safar  <marek.safar@gmail.com>

	* IObservable.cs, IObserver.cs: New files.
	
	* EventHandler.cs: Cleanup.

2009-10-16  Miguel de Icaza  <miguel@novell.com>

	* Jumbo patch to drop support for pre-NET_2_0 code:

	Remove ONLY_1_1 code
	Remove NET_1_0 only code
	Remove NET_2_0 defines assuming the value is true.

	Improve one MonoTODO;   Implement one MonoTODO/Niex.

	Ran a textual diff on the resulting assembly to validate that the
	restul is the same on NET_2_0

2009-10-14  Jonathan Pryor  <jpryor@novell.com>

	* AppDomain.cs: Re-add BaseDirectory in the MonoTouch profile.

2009-10-14  Sebastien Pouliot  <sebastien@ximian.com>

	* Exception.cs: Use StackFrame.GetSecureFileName to display (or 
	not) the file names (and paths). Don't serialize Source for
	Moonlight.
	* ValueType.cs: Change InternalEquals (icall) visibility to 
	private since it is not used elsewhere outside the type.

2009-10-08  Sebastien Pouliot  <sebastien@ximian.com>

	* AppDomain.cs: Remove NET_2_1 specific DefineDynamicAssembly(
	AssemblyName,AssemblyBuilderAccess,bool) since it is not part
	of SL. Provide a ToString implementation similar to Silverlight
	for Moonlight (and without directly using an icall)

2009-10-07  Sebastien Pouliot  <sebastien@ximian.com>

	* String.cs: Remove unsafe code duplication in ToCharArray.
	Define out the unused InternalStrcpy icalls
	* StringComparer.cs: Seal internal/private inner classes.

2009-10-06  Sebastien Pouliot  <sebastien@ximian.com>

	* Decimal.cs: Use Compare method instead of directly using the
	decimalCompare internal call.

2009-10-06  Sebastien Pouliot  <sebastien@ximian.com> 

	* Enum.cs: Add an internal Value property as a single point to 
	call the internal call get_value.

2009-10-06  Sebastien Pouliot  <sebastien@ximian.com>

	* String.cs: Remove normalization methods for Moonlight

2009-10-06  Jonathan Chambers  <joncham@gmail.com>

	* String.cs (Contains): Use CompareOptions.Ordinal. Fixes bug
	#535425.

2009-10-04  Mark Probst  <mark.probst@gmail.com>

	* AppDomain.cs: Check for static AppDomainInitializer earlier to
	throw the appropriate exception instead of failing at
	serialization.

2009-10-04  Mark Probst  <mark.probst@gmail.com>

	* AppDomainSetup.cs: Functionality for serializing a few members
	to simplify cross-domain copying from within the runtime.

	* AppDomain.cs (CreateDomain): Make AppDomainSetup serialize the
	necessary members in preparation for the cross-domain copy.

	* Environment.cs: Corlib version bump.

2009-10-02  Marek Safar  <marek.safar@gmail.com>

	* Array.cs, Decimal.cs, String.cs, Console.cs, _AppDomain.cs,
	AppDomain.cs: Removed prehistoric mcs workarounds.

2009-09-30  Mark Probst  <mark.probst@gmail.com>

	* Thread.cs: Remove serialized culture icall stuff from
	InternalThread.  Implement it by using the cross-domain byte array
	transfer icalls.

	* Environment.cs: Corlib version bump.

2009-09-29 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* TermInfoDriver.cs: attempt to fix bug #527487.

2009-09-28  Atsushi Enomoto  <atsushi@ximian.com>

	* Console.cs : do not use codepage 28591. It breaks build on
	  Japanese Windows.

2009-09-27 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* TermInfoDriver.cs: avoid segv if the pointer is not properly
	initialized.

2009-09-26  Mark Probst  <mark.probst@gmail.com>

	* NumberFormatter.cs: Remove the _thread field.

2009-09-26  Mark Probst  <mark.probst@gmail.com>

	* Environment.cs: Corlib version bump.

2009-09-24  Zoltan Varga  <vargaz@gmail.com>

	* Type.cs: Initialize the Missing field.

2009-09-22  Sebastien Pouliot  <sebastien@ximian.com>

	* Environment.cs: Remove imperative CAS environment
	permission checks under NET_2_1

2009-09-21 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* Console.cs: mark methods/properties that only work on windows.
	Fixes bug #540593.

2009-09-21  Sebastien Pouliot  <sebastien@ximian.com>

	* AppDomain.cs: Remove use of IPrincipal, Evidence and
	PermissionSet types for NET_2_1

2009-09-20  Sebastien Pouliot  <sebastien@ximian.com>

	* Activator.cs: Remove COM related method for NET_2_1
	* AppDomain.cs: Remove extra methods and properties for NET_2_1
	* AppDomainSetup.cs: Remove some properties for NET_2_1

2009-09-20  Sebastien Pouliot  <sebastien@ximian.com> 

	* AppDomain.cs, Environment.cs: Remove imperative CAS file IO
	permission checks under NET_2_1

2009-09-20  Sebastien Pouliot  <sebastien@ximian.com>

	* AppDomainManager.cs: Remove NET_2_1 defines
	* AppDomainManager_2_1.cs: New. NET_2_1 specific implementation

2009-09-04  Miguel de Icaza  <miguel@novell.com>

	* TermInfoDriver.cs: Handle a few more key combinations.

2009-08-14  Miguel de Icaza  <miguel@novell.com>

	* TermInfoDriver.cs (GetCursorPosition): Before we probe the
	terminal for the cursor location, read all the pending console
	input into our internal buffer and then send the cursor location
	request.

2009-08-26  Sebastien Pouliot  <sebastien@ximian.com>

	* TimeSpan.cs: Fix parsing when seconds are not specified.

2009-08-14  Marek Safar  <marek.safar@gmail.com>

	* Type.cs: Made IsClass work under compiler context.

2009-08-12  Zoltan Varga  <vargaz@gmail.com>

	* ResolveEventArgs.cs: Add net 4.0 RequestingAssembly property.

2009-08-11  Jérémie Laval  <jeremie.laval@gmail.com>

	* Funcs.cs:
	* Action.cs:
	* AggregateException.cs: Add BOOTSTRAP_NET_4_0.

2009-08-07  Marek Safar  <marek.safar@gmail.com>

	* AppDomain.cs: IsHomogenous always returns true for now.

2009-08-06 Rodrigo Kumpera  <rkumpera@novell.com>

	* Environment.cs: Bump corlib version.

2009-08-04 Rodrigo Kumpera  <rkumpera@novell.com>

	* Environment.cs: Bump corlib version.

2009-08-03  Zoltan Varga  <vargaz@gmail.com>

	* Environment.cs: Bump corlib version.

2009-07-30  Marek Safar  <marek.safar@gmail.com>

	* AppDomain.cs: Implemented 2.0 CreateDomain.

2009-07-28 Rodrigo Kumpera  <rkumpera@novell.com>

	Type.cs (MakeArrayType): Handle one-dym multidimensional array
	created with Type::MakeArrayType (1).

2009-07-28  Rodrigo Kumpera  <rkumpera@novell.com>

	* Type.cs (FindMembers): Fix the ordering of returned members
	to method, ctor, property, event, field and nested type.

2009-07-27 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* Array.cs: empty arrays just return -1 in LastIndexOf().

2009-07-27  Miguel de Icaza  <miguel@novell.com>

	* Value types implementing IConvertible.ToType now throw an
	ArgumentNullException if they are passed a null as the
	"targetType" argument.

	This code can not be put directly in the Convert.ToType method, as
	this method is used by Convert.ToType (object o, TypeCode tc)
	which uses null as a target to throw a different kind of error
	(InvalidCastException).

	Fixes a few more bugs in the Silverlight BCL test suite.

	Additionally, the parameter type has been renamed.

2009-07-26  Miguel de Icaza  <miguel@novell.com>

	* Type.cs: (GetMember) call directly the worker method, instead of
	calling through an intermediary.

	(GetMember, full): throw if the name is null.

2009-07-19  Robert Jordan  <robertj@gmx.net>

	* __ComObject.cs: Factor out Initialize method and expose it to
	ComInteropProxy. Fixes bug #520437.

2009-07-14  Rodrigo Kumpera  <rkumpera@novell.com>

	* Attribute.cs (GetCustomAttributes): Pass typeof(Attribute)
	to GetCustomAttributes to match MS.

	* MonoCustomAttrs.cs (GetCustomAttributesBase): Do proper
	checking of which types are handled by the runtime.

	* MonoCustomAttrs.cs (IsDefined): Same.

	Fixes #521885.

2009-07-14  Zoltan Varga  <vargaz@gmail.com>

	* Environment.cs: Bump corlib version.

2009-07-07  Rodrigo Kumpera  <rkumpera@novell.com>

	* Type.cs (IsUserType): Only TypeDelegator and types
	outside of corlib are unhandled usertypes.

2009-07-02  Marek Safar  <marek.safar@gmail.com>

	* Type.cs, AppDomain.cs: 4.0 bits.

2009-06-26 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* DateTime.cs: if the DateTimeOffset is out of bounds, let Parse
	report the error. Fix stupid harmless typo.
	* DateTimeOffset.cs: report error if the UTC date/time is out of
	bounds.

2009-06-25  Miguel de Icaza  <miguel@novell.com>

	* Array.cs: IList.this needs to throw IndexOutOfRangeException
	when the index is invalid, not ArgumentOutOfRangeException.

	* Int32.cs: Do not crash if the FormatProvider returns a null
	value on the call to GetFormat (Type).

	Validate the NumberStyles, passes Int/Int32Parse2.exe

	Fix regression introduced in 2005, we need to throw
	ArgumentNullException on Parse.

2009-06-25  Miguel de Icaza  <miguel@novell.com>

	* Int32.cs: Fix regression introduced in 2005, we need to throw
	ArgumentNullException on Parse.

2009-06-23 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* DateTime.cs: ignore MinValue to avoid DateTimeOffset ctor throwing
	when adjusting for TZ.

2009-06-22  Miguel de Icaza  <miguel@novell.com>

	* String.cs: In Silverlight the whitespace characters 0x202f and
	0x205f are considered for Trim and Split purposes. 

2009-06-21  Marek Safar  <marek.safar@gmail.com>

	* Tuples.cs: Add Equals, GetHashCode.

2009-06-21  Zoltan Varga  <vargaz@gmail.com>

	* IntPtr.cs (.ctor): Disable the check in the long ctor until we
	can figure out how to do it properly.

2009-06-20  Zoltan Varga  <vargaz@gmail.com>

	* IntPtr.cs (.ctor): Allow long values whose 31th bit is set.

2009-06-18 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* DateTime.cs: quick fix for the 1.x build.

2009-06-18 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* AppDomainSetup.cs: update attribute.
	* TermInfoDriver.cs: ensure we are initialized in CheckWindowDimensions().
	* DateTimeOffset.cs: Implement Parse().
	* DateTime.cs: add 'zzz' to the list of default time formats. Return a
	DateTimeOffset from _DoParse. Fixed the offset minutes when the
	timezone is specified as a negative one.
	* Console.cs: updates for MoveBufferArea().
	* AppDomainManager.cs: implement EntryAssembly.
	* AppDomain.cs: update attribute.

2009-06-15  Atsushi Enomoto  <atsushi@ximian.com>

	* Environment.cs : bump corlib version.

2009-06-12  Bill Holmes  <billholmes54@gmail.com>

	* Variant.cs (GetValue):  Changing the bool case to use the short value.  
	  This is to avoid junk in the high word.

	Contributed under MIT/X11 license.

2009-06-10  Marek Safar  <marek.safar@gmail.com>

	* Predicate.cs, Action.cs, Funcs.cs, Comparison.cs, IComparable.cs,
	Converter.cs, EventHandler.cs: Add type variance.
	
	* InvalidTimeZoneException.cs,
	TimeZoneNotFoundException.cs: New file.

2009-05-27  Zoltan Varga  <vargaz@gmail.com>

	* AppDomain.cs (DoAssemblyResolve): Fix recursion detection. Fixes #507003.

2009-05-26  Mark Probst  <mark.probst@gmail.com>

	* Thread.cs: Don't set the execution context when creating a
	thread because the _ec member is thread static and we set the
	wrong one.  It's now set by the runtime.  We just provide the
	correct one.

	* Environment.cs: Bump corlib version.

2009-05-22  Zoltan Varga  <vargaz@gmail.com>

	* Tuple.cs Tuples.cs: New files.

	* Lazy.cs LazyExecutionMode.cs Funcs.cs: New files.

2009-05-14 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* Type.cs: (GetInterfaceMap) 'this' can't be an interface itself.
	Fixed bug #503728.

2009-05-03 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* TermInfoDriver.cs: replace Peek with DataAvailable.

2009-05-02  Sebastien Pouliot  <sebastien@ximian.com>

	* Console.cs: Remove Windows-specific p/invokes and SSC code
	from the NET_2_1 build.

2009-05-01  Sebastien Pouliot  <sebastien@ximian.com>

	* AppDomainManager.cs: Fix base class for NET_2_1 and implement
	CheckSecuritySettings (added in 2.0SP and part of SL API)

2009-04-29 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* Enum.cs: return the value as an enum of the right type.

2009-04-28 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* Enum.cs: avoid exceptions from ToObject and use Try* instead.

2009-04-25  Miguel de Icaza  <miguel@novell.com>

	* TermInfoDriver.cs: Use the new StreamReader.DataAvailable to
	load all the data that was added into the `stdin' stream when we
	did the `Read'.

2009-04-24  Sebastien Pouliot  <sebastien@ximian.com>

	* Environment.cs: #ifdef out code that use the registry for the 
	NET_2_1 profile and some other properties (2) that added
	[SecuritySafeCritical] methods to audit inside Moonlight.

2009-04-21  Mark Probst  <mark.probst@gmail.com>

	* Environment.cs: Bump corlib version.

2009-04-21  Miguel de Icaza  <miguel@novell.com>

	* TermInfoDriver.cs: Prevent race condition if two threads try to
	initialize the Console at the same time. 

	What happens is that inited is set, and elsewhere we try to
	dereference native_terminal_size before it is set.

	* Reduce code size by using a table instead of manually making a
	few hundred calls.
	
2009-04-20  Miguel de Icaza  <miguel@novell.com>

	* Enum.cs (MonoEnumInfo): Compare bytes, shorts, ints and longs as
	unsigned values as specified and to fix 371559, from the bug:

		So the actual difference is that MSFT's Enum.GetValues
		orders the members as unsigned even when the underlying
		type is int.  See the following.  Perhaps that's what's
		being implied by "binary values" in that Enum.GetValues
		MSDN quote above.

2009-04-18  Mark Probst  <mark.probst@gmail.com>

	* NumberFormatter.cs: Keep the current thread's number formatter
	as a ThreadStatic member.

2009-04-18  Mark Probst  <mark.probst@gmail.com>

	* Environment.cs: Bump corlib version.

2009-04-12 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* GCNotificationStatus.cs: new enum.

2009-04-10  Zoltan Varga  <vargaz@gmail.com>

	* Array.cs: Make some of the InternalArray methods non-generic to cut down
	on the number of instantiations. Add implementation for 
	ICollection:IsReadOnly.

2009-03-26  Jb Evain  <jbevain@novell.com>

	* Delegate.cs (CreateDelegate): Support for delegates
	on static methods closed on a null target.

2009-03-26  Zoltan Varga  <vargaz@gmail.com>

	* Environment.cs: Bump corlib version.

2009-03-25  Sebastien Pouliot  <sebastien@ximian.com>

	* Delegate.cs: Add new parameter to CreateDelegate_internal (icall)
	* Environment.cs: Bump mono_corlib_version to 73

2009-03-25  Jb Evain  <jbevain@novell.com>

	* Delegate.cs (CreateDelegate): fix checks to deal with
	valuetypes -> obj conversions for arguments, and avoid
	issues with such unallowed conversion for return types.

2009-03-23  Zoltan Varga  <vargaz@gmail.com>

	* String.cs (LastIndexOf): Handle empty strings correctly. Fixes #486234.

2009-03-18  Zoltan Varga  <vargaz@gmail.com>

	* Type.cs (GetGenericTypeDefinition): Make this throw an exception to be
	consistent with MS.NET. Move the real implementation to MonoType.

2009-03-18  Marek Safar  <marek.safar@gmail.com>

	* Decimal.cs: Initialize all fields.

2009-03-16 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* ConsoleDriver.cs:
	* TermInfoDriver.cs: handle Ctrl-D (or similar) in ReadLine.
	Fixes bug #483950.

	* ControlCharacters.cs: index to the control characters list.
	* Environment.cs: bumped corlib version.

2009-03-14  Miguel de Icaza  <miguel@novell.com>

	* Convert.cs (ToType): Control whether this internal function will
	call an IConvertible.ToType method or not.  

	Classes and structs implementing IConvertible in mscorlib (the
	only callers that can access Convert.ToType) must pass false to
	avoid a infinite recursion problem and callers from the public
	Convert API must call it with true.

	This fixes the regression reported in #485377 that was introduced
	by the fix for #481687.

	* Int16.cs, UInt64.cs, Double.cs, Enum.cs, SByte.cs, UInt16.cs,
	Byte.cs, Decimal.cs, Int32.cs, String.cs, Int64.cs, Char.cs,
	Boolean.cs, Single.cs, UInt32.cs: Update the call sites.

2009-03-07  Gert Driesen  <drieseng@users.sourceforge.net>

	* Convert.cs: Do not throw InvalidCastException if
	IConvertible.ToType returns null.

2009-03-06  Andrés G. Aragoneses  <aaragoneses@novell.com>

	* Convert.cs: Correct typo in exception message.

2009-03-06  Miguel de Icaza  <miguel@novell.com>

	* Convert.cs: Apply patch from Tom Hindle that uses
	IConvertible.ToType if there are no other possible conversions
	defined. 

	Fixes: #481687 

2009-03-06  Rodrigo Kumpera  <rkumpera@novell.com>

	* MonoType.cs (MonoTypeInfo): Add default_ctor field.

	* MonoType.cs: Add GetDefaultConstructor that caches using
	type_info.default_ctor.

	* MonoType.cs (FullName): Protects against type_info been replaced
	under the hood.

	* Activator.cs (CreateInstance): If the type is a MonoType resolve the
	default constructor using the new method from MonoType.

	Improves Activator::CreateInstance performance by at least 30%, reduces object churn
	and domain lock contention.

2009-03-03  Rodrigo Kumpera  <rkumpera@novell.com>

	* Guid.cs (BaseToString): Reduce allocations.

2009-03-02  Rodrigo Kumpera  <rkumpera@novell.com>

	* Environment.cs: Bump corlib version.

2009-03-02  Rodrigo Kumpera  <rkumpera@novell.com>

	* Enum.cs (IsDefined): If the enum underlying type is int32, use
	the generic version, which doesn't box every element of the array.

2009-03-02  Rodrigo Kumpera  <rkumpera@novell.com>

	* Enum.cs (GetName): If the enum underlying type is int32, use
	the generic version, which doesn't box every element of the array.

2009-03-02  Rodrigo Kumpera  <rkumpera@novell.com>

	* Enum.cs (MonoEnumInfo::GetInfo): Share the boxed form of the
	MonoEnumInfo between both caches.

2009-02-28  Zoltan Varga  <vargaz@gmail.com>

	* Enum.cs (FindName): Use a hash table for looking up names instead of
	a linear search for enums with a lot of values.

2009-02-27  Rodrigo Kumpera  <rkumpera@novell.com>

	* UInt16.cs (CompareTo/short): Make it return the
	same values as the /object version.

	* Enum.cs (CompareTo): Use new compare_value_to icall to do the comparison.
	This avoids two allocations and reduce the number of trips to unmanaged land
	by one.

	The performance improvement is up to 3.5x with the bonus of reducing the generated
	garbage.

2009-02-26  Marek Safar  <marek.safar@gmail.com>

	* Nullable.cs: Inline GetValueOrDefault.

2009-02-26  Zoltan Varga  <vargaz@gmail.com>

	* String.cs (FormatHelper): If all the arguments are strings, compute an
	initial length for the stringbuilder to avoid reallocations.

	* MonoType.cs (FullName): Cache the result of this in a field, as
	computing it is expensive.

	* Environment.cs: Bump corlib version.
	
2009-02-25  Zoltan Varga  <vargaz@gmail.com>

	* Enum.cs (GetInfo): Add a global cache in addition to the thread-local
	caches to accomodate short living threads like threadpool threads.

2009-02-23  Zoltan Varga  <vargaz@gmail.com>

	* Type.cs: Add IsUserType internal property.

2009-02-21  Jb Evain  <jbevain@novell.com>

	* MonoType.cs (InvokeMember): don't pass a null args to
	Binder.BindToMethod. Fix for #471275.

2009-02-12  Robert Jordan  <robertj@gmx.net>

	* Exception.cs: Rename remote_stack_trace for MS.NET
	compatibility. Fixes #425512.

2009-02-12  Lluis Sanchez Gual  <lluis@novell.com>

	* MarshalByRefObject.cs: Implemented MemberwiseClone(bool).

2009-02-10 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* AppDomain.cs: this fixes the remoting tests.
	Zoltan found out that there was a domain improperly using shadow
	copy.

2009-02-04 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* DateTime.cs: check for null and empty strings before anything else
	in CoreParse.

2009-01-27  Zoltan Varga  <vargaz@gmail.com>

	* Type.cs (GetHashCode): Work on UnderlyingSystemType. Fixes #467229.

2009-01-24  Zoltan Varga  <vargaz@gmail.com>

	* Variant.cs ApplicationIdentity.cs ActivationContext.cs Environment.cs
	AppDomain.cs: Fix warnings.

2009-01-24 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* AppDomain.cs: LoadAssembly() returns null instead of throwing now.
	Add new LoadSatellite method.

2009-01-20  Mark Probst  <mark.probst@gmail.com>

	* Exception.cs: Added a comment explaining the use of trace_ips.

2009-01-12  Bill Holmes  <billholmes54@gmail.com>

	* Variant.cs (GetValue):  Handling the NULL IDispatch 
	  and IUnknown case.

	Contributed under MIT/X11 license.

2009-01-09  Miguel de Icaza  <miguel@novell.com>

	* DateTime.cs: Implement TryParse in a way that will not depend on
	the try/catch statement.   The try/catch statement is still there
	*just in case*, I might have missed some codepaths.

2009-01-06  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : when ".FF..." is specified, allow milliseconds-less
	  time. Fix #444103.

2008-12-19  Bill Holmes  <billholmes54@gmail.com>

	* Environment.cs (GetEnvironmentVariable) :  Avoiding an nre if 
	  the variable is not set.

	* Environment.cs (SetEnvironmentVariable) : Adding a call to 
	  internalBroadcastSettingChange to notify Windows that an environment 
	  variable has changed.

	Contributed under MIT/X11 license.

2008-12-18  Jb Evain  <jbevain@novell.com>

	* String.cs: the Compare methods that were specific to SL2 are now
	also in .net 2/3.5 sp1.

2008-12-10  Bill Holmes  <billholmes54@gmail.com>

	* Variant.cs (SetValue):   Changing the behavior for COM object in 
	  VARIANTs to match MS.  Also adding support for BStrWrapper, 
	  UnknownWrapper, and DispatchWrapper.

	Contributed under MIT/X11 license.

2008-11-28  Miguel De Icaza  <miguel@novell.com>

	* TermInfoDriver.cs: Also register a mapping to make verase be the
	backspace key.  Funny thing: verase was fetched from the termios,
	but it was *never* actually used in this file.

	VSUSP and VINTR are likewise ignored.   Must ponder this.

	This makes the backspace key in MacOS work on interactive
	applications.
	
2008-11-15  Kornél Pál  <kornelpal@gmail.com>

	* Convert.cs: Removed useless check from ToChar (ushort).

2008-11-06  Bill Holmes  <billholmes54@gmail.com>

	* Type.cs (FindMembers):  Changing the instantiated type of the 
	  returned MemberInfo array to match the MemberTypes flag
	  passed in argument 1.

	Contributed under MIT/X11 license.

Mon Nov 3 16:39:37 CET 2008 Paolo Molaro <lupus@ximian.com>

	* Array.cs: in the IList set_Item, ensure the array
	element is set using the proper type checks (bug #440819).

Mon Oct 13 16:40:56 CEST 2008 Paolo Molaro <lupus@ximian.com>

	* Environment.cs, OperatingSystem.cs: complete support for
	PlatformID (bug #433108).

2008-10-08 Gonzalo Paniagua Javier <gonzalo@novell.com>

	* AppDomain.cs: (Load(AssemblyName)) Use the CodeBase after the Name
	when both are provided.
	Fixes bug #322228.

2008-10-08  Bill Holmes  <billholmes54@gmail.com>

	* Variant.cs : Adding the BRECORD field to ensure the right size on
	  a 64-bit OS.  32-bit 16 bytes, 32-bit 24 bytes.

	Contributed under MIT/X11 license.

2008-10-08  Bill Holmes  <billholmes54@gmail.com>

	* Variant.cs (SetValue) : Adding code to handle enums.

	Contributed under MIT/X11 license.

2008-10-08  Bill Holmes  <billholmes54@gmail.com>

	* Variant.cs : Cleaning up some tab formatting problems.

	Contributed under MIT/X11 license.

2008-10-08  Zoltan Varga  <vargaz@gmail.com>

	* PlatformID.cs: Define Xbox/MacOSX on the 2.0 profile too, since it
	is part of NET 3.5 SP1.

2008-10-07  Marek Habersack  <mhabersack@novell.com>

	* Math.cs: implemented the away from zero rounding for the Round
	(double, int, MidpointRounding) overload.

2008-10-06  Zoltan Varga  <vargaz@gmail.com>

	* Activator.cs (CreateInstance): Don't return the return value of the
	ctor.Invoke (object, ...) overload since it is null, return 'newOb' instead.

Mon Oct 6 15:12:25 CEST 2008 Paolo Molaro <lupus@ximian.com>

	* Array.cs: better message when keys cannot be compared
	when sorting (bug #368455).

2008-09-29  Rodrigo Kumpera  <rkumpera@novell.com>

	* Type.cs (MakeGenericType): Only use UnderlyingSystemType for user types.
	This must exclude TypeBuilder and EnumBuilder. Fixes #430508.

2008-09-28  Juraj Skripsky  <js@hotfeet.ch>

	* String.cs (ReplaceUnchecked): Avoid any unnecessary work and 
	string allocations by returning early when no oldValue was found.

2008-09-24  Marek Habersack  <mhabersack@novell.com>

	* Double.cs: check whether decimal_separator, group_separator and
	currency_symbol strings aren't empty before trying to index them
	in Parse ().

2008-09-24  Jb Evain  <jbevain@novell.com>

	* AppDomain.cs (CreateDomain): call the domain initializer in
	the newly created AppDomain. Fixes #429545.

2008-09-24  Jb Evain  <jbevain@novell.com>

	* AppDomain.cs: implement the CreateDomain overload which
	takes an AppDomain initializer. Fixes #429545.

2008-09-17  Robert Jordan  <robertj@gmx.net>

	* DelegateSerializationHolder.cs: Starting with .NET 2.0, delegates
	of non-public methods are allowed to be serialized. Fixes #425345.

2008-09-15  Andy Hume  <andyhume32@yahoo.co.uk>

	* DateTimeOffset.cs: DateTimeOffset currently has no
	deserialization constructor, thus deserialization
	fails ("SerializationException: The constructor to deserialize an
	object of type System.DateTimeOffset was not found.")

	Patch attached, implements GetObjectData and that constructor.
	Also includes tests, which include round-tripping to/from MSFT.

2008-09-14  Zoltan Varga  <vargaz@gmail.com>

	* ConsoleDriver.cs: Remove obsolete GetTtySize icall.

2008-09-09  Marek Safar  <marek.safar@gmail.com>

	* Convert.cs, Decimal.cs: Fixed float/double to decimal range check.

2008-09-07  Miguel de Icaza  <miguel@novell.com>

	* TermInfoDriver.cs: Add support for updating the size of the
	terminal when it changes.   

2008-08-27  Miguel de Icaza  <miguel@novell.com>

	* TermInfoDriver.cs: Adds support for the Insert and Delete keys
	on the keyboard.   

2008-08-26  Miguel de Icaza  <miguel@novell.com>

	* New console features are used by gmcs.exe, but since we only
	build gmcs.exe with the bootstrap corlib, we need to ensure all
	the new stuff is included in BOOTSTRAP_NET_2_0

2008-08-26  Robert Jordan  <robertj@gmx.net>

	* AppDomain.cs (get_Evidence): Fix endless recursion exposed
	by the test case of bug #420197.

2008-08-24  Miguel de Icaza  <miguel@novell.com>

	* TermInfoDriver.cs (GetKeyFromBuffer): Add support for reporting
	Alt-LETTER sequences.   They were ignored previously.

2008-08-22  Sebastien Pouliot  <sebastien@ximian.com>

	* AppDomainSetup.cs: Remove IAppDomainSetup for SL2. This helps
	the tuner since the methods are then defined correctly (wrt to the
	implicit implementation of the interfaces)/

2008-08-21  Sebastien Pouliot  <sebastien@ximian.com> 

	* Nullable.cs: Add two ComVisible(false) for SL2 profile.
	* PlatformID.cs: Add Xbox and MacOX for SL2 profile.
	* WeakReference.cs: Add default, protected, ctor for SL2.

2008-08-20  Miguel de Icaza  <miguel@novell.com>

	* ConsoleDriver.cs: TtySetup now takes an extra argument: the
	keypadXmit string.

2008-08-16  Gert Driesen  <drieseng@users.sourceforge.net>

	* Exception.cs: Fixed value of HResult to match MS. Added support for
	(de)serializing Data. Use deserialized ClassName, if available, to
	when name of type is used.

2008-08-10  Gert Driesen  <drieseng@users.sourceforge.net>

	* IServiceProvider.cs: Added ComVisible attribute (1.0 only).
	* String.cs: Fixed argument names to match MS.

2008-08-10  Gert Driesen  <drieseng@users.sourceforge.net>

	* Boolean.cs
	* Byte.cs
	* Char.cs
	* DateTime.cs
	* DBNull.cs
	* Decimal.cs
	* Double.cs
	* Enum.cs
	* Int16.cs
	* Int32.cs
	* Int64.cs
	* Single.cs
	* String.cs
	* UInt16.cs
	* UInt32.cs
	* UInt64.cs: Added missing CLSCompliant attributes for 1.0 profile.

2008-08-07  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : zzzz format allows non-fixed length of number, even
	  in exact parsing mode. Fixed bug #377042.

2008-08-05  Jb Evain  <jbevain@novell.com>

	* String.cs: add new NET_2_1 Compare methods.

2008-08-03  Miguel de Icaza  <miguel@novell.com>

	* ConsoleDriver.cs: If the terminal is dumb, do not activate the
	full terminal support.

2008-08-02  Marek Safar  <marek.safar@gmail.com>

	* Type.cs: Removed _MemberInfo from base classes list.
	
2008-07-28  Marek Safar  <marek.safar@gmail.com>

	* KnownTerminals.cs: Don't initialize rarely used static data.

2008-07-24  Zoltan Varga  <vargaz@gmail.com>

	* Delegate.cs: Move the rarely used fields to a separate object, add
	'method_code' field.

	* Environment.cs: Bump corlib version.

	* ConsoleDriver.cs: Remove unused Suspend icall.

2008-07-21  Marek Safar  <marek.safar@gmail.com>

	* AppDomain.cs (Load): Check for 0-length assembly name.

2008-07-21  Rodrigo Kumpera  <rkumpera@novell.com>

	* Enum.cs (GetHashCode): Use new icall get_hashcode to
	avoid allocating a boxed version of the enum basetype.

2008-07-17  Marek Safar  <marek.safar@gmail.com>

	* String.cs: reverted GetHashCode changes.

2008-07-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* Char.cs: Remove obsolete lamespecs (it implements IConvertible, small formatting)

2008-07-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* Char.cs: Optimize some Is* checks

2008-07-06  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* DateTimeOffset.cs: Fix parameter name

2008-07-06  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* DateTimeOffset.cs: Remove public, make implicit method

2008-07-06  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* Environment.cs: Add missing attribute

2008-07-04  Rodrigo Kumpera  <rkumpera@novell.com>

	* Delegate.cs (get_Method): Use the internal version
	of GetMethodFromHandle to avoid the generic class check.

2008-07-04  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* GCCollectionMode.cs: Add attribute
	* GC.cs: Add semi-stubbed missing method, remove obsolete Lamespec, hide non-public method

2008-07-04  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* Delegate.cs: Fix parameter names for 2.0 profile
	* Int64.cs: Fix parameter names

2008-07-04  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* IntPtr.cs: Fix parameter names, change internal name to accomodate for parameter changes

2008-07-04  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* Predicate.cs:
	* Object.cs:
	* Nullable.cs
	* MultiCastDelegate.cs
	* ModuleHandle.cs
	* Math.cs
	* MarshalByRefObject.cs
	* Int64.cs
	* Int32.cs
	* Int16.cs
	* Environment.cs
	* Delegate.cs
	* DateTimeOffset.cs
	* ConsoleKeyInfo.cs
	* Console.cs
	* Array.cs
	* AppDomain.cs: Fix parameter names

2008-07-03  Rodrigo Kumpera  <rkumpera@novell.com>

	* Exception.cs (GetFullNameForStackTrace): Don't do string
	concatenation.

2008-06-30  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* ContextMarshalException.cs:
	* DllNotFoundException.cs:
	* EntryPointNotFoundException.cs:
	* FieldAccessException.cs:
	* MethodAccessException.cs:
	* MissingFieldException.cs:
	* PlatformNotSupportedException.cs: Fix parameter names

2008-06-30  Marek Safar  <marek.safar@gmail.com>

	* String.cs: Tweaked hash code methods for better distibution, and speed-up.

2008-06-29  Zoltan Varga  <vargaz@gmail.com>

	* MonoCustomAttrs.cs (IsDefined): Avoid calling the .Assembly property in some
	cases.

2008-06-30  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* Char.cs: Fix formatting, rename wrong named param, remove code duplication

2008-06-28  Zoltan Varga  <vargaz@gmail.com>

	* Enum.cs (GetUnderlyingType): Implement this using an icall.
	
	* Enum.cs (Format): Call IsDefined with inherited=false.

	* Exception.cs: Fix a warning.

2008-06-27  Zoltan Varga  <vargaz@gmail.com>

	* Enum.cs (FindName): Avoid calling String.Compare for the !ignoreCase case.

2008-06-27  Rodrigo Kumpera  <rkumpera@novell.com>

	* Exception.cs: Build method traces using the
	stack trace StringBuilder.

2008-06-27  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* Version.cs: Fix parameter names
	* UInt64.cs: 
	* UInt32.cs:
	* UInt16.cs:
	* Int64.cs: Fix parameter names
	* Int32.cs: Fix parameter names; some small formatting
	* Int16.cs: Fix parameter names
	* Double.cs: Fix parameter names; small formatting
	* Single.cs:
	* SByte.cs:
	* Byte.cs:
	* Boolean.cs:
	* DateTime.cs:
	* Enum.cs:
	* Decimal.cs: Fix parameter names

2008-06-14  Zoltan Varga  <vargaz@gmail.com>

	* Environment.cs: Bump corlib version.

2008-06-10  Zoltan Varga  <vargaz@gmail.com>

	* Math.cs (IEERemainder): Use the normal BitConverter.Int64BitsToDouble method
	here to fix this on sparc.

2008-06-07  Marek Safar  <marek.safar@gmail.com>

	* Array.cs (IndexOf, LastIndexOf): Fixed more array element comparers used
	instead of tested value comparers.

2008-06-07  Zoltan Varga  <vargaz@gmail.com>

	* Environment.cs: Bump corlib version.

2008-06-05  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* String.cs: Managed replacement for Replace method ;)

2008-06-03  Zoltan Varga  <vargaz@gmail.com>

	* Decimal.cs (Divide): Move expensive equality checks to unmanaged code.

2008-06-02  Ivan N. Zlatev  <contact@i-nz.net>

	* MonoType.cs: For property reflection we should strictly match the return 
	type if available.

2008-06-01  Juraj Skripsky  <js@hotfeet.ch>

	* String.cs (Substring): Blocking bug #395904 has been fixed,
	re-enable optimization.

2008-06-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* String.cs: Replace Split IndexOf

2008-05-30  Marek Safar  <marek.safar@gmail.com>

	* Array.cs (IndexOf): Use an array element comparer instead of tested value
	comparer.

2008-05-28  Zoltan Varga  <vargaz@gmail.com>

	* Console.cs (.cctor): Make sdout synchronized in the console case too.
	Fixes #395069.

2008-05-27  Eyal Alaluf <eyala@mainsoft.com>

	* NumberFormatter.jvm.cs: Fix tables to avoid arithemtic overflow
	  in Double.ToString as exposed by Bug #383531.

2008-05-24  Gert Driesen  <drieseng@users.sourceforge.net>

	* String.cs: Comment out 2.0 compatibility fix for SubString, since it
	causes regressions in System.Xml.

2008-05-24  Gert Driesen  <drieseng@users.sourceforge.net>

	* String.cs: Changed exception to match MS. Fixed ToCharArray to use
	startindex for source. In PadLeft and PadRight, only return current
	string if totalWidth is less than length.

2008-05-24 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>

	* Enum.cs: use Array.BinarySearch on the values in IsDefined and
	GetName instead of looping through the list. Made the cache in
	MonoEnumInfo thread static to avoid contention.

2008-05-20  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* String.cs: Replace Split function

2008-05-19  Sebastien Pouliot  <sebastien@ximian.com>

	* Boolean.cs,
	* Double.cs,
	* Enum.cs,
	* Int64.cs,
	* Single.cs,
	* UInt32.cs,
	* UInt64.cs: Avoid unboxing primitive types more than one time.
	[Found using Gendarme]

2008-05-19  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* String.cs: Update Trim functions

2008-05-19  Zoltan Varga  <vargaz@gmail.com>

	* ConsoleDriver.cs: Avoid initializing the three driver classes when only one
	is needed.

2008-05-18  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* String.cs: Update Join and Pad functions

2008-05-18  Sebastien Pouliot  <sebastien@ximian.com>

	* Environment.cs: Use String.IsNullOrEmpty inside 2.0 code.
	[Found using Gendarme]

2008-05-16  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* String.cs: Directly create charenumerator

2008-05-15  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* String.cs: Resubmit uncritical parts of String patch

2008-05-15  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* DateTime.cs: Fix parameter names

2008-05-15  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* Decimal.cs: Fix parameter names

2008-05-15  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* Decimal.cs: Tabbify/Format

2008-05-14  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* Version.cs
	  UnhandledExceptionEventHandler.cs
	  UInt64.cs
	  UInt32.cs
	  UInt16.cs: Fix parameter names
	  Type.cs: Fix parameter names, formatting
	  TimeSpan.cs
	  StringComparer.cs
	  Single.cs
	  SByte.cs: Fix parameter names

2008-05-14  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* Double.cs
	  Enum.cs
	  Exception.cs
	  IComparable.cs
	  IEquatable.cs
	  IFormatProvider.cs
	  IFormattable.cs
	  InsufficientMemoryException.cs: Fix parameter names

2008-05-14  Jb Evain  <jbevain@novell.com>

	* Exception.cs (ToString): output a new line before the 
	inner exception separator. Fixes #390150.

2008-05-12  Gert Driesen  <drieseng@users.sourceforge.net>

	* Type.cs: Modifies exceptions to match MS. Changed GetTypeFromHandle
	on 1.0 profile to throw ArgumentException when handle is invalid,

2008-05-08  Rodrigo Kumpera  <rkumpera@novell.com>

	* Activator.cs (CreateInstance): Check for null types when creating
	the error message.

2008-05-07  Robert Jordan  <robertj@gmx.net>

	* RuntimeFieldHandle.cs, RuntimeTypeHandle.cs, RuntimeMethodHandle.cs:
	Don't try to serialize uninitialized handles. Fixes #386641.

2008-05-06  Marek Safar  <marek.safar@gmail.com>

	* IntPtr.cs (eplicit long, GetObjectData): Use ToInt64.

2008-05-05  Zoltan Varga  <vargaz@gmail.com>

	* Type.cs (GetTypeFromHandle): Apparently, it is possible to create a 
	RuntimeTypeHandle with a zero handle value by calling its ctor. Add an argument
	check for that.

	* IntPtr.cs (ToInt64): Use (long)(int) on 32 bit platforms to avoid the default
	unsigned conversion done by the compiler. Fixes #386466.

2008-05-04  Zoltan Varga  <vargaz@gmail.com>

	* Type.cs (UnderlyingSystemType): Add a comment pointing people to 
	Enum.GetUnderlyingType ().

2008-04-26  Zoltan Varga  <vargaz@gmail.com>

	* Array.cs (LastIndexOf): Return GetLowerBound (0) -1 instead of -1.
	
	* Array.cs (LastIndexOf): Fix handling of empty arrays. Fixes #383876.

2008-04-13  Zoltan Varga  <vargaz@gmail.com>

	* String.cs (Split): Fix the handling of RemoveEmptyEntries when the separator
	matches at the beginning of the string. Fixes #374511.

2008-04-13  Jb Evain  <jbevain@novell.com>

	* ICloneable.cs: use the INSIDE_CORLIB pattern to
	internalize code that is used outside the corlib.
	Merged from the Moonlight 2 branch.

2008-04-04  Raja R Harinath  <harinath@hurrynot.org>

	* String.cs (EndsWith) [CultureInfo variant]: Handle null 'culture'.
	(StartsWith, EndsWith, IndexOf, LastIndexOf) [StringComparison variant]:
	Throw exception on invalid StringComparison.

2008-04-01  Eyal Alaluf <eyala@mainsoft.com>

	* NumberFormatter.cs NumberFormatter.jvm.cs: Performance optimizations.
	  Reuse a per thread instance to format all the primitive types. Modify
	  class accordingly so the same
	  instance can be used multiple times.
	* Int16.cs UInt64.cs Double.cs SByte.cs UInt16.cs Byte.csDecimal.cs
	  TimeSpan.cs Int32.cs Int64.cs Single.cs UInt32.cs: Change use of
	  NumberFormatter to adapt to above changes in class interface.

2008-03-31  Mark Probst  <mark.probst@gmail.com>

	* MonoType.cs: Don't do CAS security checks in CheckMethodSecurity
	for 2.1 profile.

2008-03-28  Marek Safar  <marek.safar@gmail.com>

	* Nullable.cs (Box): Do things explicitly and not rely on broken gmcs
	behaviour.

2008-03-25  Zoltan Varga  <vargaz@gmail.com>

	* AppDomain.cs: Update after MonoMethod.InternalInvoke signature change.

	* Environment.cs: Bump corlib version.

	* DateTime.cs: Fix a warning.

2008-03-21  Sebastien Pouliot  <sebastien@ximian.com>

	* String.cs: Use "this" in Split method instead of calling ToString.
	Found using Gendarme.

2008-03-06  Marek Safar  <marek.safar@gmail.com>

	* MonoCustomAttrs (GetCustomAttributes): Type cannot be null with
	typeof (MonoCustomAttrs) hack.

Wed Mar 5 19:39:01 CET 2008 Paolo Molaro <lupus@ximian.com>

	* Type.cs: optimize GetTypeCode () for the common case
	(fixes bug #367354).

2008-03-02  Roei Erez  <roeie@mainsoft.com>

	* DateTime.cs: Improve the patch supplied by James Purcell to be
	  dotnet-compatible, and add support for RoundTripKind parsing. 
	  Fixed reopened bug #352210.


Tue Feb 26 17:50:17 CET 2008 Paolo Molaro <lupus@ximian.com>

	* DateTime.cs: instroduce a method that returns ticks monotonically.

2008-02-26  Ivan N. Zlatev  <contact@i-nz.net>

	* Attribute.cs, MonoCustomAttrs: MS ignores the inherit param in 
	PropertyInfo's ICustomAttributeProvider implementation, but not 
	in the Attributes, so directly get the attributes from 
	MonoCustomAttrs instead of going throught the PropertyInfo's 
	ICustomAttributeProvider.
	[Fixes bugs #324472 and #322464]

2008-02-26  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : fix roundtrip regression in Sys.Xml.XmlConvertTests,
	  patch by James Purcell (at #352210).

2008-02-25  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs, DateTimeUtils.cs : make Kind value from parse result
	  as dotnet-compatible. Patch by James Purcell, fixed bug #352210.

2008-02-18  Atsushi Enomoto  <atsushi@ximian.com>

	* DBNull.cs : ToType(typeof(DBNull),...) should be allowed.

2008-02-16  Sebastien Pouliot  <sebastien@ximian.com>

	* Object.cs: Fix parameter name to match MS implementation. Found
	using Gendarme.
	* ValueType.cs: Fix parameter name to match MS implementation. 
	Found using Gendarme.

2008-02-14  Jb Evain  <jbevain@novell.com>

	* Delegate.cs (CreateDelegate): refactor. DRY!

2008-02-12  Gert Driesen  <drieseng@users.sourceforge.net>

	* Delegate.cs (CreateDelegate): Walk the inheritance change to find
	matching method. Skip methods for which the return type does not match
	the delegate. Fixes bug #360784.

2008-02-11  Eyal Alaluf <eyala@mainsoft.com>

	* NumberFormatter.cs: Fix ToString("R") for +-Infinity & NaN.

2008-02-08  Sebastien Pouliot  <sebastien@ximian.com>

	* Random.cs: Explain (and extend) special case in Next(min,max)

2008-02-08  Juraj Skripsky  <js@hotfeet.ch>

	* Random.cs (Next): Use rounding (via implicit conversion) only on
	positive values. Fixes bug 359918.

2008-02-03  Sebastien Pouliot  <sebastien@ximian.com>

	* Environment.cs: Remove unused method found with Gendarme.

2008-02-02  Gert Driesen  <drieseng@users.sourceforge.net>

	* Variant.cs: Fixed line endings.
	* MonoType.cs: Fixed parameter name for ArgumentException to match MS.

2008-01-29  Zoltan Varga  <vargaz@gmail.com>

	* Type.cs (MakeGenericType): Fix exception message.

2008-01-29  Jb Evain  <jbevain@novell.com>

	* AppDomain.cs: add SL overload of DefineDynamicAssembly.

2008-01-29  Marek Safar  <marek.safar@gmail.com>

	* Type.cs (MakeGenericType): More argument checks. Fixes #356863 by
	 Sanghyeon Seo.

2008-01-25  Rodrigo Kumpera  <rkumpera@novell.com>

	* MonoType.cs (InvokeMember): Fixed exceptions arguments for last comit.

2008-01-24  Rodrigo Kumpera  <rkumpera@novell.com>

	* MonoType.cs (InvokeMember): Check for parameters without default value which
	the supplied argument is Missing.Value. Fixes one of the issues of #348522.

2008-01-21  Sebastien Pouliot  <sebastien@ximian.com>

	* DateTimeOffset.cs: Avoid NRE on bad cast if null is provided to
	Equals(object). Found using Gendarme.

2008-01-16  Zoltan Varga  <vargaz@gmail.com>

	* DateTimeOffset.cs: Fix warnings.

2008-01-15  Stephane Delcroix  <sdelcroix@novell.com>

	* DateTimeOffset.cs: ParseExact: parse f, F, s too.

2008-01-15  Stephane Delcroix  <sdelcroix@novell.com>

	* DateTimeOffset.cs: ParseExact: honor the DateTimeStyles parameter.

2008-01-15  Zoltan Varga  <vargaz@gmail.com>

	* AppDomainSetup.cs Buffer.cs Action.cs Array.cs BadImageFormatException.cs Byte.cs
	Attribute.cs _AppDomain.cs Boolean.cs AppDomain.cs: Fix some argument names to be 
	consistent with MS.

2008-01-14  Sephane Delcroix  <sdelcroix@novell.com>

	* DateTimeOffset.cs: start refactoring DoParse.

2008-01-14  Zoltan Varga  <vargaz@gmail.com>

	* Type.cs (GetConstructor): Use correct binding flags in type (Type[]) overload.
	Fixes #353604.

2008-01-13  Eyal Alaluf <eyala@mainsoft.com>

	* NumberFormatter.cs, Double.cs, Single.cs: Fix Single & Double default
	  ToString to handle +-Infinity & NaN.

2008-01-14  Sephane Delcroix  <sdelcroix@novell.com>

	* DateTimeOffset.cs: ParseExact (string, string, IFormatProvider) 
	implemented.


2008-01-14  Zoltan Varga  <vargaz@gmail.com>

	* NumberFormatter.cs: Remove some redundant assignments.

2008-01-13  Gert Driesen  <drieseng@users.sourceforge.net>

	* AppDomain.cs: Also fix bug #350530 for overload taking evidence and
	args. On 1.0 profile, throw COMException to match MS and to allow
	our unit tests to pass on MS.

2008-01-13  Eyal Alaluf <eyala@mainsoft.com>

	* NumberFormatter.cs: Check in redesigned implementation. Improves
	  double.ToString performance by 2-3 orders of magnitude and other
	  primitive numeric types ToString performance.
	* NumberFormatter.jvm.cs: The TARGET_JVM managed tables for NumberFormatter
	  class for reuse if a completely managed NumberFormatter is required.
	* Int16.cs UInt64.cs Double.cs UInt16.cs SByte.cs Byte.cs TimeSpan.cs
	  Int32.cs Int64.cs Single.cs UInt32.cs: Adapt to new NumberFormatter.

2008-01-13  Zoltan Varga  <vargaz@gmail.com>

	* AppDomain.cs: Check for a missing entry point in the ExecuteAssembly methods.
	Fixes #350530.

2008-01-11  Stephane Delcroix  <sdelcroix@novell.com>

	* DateTimeOffset.cs: Fixes the MinValue (was equal to MaxValue)...

2008-01-10  Zoltan Varga  <vargaz@gmail.com>

	* Delegate.cs: Implement argument checking in CreateDelegate(Type,object,MethodInfo)
	method. Make the CreateDelegate(Type,MethodInfo) overload calls this version.
	Fixes #352805.

2008-01-10  Stephane Delcroix  <sdelcroix@novell.com>

	* DateTimeOffset.cs: chain the Parse* methods together.

2008-01-09  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : revert the previous fix. It caused regression on
	  the buildbot.

2008-01-09  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : fixed bug #352210. Kind is unspecified by default,
	  while the tick is for local time by default. This fix also involved
	  special x509 handling.

2008-01-08  Marek Safar  <marek.safar@gmail.com>

	* Array.cs (LastIndexOf<T>): Fixed bound checking.

2008-01-06  Zoltan Varga  <vargaz@gmail.com>

	* AppDomain.cs: Move the assembly loading in ExecuteAssembly and 
	ExecuteAssemblyByName to managed to as said by the MSDN docs. Fixes #350530.

	* Environment.cs: Bump corlib version.
	
2008-01-02  Marek Habersack  <mhabersack@novell.com>

	* Array.cs: fix a typo to unbreak the build.

2008-1-1  Scott Peterson  <lunchtimemama@gmail.com>

	* Array.cs: Slight improvement to the quicksort algorithm.

2007-12-28  Gert Driesen  <drieseng@users.sourceforge.net>

	* Environment.cs: Bump corlib version.

2007-12-20  Gert Driesen  <drieseng@users.sourceforge.net>

	* AppDomain.cs: Added check for null AssemblyName, and invalid
	AssemblyName.Name to DefineDynamicAssembly overloads. Loosely based on
	patch provided by Cedric Vivier. Fixes bug #349272.

2007-12-20  Stephane Delcroix  <sdelcroix@novell.com>

	* DateTimeOffset.cs: set [Min|Max]Value to UTC. Fixes #349621.

2007-12-19  Stephane Delcroix  <sdelcroix@novell.com>

	* DateTime.cs:
	* DateTimeOffset.cs:
	* DateTimeUtils.cs: factored out the common pieces of DT and DTO into DTU.

2007-12-18  Stephane Delcroix  <sdelcroix@novell.com>

	* DateTimeOffset.cs: implementing the 4 ToString overloads by reusing
	large chunks of System.DateTime code.

2007-12-16  Stephane Delcroix  <sdelcroix@novell.com>

	* DateTimeOffset.cs: some bugfix discovered by unit tests.

2007-12-16  Stephane Delcroix  <sdelcroix@novell.com>

	* DateTimeOffset.cs: almost complete implementation, still missing the
	Parse* and ToString methods.

2007-12-11  Zoltan Varga  <vargaz@gmail.com>

	* AppDomain.cs (DoAssemblyResolve): Fix detection of whenever there is a
	reflection-only assembly resolve hook.

2007-12-10  Stephane Delcroix  <sdelcroix@novell.com>

	* DateTimeOffset.cs: partial implementation. no longer just a stub.

2007-11-30  Zoltan Varga  <vargaz@gmail.com>

	* Delegate.cs: Compute the Method property lazily.
	
	* Delegate.cs: Add a 'method' field.

	* Environment.cs: Bump corlib version.

2007-11-21  Zoltan Varga  <vargaz@gmail.com>

	* Array.cs: Make the InternalArray_... methods internal.

	* Environment.cs: Bump corlib version.

2007-11-21  Atsushi Enomoto  <atsushi@ximian.com>

	* AppDomain.cs : filled 2.0 API (extra ones are from 2.0 SP1).
	* ContextMarshalException.cs : obsolete in 2.0.

2007-11-21  Atsushi Enomoto  <atsushi@ximian.com>

	* MarshalByRefObject.cs : Added MemberwiseClose() stub.
	  GetLifetimeService() is not virtual (in both 2.0 and 1.1).
	* Console.cs : implemented missing 2.0 key members.

2007-11-18  Gert Driesen  <drieseng@users.sourceforge.net>

	* Enum.cs: Provided ParamName of Argument(Null)Exceptions. Rewrote
	some exception messages.

2007-11-16  Gert Driesen  <drieseng@users.sourceforge.net>

	* AppDomain.cs: Added some obsolete messages.

2007-11-15  Gert Driesen  <drieseng@users.sourceforge.net>

	* MonoType.cs: Modified ParamName for ArgumentException to match
	MS. Provide meaningful exception messages. On 2.0, throw ANE instead
	of ArgumentException when args is null.

2007-11-15  Zoltan Varga  <vargaz@gmail.com>

	* MonoType.cs (Invoke): Allow BindingFlags.SetField and
	BindingFlags.SetProperty to be specified together. Fixes #321735.

2007-11-14  Miguel de Icaza  <miguel@novell.com>

	* Console.cs, ConsoleDriver.cs, TermInfoDriver.cs,
	TermInfoReader.cs, TermInfoNumber.cs, TermInfoStrings.cs,
	CStreamReader.cs, CStreamWriter.cs, NullConsoleDriver.cs,
	WindowsConsoleDriver.cs: In the 2.1 profile we do not need the
	full-blown Console (the terminal-addressable console) so we shrink
	it down to the basic 1.0 Console.

2007-11-14  Marek Safar  <marek.safar@gmail.com>

	* Nullable.cs: Optimized to use generic comparers.

2007-11-14  Zoltan Varga  <vargaz@gmail.com>

	* Array.cs (Copy): Throw InvalidCastException in more cases.

2007-11-13  Zoltan Varga  <vargaz@gmail.com>

	* GCCollectionMode.cs GCLatencyMode.cs: New net 3.5 types.

2007-11-12  Atsushi Enomoto  <atsushi@ximian.com>

	* NumberFormatter.cs : revert previous two changes. It does not
	  really work for float and hence will rather bring confusion.

2007-11-12  Atsushi Enomoto  <atsushi@ximian.com>

	* NumberFormatter.cs : limit the situation that needs roundtrip
	  verification in the previous change to Double.

2007-11-12  Atsushi Enomoto  <atsushi@ximian.com>

	* NumberFormatter.cs : applied a quick fix for bug #320433. It needs
	  true fix to avoid extra perf. loss.

2007-11-08  Sebastien Pouliot  <sebastien@ximian.com>

	* TimeZone.cs: Under 2.0 we must return a Local DateTime.MinValue.
	Fix the regression on the x86_64 bot which seems to be in it's own
	timezone.

2007-11-07  Gert Driesen  <drieseng@users.sourceforge.net>

	* Exception.cs: Cosmetic change to default exception message on
	2.0 profile.

2007-11-05  Gert Driesen  <drieseng@users.sourceforge.net>

	* Array.cs: Distinguish between notstarted and finished state when
	throwing IOE in Current, and provide meaningful exception message.

2007-11-05  Sebastien Pouliot  <sebastien@ximian.com>

	* Array.cs: Fix Enumerator<T>.Reset (#322248).

2007-11-05  Rodrigo Kumpera  <rkumpera@novell.com>

	* Type.cs (MakeGenericType): fix for #331199. If an user-defined type
	was used, the runtime would crash. Now we apply UnderlyingSystemType to
	all types before handling to the runtime.

2007-11-05  Stephane Delcroix  <sdelcroix@novell.com>

	* TimeZone.cs: fix for #323911. The our after DST.Start is already DST.

2007-11-03  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : fix for #330085. for Local time, convert to Utc
	  before getting ticks.

2007-11-03  Gert Driesen  <drieseng@users.sourceforge.net>

	* ArgumentException.cs: Change default message to match MS. Removed
	unnecessary check from Message, since base.Message can never be null.

2007-11-01  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : ParseExact() should ignore 'K' when there is no
	  character is left.

2007-11-01  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : in roundtrip mode, 'Z' should turn the tick value to
	  utc time and should not result in different ticks.
	  Fixed bug #338064.

2007-10-30  Miguel de Icaza  <miguel@novell.com>

	* UInt32.cs (Parse): Use Jeff Stedfast's parsing code which is
	smaller and does not need checked() constructs. 

	* Int64.cs, Int32.cs, Int16.cs: small tuneup: do not throw
	exception, instead return the exception like every other place in
	this code. 

	* Int16.cs, Int32.cs, Int64.cs: Use the Jeff Stedfast parsing code
	which is smaller.  We no longer use "checked" to check for
	overflows, I refactored some stuff and cleaned up the rest and
	fixes #331525.

2007-10-27  Zoltan Varga  <vargaz@gmail.com>

	* MonoType.cs: Applied patch from Mario A Chavez 
	<mario.chavez@gmail.com>. Add support for invoking members with the 
	ParamArray attribute. Fixes #336841.

2007-10-26  Zoltan Varga  <vargaz@gmail.com>

	* MonoType.cs (InvokeMember): Make sure one operation is passed in the binding
	flags. Fixes #336936.

Fri Oct 26 19:43:09 CEST 2007 Paolo Molaro <lupus@ximian.com>

	* Environment.cs, String.cs: patch from Tyler Larson
	<mono-devel@tlarson.com> to fix the handling of the RemoveEmptyEntries
	option in string.Split (bug #322375).

2007-10-26  Dick Porter  <dick@ximian.com>

	* Environment.cs: Bump version because of Thread initialisation
	changes

2007-10-25  Lluis Sanchez Gual  <lluis@novell.com>

	* AppDomain.cs: In DefaultDomain, wrap the returned domain with
	a proxy if the current domain is not the root domain.

2007-10-24  Atsushi Enomoto  <atsushi@ximian.com>

	* Type.cs : implemented ReflectionOnlyGetType().

2007-10-19  Zoltan Varga  <vargaz@gmail.com>

	* AppDomain.cs: Add NET 3.5 DefineDynamicAssembly () overloads.

2007-10-13  Zoltan Varga  <vargaz@gmail.com>

	* Delegate.cs (CreateDelegate): Allow binding instance methods to 
	delegates with an extra argument, a NET 2.0 feature. Fixes #333647.

Fri Oct 12 08:11:50 CEST 2007 Paolo Molaro <lupus@ximian.com>

	* String.cs: reverted unapproved patch that breaks the build.

2007-10-11  Joel Reed  <joelwreed@comcast.com>

	* String.cs: fix String.Split(char[],int,StringSplitOptions)
	with StringSplitOptions.RemoveEmptyEntries option. The correct 
	behavior is to remove empty entries while the string is being split, 
	and always return the maximum number of elements possible.
	Patch from: Tyler Larson <mono-devel@tlarson.com>
	
2007-09-28  Jb Evain  <jbevain@novell.com>

	* Object.cs: Make ToString return Type.ToString ()
	by default instead of Type.FullName to match .net
	behavior. Fix #329419.

2007-09-28  William Holmes  <billholmes54@gmail.com>

	* DateTime.cs: Check for AssumeUniversal when parsing string.
	 Fixes bug #324845

2007-09-21  Gert Driesen  <drieseng@users.sourceforge.net>

	* Enum.cs: Use regular single quotes in exception message.

2007-09-14  Paolo Molaro <lupus@ximian.com>

	* String.cs: implemented all the string ctors using CreateString
	methods, so they can run completely in managed code.

2007-09-13  Marek Safar  <marek.safar@gmail.com>

	* DateTimeOffset.cs: Implemented few properties.

2007-09-13  Atsushi Enomoto  <atsushi@ximian.com>

	* Decimal.cs, Math.cs : implemented midpoint rounding.

2007-09-13  Atsushi Enomoto  <atsushi@ximian.com>

	* Activator.cs : implemented 2.0 CreateInstance()
	  and CreateInstanceFrom () overloads.

2007-09-12  Sebastien Pouliot  <sebastien@ximian.com>

	* Decimal.cs: More explicit text in exception (old and almost 
	forgetten patch on laptop ;-)

2007-09-10  Atsushi Enomoto  <atsushi@ximian.com>

	* OperatingSystem.cs : implemented ISerializable.

2007-08-28  Zoltan Varga  <vargaz@gmail.com>

	* DateTime.cs: Fix a warning.

2007-08-25  Robert Jordan  <robertj@gmx.net>

	* DateTime.cs: Implement internal To/FromBinary for the 1.1 profile.

2007-08-25  Alan McGovern  <amcgovern@novell.com>

	* DateTime.cs: Reverted DateTime changes.

2007-08-25  Robert Jordan  <robertj@gmx.net>

	* DateTime.cs: Implement internal To/FromBinary for the 1.1 profile.

2007-08-24  Zoltan Varga  <vargaz@gmail.com>

	* Array.cs: Fix min + max / 2 overflows in the BinarySearch and qsort methods.
	Fixes #82469.

2007-08-23  Marek Safar  <marek.safar@gmail.com>

	* DateTimeOffset.cs: New .NET 3.5 struct for 2.0 mscorlib.
	
2007-08-23  Eyal Alaluf <eyala@mainsoft.com>

	* DateTime.cs: Numerous improvements to DateTime.Parse. It handles a lot
	  more possible formats and more correctly at that. It is also now easier
	  to manage the formats DateTime.Parse supports.

2007-08-17  Zoltan Varga  <vargaz@gmail.com>

	* Exception.cs: Make 1.0 and 2.0 object layout the same since this class is seen
	by the runtime. Fixes #82459.

2007-08-16  Gert Driesen  <drieseng@users.sourceforge.net>

	* MonoCustomAttrs.cs: In IsDefined, throw ArgumentNullException if
	attributeType is null to avoid a SIGSEGV (and match MS). Only partial
	fix for bug #82431 on 1.0 profile; it fully fixes the problem for the
	1.0 profile, but more changes (in the runtime) are required for the
	2.0 profile. Added a FIXME explaining the problem.

2007-08-15  Gert Driesen  <drieseng@users.sourceforge.net>

	* MonoCustomAttrs.cs: In IsDefined, only walk inheritance chain if
	both AttributeUsage.Inherited and inherit are true. Fixed bug #82431.

2007-08-13  Gert Driesen  <drieseng@users.sourceforge.net>

	* ArgumentException.cs: Ignore zero-length ParamName for Message.
	Use ParamName property instead of field, since the property is marked
	virtual.
	* Array.cs: Provide more meaningful exception message when destination
	array is not long enough.

2007-08-11  Zoltan Varga  <vargaz@gmail.com>

	* Array.cs: Implement InternalArray__set_Item. Fixes #82345.

2007-08-08  Atsushi Enomoto  <atsushi@ximian.com>

	* IntPtr.cs : oops, do not ignore format in ToString(string).

2007-08-08  Atsushi Enomoto  <atsushi@ximian.com>

	* GC.cs, Exception.cs, IntPtr.cs, Enum.cs, DateTime.cs, Convert.cs
	  ConsoleKeyInfo.cs, String.cs, Object.cs, Attribute.cs,
	  Version.cs : couple of cosmetic 2.0 API fixes.

2007-08-06  Aaron Bockover  <abockover@novell.com>

	* Environment.cs (ReadXdgUserDir): Support the changes to the
	xdg-user-dirs spec that allow $HOME to start the path; also allows
	for quotes surrounding the path (Patch ported from Banshee,
	BGO #461596)

2007-07-28  Miguel de Icaza  <miguel@novell.com>

	* MulticastDelegate.cs (Equals): do not cast to avoid exceptions,
	instead use the "as" operator, as pointed out by Jesse Jones'
	tool. 

2007-07-21  Gert Driesen  <drieseng@users.sourceforge.net>

	* BitConverter.cs: Fixed exceptions to match MS. Fixed invalid use
	of ArgumentOutOfRangeException and ArgumentException ctors that take
	both parameter name and message. In ToString throws ArgumentException
	instead of ArgumentOutOfRangeException when length is negative, and
	return zero-length string when length is 0.

2007-07-20  Atsushi Enomoto  <atsushi@ximian.com>

	* AppDomainSetup.cs : fix serialization regression.

2007-07-20  Atsushi Enomoto  <atsushi@ximian.com>

	* AppDomainSetup.cs :
	  MonoTODO AppDomainInitializer as its implementation is wrong.

2007-07-20  Atsushi Enomoto  <atsushi@ximian.com>

	* AppDomainSetup.cs : added missing 2.0 members.
	* AppDomain.cs : support AppDomainInitializer.

2007-06-06  Miguel de Icaza  <miguel@novell.com>

	* Int16.cs, UInt64.cs, SByte.cs, UInt16.cs, Byte.cs, Int32.cs,
	Int64.cs, UInt32.cs: Fix for 81775.

	I removed Parse from a Byte.cs and UInt16.cs as in various cases
	they still depended on UInt32.cs for parsing, there is no reason
	to keep all of this code duplicated (UInt64 is a different case
	though). 

	I was hoping for some feedback on whether my tests are correct,
	but so far no takers.

2007-07-14  Zoltan Varga  <vargaz@gmail.com>

	* ModuleHandle.cs: Implement the generic versions of the ResolveXXXHandle () methods.
	
	* ModuleHandle.cs: Add stubs for generic ResolveXXXHandle () methods.

2007-07-10  Alan McGovern <amcgovern@novell.com>

	* Guid.cs: All whitespace should be trimmed from before and
	after a string passed into the Guid constructor. Fixes #81958

2007-07-10  Zoltan Varga  <vargaz@gmail.com>

	* RuntimeTypeHandle.cs: Fix signatures of == and != operators.

	* ModuleHandle.cs: Add missing 2.0 stuff.

2007-07-08  Zoltan Varga  <vargaz@gmail.com>

	* *.cs: Add missing ComVisible attributes.

	* Delegate.cs: Add missing 2.0 CreateDelegate () methods.

2007-07-07  Gert Driesen  <drieseng@users.sourceforge.net>

	* DateTime.cs: In ParseExact, throw ArgumentNullException if format
	is null; throw FormatException if formats array is empty or if one of
	items is null or a zero-length string.

2007-07-06  Rodrigo Kumpera  <rkumpera@novell.com>

	* Double.cs (Parse): Fix for string ending in garbaga, it was just ignoring it
	instead of throwing FormatException. Fixes #81777

2007-07-06  Rodrigo Kumpera  <rkumpera@novell.com>

	* Double.cs (Parse): Fix for whitespace only strings, it was returning zero 
	instead of throwing FormatException. Fixes #81630 

2007-07-06  Alan McGovern  <amcgovern@novell.com>

	* DateTime.cs: If the format is null or empty, it should default to 'G'.
	Fixes bug 81778

2007-07-06  Jonathan Chambers  <joncham@gmail.com>

	* __ComObject.cs: Support ExtensibleClassFactory.


2007-07-06  Aaron Bockover  <abockover@novell.com>

	* Environment.cs (InternalGetFolderPath): Try reading some
	paths from ~/.config/user-dirs.dirs (XDG user dirs spec);
	always return something for MyPictures

2007-07-04  Atsushi Enomoto  <atsushi@ximian.com>

	* Type.cs : 2.0 TypeHandle and ContainsGenericParameters are virtual
	  (required fix for 2.0 reflection API fixes).

2007-06-22  Jonathan Chambers  <joncham@gmail.com>

	* __ComObject.cs: Move interface lookup to unmanaged.

2007-06-21  Zoltan Varga  <vargaz@gmail.com>

	* Environment.cs: Bump corlib version.

	* Delegate.cs: Applied patch from Robert Jordan (robertj@gmx.net). Keep
	the dynamic method referenced by a delegate alive.

2007-06-05  David Ferguson <davecferguson@gmail.com>

	* DateTime.cs: Changed DateTime.Parse() to throw a FormatException
	  instead of an ArgumentOutOfRangeException for .NET 2.0.  An
	  ArgumentOutOfRangeException is still thrown for .NET 1.1.
	  Fixes bug #77633
	  
Mon Jun 4 14:52:17 CEST 2007 Paolo Molaro <lupus@ximian.com>

	* String.cs: optimized CompareOrdinal ().

2007-06-02  Zoltan Varga  <vargaz@gmail.com>

	* MonoCustomAttrs.cs (GetBase): Revert last change as it breaks the build.
	
	* MonoCustomAttrs.cs (GetBase): Handle properties correctly. Fixes #81797.

2007-05-31  Zoltan Varga  <vargaz@gmail.com>

	* Delegate.cs: Add invoke_impl field. Reorder fields for better cache behavior. Add
	SetMulticastDelegate icall.

	* MulticastDelegate.cs (CombineImpl): Call SetMulticastDelegate () on newly created
	delegate.

	* Environment.cs: Bump corlib version.
	
2007-05-25  Jonathan Chambers  <joncham@gmail.com>

	* __ComObject.cs: Add overload to GetInterface to allow
	not throwing exceptions. Fixes as and is operators for COM objects.

2007-05-23  Atsushi Enomoto  <atsushi@ximian.com>

	* Array.cs : reverting Array.cs fixes since the runtime depends on
	  those method attributes.

2007-05-23  Atsushi Enomoto  <atsushi@ximian.com>

	* Int16.cs UInt64.cs UIntPtr.cs Double.cs CrossAppDomainDelegate.cs
	  ResolveEventHandler.cs IntPtr.cs UnhandledExceptionEventHandler.cs
	  Void.cs AssemblyLoadEventHandler.cs SByte.cs UInt16.cs DateTime.cs
	  Byte.cs TimeSpan.cs Decimal.cs Int32.cs Delegate.cs
	  AppDomainInitializer.cs MulticastDelegate.cs Int64.cs
	  EventHandler.cs Single.cs UInt32.cs AsyncCallback.cs :
	  cosmetic attribute fixes (ComVisible/Serializable).

2007-05-22  Atsushi Enomoto  <atsushi@ximian.com>

	* Convert.cs : completed 2.0 (ToBase64CharArray).
	* String.cs : removed MonoTODO.
	* DataMisalignedException.cs : removed extra .ctor().
	* Array.cs : internalize extra members. Fixed reliability contract.

2007-05-17  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : added support for 'K'.

2007-05-11  Jonathan Chambers  <joncham@gmail.com>

	* __ComObject.cs: No need to call CoInitialize anymore since
	Thread.ApartmentState was implemented.

2007-05-11  Jeffrey Stedfast  <fejj@novell.com>

	Fixes bug #81540

	* TermInfoDriver.cs (WriteSpecialKey): Actually clear the screen
	and reset the cursor position to 0,0 when the key is
	ConsoleKey.Clear.
	(Clear): Reset the cursor position to 0,0

2007-05-09  Marek Safar  <marek.safar@gmail.com>

	* MulticastDelegate.cs: Fixed operators logic.

2007-05-09  Marek Habersack  <mhabersack@novell.com>

	* DateTime.cs: add a format used in ASP.NET QuickStarts 
	  ("HH':'mm tt MM/dd/yyyy")

2007-04-30  Zoltan Varga  <vargaz@gmail.com>

	* Type.cs (Equals): Allow a null argument.

2007-04-27  Zoltan Varga  <vargaz@gmail.com>

	* Environment.cs (StackTrace): Avoid skipping a frame to be
	compatible with MS.

2007-04-25  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTimeTest.cs : looks like 'F' even removes preceding '.' ...

2007-04-25  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : implemented new-2.0 'F' pattern letter.

2007-04-24  Jeffrey Stedfast  <fejj@novell.com>

	Fixes the last of the bugs listed in bug #77525

	* TermInfoDriver.cs (ctor): For known terminal types, set color16
	to true (since we know they support 16 colours).
	(Init): set the setlfgcolor and setlbgcolor format strings.
	(BackgroundColor): Use the appropriate formatter string for
	setting the bgcolor.
	(ForegroundColor): Use the appropriate formatter string for
	setting the fgcolor.
	(TranslateColor): Now takes (and sets appropriately) an output
	'bool light' argument.

2007-04-24  Marek Habersack  <mhabersack@novell.com>

	* TermInfoDriver.cs: don't include debug stuff by default - it
	breaks multithreaded applications (they all attempt to open
	console.log and fail because of sharing violation).

2007-04-23  Jeffrey Stedfast  <fejj@novell.com>

	* TermInfoDriver.cs (ReadKeyInternal): Since our input stream is
	buffered, check if it has more buffered input in addition to our
	timeout check. This makes it such that we will actually correctly
	match multi-char escape sequences.
	(Read): Changed the logic slightly wrt 'fresh' echoing. Once we
	encounter a fresh char, all chars afterward should also be
	considered 'fresh' even if 'fresh' is returned as false later.
	(ReadLine): Same logic here.

2007-04-23  Jeffrey Stedfast  <fejj@novell.com>

	Fixes bug #80702 (via getting rid of the casting) and more.

	The following change makes it such that even if an application
	calls Console.SetOut() with its own output stream, we can still
	properly echo user-input from stdin to the real stdout.

	* TermInfoDriver.cs (ctor): Grab a reference to the original
	Console.stdout so we can be sure we always echo to console.
	(QueueEcho): No need to cast Console.stdout anymore.
	(EchoFlush): Same.
	(WriteConsole: Here too.

2007-04-20  Jeffrey Stedfast  <fejj@novell.com>

	* TermInfoDriver.cs (QueueEcho): Renamed from Echo(char). Use
	CStreamWriter's new InternalWriteChars().
	(Echo): Since we can no longer go thru CStreamWriter's ::Write()
	method that does checks for special keys, do the checks here
	instead - if it is a special key, flush the echo buffer and then
	write the special key.
	(EchoFlush): Also updated to use CStreamWriter's new
	InternalWriteChars().
	(Read): Use the Echo(key) variety.
	(ReadKey): Same.
	(ReadLine): And here too.

	* CStreamWriter.cs (InternalWriteChars): Write a char array
	directly to stdout. Do not pass Go, do not collect $200.

2007-04-19  Jeffrey Stedfast  <fejj@novell.com>

	Optimization for echoing keypresses back to the console when the
	user pastes a block of text rather than manually typing text.

	* TermInfoDriver.cs (Echo): A new convenience function for echoing
	characters/keys back to the console with an optimization twist and
	a bit of lime.
	(EchoFlush): Flush our pending echo queue
	(Read): Make use of Echo() both for convenience and for speed.
	(ReadLine): Same.
	(ReadKey): Make use of Echo()/EchoFlush() for simplicity of code,
	but we won't get the same optimization out of it.

2007-04-19  Jeffrey Stedfast  <fejj@novell.com>

	Fix for bug #81373.

	* TermInfoDriver.cs: Changed 'buffer' to be a char array instead
	of a byte array and stdin is now a StreamReader rather than a
	Stream.
	(Init): Setup stdin as a StreamReader using Console.InputEncoding
	as our encoding.
	(GetCursorPosition): Use stdin.Read() instead of the old
	ReadByte() code.
	(AddToBuffer): Updated to allocate the correct array type for
	'buffer'.
	(ReadKeyInternal): Updated to use stdin.Read() rather than
	stdin.ReadByte(). This is the main reason we needed to use chars
	instead of bytes. Characters entered by the user need to be
	represented as unicode chars and not bytes like before.
	(Match): Now takes a char[] buffer argument instad of byte[] and
	compares the input buffer to the byte-map as chars.

2007-04-18  Jeffrey Stedfast  <fejj@novell.com>

	Fixes bug #81159: behave the same as mscorlib

	* TermInfoDriver.cs (ReadKeyInternal): Now has an 'out bool fresh'
	argument which is used to tell our caller if the key was freshly
	read from the console or pre-buffered.
	(Read): New implementation of Console.In.Read(char[], int, int)
	that behaves exactly like mscorlib's implementation.
	(ReadKey): Updated for the ReadKeyInternal() API change - only
	echo if the key was fresh.
	(ReadLine): Same.

	* CStreamReader.cs (Read): Call the new TermInfoDriver.Read()

2007-04-17  Jeffrey Stedfast  <fejj@novell.com>

	* CStreamWriter.cs (Write): Optimized this some more, we don't
	need a temporary buffer. Just blit chunks of the src buffer
	instead.

	* CStreamReader.cs (Read): Need to increment our array index so
	that we don't store each byte read into the same
	position. Discovered this while testing bug #81159 (which appears
	to work as expected with current svn, other than this buglet).

	* TermInfoDriver.cs (CursorTop::set): SetCursorPosition() sets our
	internal cursorTop variable, so no need to explicitly set it again
	after calling SetCursorPosition().
	(CursorLeft::set): Same idea here.

2007-04-17  Jeffrey Stedfast  <fejj@novell.com>

	* TermInfoDriver.cs (ReadLine): Implemented a workaround for
	IronPython going behind System.Console's back when writing text to
	the screen (it doesn't seem to use Console.stdout, instead it
	creates its own file stream or something which just so happens to
	write to the same file descriptor) by querying for the cursor
	position in ReadLine(), so we lose no real performance (since we
	have to wait for user input anyway).

2007-04-17  Jeffrey Stedfast  <fejj@novell.com>

	* TermInfoDriver.cs (Init): SetEcho(false), we'll be manually
	echoing from now on (ReadLine() has already been doing this, might
	as well make ReadKey() behave the same).
	(GetCursorPosition): No longer need to disable/re-enable echo
	anymore since it is now always false.
	(ReadKey): Manually echo the key back to the console just like
	ReadLine() has been doing (in the interest of consistancy) if
	intercept is false.
	(ReadLine): No longer need to disable/re-enable echo, echo is
	always off now. Also, fixed what appears to have been a typo.

2007-04-17  Jeffrey Stedfast  <fejj@novell.com>

	* TermInfoDriver.cs (IsSpecialKey): Oops, Enter should not be
	treated as a special key. Just update out cursor state here like
	we do with normal chars.
	(WriteSpecialKey): Enter is a no-op now because it is not treated
	as a special key anymore.

	* CStreamWriter.cs (Write): Only flush our buffer if j > 0

2007-04-17  Jeffrey Stedfast  <fejj@gnome.org>

	Turns out my last patch was broken wrt handling some special keys
	like Backspace and anything else that changed the cursor position
	in some non-standard way.

	* CStreamWriter.cs (Write): Instead of calling NotifyWrite(), we
	instead need to check IsSpecialKey(), and, if so, flush whatever
	we have saved in our temporary buffer and then call
	WriteSpecialKey(). Otherwise go on as we did in the last patch.

	* TermInfoDriver.cs (NotifyWrite): Broken up into 2 functions:
	(IsSpecialKey): Returns true if we need to do some special voodoo
	for this key
	(WriteSpecialKey): Write the special key (using whatever voodoo
	necessary)

2007-04-16  Jeffrey Stedfast  <fejj@gnome.org>

	* CStreamWriter.cs (Write): Instead of writing 1 char at a time,
	copy the bytes into a temporary char array (with a fixed max size)
	so that we can minimize the number of Write() calls we make on the
	underlying stream (and thus on the write() system call).

2007-04-17  Alp Toker  <alp@atoker.com>

	* Array.cs: Make GetRank() icall private. Subclasses should use the
	public Rank property.

2007-04-16  Jeffrey Stedfast  <fejj@novell.com>

	* WindowsConsoleDriver.cs: Get rid of unused Echo property.

	* NullConsoleDriver.cs: Get rid of Echo property.

	* IConsoleDriver.cs: Get rid of Echo property.

	* ConsoleDriver.cs (Echo::get/set): Removed, not needed.

	* TermInfoDriver.cs (Echo::get/set): Removed, this isn't necessary
	and is confusing.
	(ReadKey): If we are intercepting the key, call SetEcho (false)
	and then reset back to true after reading the key.
	(ReadLine): Same idea here.
	(GetCursorPosition): We no longer need to keep track of the
	previous echo state, we no longer have it :)

2007-04-16  Jeffrey Stedfast  <fejj@novell.com>

	Fix for bug #80710 (and a bug I introduced in my last fix due to
	this code assuming the underlying term echo state was always
	false) and other buglets that I noticed.

	* TermInfoDriver.cs (ReadLine): Set (term) Echo to false as we do
	our own manual echoing which prevents ^H from getting displayed on
	the screen when the user hits backspace.
	(ReadLine): If the user hits Backspace and builder.Length is 0, DO
	NOT echo the backspace back to the console, ever.
	(ReadLine): Only echo characters back to the console if echo is
	set to true. Seems the Echo ConsoleDriver property is a Mono
	extension, and I'm assuming this is the intended behavior? I can't
	see what else the Echo property would be useful for...

2007-04-16  Jeffrey Stedfast  <fejj@novell.com>

	Fixes bug #81050

	* TermInfoDriver.cs: Renamed the noEcho variable to echo, makes
	the logic cleaner/simpler/etc. Plus it was never actually used
	other than in the property methods which are called Echo.
	(Init): Call ConsoleDriver.SetEcho() with the 'echo' value -
	allows for a slight optimization if called from within the
	Echo::set property.
	(GetCursorPosition): Instead of calling the Echo property methods,
	call ConsoleDriver.SetEcho() directly to toggle echo off (if echo
	isn't already off, and then back on once we're finished getting
	the position - assuming the echo state is on, of course) - this
	avoids calling back into Init() which just felt dirty.
	(Echo::set): If the Echo state differs from our current state,
	call ConsoleDriver.SetEcho() with the new state (this is the
	important piece of the fix for bug #81050).
	(ReadKey): Simplified the echo logic to make it a bit clearer.
	(ReadLine): Same.

2007-04-16  Marek Safar  <marek.safar@gmail.com>

	* Char.cs (IsLetter): Faster version.

2007-04-15  Alp Toker  <alp@atoker.com>

	* Decimal.cs: Provide 2.0 Round() overloads using System.Math.

2007-04-15  Alp Toker  <alp@atoker.com>

	* Activator.cs: CreateInstance(Type,object[]) was not params before
	2.0.

2007-04-15  Alp Toker  <alp@atoker.com>

	* NonSerializedAttribute.cs: Inherited=false in 2.0.

2007-04-05  Dick Porter  <dick@ximian.com>

	* Environment.cs: Increment mono_corlib_version

2007-04-03  Alp Toker  <alp@atoker.com>

	* Array.cs: CreateInstance(Type,int[]) is params.
	* AppDomain.cs: ExecuteAssemblyByName(string,Evidence,string[]) is
	params.

2007-04-03  Alp Toker  <alp@atoker.com>

	* Convert.cs:
	* Math.cs: Should be static classes in 2.0.

2007-04-03  Alp Toker  <alp@atoker.com>

	* Delegate.cs: DynamicInvoke(object[]) is params in 2.0.

2007-04-03  Alp Toker  <alp@atoker.com>

	* Delegate.cs: Combine(Delegate[]) is params in 2.0.

2007-03-27  Dick Porter  <dick@ximian.com>

	* Environment.cs: Increment mono_corlib_version;

2007-03-16  Miguel de Icaza  <miguel@novell.com>

	* BitConverter.cs: Revert the patch from 72237 as that introduces
	a regression and we are not sure yet what we will be doing about
	that.

	Introduce a new InternalInt64BitsToDouble method that provides the
	fixed functionality, mark it as internal.

	Introduce a new SwappableToDouble method that includes the
	swapping ToDouble routine as introduced by Zoltan on 72237, this
	is used by InternalInt64BitsToDouble.

	* Math.cs (IEEERemainder): Use the InternalInt64BitsToDouble
	routine here to preserve the semantics from Zoltan.  

	The problem with BitConverter.cs is that it is completely hossed.
	In .NET 1.1 it is a bitwise copy, no attempt is ever done to do
	endian-specific swapping.   In .NET 2.0 it is *almost* like that,
	but it is subtly broken: if data is unaligned then endian
	conversions happen.  If the data is properly aligned it behaves
	like 1.0.

	In general BitConverter is a sad class that offers little control,
	we will be introducing a new mono bit converter and encourage
	users to use that instead of the entirely broken
	System.BitConverter. 

2007-03-11  Gert Driesen  <drieseng@users.sourceforge.net>

	* Delegate.cs: Fixed bootstrap build.

2007-03-08  Gert Driesen  <drieseng@users.sourceforge.net>

	* StringComparer.cs: Renamed StringComparer classes and promoted them
	to top-level classes. Merged Ordinal and OrdinalIgnoreCase comparers.
	Fixes binary serialization compatibility with MS.

2007-03-06  Zoltan Varga  <vargaz@gmail.com>
  
	* Type.cs (Equals): Remove a useless check.

	* Type.cs: Rename Type:Equals(Type) to EqualsInternal, and add support for checking
	UnderlyingSystemType. Fixes #81037.

2007-03-05 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>

	* TermInfoDriver.cs: adjust buffer indexes after *every* read. Fixes
	bug #80329. Robert Jordan attached a similar patch to the bug report
	but I didn't see it until after my commit...

2007-03-05  Peter Dettman <peter.dettman@iinet.net.au>

	* Enum.cs: The above patch makes the formatting for specifiers 'x'
	and 'X' behave like MS.NET, including the correct length for each
	possible underlying type, and correctly using capital letters for
	the 'X' case.

	Patch also includes some more test cases in EnumTests.cs.

2007-02-25  Gert Driesen  <drieseng@users.sourceforge.net>

	* AppDomainSetup.cs: If configuration file is not an absolute path,
	then throw a MemberAccessException if ApplicationBase is not set,
	or otherwise consider it as a path relative to ApplicationBase.
	Fixes bug #80934. Patch provided by Jamie Cansdale.
	* AppDomain.cs: In CreateDomain, construct AppDomain with
	ApplicationBase of default domain if not explicitly set in specified
	AppDomainSetup. If config file is not set, then use filename of the
	default domain config file. Base on patch provided by Jamie Cansdale.

2007-02-16  Sebastien Pouliot  <sebastien@ximian.com>

	* Random.cs: Fix exception messages ("then" -> "than"). Spotted by
	Mark A. Nicolosi (#80873).

2007-02-12  Miguel de Icaza  <miguel@novell.com>

	* CStreamWriter.cs (Write with char []): take the lock once for
	all characters and call manually the InternalWriteChar properly to
	speed things up.

	(Write with string parameter): same thing, if the driver is not
	initialized use a fast path.

	If the driver has not been initialized, use a fast path instead. 

Mon Feb 12 21:54:57 CET 2007 Paolo Molaro <lupus@ximian.com>

	* MonoType.cs: patch from Cedric Vivier <cedricv@neonux.com> to
	get correctly non-public fields from generic types.

2007-02-08  Jonathan Chambers  <joncham@gmail.com>

	* __ComObject.cs: Add IUnknown field to object. Cleanup icalls.
	
2007-02-03  Zoltan Varga  <vargaz@gmail.com>

	* BitConverter.cs (ToDouble): Fix this on big-endian machines.

2007-01-30  Atsushi Enomoto  <atsushi@ximian.com>

	* TimeZone.cs: According to the docs, we should not throw when
	converting to Localtime if we are a negative value.  Instead we
	return DateTime.MinValue.

2007-01-25  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : copy Kind in those members that return DateTime.
	  Fixed bug #80614.

2007-01-20  Miguel de Icaza  <miguel@novell.com>

	* Array.cs (InternalArray__ICollection_Contains,
	InternalArray__IndexOf): Cope with null values in the array (See
	bug #80563).

2007-01-19  Marek Habersack  <grendello@gmail.com>

	* AppDomain.cs: Make sure that domain
	SetupInformation.ConfigurationFile is never null. MS.NET by
	default copies the default domain's ConfigurationFile value
	there. Fixes bug #80547.

2007-01-14  Jensen Somers <jensen.somers@gmail.com>

	* ArraySegment.cs: Added Equals() method, operator == and !=
	overloading and GetHashCode().

2007-01-10  Andy Hume <andyhume32@yahoo.co.uk>

	* Fixes to a number of exception classes.
	
	A project of mine uses #ctor(String,Exception) on 
	ObjectDisposedException, so I looked at adding that, and any 
	other similar constructors missing as per the class status report.
	
	I also spotted inconsistent setting of HResult, and fixed 
	those too.  For instance, ArgumentNullException sets HResult 
	only in three out of the four constuctors; not setting it in 
	the v2 (String,Exception) one -- and correctly not in the 
	Serialization constructor.
	
	
	So, I fixed the remaining missing (String,Exception) 
	constructors in corlib (2 of), and fixed the Hresult setting 
	in all exceptions there (4 of).
	
	The remaining Exception constructor omission listed was 
	InvalidCastException.ctor(System.String, System.Int32).  MSDN	says:
	"This constructor supplies an HRESULT value that is 
	accessible to inheritors of the InvalidCastException class, 
	via the protected HResult property of the Exception class."
	I added that method too, setting the HResult property from 
	the Int32 argument.

2007-01-10  Atsushi Enomoto  <atsushi@ximian.com>

	* String.cs, StringComparer.cs : avoid extra string creation in
	  StringComparer.OrdinalIgnoreCase.

2007-01-05  Sebastien Pouliot  <sebastien@ximian.com>

	* DateTime.cs: Under 2.0 fix ParseExact to set DateTimeKind.Utc when
	DateTimeStyles.AdjustToUniversal is used.

2007-01-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* TermInfoDriver.cs: honor the backspace in ReadLine.

2006-12-30  Marek Safar  <marek.safar@gmail.com>

	* String.cs: Character based method only.
	(IndexOf, LastIndexOf, Replace, IndexOfAny): Performance improvements.
	(Substring): Returns same instance when index is 0.

2006-12-30  Alp Toker  <alp@atoker.com>

	* Decimal.cs:
	* Math.cs: Implement missing Decimal.Ceiling methods for 2.0.
	Closes #80384.

2006-12-22  Sebastien Pouliot  <sebastien@ximian.com> 

	* DateTime.cs: Implement missing [To|From]Binary methods for 2.0.
	* OperatingSystem.cs: Implement missing ServicePack and VersionString
	properties (2.0).
	* Version.cs: Add missing Major|MinorRevision properties for 2.0.

2006-12-14  Raja R Harinath  <rharinath@novell.com>

	* Type.cs (MakeGenericType): Can only be called on a generic type
	definition.

2006-12-03  Miguel de Icaza  <miguel@novell.com>

	* DateTime.cs: Fix this on the 2.0 profile, return the
	DateTimeKind for the Now property

2006-12-01  Duncan Mak  <duncan@a-chinaman.com>

	* ArgumentOutOfRangeException.cs (.ctor): 
	* NotFiniteNumberException.cs (.ctor): Add the 2.0 constructor
	that takes a string and an inner Exception.

2006-12-01  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs :
	  When comparing enumerations, two or more enumeration values might
	  match. Thus basically we should do complete matching, but right
	  now just do reverse order search since only numbered abbrev month
	  names matter (and full iteration is a mess). Fixed bug #80094.

2006-12-01  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs :
	  use new internal clone-less DateTimeFormatInfo members.

2006-11-29  Martin Baulig  <martin@ximian.com>

	* INullableValue.cs: Removed.

2006-11-28  Duncan Mak  <duncan@novell.com>

	* ArgumentNullException.cs (.ctor): Added new constructor that's
	new in .NET 2.0.

	* InsufficientMemoryException.cs: Added missing 2.0 exception.
	
2006-11-27  Jonathan Chambers  <joncham@gmail.com>

	* __ComObject.cs: Removed IDispatchMono.
	
2006-11-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* TermInfoDriver.cs:
	* Console.cs: lazy initialization of Console 2.0 (also when
	CancelKeyPress is used).

2006-11-27  Miguel de Icaza  <miguel@novell.com>

	* Exception.cs (GetType): New method in 2.x, Another Moma catch. 

Mon Nov 27 19:34:16 CET 2006 Paolo Molaro <lupus@ximian.com>

	* GC.cs: implemented the needed methods with icalls.

2006-11-26  Miguel de Icaza  <miguel@novell.com>

	* Math.cs: Add Floor(Decimal d), for CreativeDocs.NET.

	Go Moma!  http://www.mono-project.com/Moma

	* Decimal.cs: Refactor code to implement TryParse.

	Also, avoid initializing messages on every call to stripStyles

2006-11-22  Miguel de Icaza  <miguel@novell.com>

	* DateTime.cs: A small performance hit, we store the actual time
	span in a boxed object.   This way, it can be updated from other
	threads if necessary.   We always unbox to get the value before
	any potential updates. 

	Thanks to Gonzalo for catching this.

2006-11-21  Miguel de Icaza  <miguel@novell.com>

	* TimeZone.cs (CurrentSystemTimeZone): Cache the current year
	daylight savings time in static variables.

	(CurrentSystemTimeZone.OnDeserialization): Initialize
	this_year_dlt and this_year on this method.

	(TimeZone): init statically the currentTimeZone instead of
	delaying that to the static property, avoiding a compare. 

2006-11-22  Lluis Sanchez Gual  <lluis@novell.com>

	* Array.cs: (compare<T>) if a comparer is provided, it has
	  priority over other comparison methods.

2006-11-14  Miguel de Icaza  <miguel@novell.com>

	* Array.cs: TODOs will from now on be used to flag information
	that will be developer-visible, not to flag internal information
	that none of us reads or bothers about.

	For those, use "FIXME" strings in the source code instead. 

	* AppDomain.cs: Update to be more useful.

2006-11-13  Atsushi Enomoto  <atsushi@ximian.com>

	* String.cs : fixed incorrect startIndex/length count in
	  IndexOf(string,StringComparison).

2006-11-07  Marek Safar  <marek.safar@gmail.com>

	* String.cs (LastIndexOf): If value is Empty, the return value is
	the start index position in value.

2006-10-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* TermInfoDriver.cs: prevent an invalid cast.

2006-10-26  Marek Safar  <marek.safar@seznam.cz>

	* String.cs (Concat): Add fast-path for empty strings.

2006-10-20  Jonathan Chambers  <joncham@gmail.com>

	* Variant.cs: Add support for bool and interfaces.
	
2006-10-18  Kornél Pál  <kornelpal@gmail.com>

	* Type.cs: Removed is_subtype_of because IsSubclassOf should be used
	  that is public and virtual. IsClass: Checking for ValueType is
	  unnecessary. IsEnum: UnderlyingSystemType is not used anymore so
	  no EnumBuilder hack is necessary. Checking for Enum is
	  unnecessary. IsSerializable: Walk BaseType for user defined types.
	  IsSubclassOf: Walk BaseType for user defined types.

	* MonoType.cs: IsValueTypeImpl is unnecessary. IsSubclassOf: Unlike
	  Type system types throw ArgumentNullException on null Type
	  argument.

2006-10-14  Gert Driesen  <drieseng@users.sourceforge.net>

	* BadImageFormatException.cs: Changed message for default ctor to
	match MS. Use internal message field of Exception to check whether
	Message is null. Match MS default messages when no message is 
	set. Fixed ToString to match MS.

2006-10-09  Miguel de Icaza  <miguel@novell.com>

	* Environment.cs: Handle SpecialFolder.MyMusic

2006-10-07 Gert Driesen <drieseng@users.sourceforge.net>

	* Enum.cs: Use different exception message depending on whether the
	type of the passed in value is an Enum or not. Avoid looking up the
	enum's underlying type twice in case of "D" or "d" format specifier.

2006-10-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* TermInfoDriver.cs: don't allow backspace if we're at the beginning
	position for a ReadLine.

2006-10-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* TermInfoDriver.cs: ironpython autocompletion works now.

2006-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Console.cs: avoid casting on windows.

2006-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* ConsoleDriver.cs:
	* TermInfoDriver.cs:
	* IConsoleDriver.cs:
	* CStreamWriter.cs:
	* ConsoleKeyInfo.cs:
	* NullConsoleDriver.cs:
	* Console.cs:
	* CStreamReader.cs:
	* WindowsConsoleDriver.cs: initial changes to handle cursor position
	and screen buffers.

2006-09-21  Gert Driesen  <drieseng@users.sourceforge.net>

	* ArithmeticException.cs: Modified default message to match MS, to
	ensure a local regression test passes on both Mono and .NET.

2006-09-21  Gert Driesen  <drieseng@users.sourceforge.net>

	* Exception.cs: Marked message internal to allow derived classes to
	access the raw message (without changing the public API).

2006-09-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* ConsoleDriver.cs:
	* TermInfoDriver.cs:
	* IConsoleDriver.cs:
	* Console.cs:
	* WindowsConsoleDriver.cs: don't switch to the alternate window.
	Trigger the cancel event. Retrieve the cursor position at the
	beginning, as we're going to keep track of it instead of querying it
	all the time.

2006-09-14  Jonathan Chambers  <joncham@gmail.com>

	* Environment.cs (ProcessorCount): Implement as icall.
	Patch by Jason McFall.

2006-09-05  Raja R Harinath  <rharinath@novell.com>

	* DateTime.cs (Today) [NET_2_0]: Set kind to Local.

2006-09-02  Zoltan Varga  <vargaz@gmail.com>

	* Enum.cs (Equals): Use the generic Equals implementation from ValueType which
	is faster and avoids allocations.

2006-09-01  Martin Baulig  <martin@ximian.com>

	* Array.cs (Array.InternalArray): Removed the helper class;
	instead we use private generic methods in System.Array which are
	inserted into the vtable at runtime.

2006-08-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* ConsoleCancelEventArgs.cs: fix my build.

2006-08-22  Miguel de Icaza  <miguel@novell.com>

	* MulticastDelegate.cs: Make DynamicInvokeImpl internal in 2.0 

	* Converter.cs: update signature to final.

	* ModuleHandle.cs: Removed the [Obsolete] flags as they removed
	those in the final 2.0

	* DateTime.cs: Fixed the signature. 

	* Convert.cs: Removed API calls that were deprecated in final 2.0

	* Enum.cs: Updated to use the obsoletes flagged in 2.0.

	* ConsoleCancelEventArgs.cs: Updated to 2.0

2006-08-19  Miguel de Icaza  <miguel@novell.com>

	* Attribute.cs: This needs to do a deep compare, not a shallow
	one.   Ran into this bug with the VBNC compiler that compares two
	separate attributes for equality using this.

	* String.cs (StartsWith): Fix the overloaded constructor that
	takes a CultureInfo, if that is null, it means to use the current
	culture. 

	* TermInfoDriver.cs: Do not throw exceptions on the driver for
	SetWindowSize and SetWindowPosition, they can be treated as nops.

2006-08-18  Zoltan Varga  <vargaz@gmail.com>

	* *.cs: Use String.Empty instead of "" in a lot of places.

2006-08-17  Sebastien Pouliot  <sebastien@ximian.com>

	* DateTime.cs: Remove last patch to DateTime as the fix wasn't correct
	and made most x.509 unit tests fails. However the original problem is 
	back (only on 2.0).

2006-08-14  Raja R Harinath  <rharinath@novell.com>

	Fix #78943
	* Activator.cs (CreateInstance): Throw ArgumentException on open
	generic types.

2006-08-14  Miguel de Icaza  <miguel@novell.com>

	* MonoType.cs: Do the argument testinf for SetField later,
	otherwise the implicit (and not documented, but already considered
	side effect of checking SetProperty) did not work.

	Bug fix #79023

2006-08-13  Atsushi Enomoto  <atsushi@ximian.com>

	* String.cs : Normalize() and IsNormalized() implementation.

2006-08-10  Jonathan Chambers  <joncham@gmail.com>

	* __ComObject.cs: Added defintion of IDispatch interface, and
	property. Get CLSID of supertype for creation if class not
	ComImport attributed (allows for inheritance of RCW).
	* MonoType.cs: Implement IsCOMObjectImpl.

2006-08-09  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : fixed X509Certificate() case that regressed only
	  under NET_2_0.

2006-08-07  Kornél Pál  <kornelpal@gmail.com>

	* Console.cs: Use correct code pages on Windows and initialize
	  InputEncoding and OutputEncoding to the actual encodings used.

2006-08-05  Duncan Mak  <duncan@novell.com>

	* Char.cs (TryParse): Implemented missing 2.0 method, which fixed
	bug #79007.

2006-07-28  Jonathan Chambers  <joncham@gmail.com>

	* __ComObject.cs: Added support for marshalling objects.
	
2006-07-24  Atsushi Enomoto  <atsushi@ximian.com>

	* Char.cs : implemented utf32 conversion methods thus fixed bug #78856.

2006-07-19  John Luke  <john.luke@gmail.com>

	* TermInfoDriver.cs: switch order of alt and control when
	calling new ConsoleKeyInfo()

2006-07-19  Kornél Pál  <kornelpal@gmail.com>

	* String.cs: Improve CreateString () performance when length is zero.

2006-07-18  Kornél Pál  <kornelpal@gmail.com>

	* String.cs: Added CreateString () methods. Constructors with matching
	  argument list are redirected to these methods that improves
	  performance as well as fixes bug #78703.

2006-07-15  Jonathan Chambers  <joncham@gmail.com>

	* __ComObject.cs: Begin implementing COM Interop.
	* Environment.cs: Increment corlib version.
	
2006-07-12  Zoltan Varga  <vargaz@gmail.com>

	* Delegate.cs (DynamicInvokeImpl): Add support for bound delegates in Net 2.0.

2006-07-11  Zoltan Varga  <vargaz@gmail.com>

	* Double.cs (Parse): Fix handling of inner whitespace.

2006-07-09  Zoltan Varga  <vargaz@gmail.com>

	* Int32.cs: Fix a warning.

2006-07-07  Atsushi Enomoto  <atsushi@ximian.com>

	* TimeZone.cs : consider DateTimeKind in ToLocalTime() and 
	  ToUniversalTime(). Fixed bug #78784. Patch by Thong Nguyen.
	* DateTime.cs : DateTimeKind for UtcNow should be Utc.

2006-06-28  Kornél Pál  <kornelpal@gmail.com>

	* Char.cs: Implemented IsHighSurrogate and IsLowSurrogate methods.

2006-06-27  Atsushi Enomoto  <atsushi@ximian.com>

	* Double.cs : don't throw Exception in TryParse() for 'E'.
	  Fixed bug #78546.

2006-06-20  Jb Evain  <jbevain@gmail.com>

	* Math.cs: implement Math.Truncate.

2006-06-13  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs :
	  Another lame win32 dependent pattern. Fixed bug #78618.

2006-06-09  Jonathan Chambers  <jonathan.chambers@ansys.com>

	* Environment.cs: Implement Set/GetEnvironmentVariable for User/Machine.	

2006-06-07  Kornél Pál  <kornelpal@gmail.com>

	* Environment.cs: Use Consts.FxFileVersion for Environment.Version
	  as Consts.RuntimeVersion was removed.

2006-06-05  Jonathan Chambers  <jonathan.chambers@ansys.com>

	* Variant.cs: Added.
	* Environment.cs: Incremented corlib version since adding Variant.	
	
2006-06-01  Raja R Harinath  <rharinath@novell.com>

	* Nullable.cs (operator==, operator!=): Remove.

2006-05-31  Zoltan Varga  <vargaz@gmail.com>

	* MonoDummy.cs: Removed as it is no longer needed.

	* Environment.cs: Bump corlib version.
	
	* Environment.cs: Revert the last change.
	
	* Environment.cs: Bump corlib version.

	* MonoAsyncCall.cs: New file.

2006-05-30  Gert Driesen  <drieseng@users.sourceforge.net>

	* Char.cs: Removed duplicate (explicit) interface implementation.
	* String.cs: Removed duplicate (explicit) interface implemenation.
	* MulticastDelegate.cs: Fixed API mismatches.

2006-05-29 Paolo Molaro <lupus@ximian.com>

	* String.cs: make sure that the chars truncated by a stringbuilder
	are zeroed.

2006-05-29  Martin Baulig  <martin@ximian.com>

	* Exception.cs
	(Exception.StackTrace): Use the new stack trace format which is
	very similar to the one of MS.NET - method name goes first,
	file / line number last and in the method name, we separate class
	and method name by `.'.

	* Environment.cs
	(Environment.StackTrace): Enable line-number information.

2006-05-24  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs :
	  Implement 2.0 TryParseExact(). Patch by Seo Sanghyeon.

2006-05-17  Kazuki Oikawa  <kazuki@panicode.com>

	* Array.cs : added internal sort method used
	  in System.Collections.Generics.List<T>.Sort(Comparison<T>).

2006-05-15  Zoltan Varga  <vargaz@gmail.com>

	* Environment.cs: Bump corlib version.

2006-05-10  Zoltan Varga  <vargaz@gmail.com>

	* MonoType.cs (GetMethodImpl): Fix a warning.

2006-05-08  Atsushi Enomoto  <atsushi@ximian.com>

	* ArrayTest.cs : use proper comparer in IndexOf() and LastIndexOf().
	  Patch by Kazuki Oikawa. Fixed bug #77277.

2006-05-07  Zoltan Varga  <vargaz@gmail.com>

	* Nullable.cs (Equals): Fix comparison to null. Fixes #78322.

2006-04-28  Atsushi Enomoto  <atsushi@ximian.com>

	* Nullable.cs : updated Nullable<T> API to 2.0 RTM.

2006-04-26  Atsushi Enomoto  <atsushi@ximian.com>

	* Double.cs : (Parse) handle currency symbol when
	  AllowCurrencySymbol is passed as part of the style. Patch by
	  nede@aliquant.com, modified to eliminate redundant Substring().
	  This fixes bug #77721.

2006-04-26  Atsushi Enomoto  <atsushi@ximian.com>

	* MonoType.cs : (GetMethod) when zero-length type[] is explicitly
	  passed, don't return methods with some arguments. Fixed bug #77367.

2006-04-21  Gert Driesen  <drieseng@users.souceforge.net>

	* Enum.cs: Provide meaningful message when type of passed in value
	does not match enum type.

2006-04-19  Raja R Harinath  <rharinath@novell.com>

	* Char.cs (Equals): Don't access 'm_value' field of other
	instances.  Cast directly to 'char'.

2006-04-13  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : implement SpecifyKind(). Patch by Thong Nguyen.

2006-04-13  Atsushi Enomoto  <atsushi@ximian.com>

	* NumberFormatter.cs : general performance improvements. Avoid 
	  extraneous evaluation for simple formatting. Details are seen in 
	  bug #77792. Patch by Kazuki Oikawa.

2006-04-13  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : implement IsDaylightSavingTime().
	  Patch by Seo Sanghyeon <tinuviel@sparcs.kaist.ac.kr>.

2006-04-04  Atsushi Enomoto  <atsushi@ximian.com>

	* Array.cs :
	  added some more [ReliabilityContract].
	  removed some [CLSCompliant].
	  renamed generic method parameter names.

2006-03-31  Zoltan Varga  <vargaz@gmail.com>

	* Environment.cs (SetEnvironmentVariable): Implement.

2006-03-28  Atsushi Enomoto  <atsushi@ximian.com>

	* Array.cs : oops, the last change caused regression. The array must
	  be transparent to ReadOnlyCollection, not create another list.

2006-03-28  Atsushi Enomoto  <atsushi@ximian.com>

	* Array.cs : AsReadOnly<T>() in RTM returns ReadOnlyCollection<T>.
	  Thus removed ReadOnlyArray<T> and ReadOnlyArrayEnumerator<T>.
	  In 2.0 some members became non-virtual.

2006-03-23  Atsushi Enomoto  <atsushi@ximian.com>

	* String.cs : oops, NET_2_0.

2006-03-23  Atsushi Enomoto  <atsushi@ximian.com>

	* String.cs : added new IndexOf() and LastIndexOf() overloads, and
	  IEnumerable<char>.GetEnumerator().

2006-03-21  Kornél Pál  <kornelpal@gmail.com>

	* String.cs: Make memcpy4 private as it is a helper method.
	  Make memcpy internal to can be used from UnicodeEncoding.

2006-03-19  Marek Safar  <marek.safar@seznam.cz>

	* Nullable.cs (Compare, Equals): Added constrain as gmcs now correctly
	reports an error here.

2006-03-16  Atsushi Enomoto  <atsushi@ximian.com>

	* Double.cs : (Parse) reject String.Empty.

Wed Mar 15 16:30:51 CET 2006 Paolo Molaro <lupus@ximian.com>

	* LocalDataStoreSlot.cs: implement as index in an array.
	Implemented finalizer and allow it to remove the data stored
	in the slot.

2006-03-15  Zoltan Varga  <vargaz@gmail.com>

	* Environment.cs: Bump corlib version.

2006-03-10  Zoltan Varga  <vargaz@gmail.com>

	* MonoCustomAttrs.cs (IsDefined): Avoid a runtime assert if a type
	overwrites GetCustomAttributes () but not IsDefined ().

2006-03-07  Peter Dennis Bartok  <pbartok@novell.com>

	* Environment.cs: Bumped corlib version to 48 (due to r57532)

2006-03-07  Martin Baulig  <martin@ximian.com>

	* String.cs (String.FormatHelper): Try getting an `ICustomFormatter'
	from the `provider' if possible.

2006-02-26  Gert Driesen  <drieseng@users.souceforge.net>

	* DecimalFormatter.cs: Removed obsolete class, as it has been replaced
	by NumberFormatter.
	* DoubleFormatter.cs: Same.
	* SingleFormatter.cs: Same.

2006-02-21  Marek Safar  <marek.safar@seznam.cz>

	* String.cs (Equals): Optimized for speed.

2006-02-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* TermInfoDriver.cs: patch by Mike Hull that fixes bug #77518.

Mon Feb 20 11:19:54 CET 2006 Paolo Molaro <lupus@ximian.com>

	* MonoType.cs: patch from Joachim Ante <joe@otee.dk> to
	improve error messages.

2006-02-15  Martin Baulig  <martin@ximian.com>

	* Type.cs (Type.IsGenericInstance): Removed.

2006-02-14  Ankit Jain  <jankit@novell.com>
	    Raja R Harinath  <rharinath@novell.com>
 
	* ArraySegment.cs (.ctor): Fix bounds check. Rename param 'length' to
	'count'.

2006-02-11  Zoltan Varga  <vargaz@gmail.com>

	* TermInfoDriver.cs (CreateKeyInfoFromInt): Fix handling of tab and its
	friends.
	
	* TermInfoDriver.cs (GetWindowDimensions): Obtain the exact terminal
	size using an icall.
	(GetCursorPosition): Convert the row and column to 0 based indexing. 
	Also fix reading of large values.
	(CreateKeyInfoFromInt): Convert LF to ConsoleKey.Enter.

	* ConsoleDriver.cs (GetTtySize): New icall.

2006-02-10  Zoltan Varga  <vargaz@gmail.com>

	* Array.cs: Fix some methods which previously returned Nullable<T>.

	* Nullable.cs: Add T: struct constraint and fix constructor.

Fri Feb 3 11:01:46 CET 2006 Paolo Molaro <lupus@ximian.com>

	* String.cs: changed StartsWith/EndsWith to faster versions.

2006-02-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* String.cs: implement 2.0 StartsWith and EndsWith new overloads. Based
	on a patch by Thong Nguyen.

2006-01-31  Zoltan Varga  <vargaz@gmail.com>

	* String.cs: Implement one of the new net 2.0 Split methods.

2006-01-31  Atsushi Enomoto  <atsushi@ximian.com>

	* String.cs : (LastIndexOf) Fixed bug #77412. It should not expect
	  that value length is bigger than its index.

2006-01-27  Zoltan Varga  <vargaz@gmail.com>

	* DateTime.cs: Add some 2.0 methods and properties.

2006-01-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Console.cs: if InternalCodePage returns -1, use the default encoding.
	Also match the UTF8 one properly. Patch by wall_john@sohu.com.

2006-01-19  Atsushi Enomoto  <atsushi@ximian.com>

	* ModuleHandle.cs : GetPEKind() is not public in 2.0 RTM.

2006-01-16  Alp Toker  <alp@atoker.com>

	* TimeSpan.cs: Simple implementation of NET 2.0 TryParse() using
	try/catch

2006-01-05  Raja R Harinath  <rharinath@novell.com>

	Fix regressions introduced by the fix to #71300.
	* Activator.cs (CreateInstance): Use Binder.SelectMethod instead
	of home-grown FindBestCtor.
	(FindBestCtor): Delete.

2006-01-03  Zoltan Varga  <vargaz@gmail.com>

	* Nullable.cs: Update to Net 2.0 RTM.
	
	* Nullable.cs: Add comments about runtime dependencies on the layout of
	this type.

2006-01-02  Sebastien Pouliot  <sebastien@ximian.com>

	* Activator.cs: Now find the best ctor when null are used for 
	paramaters. Fix bug #71300. Added checks for specific types (void,
	TypedReference, ArgIterator and RuntimeArgumentHandle).
	* Console.cs: Re-use Environment logic to detect Windows.
	* Type.cs: Re-applied r45150 as the real bug was in Activator.

2006-01-02  Zoltan Varga  <vargaz@gmail.com>

	* Activator.cs: Add a 'params' to one of the CreateInstance overloads.

	* RuntimeTypeHandle.cs RuntimeMethodHandle.cs RuntimeFieldHandle.cs:
	Add == and != operators.

2005-12-23  Sebastien Pouliot  <sebastien@ximian.com>

	* Environment.cs: Bump corlib version to 46.
	* TimeZone.cs: Partial fix for #76094. Added [Serializable] attribute 
	and renamed internal CurrentTimeZone class to CurrentSystemTimeZone 
	(like MS). This allows serialization roundtrip to work in Mono but 
	there's still an issue when deserializing a stream from MS. 

2005-12-23  Sebastien Pouliot  <sebastien@ximian.com> 
 
	* NumberFormatter.cs: Fixed rounding for float and the string output
	now includes all the precision (not counting preceding zeros). This
	fix the DecimalTest.TestConstructSingleRounding_NotWorking test cases.

2005-12-21  Sebastien Pouliot  <sebastien@ximian.com> 
 
	* Array.cs: Fixed Sort<T> with IComparable (generic or not) bug #77039

2005-12-20  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* Array.cs: Added the Sort<T> methods (generics). 

2005-12-19  Sebastien Pouliot  <sebastien@ximian.com> 
 
	* Array.cs: Fixed BinarySearch when the array is empty (#77030). Added
	some null check which throws ArgumentNullException under 2.0.

2005-12-15  Sebastien Pouliot  <sebastien@ximian.com>

	* DateTime.cs: Added MonoTODO to ctor accepting a Calandar instance.
	* Double.cs: Under 2.0 throw a ArgumentException when parsing with
	 NumberStyles.AllowHexSpecifier. Partial fix for #72221. Added the
	second, simpler, TryParse method (2.0).
	* Single.cs: Added the TryParse methods for 2.0.

2005-12-15  Raja R Harinath  <rharinath@novell.com>

	* Type.cs (IsGenericType): Make virtual.

2005-12-08  Sebastien Pouliot  <sebastien@ximian.com> 

	* AppDomainSetup.cs: ApplicationBase throw exception on get (not on 
	set). New behaviour is more like MS - but most issues (unit tests)
	were really path issues. Fix bug #71291.
	* DateTime.cs: Add more information when throwing an exception in 
	ctor(long). Useful for debugging.

2005-12-07  Zoltan Varga  <vargaz@gmail.com>

	* Single.cs Double.cs: Fix warnings.

2005-12-06  Sebastien Pouliot  <sebastien@ximian.com> 
 
	* Convert.cs: ToBase64String method didn't use the option parameter so
	we always included new lines. Fix bug #76876.

2005-12-06  Sebastien Pouliot  <sebastien@ximian.com>

	* AppDomainSetup.cs: Added missing ComVisible and removed LAMESPEC 
	(the docs were fixed).
	* NumberFormatter.cs: Fixed the "NotWorking" case where 1.15 was 
	misrounded compared to MS implementation. Extra care is required when
	dealing with the extra 2 digits information (e.g. double precision is
	15 digits but 17 are kept - for a reason ;-)

2005-12-05  Ben Maurer  <bmaurer@ximian.com>

	* Environment.cs: Bump version

	* Nullable.cs: New Box and Unbox methods for the jit

2004-12-05  Peter Dennis Bartok <pbartok@novell.com>

	* Enum.cs: Properly handle "No bits set" case even if the sorted numbers
	  list does not have enum value 0 as the first item. Fixes #76921

2005-12-05  Sebastien Pouliot  <sebastien@ximian.com>

	* AppDomain.cs: CreateComInstanceFrom isn't static in any profile.

Mon Dec 5 15:14:59 CET 2005 Paolo Molaro <lupus@ximian.com>

	* Double.cs: remove unused icall.
	* BitConverter.cs: handle double binary format on ARM FPA.

2005-12-02  Alp Toker  <alp@atoker.com>

	* MonoType.cs:
	* Type.cs: DeclaringMethod should return MethodBase, not MethodInfo

2005-12-02  Alp Toker  <alp@atoker.com>

	* AppDomain.cs: ReflectionOnlyPreBindAssemblyResolve renamed to
	ReflectionOnlyAssemblyResolve in 2.0 final

2005-12-01  Alp Toker  <alp@atoker.com>

	* String.cs: Add static and non-static Equals(... StringComparison) for
	2.0.

2005-12-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* TermInfoDriver.cs: special case for the escape key. Fixes bug #76781.

2005-11-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* TermInfoDriver.cs: if the cursor_address capability contains a %i, we
	have to add 1 to x and y when setting the cursor position.
	Fixes bug #76856.

	* Convert.cs: remove unused variables.

Wed Nov 30 12:14:20 EST 2005 Paolo Molaro <lupus@ximian.com>

	* NumberFormatter.cs: work around arch-specific ulong cast behaviour
	with large numbers.

Tue Nov 29 05:38:37 EST 2005 Paolo Molaro <lupus@ximian.com>

	* Convert.cs: fix endianess issue when converting to base-8
	format. All the base code would need a rewrite for efficience.

2005-11-25  Sebastien Pouliot  <sebastien@ximian.com>

	* String.cs: Added support for Compare(... StringComparison) in 2.0.

2005-11-25  Alp Toker  <alp@atoker.com>

	* Type.cs (IsVisible): New 2.0 property, implemented recursively.

2005-11-17  Dick Porter  <dick@ximian.com>

	* Environment.cs: Incremented corlib version

2005-11-14  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* Int32.cs, UInt32.cs, Int16.cs, UInt16.cs, Int64.cs,
	UInt64.cs, Byte.cs, SByte.cs, Double.cs : Modify internal Parse
	methods to return the exception as an out parameter,
	instead of throwing it. This will be of special help
	to TryParse methods.
	* Environment.cs: Update corlib version to 42.
	
2005-11-14  Raja R Harinath  <rharinath@novell.com>

	* EventHandler.cs (EventHandler<TEventArgs>): Rename from EventHandler<T>.

2005-11-11  Zoltan Varga  <vargaz@gmail.com>

	* Type.cs (GetPseudoCustomAttributes): Return ComImportAttribute as well.

2005-11-11  Lluis Sanchez Gual  <lluis@novell.com>

	* TimeZone.cs: Removed incorrect double-check lock and unneeded
	hashtable access.

2005-11-11  Marek Safar  <marek.safar@seznam.cz>

	* Type.cs: IsNested implemented, signature fixes.

2005-11-11  Raja R Harinath  <rharinath@novell.com>

	* Array.cs (Resize<T>) [2-argument variant]: Fix nullref.

2005-11-10  Zoltan Varga  <vargaz@gmail.com>

	* Array.cs (Resize<T>): New internal method which takes a 'length' argument
	as well to avoid copying the whole array.

2005-11-09  Atsushi Enomoto  <atsushi@ximian.com>

	* Int64.cs : ditto for long.

2005-11-09  Atsushi Enomoto  <atsushi@ximian.com>

	* Int32.cs : Parse("2147483648", format_provider) should be rejected.

2005-11-09  Sebastien Pouliot  <sebastien@ximian.com>

	* AttributeTargets.cs: Added [ComVisible (true)] and [Serializable] 
	in 2.0 profile.
	* Base64FormattingOptions.cs: Added missing [Flags] attribute.
	* ConsoleKey.cs: Removed old BackSpace and WhiteSpace (they were 
	already replaced by Backspace and Whitespace)
	* DateTime.cs: Moved DayOfWeek enum to it's own file.
	* DateTimeKind.cs: New (2.0) enum.
	* DayOfWeek.cs: New file (extracted from DateTime.cs).
	* DomainManagerInitializationFlags.cs: Removed extra [Serializable].
	* EnvironmentVariableTarget.cs: Added [ComVisible (true)] and fixed 
	values (-1 to all of them).
	*  Exception.cs: Added a LinkDemand for SerializationFormatter on
	GetObjectData method.
	*  LoaderOptimization.cs: Added [ComVisible (true)] and [Serializable] 
	on enum and added [Obsolete] to DomainMask and DisallowBindings in 2.0
	profile.
	* PlatformID.cs: Added [ComVisible (true)] and [Serializable] in 2.0 
	profile.
	* StringComparison.cs: New (2.0) enum (needed for Uri).
	* TermInfoDriver.cs: Fixed BackSpace -> Backspace (see ConsoleKey.cs).
	* TypeCode.cs: Added [ComVisible (true)] and [Serializable] in 2.0 
	profile.

2005-11-08  Atsushi Enomoto  <atsushi@ximian.com>

	* Type.cs : I forgot to mention, some '(' were missing in the
	  improved patch ;-)

2005-11-08  Zoltan Varga  <vargaz@freemail.hu>

	* Type.cs (GetPseudoCustomAttributes): Check for TypeAttributes.Serializable instead of
	IsSerializable property, since the latter returns true for delegates/enums.

2005-11-05  Kornél Pál  <kornelpal@hotmail.com>

	* Environment.cs: Use Consts.RuntimeVersion as Environment.Version that
	  makes maintenance easier.

2005-10-24  Martin Baulig  <martin@ximian.com>

	* Type.cs (Type.IsGenericTypeDefinition): Make this virtual.

2005-10-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* String.cs: fix bound checkings for LastIndexOfAny. Closes bug #76519.

2005-10-20  Raja R Harinath  <rharinath@novell.com>

	* Array.cs (Swapper): Remove NET_2_0 guards from nested declaration.

2005-10-16  Michal Moskal  <malekith@nemerle.org>

       * TermInfoDriver.cs: Call Init () in Background/ForegroundColor.

2005-10-14  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : another crappy Windows dependent format.

2005-10-14  Ben Maurer  <bmaurer@ximian.com>

	* DateTime.cs: Speed up when parsing date time objects by not
	duplicating cultureinfo arrays.

2005-10-13  Zoltan Varga  <vargaz@gmail.com>

	* Type.cs (GetTypeCode): Applied patch from 
	Mike Welham <mwelham@gmail.com>. Return TypeCode.Empty when null is
	passed in.

2005-10-07  Zoltan Varga  <vargaz@gmail.com>

	* Delegate.cs: Add support for delegate covariance and contravariance
	from net 2.0.

2005-10-03  Atsushi Enomoto  <atsushi@ximian.com>

	* StringComparer.cs : (OrdinalIgnoreCaseComparer.Equals()) reverse.

2005-09-26  Zoltan Varga  <vargaz@gmail.com>

	* String.cs (ParseFormatSpecifier): Fix skipping of whitespace. Fixes
	#76204.

2005-09-23  Miguel de Icaza  <miguel@novell.com>

	* Decimal.cs: Fix typo, patch from Tomas Kukol <tomas.kukol@gmail.com>

2005-09-19  Zoltan Varga  <vargaz@gmail.com>

	* MonoCustomAttrs.cs (GetCustomAttributesInternal): Add
	attributeType parameter.
	(IsDefined): New icall.

	* MonoCustomAttrs.cs: Avoid instantiating all custom attrs of an
	object when only a specific attribute type is requested. Fixes #76062.

	* Environment.cs: Bump corlib version.

2005-09-09  Zoltan Varga  <vargaz@gmail.com>

	* TypeLoadException.cs MissingMethodException.cs MissingFieldException.cs: Add new ctors called by the runtime. Improve Message property.

2005-09-14  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : (_DoParse) don't check ticks range before computing
	  the actual value. Fixed bug #76082.

2005-09-14  Atsushi Enomoto  <atsushi@ximian.com>

	* TimeZone.cs : When the target DateTime is in the range of
	  DST end to DST + delta, don't adjust UtcOffset gap between that of
	  DST and that of STD. This should fix bug #75985.

2005-09-06  Atsushi Enomoto  <atsushi@ximian.com>

	* TimeZone.cs, DateTime.cs :
	  - ToLocalTime() and ToUniversalTime() are moved to TimeZone.
	  - Added more COM patterns. Patch by Ankit Jain. Fixed bug #72132.
	  - use ToLocalTime() and don't depend on the own offset computation.
	    Parse() with 'Z' pattern is closer to correct value on switching
	    Daylight Saving Time. See bug #75985.

2005-09-06  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : (DoParse) DateTimeStyles.AdjustToUniversal was not
	  handled as expected and it kept time value as local one.
	  Patch by Brion Vibber. Fixed bug #75995.

2005-09-06  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : Literal escape (\) was not checking format as
	  expected. Fixed bug #75213.

2005-09-05  Miguel de Icaza  <miguel@novell.com>

	* MonoType.cs: Patch from Jonathan Chambers to implement
	Type.GUID. 

2005-09-05  Martin Baulig  <martin@ximian.com>

	Reflect latest API changes in the August CTP.

	* Type.cs (Type.HasGenericArguments): Removed.
	(Type.BindGenericParameters): Renamed to MakeGenericType().

2005-09-01  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : another idiotic COM dependent format.

2005-09-01  Kornél Pál  <kornelpal@hotmail.com>

	* __ComObject.cs: Fixed to be internal. Removed CLSCompliant attribute.
	Added some comments about the class.

2005-08-30  Sebastien Pouliot  <sebastien@ximian.com>

	* AppDomain.cs: Use the more concise property syntax for declarative
	security.
	* AppDomainManager.cs: Default HostSecurityManager is null.

2005-08-25  Atsushi Enomoto  <atsushi@ximian.com>

	* NumberFormatter.cs : eliminate non-ASCII character.

2005-08-25  Marek Safar  <marek.safar@seznam.cz>

	* Enum.cs: Better exception message.
	
2005-08-21  Gert Driesen  <drieseng@users.sourceforge.net>

	* Convert.cs: In FromBase64String, return empty byte array for zero
	length string. Pass bool to InternalFromBase64String to control 
	whether to allow a whitespace-only string.
	* Environment.cs: Bump corlib version.

2005-08-20  Zoltan Varga  <vargaz@freemail.hu>

	* Environment.cs: Bump corlib version.

2005-08-19  Zoltan Varga  <vargaz@freemail.hu>

	* Math.cs: Implement a new 2.0 Round method.

2005-08-19  Gert Driesen  <drieseng@users.sourceforge.net>

	* Convert.cs: Throw OverflowException if result is larger than
	ushort.MaxValue to match MS.NET. Remove commented code.

2005-08-17  Gert Driesen  <drieseng@users.sourceforge.net>

	* Convert.cs: For now, do not throw OverflowException if hex prefixed
	value is negative for signed types (other than int64). Need to look
	into this further.	

2005-08-17  Gert Driesen  <drieseng@users.sourceforge.net>

	* Convert.cs: Numerous fixed in overloads taking base to match 
	behaviour of MS.NET. Throw ArgumentOutOfRangeException is string is
	empty. If base is 16, 8 or 2, then throw ArgumentException if first 
	character is a negative sign. Throw OverflowException if hex prefixed 
	value is negative for signed types (other than int64) to match MS.NET. 

2005-08-16  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : added another COM dependent pattern (rather to describe
	  how it works on .NET than to add the pattern itself...).

2005-08-16  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : added case for bug #53023.

2005-08-10  Zoltan Varga  <vargaz@freemail.hu>

	* Type.cs: Add IsGenericType property from NET 2.0.

2005-08-10  Atsushi Enomoto  <atsushi@ximian.com>

	* String.cs : added new StartsWith()/EndsWith() override, fixing
	  existing EndsWith() which incorrectly assumed that both string
	  lengths must be equivalent (they are not always equal).
	* StringComparer.cs : added Ordinal and OrdinalIgnoreCase.

2005-08-09  Zoltan Varga  <vargaz@freemail.hu>

	* String.cs: Implement Split(String[]) methods.

2005-08-09  Miguel de Icaza  <miguel@novell.com>

	* AppDomainSetup.cs: Full-pathization of the appBase should only
	be done on Windows, the ":" condition never applied to Linux.

	* ConsoleKey.cs: Include a few aliases for a few values that were
	introduced recently.

2005-08-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* ConsoleKey.cs: added Backspace, which has the same value as BackSpace.
	Fixes bug #75697.

2005-08-08  Atsushi Enomoto  <atsushi@ximian.com>

	* String.cs : (StartsWith) compared string lengths are not always the
	  same in culture-sensitive comparison.

2005-08-05  Gert Driesen  <drieseng@users.sourceforge.net>

	* Array.cs: Changed protected ctor to private. Fixes API compatibility
	with MS.NET.
	* RuntimeFieldHandle.cs: Equals methods and GetHashCode should only
	be exposed in 2.0 profile.
	* RuntimeMethodHandle.cs: Equals methods and GetHashCode should only
	be exposed in 2.0 profile.
	* RuntimeTypeHandle.cs: Equals methods and GetHashCode should only
	be exposed in 2.0 profile.
	* Type.cs: Added GetType method and implemented _Type interface.
	Fixes API compatibility with MS.NET.

2005-07-28  Marek Safar  <marek.safar@seznam.cz>

	* StringComparer.cs: Add generics version of string interfaces.

2005-07-26  Atsushi Enomoto  <atsushi@ximian.com>

	* StringComparer.cs : implemented StringCultureComparer.GetHashCode().

2005-07-26  Zoltan Varga  <vargaz@freemail.hu>

	* StringSplitOptions.cs MidpointRounding.cs: New files.

	* String.cs Math.cs: Add stubs for some new 2.0 APIs.

2005-07-26  Marek Safar  <marek.safar@seznam.cz>

	* StringComparer.cs: New file.

2005-07-26  Raja R Harinath  <harinath@gmail.com>

	* Enum.cs (GetValue): Make private.  Return an ulong.
	(Parse): Tighten scope of couple of variables.  Use ulong when
	twiddling bits.

2005-07-25  Raja R Harinath  <rharinath@novell.com>

	* Enum.cs (FindName, GetValue): New.  Carved out of ...
	(Parse): ... this.  Refactor and simplify code.  Avoid incurring
	exceptions when parsing names.  Avoid allocating arrays unless
	necessary.  Avoid conversion of an enumeration constant	to its own
	type.  (Incorporates ideas from a patch by Gonzalo Paniagua Javier.)

2005-07-13  Lluis Sanchez Gual  <lluis@novell.com>

	* MarshalByRefObject.cs: GetLifetimeService() should be virtual.
	Fixes bug #75527.

2005-07-13  Miguel de Icaza  <miguel@novell.com>

	* Array.cs: Patch from rodrigobamboo@gmail.com that fixes the
	signature for GetValue and SetValue to make the long [] argument
	be a params argument. 

2005-07-11  Pedro Martínez Juliá  <pedromj@gmail.com>

	* Convert.cs: Fix the bug when Convert.ChangeType was using
	NumberFormatInfo instead of DateTimeFormatInfo when the type to
	change is a DateTime.

2005-07-11  Martin Baulig  <martin@ximian.com>

	* Array.cs: Use Type.Equals() instead of `==' to compare type
	parameters.	

2005-07-10  Kamil Skalski <nazgul@nemerle.org>

	* Type.cs: Mark BindGenericParameters as deprecated. Use
	MakeGenericType as default implementation with updated signature.

2005-07-09  Zoltan Varga  <vargaz@freemail.hu>

	* Attribute.cs (IsDefined): Fix IsDefined for ParameterInfo's. Fixes
	#75514.

2005-07-05  Lluis Sanchez Gual  <lluis@novell.com>

	* DelegateSerializationHolder.cs: When the deserialized target is
	a proxy, call IsInstanceOfType to force the proxy to load the
	real type of the remote object. This is needed to make sure that
	subsequent calls to GetType() return the expected type. This fixes
	bug #75447.

2005-07-03  Ben Maurer  <bmaurer@ximian.com>

	* OperatingSystem.cs: patch from Aleksandar Dezelin to fix
	serialization.

2005-06-30  Sebastien Pouliot  <sebastien@ximian.com> 

	* Guid.cs: Avoid code duplication between overriden methods (new in 
	2.0). Avoid exception processing when possible. Renamed parameters to
	match the framework. Added ComVisible to NET_2_0.

2005-06-28  Elliott Draper  <el@eldiablo.co.uk>

	* Activator.cs: This implements the generic Activator.CreateInstance<T>()
	function for NET_2_0. It's full signature is:
		public static T CreateInstance<T>();

2005-06-28  Lluis Sanchez Gual  <lluis@novell.com>

	* Decimal.cs: Renamed internal fields for the sake of serialization
	interoperability with MS.NET.
	* Exception.cs: In the StackTrace property, return the stack trace
	if it has a value, even if the exception has not been thrown
	(it may have been deserialized).

2005-06-28  Martin Baulig  <martin@ximian.com>

	* Array.cs (Array.InternalArray<T>): New nested class; derives
	from Array.  This is now used by the runtime for arrays; fixes #74953.

2005-06-27  Atsushi Enomoto  <atsushi@ximian.com>

	* String.cs : added some extra whitespace characters for Trim().
	  Fixed bug #75259.

2005-06-13  Michal Moskal <malekith@nemerle.org>
	
	* MonoType.cs: Don't use MethodHandle in GetMethod/GetConstructor,
	since it now throws on MethodBuilders. Don't use FieldHandle in
	GetField (throws on FieldBuilder) - just use the name.

2005-06-13  Martin Baulig  <martin@ximian.com>

	* MonoType.cs
	(MonoType.getFullName): Added `bool assembly_qualified' argument.
	(MonoType.AssemblyQualifiedName): The interncall now adds the
	assembly name, so we don't need to do it here.
	(MonoType.FullName): Use the new getFullName() API.

2005-06-14  Sebastien Pouliot  <sebastien@ximian.com>

	* Char.cs: ToLowerInvariant and ToUpperInvariant are now public in 
	NET_2_0. Added "new" white char and ComVisible for 2.0.

2005-06-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Convert.cs: FromBase64String and FromBase64CharArray are now internal
	calls to avoid extra allocations.

2005-06-09  Kamil Skalski <nazgul@nemerle.org>

	* Type.cs: Add MakeGenericType method form .NET 2.0 beta 2 API

	* Type.cs MonoType.cs: Add internal virtual
	Get{Method,Constructor,Field} for obtaining instanciated *Info objects
	from non-instanciated counterparts

2005-06-09  Zoltan Varga  <vargaz@freemail.hu>

	* ModuleHandle RuntimeMethodHandle.cs RuntimeTypeHandle.cs RuntimeFieldHandle.cs RuntimeArgumentHandle.cs: Add missing 2.0 attributes.

2005-06-08  Zoltan Varga  <vargaz@freemail.hu>

	* Type.cs: Add missing 2.0 attributes.

2005-06-07  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* MonoCustomAttrs.cs: Added GetCustomAttributesDataInternal icall, and
	also internal method GetCustomAttributesData, used by 
	System.Reflection.CustomAttributeData.
	
2005-06-06  Sebastien Pouliot  <sebastien@ximian.com>

	* Activator.cs: Added  _Activator interface (and members) for 1.1 and
	missing attributes (for both 1.1 and 2.0).
	* String.cs: Made internal To[Lower|Upper]Invariant methods public for
	2.0. Reworked Trim() to skip a useless call. Added missing attribute
	for 2.0.
	* Type.cs: Added  _Type, _MemberInfo interfaces (1.1/2.0). Added 
	missing attribute for 2.0. Hided some public/protected methods.

2005-06-06  Zoltan Varga  <vargaz@freemail.hu>

	* ModuleHandle.cs: Update after PortableExecutableKinds name change.

2005-06-06  Sebastien Pouliot  <sebastien@ximian.com>

	* _AppDomain.cs: Added new members in the interface (added in 1.1 SP1)
	* AppDomain.cs: Added new members from _AppDomain interface.
	* AppDomainManager.cs: Fixed flags and added attributes.
	* DomainManagerInitializationFlags.cs: The flag has been renamed to 
	AppDomainManagerInitializationOptions in beta2.

2005-06-06  Zoltan Varga  <vargaz@freemail.hu>

	* Type.cs MonoCustomAttrs.cs: Return SerializableAttribute for types as well.

2005-06-06  Sebastien Pouliot  <sebastien@ximian.com>

	* Exception.cs: Implements _Exception only for 2.0.

2005-06-06  Zoltan Varga  <vargaz@freemail.hu>

	* GC.cs: Fix build.
	
	* GC.cs UnhandledExceptionEventArgs.cs IntPtr.cs RuntimeFieldHandle.cs 
	  String.cs Object.cs Math.cs RuntimeMethodHandle.cs ModuleHandle.cs 
	  RuntimeTypeHandle.cs AppDomain.cs: Add some missing 2.0 methods/attributes.

2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Environment.cs:
	* AppDomain.cs: if the assembly is loaded from a byte array, Location
	returns "". Fixes bug #74958.

2005-06-04  Ben Maurer  <bmaurer@ximian.com>

	* *.cs: More 2.0 API fixups

	* *.cs: In beta 2, generics are no longer non-cls-compliant.

2005-06-05  Kazuki Oikawa  <kazuki@panicode.com>

	* NumberFormatter.cs: Fixed the output of 0.ToString("00.00E00")
	that was different from MSFT.
	* String.cs: Fixed IndexOfAny thrown an exception
	when startIndex of arguments equals Length. (Closes bug #75083.)

	* Decimal.cs: Changed to use NumberFormatter in ToString.
	* NumberFormatter.cs: Implemented decimal formatter.

2005-06-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Type.cs: reverted wrong fix for bug #71300 in r45150. This makes SSL
	support in System.Net work again.

2005-06-01  Ben Maurer  <bmaurer@ximian.com>

	* CharEnumerator.cs: add IEnumerable <char> support

2005-05-30  Sebastien Pouliot  <sebastien@ximian.com>

	* Activator.cs: Added missing validation on parameters.

2005-05-28  Ben Maurer  <bmaurer@ximian.com>

	* Type.cs: Check that the arguments of the `types' array are
	non-null. Fixes bug 71300

2005-05-28  Sebastien Pouliot  <sebastien@ximian.com>

	* AppDomainSetup.cs: Added new 2,0 constructors and the 
	ActivationArguments property.
	* AppDomainManager.cs: Added using System.Runtime.Hosting as it is the
	new location for the ApplicationActivator class.
	* ApplicationActivator.cs: Moved to System.Runtime.Hosting namespace.

2005-05-27  Vladimir Vukicevic  <vladimir@pobox.com>

	* Environment.cs: bump corlib version for bug #75060.

2005-05-27  Raja R Harinath  <rharinath@novell.com>

	* Environment.cs (ExpandEnvironmentVariables): Rewrite
	sb.Append (s.SubString (a, b)) to sb.Append (s, a, b).
	* String.cs (FormatHelper): Rewrite sb.Append (s.SubString (a)) to
	sb.Append (s, a, s.Length - a).  Avoid allocating 'pad' string --
	StringBuilder has an appropriate Append overload.

2005-05-26  Zoltan Varga  <vargaz@freemail.hu>

	* Type.cs (IsEnum): Special case EnumBuilder here.

2005-05-26  Sebastien Pouliot  <sebastien@ximian.com>

	* MonoType.cs: Changed call from GetName to UnprotectedGetName to
	allow call to work with serialization under a restrictive policy.
	The code path (the protected information) isn't being used.

2005-05-25  Zoltan Varga  <vargaz@freemail.hu>

	* Exception.cs: Use the new StackTrace ctor.

	* Type.cs: Improve support for user defined type subclasses.

2005-05-25  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : Added minimum digit parameter to ParseNumber() to
	  reject 2 digit years for "yyyy".
	  Use GetAllDateTimePatterns() instead of constant string.
	  Fixed bug #72788.

2005-05-25  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : next_not_digit prevented some valid parse.
	  Just remove it, since now we pass max length to ParseNumber() and
	  thus it is not needed anymore. Fixed bug 63137.

2005-05-24  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : HH should not always block tt. Fixed bug #60912.
	  Reset num after whitespace parsing.
	  Added "M/d/yyyy HH':'mm':'ss tt" as an invariant pattern.

2005-05-24  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : Allow ',' where whitespaces are allowed.
	  Fixed bug #71289.

2005-05-22  Ben Maurer  <bmaurer@ximian.com>

	* BitConverter.cs: Speed this up, fixing 74014. Patch from
	`Aleksandar Dezelin'.

2005-05-20  Zoltan Varga  <vargaz@freemail.hu>

	* Type.cs: Add some helper methods needed by other classes.

	* Array.cs: Improve support for user defined Type subclasses.	
	
	* Type.cs: Rename GetTypeCode icall to GetTypeCodeInternal and add a managed
	wrapper function, not used yet.

	* Type.cs Array.cs: Revert this as it breaks the build.

	* Type.cs Array.cs: Improve support for user defined Type subclasses.

2005-05-19  Ben Maurer  <bmaurer@ximian.com>

	* Delegate.cs (Equals): Use `as' to protect in the case where !
	(obj is Delegate)

2005-05-19  Raja R Harinath  <rharinath@novell.com>

	* Console.cs (Readline) [NET_2_0]: Avoid "uninitialized variable"
	error.

2005-05-19  Miguel de Icaza  <miguel@novell.com>

	* TermInfoDriver.cs: Removed warning.

	* Array.cs (Resize<T>, TrueForAll<T>, ConvertAll<TInput,TOutput>,
	FindLastIndex<T>: Parameter names are normative. 	
	Fix coding style ("Method<T>" not "Method <T>")
	Throw argument exceptions per argument.
	
	(FindAll): Fix bug, actually return the values that were computed,
	not a short version of the original array.
	
2005-05-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Console.cs: fix error in the 2_0 side and split ReadLine in 2, one
	for each framework version.

2005-05-15  Andreas Nahr  <ClassDevelopment@A-SoftTech.com>

	* Attribute.cs:
	* Exception.cs: .Net 1.1 already has these interfaces

Mon May 16 18:23:49 CEST 2005 Paolo Molaro <lupus@ximian.com>

	* MonoCustomAttrs.cs, Type.cs: do not create a SerializableAttribute
	object on GetCustomAttributes (fixes bug #74717).

2005-05-15  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : for 'z' next_not_digit didn't work as expected.
	  Fixed bug #74775.

2005-05-15  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : don't allow extraneous pattern characters also for
	  non-exact parsing (ParseExact() was fine). Bug #74936 fixed

2005-05-13  Gert Driesen <drieseng@users.sourceforge.net>

	* Activator.cs: Match exceptions thrown by MS.NET for
	CreateInstance overloads if type is abstract. Fixes bug #74861.

2005-05-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* OperatingSystem.cs: PlatformID.Unix.

2005-05-09  Sebastien Pouliot  <sebastien@ximian.com>

	* Environment.cs: Patch from Gonzalo to fix Environment.OSVersion.
	Platform under NET_2_0 to return PlatformID.Unix. Fix bug #74841.

2005-05-07  Atsushi Enomoto  <atsushi@ximian.com>

	* NumberFormatter.cs : roundtrip number is already rounded before
	  FormatGeneral() and DefaultMaxPrecision was extraneous. This fixes
	  bug #72955.

2005-05-07  Ben Maurer  <bmaurer@ximian.com>

	* Array.cs (BinarySearch): Patch from kazuki to pass arguments to
	the comparer in the same order as msft. Fixes #70725

2005-05-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Enum.cs: the hashtable don't need to be synchronized any more, since
	it's only accessed from withint a lock.

	* Console.cs: stdin, stdout and stderr will never be finalized. Fixes
	bug 74768.

2005-05-06  Zoltan Varga  <vargaz@freemail.hu>

	* Array.cs: Remove CLSCompliant (false) attributes.

2005-05-06  Martin Baulig  <martin@ximian.com>

	* Predicate.cs, Action.cs, Comparision.cs, Converter.cs: Add
	[CLSCompliant(true)] attribute.

2005-05-04  Miguel de Icaza  <miguel@novell.com>

	* Enum.cs (MonoEnumInfo): Based on a patch from James Willcox,
	initialize cache as a static method.  Fixes #74828.

2005-05-03  Marek Safar  <marek.safar@seznam.cz>

	* Console.cs: CancelKeyPress is stubbed.

2005-04-25  Sebastien Pouliot  <sebastien@ximian.com>

	* ActivationContext.cs: Updated for beta2.
	* AppDomainManager.cs: Updated for beta2.
	* ApplicationId.cs: Updated for beta2.
	* ApplicationIdentity.cs: Updated for beta2.
	* Exception.cs: Now use Assembly.UnprotectedGetName () as Exception 
	doesn't	leak the code base from the returned AssemblyName.

2005-04-25  Martin Baulig  <martin@ximian.com>

	* Environment.cs (Environment.Version): Changed to 2.0.50215.

2005-04-22  Sebastien Pouliot  <sebastien@ximian.com>

	* Attribute.cs: Added _Attribute interface to NET_2_0 to reduce the 
	number of "missing" in the class status pages.

2005-04-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MulticastDelegate.cs: (GetInvocationList) when building the list that
	is later traversed forward, mark 'this' as the end of the chain.
	Fixes bug #74607.

2005-04-19  Zoltan Varga  <vargaz@freemail.hu>

	* Environment.cs: Bump corlib version.

2005-04-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* WindowsConsoleDriver.cs: ignore key release events.

2005-04-06  Atsushi Enomoto  <atsushi@ximian.com>

	* Char.cs : ToUpper()/ToLower() comparison ranges were incorrect.

2005-04-05  Sebastien Pouliot  <sebastien@ximian.com>

	* _AppDomain.cs: Add security checks to the interface. Declarative 
	security on events requires BOOTSTRAP_WITH_OLDLIB to work properly 
	with older MCS.
	* AppDomain.cs: Add some (not complete) security checks. Bug#74411 is
	blocking some cases from working properly. Declarative security on 
	events requires BOOTSTRAP_WITH_OLDLIB to work properly with older MCS.

2005-04-04  Sebastien Pouliot  <sebastien@ximian.com>

	* AppDomain.cs: Use the PolicyLevel to resolve the granted permissions
	on the AppDomain. Added an internal property to get the granted set.

2005-04-04  Atsushi Enomoto  <atsushi@ximian.com>

	* String.cs,
	  Char.cs : use TextInfo for ToLower() and ToUpper().

2005-03-31  Sebastien Pouliot  <sebastien@ximian.com>

	* Exception.cs: Added Assert for TypeInformation to GetObjectData and
	ToString methods (not required for 2.0 as TypeInformation will be 
	deprecated). Added null check for GetObjectData.

Tue Mar 29 11:47:19 CEST 2005 Paolo Molaro <lupus@ximian.com>

	* Delegate.cs: allow IronPython 0.7 to compile.

2005-03-24  Miguel de Icaza  <miguel@novell.com>

	* Delegate.cs: Add CreateDelegate with a target option, currently
	internal as it is not exposed by the framework yet.

2005-03-24  Zoltan Varga  <vargaz@freemail.hu>

	* String.cs: Add some 2.0 methods.

2005-03-24  Sebastien Pouliot  <sebastien@ximian.com>

	* Activator.cs: Now use the supplied evidences when loading 
	assemblies. Added LinkDemand for RemotingConfiguration on both
	GetObject methods.
	* Console.cs: Added Assert for UnmanagedCode on OpenStandard[Error|
	Input|Output] as they use a handle on a FileStream (which is
	restricted otherwise). Added Demand for UnmanagedCode for the
	Set[Error|In|Out] methods.
	* MarshalByRefObject.cs: Added LinkDemand for Infrastructure on	
	CreateObjRef, GetLifetimeService and InitializeLifetimeService.
	* RuntimeMethodHandle.cs: Added Demand for UnmanagedCode on 
	GetFunctionPointer method.
	* TypedReference.cs: Added LinkDemand for ReflectionPermission's
	MemberAccess on MakeTypedReference.

2005-03-14  Sebastien Pouliot  <sebastien@ximian.com>

	* Environment.cs: Fix CAS unit tests for NET_1_1.
	* Exception.cs: Fix CAS unit tests for NET_1_1.

2005-03-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Version.cs: don't ignore the last number. Fixes bug #73539.

2005-03-11  Sebastien Pouliot  <sebastien@ximian.com>

	* MonoType.cs: When the security manager is active, constructors and
	methods will return null if a linkdemand fails during reflection 
	query.

2005-03-11  Zoltan Varga  <vargaz@freemail.hu>

	* Array.cs (Sort): Bail out early if length <= 1. Fixes #72721.

2005-03-10  Zoltan Varga  <vargaz@freemail.hu>

	* Environment.cs: Bump corlib version.

2005-03-10  Martin Baulig  <martin@ximian.com>

	* Nullable.cs (Nullable<T>.ToString): Return an empty string if
	we're null.

2005-03-09  Zoltan Varga  <vargaz@freemail.hu>

	* Activator.cs MonoType.cs: Applied patch from Carlos Alberto Cortez
	(carlos@unixmexico.org). Allow creation of valuetypes with no ctor.
	Fixes #73432.

2005-03-04  Zoltan Varga  <vargaz@freemail.hu>

	* Environment.cs: Bump corlib version.

	* Exception.cs (StackTrace): Return the wrapper info as well.

2005-03-02  Kazuki Oikawa  <kazuki@panicode.com>

	* NumberFormatter.cs: Some internal classes was converted to structs,
	and improved some points.

2005-02-26  Kazuki Oikawa  <kazuki@panicode.com>

	* NumberFormatter.cs: Improved performance and memory usage
	when integer standard format.
	* SByte.cs:
	* Int16.cs:
	* Int32.cs:
	* Int64.cs:
	* Byte.cs:
	* UInt16.cs:
	* UInt32.cs:
	* UInt64.cs:
	* Single.cs:
	* Double.cs:
	* TimeSpan.cs: Improved these directly call to NumberFormatter.

2005-02-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* TermInfoDriver.cs: set the xmit mode if available. Handle key input
	and translate them into a ConsoleKeyInfo.
	* TermInfoReader.cs: added a method to return the bytes of a string
	property.
	* ConsoleKeyInfo.cs: added copy constructor and setters.

2005-02-24  Zoltan Varga  <vargaz@freemail.hu>

	* Array.cs: Add missing 2.0 attributes and correct some parameter names.

2005-02-24  Carlos Alberto Cortez <calberto.cortez@gmail.com>

	* AppDomain.cs: Changed GetAssemblies, LoadAssembly, and Load signatures,
	and added some to support the reflection only methods. DoAssemblyResolve
	was modified to invoke the new PreBindAssemblyResolve event when the
	assembly is reflection only.
	
2005-02-21  Zoltan Varga  <vargaz@freemail.hu>

	* GC.cs Double.cs IntPtr.cs Array.cs Decimal.cs Math.cs Single.cs:
	Add net 2.0 ReliabilityContractAttributes.

2005-02-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* TermInfoDriver.cs: cygwin terminals are handled by the windows
	console driver.

	* TermInfoReader.cs:
	* TermInfoNumbers.cs:
	* KnownTerminals.cs:
	* TermInfoBooleans.cs:
	* TermInfoStrings.cs: documented.

2005-02-19  Kazuki Oikawa <kazuki@panicode.com>

	* Array.cs: Reverse the order in the Equals calls.

2005-02-18  Zoltan Varga  <vargaz@freemail.hu>

	* Exception.cs (StackTrace): Implement this in managed code since it is
	needed by CAS. Fixes #72146.

2005-02-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* WindowsConsoleDriver.cs: implemented MoveBufferArea.

2005-02-14  Raja R Harinath  <rharinath@novell.com>

	* Array.cs (Array.Swapper) [!BOOTSTRAP_WITH_OLDLIB]: Make nested.
	See #72015.

2005-02-12  Ben Maurer  <bmaurer@ximian.com>

	* Version.cs (CompareTo, Equals): Make sure the versions for
	generics handle `null'. The non-generics versions now just call
	the regular versions, to reduce code duplication.

	* Boolean.cs (CompareTo): make this really work for generics 

	* Type.cs (GetProperty): Passing new Type [0] is different than
	null. null means `I don't care how many types this has,' while new
	Type [0] means `this must have 0 types.'

2005-02-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* corlib.dll.sources: added WindowsConsoleDriver.cs

	* System/ConsoleDriver.cs: use WindowsConsoleDriver on windows and
	implemented the few missing properties/methods.

	* System/IConsoleDriver.cs: uncommented all methods/properties.
	* System/TermInfoDriver.cs: implement changes from IConsoleDriver.
	* System/WindowsConsoleDriver.cs: implemented IConsoleDriver for
	windows. Only missing MoveBufferArea by now.

2005-02-11  Zoltan Varga  <vargaz@freemail.hu>

	* Type.cs (IsAssignableFrom): Add support for TypeBuilders.

	* Int32.cs AppDomain.cs: Fix warnings.

2005-02-10  Marek Safar  <marek.safar@seznam.cz>

	* IServiceProvider.cs: Is not ComVisible.

	* NonSerializedAttribute.cs: Fix AttributeUsage flags.

	* Type.cs: Fix ClassInterface attribute.

Tue Feb 8 19:26:47 CET 2005 Paolo Molaro <lupus@ximian.com>

	* Delegate.cs: remove the finalizer from Delegate: this
	is handled internally by the runtime now.

2005-02-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Activator.cs: provide the Type name when throwing an exception.

2005-02-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* TimeZone.cs: lock on the static Hashtable instead of 'this'. Fixes
	bug #72238.

Fri Feb 4 15:46:04 CET 2005 Paolo Molaro <lupus@ximian.com>

	* Array.cs: provide specialized versions of some methods.

Thu Feb 3 15:15:25 CET 2005 Paolo Molaro <lupus@ximian.com>

	* String.cs: provide a managed memcpy and memset method
	for use both in corlib and from the JIT. Implement
	some methods with the managed helpers and remove some icalls.

2005-01-31  Sebastien Pouliot  <sebastien@ximian.com>

	* Exception.cs: Added Data property for NET_2_0 (required for new
	unit tests).

2005-01-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* ConsoleDriver.cs:
	* TermInfoDriver.cs:
	* IConsoleDriver.cs:
	* Console.cs: added BufferWidth and BufferHeight.

2005-01-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* ConsoleDriver.cs:
	* Console.cs:
	* TermInfoDriver.cs:
	* IConsoleDriver.cs: added a few more properties and fixed cursor
	addressing.

2005-01-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* ConsoleDriver.cs: static class that forwards the Console 2.0 class
	calls to the proper driver.
	* TermInfoDriver.cs: terminfo based console driver.
	* IConsoleDriver.cs: interface implemented by console drivers.

	* ConsoleCancelEventArgs.cs:
	* ConsoleCancelEventHandler.cs:

	* ConsoleModifiers.cs: 
	* ConsoleSpecialKey.cs:
	* ConsoleColor.cs:
	* ConsoleKey.cs: new enumerations.

	* ConsoleKeyInfo.cs: New file.

	* TermInfoReader.cs: reader for terminfo capabilities files.

	* TermInfoNumbers.cs:
	* TermInfoBooleans.cs:
	* TermInfoStrings.cs: enumations for terminfo property names.

	* KnownTerminals.cs: byte arrays for selected terminals.

	* Console.cs: added more 2.0 methods and implemented some of them.


2005-01-30  Atsushi Enomoto  <atsushi@ximian.com>

	* Int32.cs : (FindSign) IndexOf() is better than creating substring.

2005-01-27  Sebastien Pouliot  <sebastien@ximian.com>

	* BadImageFormatException.cs: Protect the fusion (GAC) log from being
	disclosed unless code has ControlPolicy and ControlEvidence.

2005-01-27  Zoltan Varga  <vargaz@freemail.hu>

	* Exception.cs: Compute stack trace on demand.

2005-01-26  Sebastien Pouliot  <sebastien@ximian.com>

	* Environment.cs: Removed hack for static class (NET_2_0). Added 
	proper security for FailFast (documented in FDBK20543). Added new
	method IsRunningOnWindows to replace (Platform == 128) as the logic is
	gonna change in the future (Unix is id #4 in NET_2_0).

2005-01-24  Sebastien Pouliot  <sebastien@ximian.com>

	* Environment.cs: Added CAS security (both declarative and imperative)
	as a test. This shouldn't affect execution unless --security is 
	specified.

2005-01-19  Rafael Teixeira  <rafaelteixeirabr@hotmail.com>
	* Type.cs: Corrected implementation for the Type.FilterNameIgnoreCase
	and Type.FilterName delegates They weren't dealing with the optional '*'
	at the end of the filter mask

2005-01-19  Zoltan Varga  <vargaz@freemail.hu>

	* Array.cs: Fix a typo in the previous patch.
	
	* Array.cs: Fix some test failures in the generic methods.

	* Array.cs: Implement AsReadOnly.

2005-01-13  Geoff Norton  <gnorton@customerdna.com>

	* Guid.cs: Fix endian issues (use Mono.Security.BitConverterLE).  Fixes
	#71242

2005-01-11  Sebastien Pouliot  <sebastien@ximian.com>

	* AppDomain.cs: Removed Activate and ActivateNewProcess methods. They
	have been removed from 2.0.

2005-01-11  Zoltan Varga  <vargaz@freemail.hu>

	* Boolean.cs Char.cs Single.cs Double.cs: Implement IComparable<T> in
	NET 2.0.

2005-01-10  Sebastien Pouliot  <sebastien@ximian.com>

	* ApplicationIdentity.cs: Throw ArgumentNullException if name is null.
	Add default culture (neutral) to the name when none is specified.
	* AppDomain.cs: Changed IsDefaultAppDomain (2.0). Is seems that we 
	can't trust Id ?

2005-01-09  Sebastien Pouliot  <sebastien@ximian.com>

	* DateTime.cs: Reverted last patch for utc as it broke all certificate
	handling and another unit test in DateTime.

2005-01-09  Miguel de Icaza  <miguel@ximian.com>

	* DateTime.cs: Return immediately if useutc is set to true, there
	is no need to do the extra computation (which also happened to
	create a new DateTime using the `use_localtime' constructor, which
	lead to the erroneous date returns when using 'u' or `U'
	formats).   

	Fixes another bug in the regression test suite.

2005-01-08  Sebastien Pouliot  <sebastien@ximian.com> 

	* AppDomain.cs: Fix the DefaultDomain property to return the root 
	domain (as it seems that the root's Id isn't always 0).
	* BitConverter.cs: The "special support" for ToString(new byte[0]) is
	only for NET_2_0 - previously this was an ArgumentOutOfRangeException.

2005-01-08  Miguel de Icaza  <miguel@ximian.com>

	* IntegerFormatter.cs: The - sign inside the "negative" section in
	a multi-format string means `show the sign' only if it is the
	first token, not `copy verbatim'.  In the other sections it means
	`copy-verbatim'.

	This makes things like:  (-34).ToString ("#;-#") show up as "-34"
	instead of "--34".

	The bad news is that this code needs to be rewritten to handle all
	the formatting cases, see bug #71112 for details.

	* Convert.cs (Convert.ToType): Throw an InvalidCastException if
	the conversion is invalid, not ArgumentException, this fixes
	another regression in our test suite.

2005-01-08  Sebastien Pouliot  <sebastien@ximian.com>

	* AppDomain.cs: Add ApplicationIdentity property for 2.0;
	* AppDomainManager.cs: Remove HostRefusedSet support (it does not 
	exists anymore).

2005-01-08  Zoltan Varga  <vargaz@freemail.hu>

	* DateTime.cs: Create MaxValue and MinValue using a different constructor to avoid static 
	initialization problems.

2005-01-02  Ben Maurer  <bmaurer@ximian.com>

	* Int32.cs: NumberStyles.AllowExponent was supported by the
	Int32.Parse function. From Akira <mei@work.email.ne.jp>. Fixes bug
	70469.

2005-01-01  Atsushi Enomoto  <atsushi@ximian.com>

	* Base64FormattingOptions.cs : it was not in System namespace.

2004-12-21  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : If no progress on value string, don't regard as
	  matched. This fixes bug #70707.

2004-12-20  Sebastien Pouliot  <sebastien@ximian.com>

	* Environment.cs: Bump corlib version.

2004-12-16  Zoltan Varga  <vargaz@freemail.hu>

	* Array.cs (DoBinarySearch): Fix a warning.

2004-12-08  Zoltan Varga  <vargaz@freemail.hu>

	* Environment.cs: Bump corlib version.

	* AppDomain.cs: Add new DefineInternalDynamicAssembly () method.

2004-12-06  Ben Maurer  <bmaurer@ximian.com>

	* Exception.cs: Prevent stringifying the type name on the
	ctor. this gets called a few times on every execution to create a
	nullref exception.

2004-12-06  Martin Baulig  <martin@ximian.com>

	* Decimal.cs: Decimal constant support has been merged into GMCS,
	removed the FIXME.

2004-12-06  Zoltan Varga  <vargaz@freemail.hu>

	* Environment.cs: Bump corlib version.
	
	* Environment.cs: Bump corlib version.

2004-11-30  Zoltan Varga  <vargaz@freemail.hu>

	* MonoType.cs (UnderlyingSystemType): Make this return this as in
	MS.NET. Fixes #56245.

2004-11-29  Atsushi Enomoto  <atsushi@ximian.com>

	* GC.cs : Collect(generation) actually does not throw an exception
	  even if generation > MaxGeneration (MS document bug).

2004-11-28  Zoltan Varga  <vargaz@freemail.hu>

	* Exception.cs: Implement _Exception under NET_2_0.

	* Byte.cs SByte.cs UInt16.cs Int16.cs: Make these compile under csc 2.0.

	* AccessViolationException.cs DataMisalignedException.cs OperationCanceledException.cs
	NotCancelableException.cs TimeoutException.cs: New files.

2004-11-23  Raja R Harinath  <rharinath@novell.com>

	* Decimal.cs [NET_2_0]: Use old code till GMCS imports decimal
	constant support.

2004-11-23  Raja R Harinath  <rharinath@novell.com>

	* Decimal.cs [BOOTSTRAP_WITH_OLDLIB]: Use old code for compilers
	without decimal constant support.

2004-11-23  Marek Safar  <marek.safar@seznam.cz>

	* Decimal.cs: Updated to use compiler decimal constant support.

2004-11-20  Zoltan Varga  <vargaz@freemail.hu>

	* MonoType.cs: Revert last change since it breaks remoting.

2004-11-18  Zoltan Varga  <vargaz@freemail.hu>

	* MonoType.cs (UnderlyingSystemType): Make this return this as in
	MS.NET. Fixes #56245.

2004-11-17  Carlos Alberto Cortez <carlos@unixmexico.org>

	* INullable.cs: New interface added.
	* Nullable.cs: Methods added. Also a static Nullable class
	containing static methods.
	
2004-11-15  Sebastien Pouliot  <sebastien@ximian.com>

	* BitConverter.cs: Added support for special case when ToString is 
	called with (new byte [0]).

2004-11-10  Lluis Sanchez  <lluis@novell.com>

	* Exception.cs: Added setter for StackTrace.

2004-11-07  Ben Maurer  <bmaurer@ximian.com>

	* IntegerFormatter.cs: Avoid .ToCharArray

2004-11-06  Ben Maurer  <bmaurer@ximian.com>

	* Single.cs, Double.cs (GetHashCode): Better hashcode impl

2004-11-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* InvalidOperationException.cs: make the message more meaningful and
	real. Fixes bug #69055.

2004-10-28  Ben Maurer  <bmaurer@ximian.com>

	* String.cs: Rather than == String.Empty, use .Length == 0. It
	is a bit faster (avoids a method call, and the code is less complex).

2004-10-24  Fawad Halim  <fawad@fawad.net>
	* Environment.cs: If an Environment variable value isn't found, leave the trailing % of the reference for further matches.
	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.
	This fixes bug #64995.

2004-10-19  Lluis Sanchez  <lluis@novell.com>

	* MarshalByRefObject.cs: Field _identity is not serializable.
	This fixes bug #68567.

2004-10-17  Ben Maurer  <bmaurer@ximian.com>

	* DateTime.cs (ZeroPad): Use unsafe code to speed this up. We
	avoid entering slow integer formatting code.

	(_ToString): Use ZeroPad here when possible, as it is faster.

2004-10-11  Martin Baulig  <martin@ximian.com>

	* Environment.cs: Bump corlib version to 28.

2004-10-08  Zoltan Varga  <vargaz@freemail.hu>

	* Convert.cs (ToType): Throw an exception when converting null to a
	valuetype. Fixes #67780.

2004-10-08  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : Performance fix. ParseExact() implementation should
	  avoid s = s.Substring(1).

2004-10-08  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : When it it not exact parse, 'Z' is allowed as a suffix
	  of m/s/t/z. This fixes bug 66723.

Wed Oct 6 12:37:54 CEST 2004 Paolo Molaro <lupus@ximian.com>

	* String.cs: make GetHashCode() managed.

2004-10-04  Zoltan Varga  <vargaz@freemail.hu>

	* AppDomain.cs: Make ThreadStatic variables static. Fixes #56614.

	* Runtime*Handle.cs ModuleHandle.cs: Add Equals + GetHashCode.

	* ModuleHandle.cs: Add missing methods.

	* RuntimeTypeHandle.cs: Add GetModuleHandle () method.

2004-10-03  Zoltan Varga  <vargaz@freemail.hu>

	* AttributeTargets.cs: Add 2.0 GenericParameter value.

	* Environment.cs: Bump corlib version.

2004-10-02  Zoltan Varga  <vargaz@freemail.hu>

	* Int32.cs UInt32.cs Byte.cs SByte.cs Int16.cs UInt16.cs Int64.cs UInt64.cs: Implement 2.0 TryParse methods.

2004-09-30  Geoff Norton  <gnorton@customerdna.com>

	* Convert.cs: ConvertToBase* was not endian aware.  Implemented EndianSwap
	and swapping of all values before going into the BitConverter so that values
	are returned with proper endianess.

2004-09-23  Martin Garton  <martin@wrasse.demon.co.uk>

	* Convert.cs: ToType was returning unconverted object when it should
	fail with an ArgumentException.

2004-09-27  Zoltan Varga  <vargaz@freemail.hu>

	* Array.cs: Add stub for AsReadOnly<T>.
	
2004-09-25  Zoltan Varga  <vargaz@freemail.hu>

	* Type.cs: Add MakePointerType && stub for ReflectionOnlyGetType.

	* MonoCustomAttrs.cs (GetCustomAttributesBase): Add support for
	parameters.

2004-09-24  Zoltan Varga  <vargaz@freemail.hu>

	* MonoCustomAttrs.cs (GetCustomAttributesBase): Add support for
	methods and fields.
	
	* MonoCustomAttrs.cs: Beginnings of support for returning 2.0 pseudo
	custom attributes.

	* MonoCustomAttrs.cs (RetrieveAttributeUsage): Avoid infinite recursion.

	* MonoCustomAttrs.cs (GetCustomAttributes): Fix the 'attributeType is 
	sealed' optimization.

	* Type.cs: Implement 2.0 StructLayoutAttribute property. 

	* Type.cs Add GetPseudoCustomAttributes () method.

2004-09-24  Martin Baulig  <martin@ximian.com>

	* Type.cs (Type.GetGenericParameterConstraints): New public method.

2004-09-23  Zoltan Varga  <vargaz@freemail.hu>

	* MonoCustomAttrs.cs (GetCustomAttributes): Rename the icall to
	GetCustomAttributesInternal and add a 'pseudoAttrs' argument.

	* Type.cs: Tweak Module property in 2.0 build.

2004-09-23  Martin Baulig  <martin@ximian.com>

	* Type.cs (Type.GenericParameterAttributes): New public property.

2004-09-23  Martin Baulig  <martin@ximian.com>

	* GenericParameterAttributes.cs: New file.

2004-09-22  Zoltan Varga  <vargaz@freemail.hu>

	* ModuleHandle.cs: Updated after changes to Module class.

2004-09-21  Geoff Norton <gnorton@customerdna.com>

	* Type.cs: BindingFlags.IgnoreCase was being ignored, this reimplements
	this filter. Fixes bug #65778.

2004-09-20  Zoltan Varga  <vargaz@freemail.hu>

	* Environment.cs: Bump corlib version.

2004-09-19  Zoltan Varga  <vargaz@freemail.hu>

	* ModuleHandle.cs: New file.

	* RuntimeFieldHandle.cs: Add an internal ctor.

2004-09-19  Dick Porter  <dick@ximian.com>

	* Console.cs: Use the internal wrappers for StreamReader and
	StreamWriter that catch IOException.

2004-09-16  Sebastien Pouliot  <sebastien@ximian.com>

	* Environment.cs: Bumped mono_corlib_version to 25.

2004-09-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* AppDomain.cs: added SetupInformationNoCopy property, since
	SetupInformation creates a copy now, all updates to it should use the
	actual data. Fixes bug #61991 take 2.

2004-09-09  Tim Coleman <tim@timcoleman.com>
	* Base64FormattingOptions.cs: New enum
	* Convert.cs: Add new ToBase64String methods for Fx 2.0

2004-09-08  Marek Safar  <marek.safar@seznam.cz>

	* Console.cs,
	* GC.cs: Class is static for NET_2_0.

2004-09-07 Ben Maurer  <bmaurer@users.sourceforge.net>

	* Activator.cs: Make sure not to call .GetType on a
	null argument. fixes 63852

2004-09-06 Ben Maurer  <bmaurer@users.sourceforge.net>

	* Array.cs (Clear): make this an icall.

2004-09-05 Ben Maurer  <bmaurer@users.sourceforge.net>

	* MonoCustomAttribute.cs: Avoid the call to GetBase when possible.

2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Environment.cs: (ExpandEnvironmentVariables) don't nullify the case
	insensitive enironment variables hashtable once we create it.

2004-09-04  Sebastien Pouliot  <sebastien@ximian.com>

	* AppDomain.cs: Changed 2 imperative security demands to declarative
	(unsupported) so it doesn't (for now) call the security runtime.

2004-09-02  Zoltan Varga  <vargaz@freemail.hu>

	* Delegate.cs: Free the delegate trampoline in the finalizer.

2004-08-26  Sebastien Pouliot  <sebastien@ximian.com>

	* ApplicationId.cs: Completed GetHashCode using information from MS
	(FDBK13339).

2004-08-23  Sebastien Pouliot  <sebastien@ximian.com>

	* Boolean.cs: Added TryParse static method for NET_2_0 profile.

2004-08-19  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : When hour format is "hh", MS.NET (maybe incorrectly)
	  allows 12, that should not be accepted (13 is rejected) and
	  interpreted as 0. This fixes bug 63376.

2004-08-17  Sebastien Pouliot  <sebastien@ximian.com>

	* Version.cs: Fixed Clone so we can use it on versions with only
	major/minor or major/minor/build.

2004-08-17  Martin Baulig  <martin@ximian.com>

	* MonoType.cs (MonoType.getFullName): Added `bool full_name'
	argument specifying whether or not to include the type arguments.
	(MonoType.FullName): Don't include the type arguments.
	(MonoType.ToString): Include them here.

	* Environment.cs: Bumped mono_corlib_version to 24.

2004-08-16  Duncan Mak  <duncan@ximian.com>

	* AttributeUsageAttribute.cs: Change the AttributeUsage to
	AttributeTargets.Class, from AttributeTargets.All, fixes Zoltan's
	bug #62895.

2004-08-11  Marek Safar  <marek.safar@seznam.cz>

	* AppDomain.cs: Fixed typo of DefineDynamicAssembly argument.
	Added call to AddPermissionRequests to pass permissions
	arguments.
	* Environment.cs: Added a few Fx 2.0 methods

2004-08-09  Sebastien Pouliot  <sebastien@ximian.com>

	* ApplicationId.cs: Fixed typo to fix NET_2_0 compilation.
	* AppDomain.cs: Fixed use of Evidence and AppDomainSetup (copies, not
	references). Added (non-obsolete) Fx 2.0 properties and methods.
	* AppDomainSetup.cs: Added internal copy constructor.
	* DomainManagerInitializationFlags.cs: Fixed values.

2004-08-08  Sebastien Pouliot  <sebastien@ximian.com>

	* AppDomainInitializer.cs: New Fx 2.0 class for AppDomain.
	* AppDomainManager.cs: New Fx 2.0 class for AppDomain.
	* ApplicationActivator.cs: New Fx 2.0 class for AppDomain.
	* ApplicationId.cs: New Fx 2.0 class.
	* ApplicationIdentity.cs: Fixed ToString.
	* DomainManagerInitializationFlags.cs: New Fx 2.0 flags for AppDomain.

2004-08-05  Sebastien Pouliot  <sebastien@ximian.com>

	* AppDomain.cs: Added a new icall, getDomainByID, to get the an 
	AppDomain using it's Id. Completed SetAppDomainPolicy.
	* Environment.cs: Bumped mono_corlib_version to 23.

2004-08-02  Martin Baulig  <martin@ximian.com>

	* DateTime.cs, TimeSpan.cs, Guid.cs, Version.cs: Implement IComparable<T>.

2004-07-29  Atsushi Enomoto  <atsushi@ximian.com>

	* Environment.cs : GacPath on windows is based on mscorlib.dll, and
	  now its location is changed.

2004-07-21  Lluis Sanchez Gual  <lluis@novell.com>

	* Environment.cs: Return the MS.NET 2.0 beta1 runtime version for the
	  NET_2_0 profile.
	
2004-07-18  Martin Baulig  <martin@ximian.com>

	* Array.cs: Ben Maurer implemented all the new generic methods
	here :-)

2004-07-17  Martin Baulig  <martin@ximian.com>

	* Decimal.cs: Implement IComparable<Decimal>.

2004-07-17  Martin Baulig  <martin@ximian.com>

	* Byte.cs, Int16.cs, Int32.cs, Int64.cs, SByte.cs, String.cs,
	UInt16.cs, UInt32.cs, UInt64.cs: Implement IComparable<T>.	

2004-07-13  Sebastien Pouliot  <sebastien@ximian.com>

	* ActivationContext.cs: New class in Fx 2.0. Required for 
	System.Security.Policy.
	* ApplicationIdentity.cs: New class in Fx 2.0. Required for 
	System.Security.Policy.
	* IApplicationDescription.cs: New interface in Fx 2.0. Required for 
	System.Security.Policy.
	* IHostContext.cs: New interface in Fx 2.0. Required for 
	System.Security.Policy.

2004-07-12  Geoff Norton <gnorton@customerdna.com>

	* DateTime.cs: Patch for bug #61112.  Our DateTime wasn't roundtripping over timezone
	  boundaries properly.  This patch checkes ToLocalTime() to see if we're tripping over a boundary
	  and will add/subtract the hour if needed

2004-07-07  Geoff Norton <gnorton@customerdna.com>

	* Monotype.cs: Patch for bug #58844.  Dont throw exceptions right away;
	  pass through all the possibly BindingInfo's and keep a bool value as to the type
	  of exception we might need to throw;

2004-07-07  Geoff Norton <gnorton@customerdna.com>

	* Patch to fix bug #58973

2004-07-02  Jackson Harper  <jackson@ximian.com>

	* PlatformID.cs: New 2.0 values.
	
2004-06-25  Ben Maurer <bmaurer@ximian.com>
	
	* Environment.cs: GetFolderPath has new behavior. r=miguel

2004-06-23  Sebastien Pouliot  <sebastien@ximian.com>

	* DateTime.cs: Throw ArgumentOutOfRangeException if the year is
	bigger than 9999. Fix bug #41845.
	* FloatingPointFormatter.cs: Applied correction from Jon Skeet on
	the "R"eversible format for negative numbers.

2004-06-21  Jackson Harper  <jackson@ximian.com>

	* Decimal.cs: Make sure to use invariant culture when parsing
	floats stringified with the invariant culture. Patch by Rodrigo
	B. de Oliveira.
	
2004-06-19  Atsushi Enomoto  <atsushi@ximian.com>

	* FloatingPointFormatter.cs : Literal string should be kept in the
	  output.

2004-06-18  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : Concatenating whitespace removal was not working fine.
	  Modified FormatException message (1 cent kindness).

2004-06-18  Ben Maurer  <bmaurer@ximian.com>
	
	* Action.cs, ArraySegment.cs, Comparison.cs, Converter.cs, Predicate.cs:
	new generics classes
	* IComparable.cs: add the new <T> version.
	* EventHandler.cs: new <T> version.
	
2004-06-18  Dick Porter  <dick@ximian.com>

	* String.cs: The icall can cope with embedded \0 now.

2004-06-18  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs :
	  - Added new common pattern "yyyy/M/dZ"
	  - empty string should not be compared in _ParseEnum()
	  - Use culture independent string comparison in _ParseString()
	  - Whitespace removal should be checked after '..' token check (some
	    pattern such like es-ES LongDatePattern contains spaces in '..').
	  - formats null check should be done (to throw ArgumentNullException)
	    in ParseExact().
	  - When specified one character format, dates are incorrectly regarded
	    as to use invariant culture.

2004-06-18  Gert Driesen <drieseng@users.sourceforge.net>

        * ArgIterator.cs: changed layout to Auto
        * DateTime.cs: changed layout to Auto

2004-06-18  Gert Driesen <drieseng@users.sourceforge.net>

	* DateTime.cs: CRLF to LF

2004-06-17  Sebastien Pouliot  <sebastien@ximian.com>

	* Decimal.cs: Fixed regression in System.Data caused by the recent 
	changes. Adapted (and moved) the code to correct the scale from 
	SqlMoney. Removed unused (and unusable) IsOne and fixed IsZero (where
	scale has no importance).

2004-06-17  Lluis Sanchez Gual  <lluis@ximian.com>

	* Activator.cs: In CreateInstance(), use Public|Instance if access binding
	  attributes are omitted.

2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : GetDateTimeFormats(char, IFormatProvider) should also
	  check if the format character is valid.

2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : AddDays(double) rounds the input.

2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : Incorrect maxvalue comparison in ToUniversalTime().
	  Fixed ToLocalTime() as well, but it does check range for MinValue.

2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : Added overflow check in ToUniversalTime() and
	  ToLocalTime(). Fixed bug #60253.

2004-06-16  Sebastien Pouliot  <sebastien@ximian.com>

	* FloatingPointFormatter.cs: Implemented "R" format using Jon Skeet
	source code (with permission). Fix (biggest) part of bug #60110.
	http://www.yoda.arachsys.com/csharp/floatingpoint.html

2004-06-15  Sebastien Pouliot  <sebastien@ximian.com>

	* Decimal.cs: Fixed scale after Round (a different scale is correct 
	from a math point of view but affect the string representation of the
	value). Note: other operations also have scale problems!
	* DecimalFormatter.cs: Fixed FormatGeneral to match Fx 1.1 output.
	* FloatingPointFormatter.cs: Fixed ToString which doesn't use banker's
	rounding (which is the rounding provided by Math.Round). This fix bug
	#60111. The code (new Round methods) should be moved elsewhere (as it
	may also be required elsewhere) post Mono 1.0.

2004-06-15  Gert Driesen <drieseng@users.sourceforge.net>

	* AppDomainSetup.cs: added TODO for serialization
	* ExecutionEngineException.cs: added missing serialization ctor
	* InvalidProgramException.cs: added missing serialization ctor
	* MulticastNotSupportedException.cs: added missing serialization ctor
	* ObsoleteAttribute.cs: fixed serialization compatibility with MS.NET
	* Random.cs: fixed serialization compatibility with MS.NET

2004-06-15  Paolo Molaro <lupus@ximian.com>

	* Type.cs: removed unused (and non-existing) icall type_is_instance.

2004-06-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Environment.cs: use internalGetHome instead of getting "HOME" as
	that variable may not be defined.

2004-06-14  Sebastien Pouliot  <sebastien@ximian.com>

	* TimeSpan.cs: Fixed timespan with large values for hours or minutes
	(overflow is only checked for days but can also occurs in hours and
	minutes which uses Int32 when multiplying). The new results match MS
	implementation.

2004-06-14  Atsushi Enomoto  <atsushi@ximian.com>

	* FloatingPointFormatter.cs : Recognize '%' and '\u2030' and replace
	  them with matching NumberFormatInfo properties.

2004-06-14  Atsushi Enomoto  <atsushi@ximian.com>

	* Double.cs : Use IFormatProvider.GetFormat() instead of literal '-'.
	* FloatingPointFormatter.cs :
	  Use NumberFormatInfo.NegativeSign. This change saves many XSLT test
	  failures.
	  Format Permille pattern (It is undocumented but actually available,
	  and used in xsl:format-number).

2004-06-14  Raja R Harinath  <rharinath@novell.com>

	* Console.cs (Console.Write, Console.WriteLine): Disable __arglist
	version with BOOTSTRAP_WITH_OLDLIB.
	* String.cs (STring.Concat): Likewise.

2004-06-13  Atsushi Enomoto  <atsushi@ximian.com>

	* FloatingPointFormatter.cs :
	  - Don't format more than 15 fraction digits. Don't report to Pedro
	    directly (removing the error message with his concent).
	  - When format string starts with '.', it means integral part format 
	    is not specified. Ignore '.' characters after the first
	    appearance. Fixed bug #59890.
	  - 0.0 is formatted only before the third ';' appearance.

2004-06-11  Sebastien Pouliot  <sebastien@ximian.com>

	* DateTime.cs: Added a AddRoundedMilliseconds which use the "old Mono"
	rounding logic which worked for FromOADate (while the newer didn't).
	* TimeSpan.cs: Now throw an OverflowException when the timespan is
	over MaxValue or under MinValue.

2004-06-11  Martin Baulig  <martin@ximian.com>

	* Console.cs (Write, WriteLine): Implemented the varargs versions.

2004-06-11  Martin Baulig  <martin@ximian.com>

	* String.cs (Concat): Implemented the varargs version.

2004-06-10  Sebastien Pouliot  <sebastien@ximian.com>

	* Decimal.cs: Hacked the Parse method to allow the runtime C code to
	decode it properly (i.e. matching MS results). Fixed the Round method
	for negative decimal numbers (moved code from Math.cs).
	* Math.cs: Now use Decimal class for Round(Decimal,int). Required to
	fix a bug when rounding a negative decimal.

2004-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* AppDomain.cs: set the _principal to null when changing the policy.
	* Console.cs: remove ClsCompliant attribute from a method marked as
	internal and added comment.

2004-06-10  Gert Driesen <drieseng@users.sourceforge.net>

	* Delegate.cs: marked protected fields private to match public
	API of MS.NET, marked DynamicInvokeImpl and GetMethodImpl
	protected to fix public API
	* Enum.cs: marked ctor protected to match public API of MS.NET
	* MulticastDelegate.cs: marked DynamicInvokeImpl protected to
	match public API of MS.NET

2004-06-10  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs : Added more common patterns.

2004-06-09  Sebastien Pouliot  <sebastien@ximian.com>

	* Decimal.cs: Fixed banker rounding by calling Math.Round. This won't
	be a performance winner (the actual Math code has a note to wait a
	better Decimal implementation) but it returns the correct results
	(without adding new code in corlib or the runtime). Fix #37744.

2004-06-09  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs :
	  - A bunch of fixes (patch by Steven Brown). Fraction seconds are 
	    now represented as double. Strict token check for 'Z'.
	  - Pattern validity check in GetDateTimeFormats(char).
	  - Fixed pattern "yyyy/M/d HH:mm:ss".

2004-06-09  Sebastien Pouliot  <sebastien@ximian.com>

	* Decimal.cs: Fixed remainder (and optimized some cases not to call 
	unmanaged code). Simplified divide. Removed workaround for bug #59793.
	Fixed GetHashCode to return different result for X and -X.

2004-06-08  Atsushi Enomoto  <atsushi@ximian.com>

	* DateTime.cs :
	  - Now re-checked all common format patterns. They should be tried
	    with both current culture and invariant culture. Since '/' covers
	    '-', removed extraneous patterns. Added more common patterns
	    such as "yyyy-MM-dd" and X509Certificate pattern (it is valid
	    only after NET_1_1). Commented out 1 character format patterns.
	  - The format patterns we should try should not be obtained by
	    GetAllDateTimePatterns(). Just use 'd', 'D', 't', 'T', ... (one
	    character patterns), to handle UTC correctly. Examined patterns
	    are changed, to 1) common patterns with specified (or current)
	    culture, 2) common patterns with invariant, 3) The above "one
	    character patterns" with specified (or current) culture.
	  - When trying to parse some kind of patterns such as RFC1123, 
	    always use invariant DateTimeFormatInfo so that they can avoid
	    parsing with culture-dependent calendar.
	  - Check "GMT" only when doing Parse(). Don't it when ParseExact().
	  - Removed extraneous '-' case. It is not special one.
	  - When ParseExact(), allow only '/' for '/' pattern character.
	  - When Parse(), allow any non-letter & non-number characters.
	  - When pattern is not fully parsed, reject that format.
	  - Added "exact" parameter to some ParseExact().
	  - RFC1123 pattern is (again) now parsed in local time. I regressed
	    some problems in previous fix.

2004-06-08  Sebastien Pouliot  <sebastien@ximian.com>

	* Decimal.cs: Fixed cast to integer types to truncate (not round) the
	value.

2004-06-07  Duncan Mak  <duncan@ximian.com>

	* Exception.cs (Source): This can return null.

2004-06-07  Sebastien Pouliot  <sebastien@ximian.com>

	* DateTime.cs: Fixed FromFileTime for negative values. Fixed 
	constructor to limit range of milliseconds from 0,999. Fixed
	ToType method to work for object, string and DateTime.

2004-06-07  Sebastien Pouliot  <sebastien@ximian.com>

	* DateTime.cs: Fixed OLE Automation date conversions: timezone 
	insensitive, wrong exception in FromOADate, handling of Min/Max 
	values, negative doubles where integer part is negative but 
	decimals are positive! Charming format ;-)

2004-06-06  Sebastien Pouliot  <sebastien@ximian.com>

	* String.cs: Fixed Join in case separator parameter is null.
	* TimeSpan.cs: Cache format errors during parsing and throw 
	FormatException only if there was no overflow.

2004-06-06  Gert Driesen <drieseng@users.sourceforge.net>

	* MonoCustomAttrs.cs: fixed issue where an empty array was 
	returned when GetCustomAttributes was invoked with null
	attribute type and there was only one result

2004-06-06  Sebastien Pouliot  <sebastien@ximian.com>

	* Decimal.cs: Fixed ToString(String.Empty) to default ("G").
	* Int16.cs: Fixed ToString(String.Empty) to default ("G").
	* Int32.cs: Fixed ToString(String.Empty) to default ("G").
	* Int64.cs: Fixed ToString(String.Empty) to default ("G").
	* SByte.cs: Fixed ToString(String.Empty) to default ("G").
	* UInt16.cs: Fixed ToString(String.Empty) to default ("G").
	* UInt32.cs: Fixed ToString(String.Empty) to default ("G").
	* UInt64.cs: Fixed ToString(String.Empty) to default ("G").

2004-06-05  Sebastien Pouliot  <sebastien@ximian.com>

	* Convert.cs: Fixed the convertion of negative integers (byte, short, 
	int and long) into string in a specific base (2, 8, 10 or 16).

2004-06-04  Sebastien Pouliot  <sebastien@ximian.com>

	* Math.cs: Fixed IEEERemainder to return -0 (0x8000000000000000) when
	the dividend is negative and the result is 0 (remainder).

2004-06-03  Sebastien Pouliot  <sebastien@ximian.com>

	* Delegate.cs: Fix the NullReferenceException in Combine(Delegate[]).

2004-06-02  Sebastien Pouliot  <sebastien@ximian.com>

	* TimeSpan.cs: Fixed overflow issues when delaing with big (days) time
	spans. Fixed parsing when only days are presents in the string (which
	should be illegal according to the documentation but is supported).

2004-06-01  Sebastien Pouliot  <sebastien@ximian.com>

	* TimeSpan.cs: Fixed exceptions in FromXXX methods as they are 
	somewhat different from the documentation.

2004-06-01  Gert Driesen <drieseng@users.sourceforge.net>

	* Type.cs: added missing attributes on InvokeMember

2004-06-01  Miguel de Icaza  <miguel@ximian.com>

	* String.cs: Flag concat with four arguments internal. 

2004-05-31  Sebastien Pouliot  <sebastien@ximian.com>

	* Array.cs: Fixed legal case where value is null.
	* Byte.cs: Fixed ToString when format is an empty string (use "G").
	* Guid.cs: Renamed private fields (and changed some to signed) to 
	match MS implementation and allow serialization to work. Fix 
	bug #59113.

2004-05-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* DateTime.cs: adjust milliseconds for fraction specifier ('f').

2004-05-30  Miguel de Icaza  <miguel@ximian.com>

	* Console.cs: Remove *again* the version of WriteLine with four
	arguments;  That should *not* be added.  

	Flag it as internal as people migrate their code.

2004-05-29  Sebastien Pouliot  <sebastien@ximian.com>

	* Convert.cs: Fixed ToSByte(string,IFormatProvider) to throw 
	ArgumentNullException (only case, all other returns 0). Fixed exception
	reporting for hex prefix only strings. Fixed ChangeTo where null could
	be misinterpreted between null and Empty.

2004-05-28  Sebastien Pouliot  <sebastien@ximian.com>

	* Convert.cs: Fixed integer parsing for special cases (0x, 0X for base
	16), non-base 10 negative numbers ... see new unit tests. Fixed the 
	case when we parse Int64.MinValue (positive doesn't fit a signed long).

2004-05-28  Jackson Harper  <jackson@ximian.com>

	* Environment.cs: Increment version number.
	
2004-05-28  Zoltan Varga  <vargaz@freemail.hu>

	* AppDomain.cs (Load): Try loading from assemblyRef.CodeBase if exists.
	Fixes #59189.

2004-05-28  Atsushi Enomoto <atsushi@ximian.com>

	* DateTime.cs : I reverted my fix by accident :(

2004-05-28  Atsushi Enomoto <atsushi@ximian.com>

	* DateTime.cs :
	  - In ToString(), Don't use culture-dependent daynames to format
	    Universal/RFC1123 date/time. Also, use FullDateTimePattern for 'U'.
	  - Fixed GetDateTimeFormats () that generated incorrect 'U' value 
	    (since the format string is the same as 'F').

2004-05-28  Atsushi Enomoto <atsushi@ximian.com>

	* DateTime.cs : don't adjust utc value in ToString(). It must output
	  the same time value, just adding 'Z' for UTC.

2004-05-28  Atsushi Enomoto <atsushi@ximian.com>

	* DateTime.cs : in 'Z' case, remove the 'Z' char from input before
	  proceeding.

2004-05-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* AppDomainSetup.cs: InitAppDomainSetup is not needed now.

2004-05-27  Sebastien Pouliot  <sebastien@ximian.com>

	* Byte.cs: Fixed parsing for "-0" which is valid for unsigned types.
	* Convert.cs: Convert with a base parameter cannot parse negative 
	string numbers, even "-0".
	* UInt16.cs: Fixed parsing for "-0" which is valid for unsigned types.
	* UInt32.cs: Fixed parsing for "-0" which is valid for unsigned types.
	* UInt64.cs: Fixed parsing for "-0" which is valid for unsigned types.

2004-05-27  Atsushi Enomoto <atsushi@ximian.com>

	* DateTime.cs : 
	  - Added "yyyy/MM/dd HH:mm:ss 'GMT'" and "yyyy-MM-dd HH:mm:ss 'GMT'"
	    to common formats (yes, I know it is nothing more than hack)
	  - Fixed some GetDateTimeFormats() that just returned patterns.
	  - For InvariantCulture, now try both supported formats and our
	    predefined formats.
	  - It was accepting incorrectly extraneous characters. That caused
	    some UTC/non-UTC bug.
	  - RFC1123 string should return universal time. Uncomment again (the
	    problem should went away because of the extra characters fix above.

	    With some of the changes above, fixed bug #47720.

2004-05-27  Atsushi Enomoto <atsushi@ximian.com>

	* DateTime.cs : quick revert 'Z' support for certificate verifications.

2004-05-26  Sebastien Pouliot  <sebastien@ximian.com>

	* Array.cs: Removed duplicate condition if LastIndexOf.

2004-05-26  Atsushi Enomoto <atsushi@ximian.com>

	* DateTime.cs :
	  - Added "yyyy-MM-dd HH:mm:ss" to "compatible patterns".
	    (Fixed bug #58938.)
	  - As a quick remedy to accept more patterns, Parse() now also tries
	    InvariantInfo patterns (this is because we have no more than one
	    pattern for each pattern component.)
	  - In _DoParse(), 'Z' should not be read as timezone specifier. Some
	    culture uses 'Z' as AM/PM designer, and it should be recognized as
	    part of the UTCpattern (if it actually UTC pattern for the culture
	    contains 'Z').

2004-05-26  Gert Driesen (drieseng@users.sourceforge.net)

	* MonoCustomAttrs.cs: Fixed issue with AllowMultiple, as MS
	seems to allow multiple attributes with AllowMultiple at
	runtime.

2004-05-26  Sebastien Pouliot  <sebastien@ximian.com>

	* Byte.cs: Throw an OverflowException for negative numbers.
	* Convert.cs: Accept 0x and 0X as prefix when parsing base16 strings.
	* Environment.cs: Bumped mono_corlib_version to 20 (rng interface).

2004-05-25  Sebastien Pouliot  <sebastien@ximian.com>

	* Array.cs: Fixed possible integer overflow.
	* BitConverter.cs: Fixed a possible integer overflow in ToString.
	* Guid.cs: Added an internal method to create a random Guid without
	using CryptoConfig (which is heavy on first use). This is only used
	in S.R.E.ModuleBuilder to speedup MCS compilation.
	* String.cs: Fixed reported exception for PadLeft|Right. Fixed 
	possible integer overflow in methods that takes index and count
	as parameters.

2004-05-25  Zoltan Varga  <vargaz@freemail.hu>

	* String.cs: Add new Strcpy icalls which take a char array as 
	parameter.

2004-05-25  Atsushi Enomoto <atsushi@ximian.com>

	* DateTime.cs : added more invariant format patterns. This should
	  really fix bug #57656.

2004-05-25 14:14 CET Patrik Torstensson	<totte@hiddenpeaks.com>

	* BitConverter.cs (ToBoolean): Return true or false instead
	of unsafe returing byte as bool. Fixes bug #58874.

2004-05-25  Atsushi Enomoto <atsushi@ximian.com>

	* DateTime.cs : In ToString(string, IFormatProvider), use "G" if
	  string format argument is null.

2004-05-25  Lluis Sanchez Gual  <lluis@ximian.com>

	* Version.cs: Rename of data fields to match those in Microsoft.NET.
	  Patch by PAF@design.ru.

2004-05-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* DateTime.cs: allow double quotes in the formats. Don't set
	next_not_digit to true in presence of single or double quotes. Patch by
	Martin Probst.

2004-05-24  Zoltan Varga  <vargaz@freemail.hu>

	* AppDomainSetup.cs (InitAppDomainSetup): This one returns void.

2004-05-23  Sebastien Pouliot  <sebastien@ximian.com>

	* Array.cs: Fixed exception when we try to Clear outside bounds.
	* Boolean.cs: Fixed Equals for True!=True (see bugzilla #58874).
	* BitConverter.cs: Fixed negative index and integer overflow in
	To... methods.
	* Buffer.cs: Fixed integer overflow in BlockCopy.

2004-05-22  Sebastien Pouliot  <sebastien@ximian.com>

	* Array.cs: Clear can now work on multidimentional arrays.
	* IntPtr.cs: We now only accept 32bits values in the long constructor
	unless we're on a 64 bits machine.
	* UIntPtr.cs: We now only accept 32bits unsigned values in the ulong 
	constructor unless we're on a 64 bits machine.

2004-05-22  Duncan Mak  <duncan@ximian.com>

	* Convert.cs: The file was mostly in DOS endings already, for the
	sake of consistency, converted it all to DOS endings.
	(ToType): When value is null, immediately return null and don't
	ever throw a NullReferenceException. When conversionType is null,
	throw an InvalidCastException. Give a better error message when
	attempting to convert to a DBNull as well.

2004-05-21  Sebastien Pouliot  <sebastien@ximian.com>

	* Decimal.cs: Fixed To... methods that needs to trunk the integer part
	of Decimal (and not use the banker's rounding like Convert.To...).
	* Single.cs: Fixed CompareTo and Equals (copied fix from Double) wrt
	to NaN compares (see new unit tests).

2004-05-20  Sebastien Pouliot  <sebastien@ximian.com>

	* Convert.cs: Added checks for integer overflow for From|ToBase64Char.
	Also fixed the case where wide (16 bits) characters were converted to 
	bytes.

2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)

        * ThreadStaticAttribute.cs
        * ContextStaticAttribute.cs
        * FlagsAttribute.cs
        * ObsoleteAttribute.cs : now that Inherited is false by
        default on AttributeUsageAttribute (as it should be) we
        need to explicitly set Inherited to false for those
        attributes should it be be false.

2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)

        * AttributeUsageAttribute.cs: Inherited property should be
        true by defaultrs.cs: respect Inherited property, and

2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)

	* MonoCustomAttrs.cs: respect Inherited property, and
	AllowMultiple property of a CustomAttribute. This fixes
	a major issue we had with respect to custom attributes.

2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)

	* MonoType.cs: throw ArgumentNullException when type parameter in
	GetCustomAttributes(Type, bool) is null

2004-05-18  Sebastien Pouliot  <sebastien@ximian.com>

	* Buffer.cs: Added checks for null source and destination. Fix failing
	CryptoStream unit test.
	* Guid.cs: Fixed thread-safety issue. Simplified implementation to use
	pseudo-random numbers to generate GUIDs (as per section 3.4 of the 
	spec). This removes the TODO to get the computer MAC address and
	the chances to get a duplicate GUID (across different machines).

2004-05-17  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* TimeSpan.cs: Only catch expected exceptions, if we get other exceptions
	  than OverflowExceptions then something went wrong internally

2004-05-17  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* Char.cs: Fix long standing bug with ToLower/ToUpper not being
	  culture - sensitive

2004-05-14  Zoltan Varga  <vargaz@freemail.hu>

	* Buffer.cs: Optimize BlockCopy.

	* Environment.cs: Bump corlib version.

2004-05-14  Atsushi Enomoto <atsushi@ximian.com>

	* __ComObject.cs : This class is not regarded as CLSCompliant by csc.
	  See also bug #58478.

2004-05-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* AppDomainSetup.cs: don't throw an exception if dynamic_base has not
	been set. Just return null as MS. Fixes bug #58120.

2004-05-14  Marek Safar  <marek.safar@seznam.cz>

	* Boolean.cs, Byte.cs, Char.cs, DBNull.cs, DateTime.cs,
	  Decimal.cs, Double.cs, Enum.cs, Int16.cs, Int32.cs,
	  Int64.cs, IntegerFormatter.cs, SByte.cs, Single.cs,
	  String.cs, UInt16.cs, UInt32.cs, UInt64.cs: Removed
	  useless [CLSCompliant (false)]


2004-05-13  Sebastien Pouliot  <sebastien@ximian.com>

	* __ComObject.cs: To please corcompare (no implementation).

2004-05-13  Zoltan Varga  <vargaz@freemail.hu>

	* Environment.cs: Bump corlib version.

2004-05-13  Sebastien Pouliot  <sebastien@ximian.com>

	* Environement.cs: Removed two security attributes for CurrentDirectory
	that weren't documented (and anyway we don't support them).

2004-05-11  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* Char.cs: Fix exceptions

2004-05-11  Lluis Sanchez Gual  <lluis@ximian.com>

	* MissingMemberException.cs: Fix in serialization constructor.

2004-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Environment.cs: GetGacPath return value is resolved at runtime on
	windows.

2004-05-07  Sebastien Pouliot  <sebastien@ximian.com>
 
	* Convert.cs: ToBase64CharArray method was depending on a bug in 
	S.S.C.ToBase64Transform class to work. Added an internal method to 
	provide the same functionality (multiple block processing).

2004-05-06  Jackson Harper  <jackson@ximian.com>

	* Environment.cs: Make $HOME the personal directory.

2004-05-06  Sebastien Pouliot  <sebastien@ximian.com>
 
	* Convert.cs: ToBase64String method was depending on a bug in 
	S.S.C.ToBase64Transform class to work. Added an internal method to 
	provide the same functionality (multiple block processing).

2004-05-05  Sebastien Pouliot  <sebastien@ximian.com>
 
 	* Environment.cs: Completed OSVersion property.
 	* Version.cs: Added internal CreateFromString() to "try" to build the
 	best version number form the specified string.
 
2004-05-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* TimeSpan.cs: Redid a lot of stuff in TimeSpan from scratch.
	  Fixes several potential bugs and makes things way faster.

2004-05-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* TimeSpan.cs: Formatting changes

2004-04-29 Ben Maurer  <bmaurer@users.sourceforge.net>

	* Activator.cs: change _flags to a const.
	* IntegerFormatter.cs: make tables readonly.
	* Convert.cs: tables readonly
	* DateTime.cs: ditto.
	* IntPtr.cs: avoid a cctor.

2004-04-29  Jackson Harper  <jackson@ximian.com>

	* MonoType.cs: 
	* Type.cs: NET_2_0 now instead of 1_2. 
	
2004-04-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Environment.cs: implemented GetLogicalDrives.

2004-04-28  Miguel de Icaza  <miguel@ximian.com>

	* Applied patch from Atsushi Enomoto that allows Synchronized
	writers to have a `dont close' flag, this fixes 52094

2004-04-29  Lluis Sanchez Gual  <lluis@ximian.com>

	* MonoCustomAttrs.cs, MonoType.cs: Property.GetGetMethod() does not
	return the method if it is private (it did until now because of a
	bug). Make sure it works as it worked before the fix.
	* Type.cs: Implemented FilterAttribute delegate.

2004-04-28  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* IntegerFormatter.cs: Prevent the use of the explicit static constuctor

2004-04-27  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* IntegerFormatter.cs: Made functions internal (needed by other patches)

2004-04-27  Lluis Sanchez Gual  <lluis@ximian.com>

	* DateTime.cs: TODO cleaning.
	* Delegate.cs: GetObjectData should be virtual.
	* IntegerFormatter.cs: Method factorization. I don't want to fix bugs in
	  30 methods almost identical.
	* MulticastDelegate.cs: Implemented GetObjectData.
	
2004-04-26  Jackson Harper  <jackson@ximian.com>

	* Environment.cs: Things going bump in the night.

2004-04-25  Miguel de Icaza  <miguel@ximian.com>

	* Convert.cs (toBase64Transform): Make private.

2004-04-25  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* Convert.cs:
	* Decimal.cs:
	* DecimalFormatter.cs:
	* FloatingPointFormatter.cs: Call invariant Char functions
	* Guid.cs: Call invariant Char and String functions
	* String.cs: Call invariant Char functions

2004-04-25  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* String.cs: Refactored the Invariant ToXXX into its own internal methods
	  so they are directly callable within corlib (can prevent early
	  construction of CultureInfo, InvariantCulture and related classes)

2004-04-24  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* String.cs: Managed impl. of Invariant parts of ToLower, ToUpper
	* Char.cs: Managed impl. of Invariant parts of ToLower, ToUpper

2004-04-24  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* String.cs: Check for null values

2004-04-23  Peter Bartok <pbartok@novell.com>

	* Environment.cs: GetLogicalDrives now returns "/" instead of null. Gonzalo
	  will do a better fix in the future, but this way apps can at least use it.

2004-04-23  Sebastien Pouliot  <sebastien@ximian.com>

	* Environment.cs: Better support for GetFolderPath (same results as MS 
	  on Windows).

2004-04-22  Lluis Sanchez Gual  <lluis@ximian.com>

	* Activator.cs: Removed TODOs for finished methods.
	* AppDomainSetup.cs: When setting a relative path to ApplicationBase, it
	  must be relative to the current directory, not the temp directory.
	  Implemented DynamicBase.
	* Convert.cs: No need to create a ToBase64Transform instance at every call
	  to ToBase64CharArray.
	* DateTime.cs: Implemented missing methods FromFileTimeUtc and 
	  ToFileTimeUtc.
	* Decimal.cs: Implemented FromOACurrency and ToOACurrency.
	* Delegate.cs: Removed class TODO.
	* IntegerFormatter.cs: Use Char.IsLetter and Char.IsDigit instead of ad-hoc
	  methods.
	* Type.cs: Removed TODOs for things already implemented.
	
2004-04-21  Lluis Sanchez Gual  <lluis@ximian.com>

	* Char.cs: Implemented culture-dependent ToLower and ToUpper methods.
	* MulticastDelegate.cs: Removed unused code.

2004-04-19  Lluis Sanchez Gual  <lluis@ximian.com>

	* AppDomain.cs: Implemented DynamicDirectory and SetDynamicBase.
	* Array.cs: Removed some TODOs in CreateInstance and IndexOf.
	* BadImageFormatException.cs: TODO reformat.
	* DateTime.cs: Implemented GetDateTimeFormats and GetDateTimeFormats.
	* DelegateSerializationHolder.cs: Made class internal.
	* Enum.cs: Removed TODO for localization, since this is something that has
	  to be done for all classes.
	* Environment.cs: Removed TODO.
	* Exception.cs: Changed ToString to use StringBuilder.
	* MonoDummy.cs: Made class internal.
	* UnitySerializationHolder.cs: Added support for modules.

2004-04-16  David Sheldon <dave-mono@earth.li>

	* DecimalFormatter.cs: Don't append a decimal point after the
	  end of a number. ((decimal)1).ToString("P0") should be "100 %", not
	  "100. %"

2004-04-09  Miguel de Icaza  <miguel@ximian.com>

	* OutOfMemoryException.cs: Removed the call to Locale.GetText from
	  this.

2004-04-10  Gert Driesen (drieseng@users.sourceforge.net)

   	* MonoDummy.cs: added MonoTODO to make sure we remove this class
	  when its no longer needed

2004-04-09  David Sheldon <dave-mono@earth.li>

	* Convert.cs: Allow + signs in strings for ToInt32, and
	  - if it is base 10.

2004-04-08  Atsushi Enomoto  <atsushi@ximian.com>

	* Nullable.cs : usingdecl should also be conditional.

2004-04-07  Martin Baulig  <martin@ximian.com>

	* Nullable.cs: New file.

2004-04-07  Martin Baulig  <martin@ximian.com>

	* Type.cs (Type.GetGenericArguments): Make this abstract.

2004-04-07  Jackson Harper  <jackson@ximian.com>

	* Environment.cs: Increase corlib version number.
	
2004-04-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Environment.cs:
	(ExpandEnvironmentVariables): on windows, env. vars. are case
	insensitive.

2004-04-06  Sebastien Pouliot  <sebastien@ximian.com>

	* AppDomain.cs: Added static to [ThreadStatic] _principal field. 
	Removed	[ThreadStatic] for _principalPolicy (not required).

2004-04-06  Miguel de Icaza  <miguel@ximian.com>

	* Guid.cs: Flag as Sequential.

2004-04-02  Dick Porter  <dick@ximian.com>

	* String.cs: More sanity checks in Replace().  Fixes bug 55822.

2004-04-02  Sebastien Pouliot  <sebastien@ximian.com>

	* Environment.cs: Implement ExpandEnvironmentVariables static method.
	Now call the runtime to get the username (fix #56144).

2004-04-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MonoType.cs: AssemblyQualifiedName now displays culture, version...
	Fixes bug #56341.

2004-03-29  Miguel de Icaza  <miguel@ximian.com>

	* Console.cs: If we fail to open stdin/stdout/stderr, create
	readers with a NullStream.  This can happen if our caller does not
	setup stdin/stoud/stderr file handles.  #56158 exposed this, but
	it will happen elsewhere.

2004-03-29  Lluis Sanchez Gual <lluis@ximian.com>

	* Convert.cs: In ToSingle(double), removed checks for Single.MaxValue
	and Single.MinValue. MS.NET don't do it. This fixes bug #56005.
	* Guid.cs: Added support for guid strings in the "N" and "P" formats in
	  the constructor. This fixes bug #54019.

2004-03-23  Lluis Sanchez Gual <lluis@ximian.com>

	* FloatingPointFormatter.cs: Made the class thread safe. Had to move some
	  internal variables to structures that are moved around methods.
	  Factorized some common formatting code into FormatNumberInternal.
	  
2004-03-23  Dick Porter  <dick@ximian.com>

	* DateTime.cs: Allow any character for DateSeparator when parsing,
	except TimeSeparator, a digit or a letter.  Fixes bug 54047.  Also
	deleted the previous fix for 54721, because this covers it too.
	
2004-03-23  Dick Porter  <dick@ximian.com>

	* DateTime.cs: Check the date string for too many digits when
	parsing.  Fixes bugs 53023 and 53025.

2004-03-22  Dick Porter  <dick@ximian.com>

	* String.cs: Use the provider when converting strings to other
	types.

	* DateTime.cs: Add MM-dd-yyyy to the list of standard date parsing
	formats.  Fixes bug 54721.

2004-03-22  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* Console.cs: Styled, optimized calls
	* CrossAppDomainDelegate.cs: Small header fix
	* Buffer.cs: Style, improve errors
	* BitConverter.cs: Style, improve errors, remove obsolete comment
	* Attribute.cs: Style, improve errors, small fix
	* Array.cs: Style, improve errors, small fix, added TODOs
	* Activator.cs: Style, localized errors, added error checks
	* Byte.cs: Style, localized errors, fixed wrong exception parameters
	* Char.cs: Style
	* Boolean.cs: Style
	* AppDomainSetup.cs: Style
	* AppDomain.cs: Style, implemented two methods (redirect)

2004-03-21  Jackson Harper  <jackson@ximian.com>

	* FloatingPointFormatter.cs: Set precision from number format info
	when it is not specified. This fixes bug #54983.
	
2004-03-18  Nick Drochak <ndrochak@ieee.org>

	* Math.cs: Use IsNaN() method not "x == NaN".

2004-03-16  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* EntryPointNotFoundException.cs
	* DuplicateWaitObjectException.cs
	* DllNotFoundException.cs
	* DivideByZeroException.cs
	* ContextMarshalException.cs
	* CannotUnloadAppDomainException.cs
	* BadImageFormatException.cs
	* ArrayTypeMismatchException.cs
	* ArithmeticException.cs
	* ArgumentOutOfRangeException.cs
	* ArgumentNullException.cs
	* ArgumentException.cs
	* ApplicationException.cs
	* AppDomainUnloadedException.cs: Added missing HResult overrides

	* BadImageFormatException.cs: Improved/ Fixed implementation

2004-03-15  Sebastien Pouliot  <sebastien@ximian.com>

	* Random.cs: Corrected random value when Next is called with a 
	negative value. Testing indictae that our results aren't exactly the 
	same as MS, we have a +/- 1 (probably rounding errors due to 
	different implementation).

2004-03-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Environment.cs: updated corlib version.

2004-03-15  Lluis Sanchez Gual <lluis@ximian.com>

	* Boolean.cs, Byte.cs, Char.cs, Double.cs, Int16.cs, Int32.cs, Int64.cs,
	  SByte.cs, Single.cs, UInt16.cs, UInt32.cs, UInt64.cs: Renamed internal
	  field "value" to "m_value", so it is interoperable with MS.NET when 
	  serializing and deserializing data. Based on the patch from Daniel
	  Keep.

2004-03-14  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* TypeInitializationException.cs
	* SystemException.cs
	* StackOverflowException.cs
	* RankException.cs
	* OverflowExceptionException.cs
	* OutOfMemoryException.cs
	* NullReferenceException.cs
	* NotSupportedException.cs
	* NotFiniteNumberException.cs
	* InvalidOperationException.cs
	* InvalidCastException.cs
	* IndexOutOfRangeException.cs
	* FormatException.cs
	* ExecutionEngineException.cs: improved parameter names

2004-03-13  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* Enum.cs
	* EntryPointNotFoundException.cs
	* DuplicateWaitObjectException.cs
	* DoubleFormatter.cs
	* DllNotFoundException.cs
	* DivideByZeroException.cs
	* DelegateSerializationHolder.cs
	* Delegate.cs
	* DBNull.cs
	* ContextStaticAttribute.cs
	* ContextMarshalException.cs
	* ContextBoundObject.cs
	* CLSCompliantAttribute.cs
	* CharEnumerator.cs
	* CannotUnloadAppDomainException.cs
	* BadImageFormatException.cs
	* AttributeUsageAttribute.cs
	* AttributeTargets.cs
	* AsyncCallback.cs
	* AssemblyLoadEventHandler.cs
	* AssemblyLoadEventArgs.cs
	* ArrayTypeMismatchException.cs
	* ArithmeticException.cs
	* ArgumentOutOfRangeException.cs
	* ArgumentNullException.cs
	* ArgumentException.cs
	* ArgIterator.cs
	* ApplicationException.cs
	* AppDomainUnloadedException.cs
	* AppDomain.cs: Mono styled, fixed exceptions/ locales
	  removed excess usings

2004-03-10  Sebastien Pouliot  <sebastien@ximian.com>

	* Convert.cs: FromBase64 now ignore some characters (tab, LF, CR and
	spaces) which fixed #54939. Changed the way that the length is 
	validated (multiple of 4) because the ignored characters must not be
	included in the count.

2004-03-10  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* String.cs: Monostyled

2004-03-09  Jackson Harper  <jackson@ximian.com>

	* Char.cs: Only use a byte for numeric data.
	
2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* TypedReference.cs: Added missing Attributes
	* ParamArrayAttribute.cs: Small style fix
	* OperatingSystem.cs: Added .Net 1.1 member

2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* FieldAccessException.cs
	* FormatException.cs
	* InvalidCastException.cs
	* InvalidOperationException.cs
	* MemberAccessException.cs
	* MethodAccessException.cs
	* MissingFieldException.cs: Locale strings
	* MissingMemberException.cs: Locale strings
	* MissingMethodException.cs: Locale strings
	* NotFiniteNumberException.cs
	* NotImplementedException.cs
	* NotSupportedException.cs
	* NullReferenceException.cs
	* ObjectDisposedException.cs
	* OutOfMemoryException.cs
	* OverflowExceptionException.cs
	* PlatformNotSupportedException.cs
	* RankException.cs: Added missing HResult overrides

2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* RuntimeTypeHandle.cs
	* RuntimeMethodHandle.cs
	* RuntimeFieldHandle.cs: Implemented serialization (partially untested)

2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* EventArgs.cs
	* Exception.cs
	* ExecutionEngineException.cs
	* FieldAccessException.cs
	* FormatException.cs
	* GC.cs
	* Guid.cs
	* IndexOutOfRangeException.cs
	* IntPtr.cs
	* InvalidCastException.cs
	* InvalidOperationException.cs
	* InvalidProgramException.cs
	* IServiceProvider.cs
	* LoaderOptimization.cs
	* LoaderOptimizationAttribute.cs
	* MarshalByRefObject.cs
	* Math.cs
	* MemberAccessException.cs
	* MethodAccessException.cs
	* MissingFieldException.cs
	* MissingMemberException.cs
	* MissingMethodException.cs
	* MultiCastDelegate.cs
	* MulticastNotSupportedException.cs
	* NonSerializedAttribute.cs
	* NotFiniteNumberException.cs
	* NotImplementedException.cs
	* NotSupportedException.cs
	* NullReferenceException.cs
	* ObjectDisposedException.cs
	* ObsoleteAttribute.cs
	* OperatingSystem.cs
	* OutOfMemoryException.cs
	* OverflowExceptionException.cs
	* PlatformID.cs
	* PlatformNotSupportedException.cs
	* Random.cs
	* RankException.cs
	* ResolveEventArgs.cs
	* ResolveEventHandler.cs
	* RuntimeFieldHandle.cs
	* RuntimeMethodHandle.cs
	* RuntimeTypeHandle.cs: Mono styled, fixed exceptions/ locales
	  removed excess usings

2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* SystemException.cs: Exceptions set the HResult
	* TypeLoadException.cs: Exceptions set the HResult, fixed wrong exception usage
	* SByte.cs: Implemented two missing methods, fix wrong parameters for ArgumentNullException

2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* TypedReference.cs
	* TypeLoadException.cs
	* TypeInitializationException.cs
	* TypeCode.cs
	* TimeZone.cs
	* ThreadStaticAttribute.cs
	* SystemException.cs
	* STAThreadAttribute.cs
	* StackOverflowException.cs
	* SingleFormatter.cs
	* Single.cs
	* SerializableAttribute.cs: Mono styled, fixed exceptions/ locales
	  removed excess usings

2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* UnauthorizedAccessException.cs: Exceptions set the HResult
	* UInt64.cs: Implemented two missing methods
	* UInt32.cs: Fix wrong parameters for ArgumentNullException, simpler convert
	* UInt16.cs: Fix wrong parameters for ArgumentNullException, simpler convert

2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* WeakReference.cs
	* Void.cs
	* Version.cs
	* ValueType.cs
	* UnitySerializationHolder.cs
	* UnhandledExceptionEventHandler.cs
	* UnauthorizedAccessException.cs
	* UIntPtr.cs
	* UInt64.cs
	* UInt32.cs
	* UInt16.cs: Mono styled, Locale.GetText fixes, msg fixes

2004-03-04  Lluis Sanchez Gual <lluis@ximian.com>

	* Environment.cs: Bump corlib version.

2004-03-04  Jackson Harper  <jackson@ximian.com>

	* Char.cs: New managed implementation. Modified patch by Andreas Nahr.
	
2004-02-27  Lluis Sanchez Gual <lluis@ximian.com>

	* String.cs: Concat() fixed crash when one of the arguments is an object
	  whose ToString() method returns null.
	* TypeLoadException.cs: Added some serialization fiels, needed for
	  compatibility with MS.NET.

2004-02-23 Ben Maurer  <bmaurer@users.sourceforge.net>

	* String.cs (Equals): Speed up this method by avoiding Array
	 Bounds Checks and by comparing by 32 bit words rather than 16 bit chars.

	This gives between 0x (for 1 char) and >2x (for large strings)
	factor of improvement.

	A big thanks to Miguel, who suggested the integer compares.

2004-02-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MonoType.cs: use the binder in GetPropertyImpl.

2004-02-22  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* Math.cs: MonoStyled, replaced space with tabs,
	  speedup of some methods by avoiding method calls

2004-02-18  Atsushi Enomoto  <atsushi@ximian.com>

	* Char.cs : optimized IsSeparator(), IsWhiteSpace() and IsDigit().
	  (Moved from InternalCall to Managed code).

2004-02-17  Martin Baulig  <martin@ximian.com>

	* MonoType.cs (GetConstructors): Renamed the interncall to
	GetConstructors_internal(), made it internal and added a `Type
	reflected_type' argument to it.
	(GetEvents, GetFields): Likewise.
	(GetMethodsByName): Added `Type reflected_type' argument.
	(GetPropertiesByName): Likewise.

2004-02-16  Jackson Harper  <jackson@ximian.com>

	* FloatingPointFormater.cs: Allow precision to be up to the number
	of decimals without rounding.
	
2004-02-14  Zoltan Varga  <vargaz@freemail.hu>

	* Delegate.cs (Equals): Do not compare method_ptr, since it might
	point to a trampoline.

2004-02-12  Jackson Harper  <jackson@ximian.com>

	* AppDomainSetup.cs: If relative paths are used they should be
	rooted in the temp directory.
	
2004-02-11  Marek Safar  <marek.safar@seznam.cz>

        * Type.cs (FilterNameIgnoreCase_impl): Added extra check for speedup.

2004-02-10  Zoltan Varga  <vargaz@freemail.hu>

	* AppDomain.cs (Load): Check that assemblyRef.Name is not empty, to
	avoid an assert in the runtime.

2004-02-08  Duncan Mak  <duncan@ximian.com>

	* Convert.cs (ToType): Always let a Convert.ChangeType call
	succeed if the source object is already of the destination type.

	Patch by Ian MacLean (ianm@activestate.com).

2004-02-05  Sebastien Pouliot  <sebastien@ximian.com>

	* AppDomain.cs: Implemented SetPrincipalPolicy and SetThreadPrincipal.

2004-02-02  Zoltan Varga  <vargaz@freemail.hu>

	* Environment.cs: Bump corlib version.

2004-02-02  Sebastien Pouliot  <sebastien@ximian.ca>

	* DateTime.cs: Corrected support for "Z" in the mask (Parse). This
	fix bug #53461.

2004-01-27  Sebastien Pouliot  <spouliot@videotron.ca>

	* Exception.cs: Changed ToString to remove the \n when no stack trace
	is present (which fixed a unit test for SecurityException). Changed
	all \n to Environment.NewLine.

2004-01-27  Lluis Sanchez Gual <lluis@ximian.com>

	* ContextBoundObject.cs: Removed TODO.

2004-01-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* TimeSpan.cs: fixed bug #52075. Days (int) don't rely on TotalDays
	(double), which might round up.

2004-01-19  Jackson Harper <jackson@ximian.com>

	* FloatingPointFormatter.cs: Use the default decimal digits count
	if they are not specified. This fixes bug #52927.
	
2004-01-19  Zoltan Varga  <vargaz@freemail.hu>

	* Environment.cs: Bump version number.

2004-01-19  Lluis Sanchez Gual  <lluis@ximian.com>

	* Type.cs: Added internal call for IsInstanceOfType. The old implementation
	uses IsAssignableFrom(o.GetType()), which is not always valid for 
	transparent proxies (because GetType will not return the type of the remote
	object if its assembly is not present).

2004-01-18  David Sheldon <dave-mono@earth.li>

  * FloatingPointFormatter.cs: Skip the decimal point if we have an 
    integer mantassa. So: 1E+15, rather than 1.E+15.

2004-01-18  David Sheldon <dave-mono@earth.li>

	* Array.cs (GetValue/SetValue): Throw NullRef exception like .NET 1.1, 
	even though docs say it should be an ArgumentNull. Two test cases now
  pass. See also nickd's commit of 2003-12-24.

2004-01-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Environment.cs: increased corlib version.

2004-01-14  Lluis Sanchez Gual <lluis@ximian.com>

	* MonoCustomAttrs.cs: Removed attribute cache. Attribute instances can't
	be reused because they could be modified. This fixes bug #52655.

2004-01-12  Patrik Torstensson

	* Environment.cs: Bump corlib version number due to new StringBuilder
	
	* String.cs: New internal method to support the new StringBuilder that
	uses the string as a buffer (until ToString is called)

2004-01-12  Zoltan Varga  <vargaz@freemail.hu>

	* Environment.cs: Bump corlib version number for real this time.
	
	* AppDomain.cs (LoadAssembly): Pass the assembly name as a string to
	the runtime, so it can take into account the Culture etc.

	* Environment.cs: Bump corlib version number.
	
2004-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MonoType.cs: GetMethods renamed to GetMethodsByName. It takes a
	new parameter with the method name and a boolean for ignoring case.
	Removed some string comparisons no longer needed.

2004-01-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MonoType.cs: GetProperties renamed to GetPropetiesByName. It takes a
	new parameter with the property name and a boolean for ignoring case.
	Fixes bug #52753.

2004-01-11  David Sheldon <dave-mono@earth.li>

	* DateTime.cs: Correct processing of formats with multiple '-'s, fixing
	bug 52274.

2004-01-10  Zoltan Varga  <vargaz@freemail.hu>

	* AppDomain.cs: Keep track of type resolve and assembly resolve 
	events in progress to prevent infinite recursion.

2004-01-06  Miguel de Icaza  <miguel@ximian.com>

	* Console.cs: Test for UTF-8 being present anywhere on the
	string, also do ToUpper instead of ToLower, which will work even
	around the ICU bug with different locales (#52065), and addresses #52101

2004-01-05  Zoltan Varga  <vargaz@freemail.hu>

	* Environment.cs: Bump version.

2003-12-24 Ben Maurer  <bmaurer@users.sourceforge.net>

	* Type.cs (IsNotPublic): One would normally assume that
	IsNotPublic == !IsPublic, but this is not the case (note to MS,
	make better names ;-). Fixes #52547, `Type.IsNotPublic not 
	correct for Nested types'

2003-12-24  Nick Drochak  <ndrochak@ieee.org>

	* Array.cs (CreateInstance): Throw NullRef exception like .NET 1.1, 
	even though docs say it should be an ArgumentNull. Sent email to MS
	about this "bug".

2003-12-23  Lluis Sanchez Gual  <lluis@ximian.com>

	* Exception.cs: Several changes to make it compatible with MS.NET (needed
	for remoting interoperability): set a default value for hresult, added 
	initialization of class_name, serialization field RemoteStackTrace must
	be RemoteStackTraceString, added ser. field ExceptionMethod.

	* IndexOutOfRangeException.cs: Added serialization constructor.

2003-12-22  Bernie Solomon  <bernard@ugsolutions.com>

	* Int32 (Parse):
	  Int64 (Parse): Fix overflow checking for AllowHexSpecifier

2003-12-20  Zoltan Varga  <vargaz@freemail.hu>

	* MonoType.cs (GetMethodImpl): Only call FindMostDerivedMatch if the
	user supplied no parameter info, but not when the user supplied an
	empty parameter list. This fixes IKVM.

	* Environment.cs: Bump corlib version.

2003-12-19  Dick Porter  <dick@ximian.com>

	* String.cs: Added Compare shortcut for length==0.

2003-12-17  Zoltan Varga  <vargaz@freemail.hu>

	* Environment.cs: Bump corlib version.

2003-12-17  Dick Porter  <dick@ximian.com>

	* String.cs: Fix StartsWith and EndsWith when the argument is the
	empty string.  Fixes bug 52283.

2003-12-16  Zoltan Varga  <vargaz@freemail.hu>

	* Environment.cs (HasShutdownStarted): Implement.

2003-12-15  Zoltan Varga  <vargaz@freemail.hu>

	* Environment.cs (HasShutdownStarted): Make this static under NET 1.1.
	
	* Environment.cs: Bump version number.

2003-12-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* DateTime.cs: don't bail out with that year out of range error on
	stuff like "MM/dd/yyyy HH:MM:ss".

2003-12-13  Zoltan Varga  <vargaz@freemail.hu>

	* Environment.cs: Make it a const instead.
	
	* Environment.cs: Make version field static.

2003-12-10  Zoltan Varga  <vargaz@freemail.hu>

	* Type.cs: Make DefaultBindingFlags protected.

	* Environment.cs: Applied patch from Todd Berman (tbermann@gentoo.org).
	Add new GacPath property + its associated icall.

2003-12-09 Anirban Bhattacharjee <banirban@novell.com>

	* DateTime.cs : Bugs fixed (41845, 51422)
	* MonoType.cs : Exception message changed 

2003-12-08  Martin Baulig  <martin@ximian.com>

	* Type.cs (MakeByRefType): New public method.

2003-12-08  Zoltan Varga  <vargaz@freemail.hu>

	* Environment.cs: Add a version number for the corlib-runtime interface
	to make it easier to diagnose problems resulting from a mismatch 
	between the two.

2003-12-08  Patrik Torstensson   <p@rxc.se>

	* Type.cs (GetMethod): Check type arguments within array
	* MonoType.cs (GetMethodImpl): Handle methods with a new slot
	(same signature but different classes (derived level)

2003-12-07  Zoltan Varga  <vargaz@freemail.hu>

	* Type.cs (MakeArrayType): Add argument checking.

2003-12-06  Dick Porter  <dick@ximian.com>

	* String.cs: Don't use CompareInfo for non-culture-sensitive
	IndexOf and LastIndexOf methods.

2003-12-06  Ravindra  <rkumar@novell.com>

	* DateTime.cs: Made Parse(string, IFormatProvider) method to
	use second argument. Fixed bug #51464.

2003-12-04  Martin Baulig  <martin@ximian.com>

	* Type.cs (Type.MakeArrayType): New public method.

2003-12-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Buffer.cs:
	(BlockCopy): make the exception thrown helpful.

2003-12-03  Dick Porter  <dick@ximian.com>

	* String.cs: Calling Replace on an empty string returns itself.

2003-12-03  Zoltan Varga  <vargaz@freemail.hu>

	* MonoType.cs: Get rid of get_type_info, use a separate icall for
	each property instead.

2003-12-02  Dick Porter  <dick@ximian.com>

	* Decimal.cs: Fix NumberFormatInfo lookup.  Patch by
	Mohammad DAMT (mdamt@cdl2000.com), fixes bug 51443.

2003-12-01  Dick Porter  <dick@ximian.com>

	* String.cs: Make Compare, IndexOf, LastIndexOf, StartsWith,
	Replace, ToLower, ToUpper and Equals use the correct CultureInfo.

2003-11-28  Dick Porter  <dick@ximian.com>

	* Type.cs: 
	* MonoType.cs: 
	* Enum.cs: 
	* Boolean.cs: Do string compares with the Invariant culture.

2003-11-27 Ben Maurer  <bmaurer@users.sourceforge.net>

	* Array.cs: make the enumerator ICloneable

2003-11-27 Ben Maurer  <bmaurer@users.sourceforge.net>

	* Decimal.cs (ToXXX): Call Convert.ToXXX.

2003-11-26  Zoltan Varga  <vargaz@freemail.hu>

	* AppDomain.cs: Applied patch from ztashev@openlinksw.co.uk (Zdravko Tashev). 
	Implement Load(byte[]) methods.

	* BadImageFormatException.cs: Fix ToString.

2003-11-24  Zoltan Varga  <vargaz@freemail.hu>

	* MonoType.cs: Make Standard|HasThis match Standard in GetMethod and
	GetConstructor, as done by MS.

2003-11-19  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* FloatingPointFormatter.cs: Removed some unused variables to prevent csc compiler warnings

2003-11-18  Lluis Sanchez Gual  <lluis@ximian.com>

	* TypeInitializationException.cs: Added missing serialization constructor.

2003-11-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* AppDomainSetup.cs: Don't add an extra '/' at the end of 
	ApplicationBase. The tests pass now with mono.

2003-11-18  Zoltan Varga  <vargaz@freemail.hu>

	* ValueType.cs: New optimized implementation for Equals and GetHashCode.

2003-11-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Environment.cs: use Directory in CurrentDirectory property.
	We were not throwing any exception when setting the directory to an
	invalid path.

2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Array.cs:
	* Delegate.cs: implemented 1.1 stuff.

	* Enum.cs:
	* IntPtr.cs: removed extra attribute.
	* PlatformID.cs: added WinCE.

2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* ValueType.cs:
	(Equals): compare the fields of structs too.
	(GetHashCode): combine the hash code of all the fields.
	Fixes bug #50901 (will remove the icall in a couple of days).

2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Array.cs: fixed Clear for non-zero bounded arrays. Fixes bug #50968.

2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* DateTime.cs: handle century when we try to parse 4-digit years and
	only 2 digits are present. Fixes bug #49394.

2003-11-13  Miguel de Icaza  <miguel@ximian.com>

	* Console.cs: On utf-8 consoles, use unmarked output.

2003-11-13  Andreas Nahr <ClassDevelopment@A-SoftTech.com>

	* IAppDomainSetup.cs:
	* _AppDomain.cs: 
	* Object.cs:
	* Type.cs: Added missing attribute

2003-11-12 Lluis Sanchez Gual <lluis@ximian.com>

	* Environment.cs: Added internal method for getting the path to 
	machine.config.
	
2003-11-12 Jackson Harper <jackson@ximian.com>

	* Environment.cs: Add MyMusic and MyPictures to the SpecialFolder
	enum. This fixes the SWF build.
	
2003-11-12  Miguel de Icaza  <miguel@ximian.com>

	* PlatformID.cs: Remove Unix platform, we cant expose constants
	that are not in the framework.

	* OperatingSystem.cs: Adjust for the breakage.

	* RuntimeMethodHandle.cs: Fix signature.

	* Double.cs: Fix signature of TryParse.

	* String.cs (Concat (object, object, object, object)): Add missing method.

	* OperatingSystem.cs: Removed Equals, GetHashCode, they were not
	in the .NET Framework.

	* Enum.cs: Hide constructor.  

	Fix ToUint16 to be explicitly implemented.

	* Console.cs: Add couple of extra missing methods (Write and
	WriteLine overloaded)

2003-11-11  Miguel de Icaza  <miguel@ximian.com>

	* AppDomain.cs, Activator.cs: New unimplmented entry points from
	1.1 (Com activation related).
	
	* Exception.cs: Formatting.
	
	* IServiceProvider.cs: Add ComVisible (true).

	* AppDomainSetup.cs: Add a couple more properties from .NET 1.1 

2003-11-03  Lluis Sanchez Gual <lluis@ximian.com>

	* AppDomain.cs: Added some null checks in Load methods. This fixes bug
	  #50356.

2003-11-01  Zoltan Varga  <vargaz@freemail.hu>

	* AppDomain.cs: Make the SetDomain icalls private + call InternalInvoke
	on MonoMethod instead of Invoke.

2003-11-01  Pedro Martínez Juliá  <yoros@wanadoo.es>

	* DateTime.cs: Fixed Add* methods handling. Now it works properly
	with extreme values (there is a bug with Overflow and Underflow in
	long type).

2003-10-31  Pedro Martínez Juliá  <yoros@wanadoo.es>

	* DateTime.cs: Fixed a few format bugs.

2003-10-31  Zoltan Varga  <vargaz@freemail.hu>

	* AppDomain.cs (InternalPushDomainRef): New icalls.

	* AppDomain.cs (InvokeInDomain): New method to execute code in a 
	different appdomain.

2003-10-27  Zoltan Varga  <vargaz@freemail.hu>

	* AppDomain.cs: Fix prototype of InternalIsFinalizingForUnload.

2003-10-25  Zoltan Varga  <vargaz@freemail.hu>

	* AppDomain.cs (IsFinalizingForUnload): Implement.

	* AppDomain.cs (Unload): Move the notification of OnUnload listeners
	to unmanaged code.

2003-10-25  Martin Baulig  <martin@ximian.com>

	* MonoType.cs: Don't make this sealed.

2003-10-24  Zoltan Varga  <vargaz@freemail.hu>

	* AppDomain.cs: Add InternalInvokeInDomain[ByID] icalls.

2003-10-24  Pedro Martínez Juliá  <yoros@wanadoo.es>

	* DateTime.cs: When handling '-' as a date separator, MS.NET uses
	the same symbol in the parse (not DateTimeFormatInfo.DateSeparator).

2003-10-22  Dick Porter  <dick@ximian.com>

	* DateTime.cs: Handle '-' as a date separator when parsing formats.

2003-10-20  Duncan Mak  <duncan@ximian.com>

	* Delegate.cs (CreateDelegate): Avoid creating an extra Type array
	and merge the two iterations into one.

2003-10-15  Zoltan Varga  <vargaz@freemail.hu>

	* TypedReference.cs: Add new field used by the runtime.

2003-10-15  Martin Baulig  <martin@ximian.com>

	* Type.cs (Type.DeclaringMethod): For a generic method's type
	parameter, return this method - otherwise, return null.

2003-10-14  Martin Baulig  <martin@ximian.com>

	The generics API has changed in the spec since it was added here;
	these modifications make it match the spec again.

	* Type.cs
	(GetGenericParameters): Renamed to `GetGenericArguments'.
	(HasGenericParameters): Renamed to `HasGenericArguments'.
	(HasUnboundGenericParameters): Renamed to `ContainsGenericParameters'.
	(IsGenericTypeDefinition): New property.
	(IsUnboundGenericParameter): Renamed to `IsGenericParameter'.

	* MonoType.cs (ContainsGenericParameters): Implement this here;
	this is no interncall anymore.

2003-10-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Delegate.cs: add the method name to the exception when it cannot be
	bound.
	* Exception.cs: fix nullref in Source.

2003-10-10  Zoltan Varga  <vargaz@freemail.hu>

	* Array.cs: Add argument checking to GetValue and SetValue.

2003-10-09  Miguel de Icaza  <miguel@ximian.com>

	* DateTime.cs: Patch from Chris Turchin: the DateTime.MaxValue
	should not be TimeSpan.MaxValue, because it overflow.  Set this to
	be MAX_VALUE_TICKS

2003-10-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MonoCustomAttrs.cs: from_cache is now thread-safe. Yeah, I got a
	duplicate entry exception.

2003-10-08 Ben Maurer  <bmaurer@users.sourceforge.net>

	* DateTime.cs (ToString): Total rewrite, fixes #49358.

2003-10-03  Zoltan Varga  <vargaz@freemail.hu>

	* AppDomain.cs: Change accessibility of DoTypeResolve to fix build.

2003-10-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Enum.cs:
	(Equals): check that the object is an Enum before comparing the types.

2003-09-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Array.cs: reduced xsp allocated memory by 1/2.

2003-09-25  Martin Baulig  <martin@ximian.com>

	* Type.cs (Type.IsGenericTypeDefinition): Removed this method
	since it was identical to GetGenericTypeDefinition().
	(Type.IsGenericInstance): New property.

2003-09-24  Duncan Mak  <duncan@ximian.com>

	* Math.cs (Abs): Fix double Locale.GetText bug reported by
	davejp@volny.cz. This fixes #48788.

2003-09-14  Pedro Martínez Juliá  <yoros@wanadoo.es>

	* FloatingPointFormatter.cs: Add the necessary castings to char
	conversions.

2003-09-13  Pedro Martínez Juliá  <yoros@wanadoo.es>

	* FloatingPointFormatter.cs: Make the method calls more functional
	for protecting the values from different threads (make it more
	thread safe).

2003-09-13  Pedro Martínez Juliá  <yoros@wanadoo.es>

	* FloatingPointFormatter.cs: Fix a bug with the negative value of
	count parameter.

2003-09-12  Pedro Martínez Juliá  <yoros@wanadoo.es>

	* FloatingPointFormatter.cs: Applied a lot of improvements in string
	construction, make use of Append/Insert with the "count" parameter.
    Thanks to Ben Maurer.

2003-09-10  Pedro Martínez Juliá  <yoros@wanadoo.es>

	* FloatingPointFormatter.cs: Fix a bug with Custm Format.

	* FloatingPointFormatter.cs: Fix a little bug I've introduced the
	last change.

2003-09-10  Pedro Martínez Juliá  <yoros@wanadoo.es>

	* DoubleFormatter.cs: A few optimizations. Now, only one object
	is created to convert all double numbers.

	* SingleFormatter.cs: A few optimizations. Now, only one object
	is created to convert all float numbers.

	* FloatingPointFormatter.cs: Split the "number type parameters" from
	the "numver value and format parameters". The first ones are in the
	constructor and the others are in a method.

2003-09-09  Zoltan Varga  <vargaz@freemail.hu>

	* Array.cs: Added argument checking to some NET_1_1 methods.

2003-09-04  Martin Baulig  <martin@ximian.com>

	* Type.cs (GetGenericTypeDefinition): Make this method virtual.

2003-08-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Array.cs: added the new overloaded CreateInstance, GetValue, SetValue
	taking 'longs'. All tests pass.

2003-08-26 Ben Maurer  <bmaurer@users.sourceforge.net>

	* Exception.cs: Add ClassInterface attr. Implement TargetSite and
	Source. Remove MonoTODO attributes (class is 100% done). Also
	passes all Rotor tests for Exception!

2003-08-26 Ben Maurer  <bmaurer@users.sourceforge.net>

	* Enum.cs: Remove [MonoTODO]'s that had been completed.

2003-08-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* String.cs: fixed bug #47802.

2003-08-21 Ben Maurer  <bmaurer@users.sourceforge.net>

	* String.cs: Created method FormatHelper that does formatting,
	using a StringBuilder.

2003-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Array.cs: patch by lb@lb.ods.org that fixes bug #47707.

2003-08-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Delegate.cs: CreteDelegate (Type, MethodInfo) only supports static
	methods under MS.

2003-08-11  Duncan Mak  <duncan@ximian.com>

	* Environment.cs (Version): Return the same numbers as the MS
	implementation.

2003-08-10  Miguel de Icaza  <miguel@ximian.com>

	* Array.cs: Applied patch from Thong (Tum) Nguyen;  Removed
	replicated tests, and have a routine that does the heavy lifting.

2003-08-08  Lluis Sanchez Gual <lluis@ximian.com>

	* DateTime.cs: Fixed DoParse. It was calling the wrong constructor
	  of DateTime.
	* Environment.cs: return $HOME for ApplicationData folder.

2003-08-04  Duncan Mak  <duncan@ximian.com>

	* FloatingPointFormatter.cs (Normalize): Apply a patch from Aleksey
	Demakov <avd@openlinksw.com> to fix formatting for Big power of 10
	floating point values. This fixes bug #46175.

	* Convert.cs (ToUInt16): Throw an OverflowException correctly, as
	noted by c5n4kh6u02@sneakemail.com in
	http://bugzilla.ximian.com/show_bug.cgi?id=43098.

Sat Aug  2 13:01:46 BST 2003 Malte Hildingson <malte@amy.udd.htu.se>

	* Double.cs: added icall Double.AssertEndianity.

Fri Aug 1 16:47:17 CEST 2003 Paolo Molaro <lupus@ximian.com>

	* Type.cs, MonoType.cs: implemented generic-specific methods.

2003-07-29  Miguel de Icaza  <miguel@ximian.com>

	* Buffer.cs: Add new internal MemCopy call.

	Removed the above.

Tue Jul 29 12:13:16 CEST 2003 Paolo Molaro <lupus@ximian.com>

	* Type.cs, MonoType.cs, ArgIterator.cs: pass the handles values
	to icalls, to avoid special cases in some call conventions.

2003-07-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Enum.cs: added Serializable attribute.

2003-07-25  Duncan Mak  <duncan@ximian.com>

	* AppDomain.cs (Equals):
	(GetHashCode): Removed because they do not need to be defined
	here.

2003-07-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* TypeLoadException.cs: removed unused fields. TypeName returns "" if
	cannot even get the type.

2003-07-24  Miguel de Icaza  <miguel@ximian.com>

	* Type.cs: Added generics stubs.

2003-07-23  Duncan Mak  <duncan@ximian.com>

	* Environment.cs (SpecialFolder): Added 'Desktop' and 'MyComputer'
	as values for NET_1_1.
	(GetFolderPath): Return the empty string ("") for values of
	SpecialFolder that have no corresponding equivalents in
	Linux. Return "$HOME/Desktop" for SpecialFolder.DesktopDirectory
	and "$HOME" for SpecialFolder.Personal.

	* IntPtr.cs (GetObjectData): Mark it as an interface
	implementation, instead of a public method.

	* Guid.cs (NewGuid): Remove MonoTODOAttribute.

	* TypeLoadException.cs (GetObjectData):
	Create stubs for the fields that are being serialized.

	* UIntPtr.cs: Removed erroneous CLSCompliantAttributes.

2003-07-23  Lluis Sanchez Gual <lluis@ximian.com>
	
	* Enum.cs: Fixed enum formatting. For flag enums, if one of
	  the flags is unnamed, ToString() returns the integer value.

2003-07-22  Jerome Laban <jlaban@wanadoo.fr>

	* Guid.cs: Fixed ToString (), was producing incorrect string.

2003-07-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* AppDomainSetup.cs: fixed bug #46609.

Thu Jul 17 17:28:27 CEST 2003 Paolo Molaro <lupus@ximian.com>

	* MonoType.cs: use an icall for IsPrimitiveImpl ().

Thu Jul 17 15:23:17 CEST 2003 Paolo Molaro <lupus@ximian.com>

	* Guid.cs: faster ToString ().

2003-07-15  Pedro Martínez Juliá  <yoros@wanadoo.es>

	* FloatingPointFormatter.cs: Few changes for get working Rotor
	tests.

2003-07-13  Zoltan Varga  <vargaz@freemail.hu>

	* Type.cs (IsAssignableFrom): Implement this as an icall since the
	runtime already includes the neccessary logic.

2003-07-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* AppDomainSetup.cs: remove the "file://" prefix from ApplicationBase
	if it's present and get the full path for non-Uri paths.

2003-07-2  Lluis Sanchez Gual <lluis@ximian.com>

	* DateTime.cs: Fixed formatting of fractions of second.

2003-06-30  Zoltan Varga  <vargaz@freemail.hu>

	* Console.cs: Turn off buffering for the streams returned by
	OpenStandardOutput () and OpenStandardError () if the buffer size is 0.

2003-06-28  Lluis Sanchez Gual <lluis@ximian.com>

	* Random.cs: Changed behavior of Random to match MS.NET. When Next is
	  called with maxvalue==0 or minvalue==maxvalue, MS.NET internally generates
	  a new random number (although it is not needed), while mono did not. 
	  As a result, the sequence of random numbers could be different for the
	  same seed.

Thu Jun 26 16:06:35 CEST 2003 Paolo Molaro <lupus@ximian.com>

	* FloatingPointFormatter.cs: use dec_len2 as default precision.

2003-06-26  Lluis Sanchez Gual <lluis@ximian.com>

	* DateTime.cs: Modified constructor. Check for valid value of TimeSpan must
	  be done after the correspondig UTC offset has been applied.

2003-06-26  Lluis Sanchez Gual <lluis@ximian.com>

	* Object.cs: Object must have the Serializable attribute.
	* DateTime.cs: Fixed _DoParse() so it correctly applies the utc offset
	  to the resulting date. Also fixed _ToString so now correctly formates the
	  UTC offset.

Wed Jun 18 19:22:22 CEST 2003 Paolo Molaro <lupus@ximian.com>

	* Enum.cs: fix race in cache (bug#41841).

Wed Jun 18 18:52:11 CEST 2003 Paolo Molaro <lupus@ximian.com>

	* FloatingPointFormatter.cs: if the precision is not specified, use
	the default precision for the data type.

Wed Jun 18 18:11:30 CEST 2003 Paolo Molaro <lupus@ximian.com>

	* Array.cs: throw ArgumentOutOfRangeException in Copy if needed
	(patch by tum@veridicus.com (Thong (Tum) Nguyen)).

2003-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MonoType.cs: don't throw nullref when the return type for a property
	is specified and the property doesn't have a get accessor.

2003-06-10  Duncan Mak  <duncan@ximian.com>

	* Array.cs (CreateInstance): Fixed a typo. It should throw
	ArgumentNullException instead of ArgumentException.

2003-06-09  Duncan Mak  <duncan@ximian.com>

	* Array.cs: Revert the last revert. I fixed it.
	(Sort): Put a try-catch block around qsort, and wrap whatever
	Exception we get into a InvalidOperationException.

2003-06-08 Jackson Harper <jackson@latitudegeo.com>

	* Array.cs: Revert last patch, it broke some other functionality.
		
2003-06-08  Duncan Mak  <duncan@ximian.com>

	* Array.cs: Throw more exceptions. This fixes the errors we see
	from the Rotor testsuite.

	(CreateInstance): Throw ArgumentNullException when the input are
	null. Throw ArgumentOutOfRangeException when bounds + length is
	greater than Int32.MaxValue.
	(LastIndexOf): Throw ArgumentOutOfRangeException if index is outside
	the valid range of indices of array.
	(Sort): Throw InvalidOperationException when comparer is null and
	none of the elements in keys implements IComparable.

2003-06-08  Duncan Mak  <duncan@ximian.com>

	* Array.cs (CreateInstance): Throw a TypeLoadException if the
	Length of the input array 'lengths' is greater than 255 so that we
	won't see the g_assert that is in mono_array_class_get in class.c.

	This fixes bug #44304.

2003-06-05  Nick Drochak  <ndrochak@gol.com>

	* UnitySerializataionHolder.cs: Cleanups according to class status page

Wed Jun 4 16:59:39 CEST 2003 Paolo Molaro <lupus@ximian.com>

	* ArgIterator.cs, TypedReference.cs, RuntimeArgumentHandle.cs,
	RuntimeTypeHandle.cs: implemented the needed stuff to handle
	vararg calls.

2003-06-02  Sebastien Pouliot  <spouliot@videotron.ca>

	* Random.cs: New implementation based on Knuth ran3 to fix #43597.
	See http://www.library.cornell.edu/nr/bookcpdf/c7-1.pdf. Commited
	for Ben Maurer after review and testing.

2003-05-28  Ben Maurer <bmaurer@users.sourceforge.net>
	
	* Array.cs: Added better argument checking to Array.Sort ()
	* DBNull.cs: Made the conversions throw like they do in MS.

2003-05-24  Philip Van Hoof  <me@freax.org>

	* Math.cs: Add the MS.NET 1.1 methods (BigMul, DivRem, DivRem).

2003-05-21  Pedro Martínez Juliá  <yoros@wanadoo.es>

	* FloatingPointFormatter.cs: Take care with the explicit precision
	and round the number to that precision.

	* DoubleFormatter.cs: Adapt to the two level precision (15 - 17).

	* SingleFormatter.cs: Adapt to the two level precision (7 - 8).

2003-05-20  Philip Van Hoof <me@freax.org>

	* DateTime.cs (FromOADate, GetDateTimeFormats, ToOADate):
	Implemented.

2003-05-20  Zoltan Varga  <vargaz@freemail.hu>

	* AppDomainSetup.cs: Added new field which is used to notify the
	runtime that the search path has changed.

2003-05-18  Pedro Martínez Juliá  <yoros@wanadoo.es>

	* FloatingPointFormatter.cs: Fixed NullReferenceException bug I've
	introduced the last change I've done.

2003-05-17  Ben Maurer  <bmaurer@users.sourceforge.net>

	* Array.cs: Fixed SyncRoot to behave like MS (return this). Removed 
	MonoTODO from SyncRoot (because fixed) and IsSynchronized (it was
	behaving correctly).
	
2003-05-17  Pedro Martínez Juliá  <yoros@wanadoo.es>

	* FloatingPointFormatter.cs: Fixed little format mismatches.

2003-05-16  Pedro Martínez Juliá  <yoros@wanadoo.es>

	* FloatingPointFormatter.cs: Fixed "-0" result emited.

2003-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* AppDomain.cs: Added null argument check in Load().
	* Activator.cs: fixed bug #39926.

2003-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Enum.cs: fixed bugs #41522 and #42879.

2003-05-12  Zoltan Varga  <vargaz@freemail.hu>

	* String.cs: Tweak IndexOf and LastIndexOf to match specification and
	undocumented MS behaviour.

2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Activator.cs: applied patch for bug #39926. Thanks to Jean Marc and
	Jaime.

2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* String.cs: fixed bug #41411 and another similar problem in
	LastIndexOf (string).

2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* String.cs: patch by Jean Marc <jean-marc.andre@polymtl.ca> that fixes
	bug #42695.

2003-05-09  Zoltan Varga  <vargaz@freemail.hu>

	* MulticastDelegate.cs (GetInvocationList): Avoid ArrayList 
	construction if the delegate list only has one element.

2003-05-01  Pedro Martínez Juliá  <yoros@wanadoo.es>

	* Environment.cs: Changed the method GetFolderPath because it must
	return at least a directory name (not null).

	* Convert.cs: In ToType, if the destination type is unknown, try to
	cast the value to object (then, the calling method will downcast it
	to the type it wants).

2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Enum.cs: fixed bug #41522.

Tue Apr 29 13:58:16 CEST 2003 Paolo Molaro <lupus@ximian.com>

	* Enum.cs: protect with the lock also the lookup (bug #41841).

Tue Apr 29 13:24:32 CEST 2003 Paolo Molaro <lupus@ximian.com>

	* MonoType.cs: allow a null name if InvokeMember is called with
	BindingFlags.CreateInstance set.

2003-04-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Enum.cs: reverted my previous patch.

2003-04-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Enum.cs: fixed bug #41841.

2003-04-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MonoType.cs:
	(GetPropertyImpl): handle BindingFlags.IgnoreCase.

2003-04-22  Pedro Martínez Juliá  <yoros@wanadoo.es>

	* FloatingPointFormatter.cs: Little fixes for get the same results
	as MS.NET and show a message when something goes wrong with the
	parser of Custom Formats.

2003-04-22  Nick Drochak  <ndrochak@gol.com>

	* Double.cs (ToString):
	* Single.cs (ToString): Handle case where param is a CultureInfo.

2003-04-18  Zoltan Varga  <vargaz@freemail.hu>

	* Object.cs ValueType.cs: Make the Object::GetHashCode() and 
	ValueType::Equals() icalls static non-virtual, so they can be called
	by the code in RuntimeHelpers.

2003-04-18  Miguel de Icaza  <miguel@ximian.com>

	* Delegate.cs (operator ==): Do not crash if the second argument
	is null.  Bug fix submitted by Juan Cri.

2003-04-18  Eduardo Garcia Cebollero <kiwnix@yahoo.es>

	* Array.cs: Deleted the exception in Array.Initialize(), it looks
	like the method do nothing for C#, is still a MonoTODO until
	we find a compiler that uses that.

2003-04-14  Miguel de Icaza  <miguel@ximian.com>

	* Delegate.cs (Delegate): Seems like a typo, we were checking the
	a field rather than the argument 

	* MonoType.cs: Make GetNestedType an external method implementation.

2003-04-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Enum.cs: fixed bug #41294.

2003-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* DateTime.cs: fixes bug #40910, part 2.

2003-04-11  Dietmar Maurer  <dietmar@ximian.com>

	* String.cs (Equals): avoid the internal call, code cleanups

2003-04-11  Alan Tam <Tam@SiuLung.com>

	* Convert.cs: fixed bug #41085.

2003-04-10  Lluis Sanchez Gual <lluis@ideary.com>

	* AppDomain.cs: Added internal method for getting process guid.

2003-04-09  Ville Palo <vi64pa@kolumbus.fi>

	* Array.cs: Little fix to compare () method.
	
2003-04-09  Zoltan Varga  <vargaz@freemail.hu>

	* String.cs (Equals): Add trivial optimization.

2003-04-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* DateTime.cs: fixed bug #40910.

2003-04-05  Miguel de Icaza  <miguel@ximian.com>

	* Console.cs: Make stderr, stdout and stdin use synchronized
	versions of the their readers/writers.

2003-04-04  Dick Porter  <dick@ximian.com>

	* Version.cs: Make operator== and operator!= cope with null
	objects.  Didn't change operator<, operator<=, operator> or
	operator>= because its not meaningful to use those to compare
	against null, and throwing a NullReferenceException is probably
	the best thing to do there anyway.

	Fixes bug 40720.

2003-04-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* AppDomain.cs: fixed InvalidCastException.

2003-03-30  Zoltan Varga  <vargaz@freemail.hu>

	* Array.cs (Copy): Call FastCopy() earlier to avoid the expensive
	type checks and let it decide whenever a fast copy is possible.

2003-03-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MonoType.cs:
	(GetMethodImpl): support BindingFlags.IgnoreCase flag. Fixes bug #40322.

2003-03-25  Zoltan Varga  <vargaz@freemail.hu>

	* Activator.cs (CreateInstance): Call GetConstructor with the right
	arguments so the nonPublic argument is handled correctly.

2003-03-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Type.cs: fixed bug #40123.

2003-03-22  Pedro Martínez Juliá  <yoros@wanadoo.es>

	* FloatingPointFormatter.cs: Fixed some bugs for get the same
	results than MS.NET. Added simple error recovering, now ToString
	will return a general format if there is any exception in the
	process of formatting. This make the library more robust while the
	formatters are refined.

2003-03-16  Pedro Martínez Juliá  <yoros@wanadoo.es>

	* FloatingPointFormatter.cs: Added support for group separators.

2003-03-16  Pedro Martínez Juliá  <yoros@wanadoo.es>

	* Single.cs:
	* Double.cs: Apply changes of .ToString methods.
	* SingleFormatter.cs:
	* DoubleFormatter.cs: Simple wrappers to FloatingPointFormatter.
	* FloatingPointFormatter.cs: New class. Implementation of double and
	single formatters. It is unified now and parametrized with precission
	values.

2003-03-15  Lluis Sanchez Gual <lluis@ideary.com>

	* AppDomain.cs: fixes bugs #39380 and #39331.

2003-03-06  Nick Drochak  <ndrochak@gol.com>

	* TimeSpan.cs (Negate): Throw exception when value is MinValue.

2003-03-04  Dick Porter  <dick@ximian.com>

	* Single.cs:
	* Double.cs: Temporarily reverted the Double and Single ToString()
	change, because it broke nunit.


2003-03-04  Pedro Martínez Juliá  <yoros@wanadoo.es>

	* Double.cs: Changed ToString method. Added NumberFormatInfo support
	with DoubleFormatter class.
	* Single.cs: Changed ToString method. Added NumberFormatInfo support
	with SingleFormatter class.
	* DoubleFormatter.cs: New class with Double formatting functions.
	* SingleFormatter.cs: New class with Single formatting functions.

2003-03-03  Lluis Sanchez Gual <lluis@ideary.com>

	* Activator.cs: Added support for activation using activation attributes.
	* AppDomain.cs: Added internal method to get the default context from the runtime.

2003-02-28  Elan Feingold  <efeingold@mn.rr.com>

	* DateTime.cs: FileTime is expressed in Universal time, and as such must
	be converted before subtracting the magic offset.
	* DateTime.cs: Strings in the format "2003-02-27T10:05:03-11:00" (note
	the timezone at the end) *must* be parsed by DateTime.Parse() for
	compatibility with Microsoft.

2003-02-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Attribute.cs:
	* MonoCustomAttrs.cs: fix for the regression test failure (see bug
	#38238).

	* IntPtr.cs: added serialization .ctor

2003-02-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* AppDomain.cs: check for null in Unload and changed method name.

2003-02-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MonoCustomAttrs.cs: fixed bug #38238.

2003-02-17  Martin Baulig  <martin@ximian.com>

	* Exception.cs (Exception.ToString): Print a newline between the
	exception message and the stack trace.

2003-02-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* AppDomain.cs: implemented GetCurrentThreadId ().

2003-02-14  Patrik Torstensson

	* Exception.cs: Fixed message output formating

2003-02-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Int32.cs:
	(Parse): ignore everything after a \0 (MS parses: "512\0hola" as 512).

2003-02-12  Miguel de Icaza  <miguel@ximian.com>

	* Type.cs: IsClass should return false for Enumerations

2003-02-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MonoCustomAttrs.cs: return the correct array type in the short case.
	Fixes bug #37818.

2003-02-08  Pedro Martíenz Juliá  <yoros@wanadoo.es>

	* Math.cs: Fix a few methods (like Round) and add with comments the
	new methods: BigMul and DivRem that were in ECMA specs.

2003-02-07  Patrik Torstensson

	* Exception.cs: Fixed formating

2003-02-05  Patrik Torstensson

	* AppDomain.cs: Partly fixed the unload method 
	
2003-02-04  Patrik Torstensson

	* AppDomain.cs: Fixed lease issue with appdomain

2003-02-04  Lluis Sanchez Gual <lluis@ideary.com>

	* MarshalByRefObject.cs: Implemented GetLifetimeService() and 
	  InitializeLifetimeService().

2003-02-03  Patrik Torstensson

	* AppDomain.cs: New internalcalls for handling domain/context switches
	* AppDomain.cs (CreateDomain): Return transparant proxy for appdomain object

2003-02-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* AppDomain.cs: implemented AppendPrivatePath, ClearPrivatePath
	and ClearShadowCopyPath and fixed GetType ().

	* Attribute.cs: clean up.

	* Console.cs: removed UnixConsoleEncoding. Use Default.

2003-02-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Attribute.cs: fixed all IsDefined overloads. Gotta fix
	GetCustomAttributes later.

2003-01-31  Patrik Torstensson

	* Buffer.cs: Changed access level of BlockCopyInternal

Thu Jan 30 19:54:30 CET 2003 Paolo Molaro <lupus@ximian.com>

	* String.cs, IntegerFormatter.cs: use const where appropriate.

2003-01-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MonoCustomAttrs.cs: fixed GetBase () for Type. Thanks to Zoltan for
	reporting.

2003-01-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MonoCustomAttrs.cs: fixed shortcut in GetCustomAttributes.
	The argument ICustomAttributeProvider can be of other types different
	from Type. Handle it.

2003-01-28  Zoltan Varga  <vargaz@freemail.hu>

	* DateTime.cs: fix FromFileTime so the time returned by 
	File::GetLastModificationTime etc. is in the correct timezone.

2003-01-28  Patrik Torstensson
	* Exception.cs: reverted formating/endline changes (sorry guys)

2003-01-28  Patrik Torstensson

	* MarshalByRefObject.cs: implemented GetObjectIdentity
	* Exception.cs: added support for remote exceptions

2003-01-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* DateTime.cs: fixed bug #37225.

2003-01-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Enum.cs: Clone the arrays in GetNames and GetValues. Thanks lupus!

2003-01-27  Zoltan Varga  <vargaz@freemail.hu>

	* AppDomain.cs: Added DoTypeResolve method which will be called by
	the runtime to raise TypeResolve events.

2003-01-27  Duncan Mak  <duncan@ximian.com>

	* Enum.cs (ToType): Implement this using Convert.ToType.

2003-01-21  Miguel de Icaza  <miguel@ximian.com>

	* Math.cs: Remove Pow's implementation body as it was wrong.  The
	C code does the right thing.  The code was trying to handle a
	number of cases, and that was incorrect.

2003-01-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* CharEnumerator.cs: fix to Current by crainaj@hotmail.com. Closes
	bug #37113.

2003-01-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Enum.cs: added caching to GetInfo.

2003-01-23  Dick Porter  <dick@ximian.com>

	* Environment.cs (System): Implemented ExitCode

2003-01-23  Zoltan Varga  <vargaz@freemail.hu>

	* Type.cs (IsInstanceOfType): fixed regression caused by the change
	to IsSubclassOf().

2003-01-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MonoType.cs: re-added lines that were removed in the previous commit.

2003-01-16  Lluis Sanchez Gual <lsg@ctv.es>

	* Type.cs: corrected property IsSerializable. It should always return
	true for enums and delegates
	* MonoType.cs: added serialization support.
	* Delegate.cs: added serialization support.
	* DBNull.cs: added serialization support.
	* UnitySerializationHolder.cs: supports serialization of Assembly,
	MonoType and DBNull.
	* DelegateSerializationHolder.cs: added.

2003-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Exception.cs: changed default message to match MS one.

2003-01-12  Patrik Torstensson <totte@race-x-change.com>

	* String.cs: Fixed bug with CompareOrdinal

2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Enum.cs: implements IFormattable.

2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* AppDomain.cs: implemented DoCallBack method.
	* MonoType.cs:
	(GetConstructorImpl): when the flag is BindingFlags.Default, set it to
	Public, Instance.

	NUnit2 tests start moving.

2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Activator.cs: fixed bug #36052. Also added checks to avoid trying to
	instantiate an abstract class.

2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Type.cs:
	(IsSubclassOf): return false when null. Use != instead of Equals.

2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Type.cs: fixed IsSubclassOf. Patch from Zoltan Varga.

Fri Jan 3 20:18:51 CET 2003 Paolo Molaro <lupus@ximian.com>

	* MonoType.cs: fixed Namespace property for nested types.

Fri Jan 3 16:18:27 CET 2003 Paolo Molaro <lupus@ximian.com>

	* MonoCustomAttrs.cs: create properly typed arrays when returning
	arrays of attributes of a given type.

Fri Jan 3 11:10:14 CET 2003 Paolo Molaro <lupus@ximian.com>

	* MonoType.cs: fixed MemberType property for nested types.

2003-01-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* String.cs: fixed bug #36209.

2002-12-20 Lluis Sanchez Gual <lsg@ctv.es>

	* Activator.cs: implemented method GetObject.

2002-12-28  Marcus Urban <mathpup@mylinuxisp.com>

	* Activator.cs: Since the documentation indicates the method
	either succeeds or throws one of the listed exceptions, we weren't
	expecting that CreateInstance might be returning null.

	For more information on the bug, see http://bugs.ximian.com/show_bug.cgi?id=36109

2002-12-20 Lluis Sanchez Gual <lsg@ctv.es>

	* MarshalByRefObject.cs: implemented CreateObjRef.

2002-12-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* DateTime.cs: fixed bug #30076.
	* TimeZone.cs: provide the parameter name in a exception.

2002-12-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* DecimalFormatter.cs: fixed bug #35560.

Wed Dec 4 16:04:28 CET 2002 Paolo Molaro <lupus@ximian.com>

	* Type.cs: implemented GetInterfaceMap (needs an updated runtime).

2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Array.cs: use Object.Equals (obj, obj) to compare objects to avoid
	nulls. Fixes #34909.

2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* AppDomain.cs: DoAssemblyResolve now returns when one of the handlers
	returns a non-null assembly.

2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MulticastDelegate.cs: make GetInvocationList work for more than 1
	delegate.

2002-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MulticastDelegate.cs: implemented GetInvocationList. I'll check later
	if this is the correct order of invocation.

2002-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Type.cs: changed the signature of internal_from_name. Modified
	the overloads of GetType to use it and check the typeName argument.
	Implemented FindInterfaces.

2002-11-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MarshalByRefObject.cs: undo latest changes. It breaks the build by
	some obscure reasons (try make -f makefile.gnu using a corlib which has
	the modified version).

2002-11-26  Miguel de Icaza  <miguel@ximian.com>

	* String.cs (Concat): Reduce the number of compares required. 

Mon Nov 18 17:54:22 CET 2002 Paolo Molaro <lupus@ximian.com>

	* Activator.cs: throw a MissingMethodException if the default
	constructor is not found in CreateInstance.

2002-11-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* String.cs:
	(Equals (str, str)): use 'as' instead of casting to object.
	(Equals (obj)): check the length of the strings (until now,
	"Hello".Equals ((object) "Hellow World!) was true!).

2002-11-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* MonoType.cs: implemented GetEvent (name, flags).

2002-11-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* AppDomain.cs: implemented a couple of methods called from the runtime
	to fire AssemblyLoad and AssemblyResolve events.

2002-10-31  Dick Porter  <dick@ximian.com>

	* Environment.cs: MonoIO methods now have an error parameter

2002-10-29  Zoltan Varga  <vargaz@freemail.hu>

	* Enum.cs: Added support for whitespaces in Enum:Parse().

2002-10-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Type.cs: fixed GetProperty (string, Type []) and removed get_property
	internal call. Closes bug #32992.

2002-10-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Exception.cs: display the inner exception, if any, in ToString ().

2002-10-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Environment.cs: fixed StackTrace property.

2002-10-16  Nick Drochak  <ndrochak@gol.com>

	* Enum.cs (Parse): Then fix the code so that it works too.

2002-10-15  Nick Drochak  <ndrochak@gol.com>

	* Enum.cs (Parse): Use unsigned casts to avoid compiler warnings.

2002-10-12  Nick Drochak  <ndrochak@gol.com>

	* IntegerFormatter.cs: Fix compiler warnings.

2002-10-11  Tim Haynes <thaynes@openlinksw.com>

	* Type.cs (GetConstructors): Use the correct flags.

2002-10-09  Nick Drochak  <ndrochak@gol.com>

	* IntegerFormatter.cs: Suppress insignificant leading zeros

Fri Sep 27 15:06:29 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* MonoCustomAttrs.cs: applied patch by "Si Jingnan"
	<stonewell@21cn.com> to return also derived types.

2002-09-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Activator.cs: little fix in CreateInstance (Type, bool).

2002-09-19  Duncan Mak  <duncan@ximian.com>

	* Array.cs (CopyTo): Revert back to 1.40, this is stopping
	I18N/Common from building right now.

2002-09-19  Nick Drochak  <ndrochak@gol.com>

	* Array.cs (CopyTo): Account for Object type and base (primitive) types
	* Type.cs (IsAssignableFrom): return false for a null parameter

2002-09-19  Nick Drochak <ndrochak@gol.com>

	* Array.cs (CopyTo): Check that source type can be cast automatically
	to the destination type.

2002-09-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Type.cs: implemented IsAssignableFrom, DefaultBinder and
	GetDefaultMembers.

2002-09-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Char.cs: implemented ToString (char)
	* IntegerFormatter.cs: made it internal.

2002-09-13  Nick Drochak  <ndrochak@gol.com>

	* Enum.cs (Format): handle the "d" format for both signed and unsigned
	underlying types.

2002-09-12  Dick Porter  <dick@ximian.com>

	* UIntPtr.cs: Remove the [StructLayout(LayoutKind.Auto)]
	attribute, as there doesn't appear to be any struct
	layout-depending code here (and corcompare says it should be
	LayoutKind.Sequential)

	* Decimal.cs: Stub out missing methods, add
	[DecimalConstantAttribute] to the constant fields (as shown by
	corcompare).

	* LocalDataStoreSlot.cs: 
	* Environment.cs: 
	* Char.cs: 
	* Array.cs: Stub out missing methods.

	* TypedReference.cs: 
	* ArgIterator.cs: Stub out

	* AppDomainSetup.cs: 
	* AppDomain.cs: Stub out missing methods, add missing
	ClassInterface(ClassInterfaceType.None) attribute.

2002-09-12  Nick Drochak  <ndrochak@gol.com>

	* Double.cs (ToString): Throw exception when "X" format is passed in.

Wed Sep 11 15:26:34 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* MonoType.cs: implemented Module property.

Wed Sep 11 12:49:51 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* MonoType.cs, Type.cs: implemented InvokeMember.

Wed Sep 11 11:06:43 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* Delegate.cs: check the type passed to CreateDelegate is a Delegate
	type. Check the method signature matches.

Sat Sep 7 10:16:52 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* RuntimeMethodHandle.cs: implemented GetFunctionPointer().

2002-09-06  Miguel de Icaza  <miguel@ximian.com>

	* Console.cs: Specify an encoder, otherwise we will get the UTF8
	encoder that by default emits the byte markers.

Fri Sep 6 20:14:04 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* Delegate.cs: look also for non-public methods until we have the
	security checks in place.

Fri Sep 6 12:20:06 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* MonoType.cs: consider also the full name in GetInterface.

Fri Sep 6 12:11:28 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* MonoType.cs: implemented GetMembers, GetConstructorImpl and
	GetMethodImpl using the binder.
	* Type.cs: GetConstructorImpl/GetConstructor fixes.

2002-09-03  Jonathan Pryor <jonpryor@vt.edu>
	* Enum.cs: Get rid of warning CS0162.

2002-09-04  Miguel de Icaza  <miguel@ximian.com>

	* Double.cs, Single.cs, Char.cs, Boolean.cs: Use internal for the
	actual value instead of public.

	* LocalDataStoreSlot.cs: Make constructor internal.

	* Int16.cs, UInt16.cs, Int32.cs, UInt32.cs, Int64.cs, UInt64.cs,
	SByte.cs, Byte.cs, Char.cs: Use internal for the actual value
	instead of public.

2002-09-03  Jonathan Pryor <jonpryor@vt.edu>
	* Enum.cs: Fixed Enum.Format so that the "x" format specifier would work
	           properly.

2002-08-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* DateTime.cs: fixed buglet.

Tue Aug 27 16:39:47 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* MonoType.cs: speedup access to common data.

2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Double.cs: implemented TryParse.

	* Math.cs: PowImpl is now private.

	* MissingFieldException.cs: implemented Message.

	* RuntimeMethodHandle.cs: stubbed GetFunctionPointer.

	* _AppDomain.cs: Uncommented ToString.

2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Type.cs:
	(IsValueTypeImpl): it's virtual, not abstract. Implemented.

2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* ArgumentException.cs: use the field instead of the property for
	param_name.

	* ArgumentOutOfRangeException.cs: modified Message.

	* DateTime.cs: 
	(_DoParse): throw out of range exception for year. Removed check
	for month (it's done in the constructor).

2002-08-21  Miguel de Icaza  <miguel@ximian.com>

	* Environment.cs: Implemented OSVersion property.

2002-08-21  Dietmar Maurer  <dietmar@ximian.com>

	* Exception.cs: set stack_trace to null

Wed Aug 21 13:02:20 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* AppDomain.cs: implemented ToString().

2002-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* AppDomain.cs: securityInfo can be null in CreateDomain.

2002-08-19  Dick Porter  <dick@ximian.com>

	* MonoType.cs: Add a space before the Assembly name in
	AssemblyQualifiedName (needed for resource files so the MS runtime
	can load types)

2002-08-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* AppDomain.cs: parameter name when throwing ArgumentNullException.

	* ArgumentException.cs: modified Message to do what MS does.

	* ArgumentNullException.cs: don't use {0} in message.

	* Exception.cs: use Message property in ToString ().

2002-08-14  Cesar Octavio Lopez Nataren <cesar@ciencias.unam.mx>

	* WeakReference.cs: Changed the constructor and GetObjectData
	method needed for ISerializable implementation in order to be
	compatible with SOAP generated by MS.

Wed Aug 14 17:34:07 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* MonoType.cs, Type.cs: DeclaringType/ReflectedType fixes.

2002-08-12  Dietmar Maurer  <dietmar@ximian.com>

	* Exception.cs (ToString): changed the ouput format.

2002-08-07  Dietmar Maurer  <dietmar@ximian.com>

	* MonoType.cs: moved get_method icall to this class, we can
	remove it as soon someone provides a full featured GetMethodImpl.

	* Type.cs: use GetMethodImpl everywhere.

	* Delegate.cs: new CreateDelegate implementations.

2002-08-06  Tim Coleman <tim@timcoleman.com>
	* MonoType.cs: 
		Fix bug #28582.  Now checks parameters for properties
		in GetPropertyImpl.

2002-08-04  Nick Drochak  <ndrochak@gol.com>

	* Buffer.cs: Throw correct exception in GetByte() and SetByte().

2002-08-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* String.cs:
	(FormatSpecifier): allow white space between the comman and the width
	specifier.

2002-07-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Int32.cs:
	* Int64.cs:
	* UInt32.cs:
	* UInt64.cs: fixed bug #28050. May be a MS bug?

Thu Jul 18 14:47:03 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* MonoType.cs: fix IsArrayImpl.

2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* String.cs: make ToLower (culture) and ToUpper (culture) use the
	default ToLower and ToUpper and don't throw NotImplemented.

Sat Jul 13 15:09:01 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* Type.cs: make GettTypeCode an icall. Test implementation of
	GetMember().

2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* AppDomainSetup.cs: implemented LoaderOptimization.

2002-07-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Activator.cs: some more intermediate results checking in
	in CreateInstance and CreateInstanceFrom and use GetConstructor and
	Invoke only with Type [] until the other overloaded versions work.

2002-07-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Activator.cs: reformatted. Implemented CreateInstance* methods
	that return ObjectHandle.

	* AppDomain.cs: implemented CreateInstance*AndUnwrap methods.

2002-07-03  Nick Drochak  <ndrochak@gol.com>

	* Decimal.cs (Divide): Short cut the case where the dividend is 0 (and
	the divisor is not) and avoid the icall, which seems to have a bug.

2002-07-03  Nick Drochak  <ndrochak@gol.com>

	* Double.cs (CompareTo): Correctly handle the case where the instance
	is NaN. Also return 0 if the values are equal.

2002/07/03  Nick Drochak <ndrochak@gol.com>

	* MissingMethodException: Add missing Message property
	* MissingMemberException: Add missing Message property

2002-06-30  Nick Drochak  <ndrochak@gol.com>

	* Double.cs (CompareTo): Just see which is bigger.  Don't use the
	subtraction trick, it doesn't work when the values have a diference of
	less than one.

	* Single.cs (CompareTo): same

2002-06-27  Martin Baulig  <martin@gnome.org>

	* UIntPtr.cs (UIntPtr.Zero): Use an explicit `u' suffix in the
	constructor argument.  [FIXME: The implicit conversion to an
	unsigned integer doesn't work with mcs.]

2002-06-26  Martin Baulig  <martin@gnome.org>

	* DecimalFormatter.cs: Removed MSTEST stuff, use `System',
	not `S = System'.  This file now compiles with mcs.

	* String.cs: Removed the already ifdef-outed __arglist Concat function
	to make it compile with mcs.

2002-06-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* IntegerFormatter.cs:
	(FormatParse.FormatNumber): fixed custom format for negative numbers.

2002-06-21  Martin Baulig  <martin@gnome.org>

	* Double.cs: Replace the private `enum State' with constants since this
	will avoid some bigger headaches in mcs.

Thu Jun 20 17:51:44 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* TimeSpan.cs: do not pollute the namespace with the
	System.Parser name.

2002-06-18  Nick Drochak  <ndrochak@gol.com>

	* ArgumentException.cs: Use the message given in the constructor when
	accessing the Message property.  Thanks to Dietmar for the help with 
	"base".

2002-06-17  Dietmar Maurer  <dietmar@ximian.com>

	* MonoType.cs: GetField is now a InternalCall

2002-06-13  Nick Drochak  <ndrochak@gol.com>

	* DateTime.cs: (Parse): Accept dates that have no hour,min,sec. in the
	sortable format(s), e.g. "2002-02-25"

2002/06/12  Nick Drochak <ndrochak@gol.com>

	* Random.cs (Next): Fix math error.  Return a number within the range.

2002-06-12  Nick Drochak  <ndrochak@gol.com>

	* String.cs (IndexOf): Return -1 if start index is equal to string
	length.

2002-06-10  Duncan Mak  <duncan@ximian.com>

	* Convert.cs (ToDouble): Remove rounding in ToDouble (float).
	(ToType): Added null field in conversionTable to avoid
	IndexOutOfRangeException. Changed what exceptions we throw to match
	the spec.
	
2002-06-11  Nick Drochak  <ndrochak@gol.com>

	* Int64.cs (Parse): Added unique strings to the messages where we throw
	a FormatException. Needed these to debug, so just left them in since
	they might be useful later. Fixed Currency parsing where we weren't
	looking at CurrencyDecimalSeparator, etc.

2002-06-09  Lawrence Pit  <loz@cable.a2000.nl>

	* DateTime.cs: fixes to pass tests M0 to M6:
		if yy pattern then year values >= 30 are in 20th century
		rfc1123 pattern is always in GMT, therefor useutc must be false
	made GetNow() internal static so it can be called from TimeZone.
	* TimeZone.cs: removed dependency on year 2002 from initialization of 
	current timezone.

2002-06-09  Duncan Mak  <duncan@ximian.com>

	* Convert.cs (ToType): Rearranged what Exceptions we throw to
	match MS behavior.

2002-06-08  Duncan Mak  <duncan@ximian.com>

	* Decimal.cs: Added support for the IConvertible interface.

2002-06-08  Martin Baulig  <martin@gnome.org>

	* Enum.cs (IsDefined): `value' may be of the enum's type itself, it
	doesn't necessarily need to be of the enum's underlying type.

2002/06/07  Nick Drochak <ndrochak@gol.com>

	* String.cs: Add [Serializable] to class
	* SByte.cs (Parse): Add [CLSCompliant(false)] to all the overloads

2002-06-04  Nick Drochak  <ndrochak@gol.com>

	* Double.cs (Parse): Recognize the group separator string, but still we
	don't check the format for the proper number of digits between
	separators. Also throw OverflowException when we get Pos or Neg
	Infinity from runtime.

2002-06-03  Duncan Mak  <duncan@ximian.com>

	* Convert.cs (ToDouble): Fixed ToDouble (byte value).

Mon Jun 3 12:18:18 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* Type.cs: fixed GetTypeCode.

2002-06-02  Duncan Mak  <duncan@ximian.com>

	* Convert.cs (ToInt16): use Convert.ToInt16 (int) instead of a direct
	cast from an int so that we throw OverFlowException correctly.
	
	(ToInt64): Use a new 64bit version of ConvertToBase.
	
	(ConvertToBase): Add checks for overflow (checks Int32.MinValue
	and Int32.MaxValue).

	(ConvertFromBase64): New 64-bit version of ConvertFromBase.

2002-06-02  Nick Drochak  <ndrochak@gol.com>

	* Convert.cs (ToSByte): Check for special value.
	* Single.cs (Parse): 
	* UInt16.cs (Parse):
	* UInt32.cs (Parse): Throw OverflowException if negative

2002-06-02  Duncan Mak  <duncan@ximian.com>

	* Convert.cs (DBNull): Point it to DBNull.Value.
	(IsDBNull): Instead of checking typecodes, just check to see if
	it's the same as the DBNull field.

2002-06-02  Nick Drochak  <ndrochak@gol.com>

	* Convert.cs (ConvertFromBase): Detect bad digits correctly.

2002-06-02  Duncan Mak  <duncan@ximian.com>

	* Char.cs (Parse): Simplify the Exception handling.

	* Convert.cs (ToDecimal): Remove call to Math.Round () when
	converting from a float.

2002-05-30  Martin Baulig  <martin@gnome.org>

	* MonoType.cs (GetInterface): Implemented.

Thu May 23 17:17:28 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* Activator.cs: implemented CreateInstance ().

2002-05-22  Duncan Mak  <duncan@ximian.com>

	* Convert.cs (ConvertToBase): Added new 64bit version.
	(BuildConvertedString64): New 64bit version of
	BuildConvertedString.

	This fixes bug 25068.

	(ConvertFromBase): Added additional test for checking if the
	digits are valid. Thanks to Miguel for coming up with this test.

	This fixes bug 25071.
	
2002-05-21  Duncan Mak  <duncan@ximian.com>

	* Convert.cs (ToType): Rearranged to fit the new layout of
	conversionTable.

	(conversionTable): Rearranged to fit the layout of the
	System.TypeCode enum.

	This should fix bug 25075.
	
2002-05-21  Duncan Mak  <duncan@ximian.com>

	* Convert.cs (ToString): Fixed the ToString methods. Previously I had
	mixed up the two code paths, one for converting to a specific base
	(this case), another from converting from a foreign base to base10
	(used by ToInt16|32|64 (string, int)). This fixes bug 25068.

	* Convert.cs (ToByte)
	(ToSByte): Fixed bug 25074. Added more bits to ConvertFromBase so
	that we won't confuse FormatException with OverflowException.

2002-05-22  Lawrence Pit  <loz@cable.a2000.nl>

	* Environment.cs: CommandLine missed spaces between arguments.
	Implemented StackTrace. Returning MachineName in UserDomainName
	instead of null.
	
Tue May 21 17:25:49 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* MonoCustomAttrs.cs: handle inherit argument.

2002-05-21  Nick Drochak  <ndrochak@gol.com>

	* Math.cs (Pow): Change icall method name and insert parameter
	checks in for infinities and NaN.

2002-05-13  Miguel de Icaza  <miguel@ximian.com>

	* Double.cs (Parse): Reimplement by cleaning up the string first,
	and then passing to strtof in the mono runtime.

	* Single.cs (Parse): Use the Double implementation and cast to
	float. 

2002-05-21  Nick Drochak  <ndrochak@gol.com>

	* Math.cs 
		(Ceiling): Check for "special" values
		(Floor): Check for "special" values
		(Round): Fix off-by-one error on decimal shifting

2002-05-20  Lawrence Pit  <loz@cable.a2000.nl>

	* DateTime.cs: ToString () using "G" format specifier 

2002-05-19  Martin Baulig  <martin@gnome.org>

	* Convert.cs (FromBase64CharArray): Do correct exception handling.

2002-05-19  Martin Baulig  <martin@gnome.org>

	* Convert.cs (FromBase64CharArray): Convert the char array using
	System.Text.UTF8Encoding, not UnicodeEncoding (which is UTF-16) to
	a byte array.

2002-05-17  Miguel de Icaza  <miguel@ximian.com>

	* MonoType.cs: Style changes.

	* Type.cs: Style changes.

2002-05-16  Piers Haken <piersh@friksit.com

	* UInt64.cs: fix declaration of IConvertible.To* overrides.

2002-05-16  Nick Drochak  <ndrochak@gol.com>

	* BitConverter.cs (ToString): Add parameter check for invalid start 
	index.

	* Console.cs: Use AutoFlush on the StreamWriter for stdin and stdout
	now that StreamWriter uses buffering

2002-05-14  Miguel de Icaza  <miguel@ximian.com>

	* Double.cs: Oops.  Also handle exponents without finding a dot.

2002-05-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* ChangeLog: removed empty entry at the top of the file.

	* Int32.cs: made static functions used by Parse internal.

	* Int64.cs:
	* UInt32.cs:
	* UInt64.cs: removed static fucntions used by Parse and use the ones
	in Int32.cs

2002-05-12  Daniel Morgan <danmorg@sc.rr.com>

	* IServiceProvider.cs: added using System

2002-05-09  Daniel Morgan <danmorg@sc.rr.com>

	* Single.cs: copied ToString() and Parse() methods from 
	Double to Single and modified a tiny bit for Single.  
	There is still a FIXME for Double and Single about
	passing the format and provider info to the icall too.

2002-05-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Int32.cs:
	* Int64.cs:
	* UInt32.cs:
	* UInt64.cs (Parse): don't use Char.IsNumber to test for hex digits.
	Don't use a delegate to test for valid digits.

2002-05-01  Duncan Mak  <duncan@ximian.com>

	* Convert.cs: 
	* Math.cs: Added missing CLSCompliant attributes where necessary.
	
2002-04-30  Duncan Mak  <duncan@ximian.com>

	* ArgumentException.cs (Message): 
	* ArgumentOutOfRangeException.cs (Message): Added.

2002-04-30  Nick Drochak  <ndrochak@gol.com>

	* MonoType.cs: Remove unused variable and eliminate a compiler warning.

Mon Apr 29 15:32:02 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* Environment.cs: support for Exit(), CommandLine, CommandLineArgs ().

2002-04-28  Duncan Mak  <duncan@ximian.com>

	* DivideByZeroException.cs: Added missing serialization constructor.

	* UnauthorizedAccessException.cs: Added the missing Serializable attribute.

2002-04-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Math.cs: fix Floor () and Round (). Closes #23960.

2002-04-27  Nick Drochak  <ndrochak@gol.com>

	* Array.cs (IList.Contains): Should throw a RankException if this is 
	called on a Rank > 1 array. Not in the docs, but this is what the 
	MS.NET does.

2002-04-26  Duncan Mak  <duncan@ximian.com>

	* MissingMemberException.cs: Made the message variable 'protected'
	instead of 'private', so that we can see it in
	MissingMethodException and MissingFieldException.

	* MissingFieldException.cs:
	* MissingMethodException.cs: Added missing (string, string)
	constructor, and also the Message property.

2002-04-26  Martin Baulig  <martin@gnome.org>

	* Enum.cs: Implemented the IConvertible methods.

2002-04-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* SByte.cs: little change in Parse (string) to avoid incorrect
	OverflowException thrown (reported by nickd).

2002-04-22  Miguel de Icaza  <miguel@ximian.com>

	* ValueType.cs: Add Serializable attribute.

	* String.cs: ifdef-out out the __arglist Concat function until I
	add support for that to mcs.

2002-04-24	Patrik Torstensson <patrik.torstensson@labs2.com>

	* AppDomain.cs (GetValue): usage of the correct icall (bug)

Wed Apr 24 21:15:44 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* GC.cs: implement most of the methods as icalls.

2002-04-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* DecimalFormatter.cs (ToString): return correct value when the
	decimal number is 0.

2002-04-24	Patrik Torstensson <patrik.torstensson@labs2.com>
	
	* Type.cs (GetProperty): fixed call syntax (needs an empty array not null)
	* MonoType.cs (GetPropertyImpl) : basic implementation (ignores types, bindingAttr, modifiers)

2002-04-24  Nick Drochak  <ndrochak@gol.com>

	* Double.cs (Parse): Handle case where there are no digits before the 
	decimal point, such as ".1".

2002-04-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Int32.cs:
	* UInt32.cs:
	* Int64.cs:
	* UInt64.cs: fixed bug #23738 (hex numbers parsed wrong).

2002-04-23	Patrik Torstensson <patrik.torstensson@labs2.com>

	* String.cs (Split): fixed invalid split of count 0 and 1.
	
2002-04-23	Patrik Torstensson <patrik.torstensson@labs2.com>
	
	* String.cs (LastIndexOf): fixed argument checking.
	* String.cs (Equals): made internal for performace.

2002-04-23  Nick Drochak  <ndrochak@gol.com>

	* String.cs (Join): check argument and throw exception if needed

2002-04-23  Nick Drochak  <ndrochak@gol.com>

	* String.cs (StartsWith): check argument and throw exception if needed

2002-04-22  Nick Drochak  <ndrochak@gol.com>

	* String.cs (IndexOfAny): check arguments and throw exceptions as
	neccessary.  ALso remove some debug WriteLines.

2002-04-20  Dietmar Maurer  <dietmar@ximian.com>

	* String.cs: use internal constructors
	buf fix in Concat.

Thu Apr 18 17:16:15 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* MonoType.cs: make GetElementType its own icall.

2002-04-18  Nick Drochak <ndrochak@gol.com>

	* String.cs: Modified file. Re-add methods needed by the unit tests.

Thu Apr 18 12:38:32 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* String.cs: some code speedups and restored GetTypeCode().

2002-04-17	Patrik Torstensson <patrik.torstensson@labs2.com>

	* String.cs: New implementation using internal calls.
	
2002-04-16  Nick Drochak  <ndrochak@gol.com>

	* DecimalFormatter.cs: Trim off excess null characters from the string
	that decimal2string gives back.

2002-04-16  Nick Drochak  <ndrochak@gol.com>

	* String.cs (SubString): revert my change.  I can't reproduce the
	problem anymore.

2002-04-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Attribute.cs: added GetHashCode and Equals.

2002-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Enum.cs: little improvements to Format ().

Thu Apr 11 12:28:13 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* String.cs: internalcall GetHashCode().
	* Array.cS: optimize access to elements.

Wed Apr 10 21:20:19 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* String.cs: make IndexOfAny() use an internalcall.

2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Int32.cs:
	* UInt32.cs:
	* Int64.cs: 
	* UInt64.cs: fixed error when testing for validity of flags.

2002-04-11  Nick Drochak  <ndrochak@gol.com>

	* Double.cs: Use an internal call for ToString(). This is just a simple
	implementation to get away from throwing a NotImplementedException.

2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Int32.cs:
	* UInt32.cs:
	* Int64.cs: 
	* UInt64.cs: changed Type.GetType () by typeof (), as suggested by
	lupus.

	* Int32.cs:
	* Int64.cs: throw an OverFlowException when parsing a string 
	containing a dot followed by any non '0' number.

2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Byte.cs:
	* UInt16.cs:
	* UInt32.cs:
	* UInt64.cs: added complex Parse ().

2002-04-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* SByte.cs:
	* Int16.cs:
	* Int32.cs:
	* Int64.cs: added complex Parse ().

2002-04-09  Nick Drochak  <ndrochak@gol.com>

	* Array.cs (BinarySearch): Add checks on paramters before using them
	and throw exceptions as needed.

	* Enum.cs (Format): Check if [Flags] is applied to enum and convert
	"G" format to "F" if so.

Tue Apr 9 13:12:09 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* MonoCustomAttrs.cs: return arrays of type Attribute[]
	instead of object[].

2002/04/09  Nick Drochak <ndrochak@gol.com>

	* String.cs (Substring): Copy only non-null characters to the new
	string.

2002-04-09  Nick Drochak  <ndrochak@gol.com>

	* IntegerFormatter.cs: Don't use a format character to indicate a
	custom format was passed in. It was using 'z' to indicate a custom
	format, but really it should throw a format exception if the user
	tries to use "z" as the format string. Now it does.

	* Activator.cs: New File.

2002-04-08  Nick Drochak  <ndrochak@gol.com>

	* Enum.cs (ToString): Big ugly fix for the case where [Flags] is
	applied to an enum. Need to handle the different possible integer
	types of an enum somehow.  Can anyone say generics?

Mon Apr  8 06:22:42  2002 Piers Haken <piersh@friskit.com>

	* Convert.cs: switched the To*(object) methods to use
	IConvertible directly instead of calling ChangeType

Sat Apr 6 20:08:41 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* ValueType.cs: make Equals() an internalcall.

Fri Apr 5 15:38:54 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* Type.cs: also look for nested types in FindMembers.
	* MonoType.cs: make GetNestedTypes() an internalcall.

2002-04-05  Nick Drochak  <ndrochak@gol.com>

	* Enum.cs (Parse): Handle different underlying types.

2002/04/04 Nick Drochak <ndrochak@gol.com>

	* Enum.cs (IsDefined): Throw exception when type of value to look for
	is not the correct one.  Attempt to have it work with string values
	too, but not sure if the unit tests are getting that far yet.

2002-04-04  Nick Drochak  <ndrochak@gol.com>

	* Decimal.cs: Fix a couple of typos.

Wed Apr 3 19:46:00 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* Enum.cs: the values array is of the enum and not of the underlying
	type. Updates and some bug fixes.
	* MonoType.cs: make the internalcall return FullName instead of the
	assembly qualified name.
	* Type.cs: make ToString () simply return FullName.

2002-04-03  Nick Drochak  <ndrochak@gol.com>

	* Type.cs (GetTypeCode): provide some of the implementation for this
	method.  It's still too simplistic to be considered complete.

2002-04-02  Dietmar Maurer  <dietmar@ximian.com>

	* Object.cs: fixed FieldGetter/FieldSetter signature

2002-04-02  Nick Drochak  <ndrochak@gol.com>

	* Environment.cs: add MonoTODO's on parts that should have it.

2002-04-01  Nick Drochak  <ndrochak@gol.com>

	* Enum.cs: added reality checks (check parameters to most methods that
	need them).

2002-03-30  Dietmar Maurer  <dietmar@ximian.com>

	* Object.cs: added FieldGetter/FieldSetter

2002-03-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* IntegerFormatter.cs: fixed initialization error in static
	constructor.

2002-03-28  Dietmar Maurer  <dietmar@ximian.com>

	* Delegate.cs: added new field to store a trampoline function

2002-03-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* IntegerFormatter.cs: added workaround for bug #22668. First patch to
	make custom format strings work (not fully functional yet).

2002/03/28  Nick Drochak <ndrochak@gol.com>

	* IntegerFormatter.cs: Change class from internal to public.  Add
	necessary [CLSCompliant(false)] attributes.

2002-03-27  Duco Fijma  <duco@lorentz.xs4all.nl>
	* _AppDomain.cs, AppDomain.cs: renamed method GetDate to GetData
	(was a typo)

2002-03-28  Nick Drochak  <ndrochak@gol.com>

	* Type.cs: Added MonoTODO tags on members that have FIXME, etc.

2002-03-27  Dan Lewis  <dihlewis@yahoo.co.uk>

	* Console.cs: Modified to get std handles from MonoIO.
	* Environment.cs: removed PAL dependencies.

2002-03-25  Miguel de Icaza  <miguel@ximian.com>

	* String.cs (System): Removed internal enumeration, because
	bootstrapping the corlib at this point does not support
	enumerations. 

	* IntPtr.cs: Temporary work-around until I fix the assembly
	attributes bug.

2002-03-24  Martin Baulig  <martin@gnome.org>

	* Enum.cs (GetValues): According to the docu this is sorted after
	values, not names.

	* String.cs (System): Removed enumeration, because it is pretty
	hard to support enumerations in /nostdlib mode for the core types.

Tue Mar 19 18:18:49 CET 2002 Paolo Molaro <lupus@ximian.com>

	* Array.cs: move error handling in the catch block.
	* MulticastDelegate.cs: remove == and != operators that were
	removed with the delegate changes (when you add stuff, please do not
	remove existing functionality!).
	* Type.cs: if a property is not found in a type, search for it
	in the parent types, too.

2002-03-18  Dan Lewis <dihlewis@yahoo.co.uk>
	
	* Math.cs: changed to use icall instead of PAL.

2002-03-18  Dietmar Maurer  <dietmar@ximian.com>

	* Double.cs: added check for NaN (Bug [22082])

2002-03-19  Nick Drochak  <ndrochak@gol.com>

	* Enum.cs (Equals): check for null and throw if it is.
	* Enum.cs (Format): check for null parameters and throw if necessary.
	This method still needs more argument checking.

2002-03-18  Dietmar Maurer  <dietmar@ximian.com>

	* Enum.cs (Equals): check if Enums are of the same type

2002-03-18  Nick Drochak  <ndrochak@gol.com>

	* Double.cs: Explicitly handle comparisons in CompareTo() for
	Positive/Negative Infinity and NaN. Unit Test now passes on Linux.

	* Enum.cs(CompareTo): Check types of values before trying to compare.
	Throw exceptions if types are invalid or don't match.

2002-03-14  Miguel de Icaza  <miguel@ximian.com>

	* Array.cs: Add some extra debugging information.

2002-03-15  Nick Drochak  <ndrochak@gol.com>

	* Array.cs: Added IList and IEnumerable. 

2002-03-14  Miguel de Icaza  <miguel@ximian.com>

	* UInt64.cs, UInt32.cs, UInt16.cs: Mark public parse methods as
	NonCLSCompliant. 

2002-03-14  Dietmar Maurer  <dietmar@ximian.com>

	* Delegate.cs (Equals): also compare method_ptr 
	(GetHashCode): returm method_ptr as hash

2002-03-13  Duco Fijma  <duco@lorentz.xs4all.n>
	* TimeSpan.cs: removed the use of Custom Numeric Format Strings,
	such as 42.ToString("0000000"), as these are (currently) not implemented
	in System.IntegerFormatter. TimeSpan luckely can do with Standard
	Numeric Format Strings, such as 42.ToString("D7").

2002-03-12  Duncan Mak  <duncan@ximian.com>

	* FieldAccessException.cs: 
	* MethodAccessException.cs: 
	* PlatformNotSupportedException.cs: Inherit from
	MemberAccessException, not SystemException.

	* ObsoleteAttribute.cs: Made Message and IsError properties
	instead of fields.

Tue Mar 12 19:21:18 CET 2002 Paolo Molaro <lupus@ximian.com>

	* GC.cs: make SuppressFinalize() a nop.
	* Delegate.cs: fix == operator.

2002-03-13  Nick Drochak  <ndrochak@gol.com>

	* Enum.cs: Add IConvertible methods. Cyclic dependancy fixed in the
	runtime that goes with this patch.

2002-03-10  Martin Baulig  <martin@gnome.org>

	* Int32.cs (Parse): Correctly parse negative numbers.

2002-03-08  Martin Baulig  <martin@gnome.org>

	* String.cs (Split): Really fix it this time. Also adding several new
	testcase to the testsuite.	 

2002-03-08  Martin Baulig  <martin@gnome.org>

	* Array.cs (Copy): Optimized: removed duplicate null check, removed
	two duplicate GetLowerBound() calls and one duplicate IsValueType.

Fri Mar 8 18:49:19 CET 2002 Paolo Molaro <lupus@ximian.com>

	* Object.cs: commit my hacked GetHashCode(): it's good enough for now.
	* String.cs: use the dumb code for IndexOf(string): this is worth
	15-20 % speedup in mcs compile with mint.

Fri Mar 8 12:45:44 CET 2002 Paolo Molaro <lupus@ximian.com>

	* String.cs: revert change to Split() that broke the compiler (hi martin!:-).

2002-03-07  Martin Baulig  <martin@gnome.org>

	* String.cs (Join): Throw an ArgumentNullException.
	(LastIndexOf (string,int,int)): This method does a backwards search,
	so startIndex points to the end of value, not to its beginning. Don't
	throw an exception if startIndex equals this.Length. Always return -1
	if startIndex is smaller than the length of value.
	(Replace (string,string)): Replace all occurences of oldValue.
	If newValue is null, all occurences of oldValue are to be removed.
	(Split (char[],int)): Return an empty array if maxCount is zero, throw
	an ArgumentOutOfRangeException if it's less than zero. Return maxValue
	elements, not maxValue+1.

Thu Mar 7 17:16:06 CET 2002 Paolo Molaro <lupus@ximian.com>

	* MonoType.cs: make GetEvents() an internal call.
	* MulticastDelegate.cs: copy the passed in array.

2002-03-06  Martin Baulig  <martin@gnome.org>

	* Array.cs (Copy): Use FastCopy when appropriate and do correct
	exception handling.

2002-03-06  Duco Fijma  <duco@lorentz.xs4all.nl>
	* CharEnumerator.cs: fixes to CharEnumertor.MoveNext, fixing 
	some of the failures found be new tests (see ChangeLog in 
	Test/System). Comments added to this method, based on
	the representation invariant of this class, that (try to) explain
	why it now should be correct.

2002-03-06  Dietmar Maurer  <dietmar@ximian.com>

	* Int64.cs (Parse): bug fix for max. negative value. 

2002-03-07  Nick Drochak  <ndrochak@gol.com>

	* RuntimeTypeHandle.cs: Add Serializable attribute as the docs say.
	I need to understand what the difference between the attribute and
	the interface is.

2002-03-06  Martin Baulig  <martin@gnome.org>

	* Array.cs (Copy): Always throw an ArrayTypeMismatchException, not
	an InvalidCastException if the widening conversion failed. See
	testcases #M94-#M96.

	* Array.cs (CopyTo): Bug fix from Ajay Dwivedi, correctly handle
	arrays with non-zero lower bounds. Also adding testcases #F10-#F13
	for this.

	* Array.cs (CopyTo): Reverted my last change, it was incorrect.
	(Copy): Actually allow copying multi-dimensional arrays.

2002-03-05  Duncan Mak  <duncan@ximian.com>

	* Convert.cs:
	(DBNull) Added the missing field.
	(IsDBNull) Fixed typo.
	(ToByte (string, int)) Implemented.
	(ToString (byte, int)) Implemented.
	(ConvertToBase)
	(BuildConvertedString) internal functions used for converting values to
	a specific base.

	* Int16.cs: 
	* Int32.cs:
	* Int64.cs:
	* Single.cs:
	* UInt16.cs: 
	* UInt32.cs: Implemented the IConvertible interface.	

	* CharEnumerator.cs: Renamed to variables to be clearer and
	changed some of the tests to conform to the 1.0 spec.

2002-03-06  Martin Baulig  <martin@gnome.org>

	* Array.cs (Copy): Calculate absolute array position here and use
	GetValueImpl() and SetValueImpl() with that position. We can now
	copy multi-dimensional arrays.
	(CopyTo): Small bug fix.

2002-03-05  Duco Fijma  <duco@lorentz.xs4all.nl>

	* Version.cs: CompareTo changed according the LAMESPEC discovered by 
	Nick (See VersionTest.cs).
	* CharEnumerator.cs: fixed two bugs in MoveNext. It had an off-by-one
	error comparing the current position (idx) against the length of the
	string iterated and it set idx to an unrecognized special value (-2)

Tue Mar 5 17:34:14 CET 2002 Paolo Molaro <lupus@ximian.com>

	* SByte.cs, UInt64.cs: implement IConvertible interface. Nobody wants
	to do this dirty work, but someone has to do it (and I need it to pass
	the "200 sample tests compiled on linux" mark).

2002-03-06  Nick Drochak  <ndrochak@gol.com>

	* Attribute.cs
	* DecimalFormatter.cs
	* Delegate.cs
	* Double.cs
	* GC.cs
	* Int16.cs
	* Int32.cs
	* MonoType.cs
	* RuntimeMethodHandle.cs
	* RuntimeTypeHandle.cs
	* String.cs
	* Type.cs:
		Add [MonoTODO]'s to places where we currently throw a
		NotImplementedException.

2002-03-05  Dietmar Maurer  <dietmar@ximian.com>

	* Int16.cs (Parse): do not overflow on max negative value

	* Int32.cs (Parse): do not overflow on max negative value

Mon Mar 4 20:36:05 CET 2002 Paolo Molaro <lupus@ximian.com>

	* Type.cs: fixed IsClass.
	* MonoType.cs: fixed MemberType, IsPrimitiveImpl, IsPointerImpl,
	IsByRefImpl. Added GetInterfaces().
	* IServiceProvider.cs: compilation fix.

Mon Mar 4 18:37:03 CET 2002 Paolo Molaro <lupus@ximian.com>

	* Array.cs: allow copying an empty array to an empty array.

Mon Mar 4 17:59:16 CET 2002 Paolo Molaro <lupus@ximian.com>

	* String.cs: fixed LastIndexOf (string) to do a bit of argument
	checking.

2002-03-04  Duco Fijma  <duco@lorentz.xs4all.nl>
	* Version.cs: many fixes to failures found by the newly created
	test cases for this class. Specifically, the CompareTo member
	returned wrong values due to the use of Int32.MaxValue as a special
	value indicating an "undefined" version component. Also implemented the
	missing operators (==, <, >, etc.), one missing constructor and
	and some exception throwing.

2002-03-04  Nick Drochak  <ndrochak@gol.com>

	* IServiceProvider.cs: Add missing attribute: ComVisible(false)
	* Attribute.cs: Add missing attributes: Serializable and
	AttributeUsage(AttributeTargets.All)

Mon Mar 4 11:26:49 CET 2002 Paolo Molaro <lupus@ximian.com>

	* MonoType.cs: implemented GetConstructors(), GetFields(),
	GetMethods(), GetProperties().
	* Object.cs: added debugging icall obj_address().
	* Type.cs: fixed the binding flags for some Get* methods.
	Implemented FindMembers() as calls to the specific GetMember
	methods.

2002-03-01  Duco Fijma  <duco@lorentz.xs4all.nl>
	* BitConverter.cs: fixed one little bug: ToString(s, n, 0) 
	should give an exception for n>=s.Length.

2002-03-01  Martin Baulig  <martin@gnome.org>

	* Array.cs: More argument checking and bug fixing.

2002-03-01  Miguel de Icaza  <miguel@ximian.com>

	* BitConverter.cs: Indentation match

	* AppDomain.cs: Added MonoTODOs to this too.

	* Buffer.cs: Added MonoTODOs to this.

2002-03-01  Martin Baulig  <martin@gnome.org>

	* Array.cs: Added argument checking to all methods where it was missing.

2002-03-01  Duco Fijma  <duco@lorentz.xs4all.nl>

	* BitConverter.cs: Fixed bugs in ToString methods

Fri Mar 1 15:20:00 CET 2002 Paolo Molaro <lupus@ximian.com>

	* MulticastDelegate.cs: implement operators so mcs3 can be used on linux.

2002-03-01  Nick Drochak  <ndrochak@gol.com>

	* BitConverter.cs: Throw ArgumentException like mscorlib, instead of
	ArgumentOutOfRangeException like the docs say.

2002-03-01  Martin Baulig  <martin@gnome.org>

	* Enum.cs (CompareTo): Correctly override this method from IComparable.

	* Console.cs (setIn, setOut, setError): It's called SetIn, SetOut, SetError.

2002-02-28  Martin Baulig  <martin@gnome.org>

	* String.cs: This file now passes the testsuite on Linux :-)
	
	* String.cs (Intern, IsInterned): The interncalls are now called _Intern and _IsInterned;
	make them private and provide C# wrappers which do proper argument checking.

	* String.cs (Format): Correctly handle escaped brackets.

	* String.cs (_CompareChar): New internal function which compares two chars.
	(_Compare): Provide an internal compare method which can do all sorts of
	comparision and call it from all the Compare() methods. Also fixed a lot of
	bugs here, this code now actually passes the testsuite.

2002-02-28  Duncan Mak  <duncan@ximian.com>

	* Convert.cs: Added the missing methods. The new class status page
	kicks ass, it even found my typos! Woohoo!
	(ConvertFromBase): Moved the Exception throwing in here and
	removed the other occurances so it's all centralized now.
	(ISDBNull): Implemented.
	(GetTypeCode): Implemented.

2002-02-27  Duco Fijma  <duco@lorentz.xs4all.nl>
	* Guid.cs: Guid.ToString("") and Guid.ToString(null) is now understood as Guid.ToString("D") 
	just as in mscorlib. There is (probably) a documentation bug in the MS FrameWork SDK, which
        states that a lacking format should be interpreted as "N".  
	Also added [Serializable] attribute
	* TimeSpan.cs: some formatting and added the [Serializable] attribute

2002-02-26  Duncan Mak  <duncan@ximian.com>

	* WeakReference.cs: Committed for Ajay Kumar Dwivedi.	

2002-02-26  Martin Baulig  <martin@gnome.org>

	* TimeZone.cs: Use an internal enum rather than magic numbers to access the
	fields of the interncall GetTimeZoneData.

	* DateTime.cs: Implemented Parse and fixed a few bugs.

	* String.cs (TrimStart): Small fix.

2002-02-26  Martin Baulig  <martin@gnome.org>

	* DateTime.cs: ParseExact is now fully functional.

	* String.cs (TrimEnd): Small fix.

2002-02-26  Duco Fijma <duco@lorentz.xs4all.nl>
	* TimeSpan.cs: Added method TimeSpan.FromMilliseconds, mysteriously 
	missing for about six months.

Tue Feb 26 14:21:19 CET 2002 Paolo Molaro <lupus@ximian.com>

	* UInt64.cs: fixed Parse method () to handle some of the NumberStyle flags.

2002-02-26  Martin Baulig  <martin@gnome.org>

	* DateTime.cs: Miguel already committed this, but there was still a
	ChangeLog entry for this missing ....
	We're now reusing functionality from TimeSpan, printing dates is
	fully implemented, currently working on parsing.

	* TimeZone.cs: Fully implemented this. There's a new InternCall in the
	runtime for this.

Fri Feb 22 18:47:08 CET 2002 Paolo Molaro <lupus@ximian.com>

	* MonoType.cs: disable constructor.
	* Object.cs: make GetType() an internalcall.
	* Type.cs: added correct bindingflags to GetMethods ().
	All such calls should be reviewed to use the correct flags.

Thu Feb 21 19:23:46 CET 2002 Paolo Molaro <lupus@ximian.com>

	* Type.cs, MonoType.cs: type_is_subtype_of () changed to include extra
	argument.

Thu Feb 21 16:56:51 CET 2002 Paolo Molaro <lupus@ximian.com>

	* Type.cs: implemented IsAssignableFrom.

2002-02-21  Duco Fijma <duco@lorentz.xs4all.nl>
	* Guid.cs: fixed Guid.Guid(string) ctor. Changed format:
	"{0xdddddddd,0xdddd,0xdddd,{0xdd},{0xdd},{0xdd},{0xdd},{0xdd},{0xdd}}" 
	to "{0xdddddddd,0xdddd,0xdddd,{0xdd,0xdd,0xdd,0xdd,0xdd,0xdd}}" 
	The former is documented by Microsoft. The latter is how they
	actually implemented it in mscorlib:-)

Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>

	* MonoCustomAttrs.cs: hooks to get the custom attributes from the
	runtime.
	* MonoType.cs: Implemented custom attributes methods.


2002-02-21  Duco Fijma <duco@lorentz.xs4all.nl>
	* Guid.cs: 

Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>

	* MonoCustomAttrs.cs: hooks to get the custom attributes from the
	runtime.
	* MonoType.cs: Implemented custom attributes methods.

2002-02-19  Dietmar Maurer  <dietmar@ximian.com>

	* Array.cs (CopyTo): use GetLength() instead of GetUpperBound() 

2002-02-19  Duncan Mak  <duncan@ximian.com>

	* Convert.cs: Finished up the missing methods in Convert. Added a
	new private method ConvertFromBase.

2002-02-19  Dietmar Maurer  <dietmar@ximian.com>

	* String.cs: impl. IConvertible interface

2002-02-18  Duco Fijma <duco@lorentz.xs4all.nl>
	* Guid.cs: actual implementation for Guid.Guid(string) Ctor

2002-02-18  Duncan Mak  <duncan@ximian.com>

        * Convert.cs: Changed from using Type.GetType (string) to just
        typeof (). Probably will speed things up a bit?		

2002-02-18  Ajay Kumar Dwivedi <AjayKumar.Dwivedi@dresdner-bank.com>

	* Array.cs:         
	1. Fix for GetUpperBound to return correct values
        2. made some Properties virtual
        3. Adds IsFixedSize and IsReadOnly properties.
        4. changes CreateInstance(Type,int[],int[]) to throw Exception
	when third arg is null. InternalCall CreateInstance changed to  
	CreateInstanceImpl
        5. Fixed array.GetUpperBound at a couple of places
        6. IndexOf and LastIndexOf now use Object.Equals instead of "=="
        7. Added two FIXME's in BinarySearch functions.

2002-02-17  Duncan Mak  <duncan@ximian.com>

        * TimeZone.cs:	Applied the rest of Ajay's patch for	
        IsDaylightSavingTime. Thanks a lot for the nice explanation of how
        it works!

2002-02-17  Duco Fijma  <duco@lorentz.xs4all.nl>
	* Guid.cs: added stub for Guid(string) ctor

2002-02-17  Duncan Mak  <duncan@ximian.com>

	* Convert.cs: Near-complete implementation of Convert.cs

	Added all the To* methods taking (object) and
	(object, IFormatProvider) as parameters.

	Added [CLSCompliant (false)] attributes to methods dealing with
	unsigned types.

	Added the missing section on converting to and from DateTime. Only
	6 missing methods, all marked with MonoTODOs. Will tackle them later.		

2002-02-16  Duncan Mak  <duncan@ximian.com>

	* TimeZone.cs: patch from Ajay Kumar Dwivedi (adwiv@yahoo.com) to
	make IsDaylightSavingTime (DateTime) call 
	IsDaylightSavingTime (DateTime, DaylightTime).	
	
	Added internal class CurrentTimeZone from Ajay. It needs more work
	to fill in the appropriate internal calls.
	
Sat Feb 16 12:41:41 CET 2002 Paolo Molaro <lupus@ximian.com>

	* Type.cs: fix IsClass.

Sat Feb 16 12:02:02 CET 2002 Paolo Molaro <lupus@ximian.com>

	* String.cs: fix Trim().

Fri Feb 15 21:02:46 CET 2002 Paolo Molaro <lupus@ximian.com>

	* String.cs: fix more off by one errors.

Thu Feb 14 18:54:09 CET 2002 Paolo Molaro <lupus@ximian.com>

	* MonoType.cs: fix IsValueTypeImpl.
	* Type.cs: fix IsEnum. Implement Equals methods.

Wed Feb 13 21:50:13 CET 2002 Paolo Molaro <lupus@ximian.com>

	* Int32.cs: implement IConvertible interface.
	
2002-02-12  Duncan Mak  <duncan@ximian.com>

	* TimeZone.cs: Implemented and added to CVS.

2002-02-11  Duncan Mak  <duncan@ximian.com>

	* Convert.cs: Implemented the ChangeType () methods.

Mon Feb 11 19:48:58 CET 2002 Paolo Molaro <lupus@ximian.com>

	* Array.cs: make Clone() an internal call.

2002-02-09  Duco Fijma <duco@lorentz.xs4all.nl>
	* Changed Guid.NewGuid so that it can use both System.Random and 
          System.Security.Cryptography.RandomNumberGenerator

2002-02-09  Duco Fijma <duco@lorentz.xs4all.nl>
	* First version of Guid.NewGuid

2002-02-08  Duncan Mak  <duncan@ximian.com>

	* RuntimeArgumentHandle.cs: Added to CVS.

Fri Feb 8 19:14:54 CET 2002 Paolo Molaro <lupus@ximian.com>

	* CrossAppDomainDelegate.cs, AssemblyLoadEventHandler.cs,
	UnhandledExceptionEventHandler.cs: added delegates.

Fri Feb 8 18:06:20 CET 2002 Paolo Molaro <lupus@ximian.com>

	* MarshalByRefObject.cs: add ToString () method
	(apparently needed by nunit).
	* _AppDomain.cs: uncomment ToString(): dietmar fixed the bug triggered
	by it in the runtime.

2002-02-08  Dan Lewis <dihlewis@yahoo.co.uk>
	
	* String.cs (Format): implemented

2002-02-07  Duncan Mak  <duncan@ximian.com>
	
	* DuplicateWaitObjectException:
	* InvalidCastException:
	* NotImplementedException:
	* NotSupportedException:
	* NullReferenceException:
	* OutOfMemoryException:
	* OverflowException:
	* RankException:
	* StackOverflowException.cs:
	* UnauthorizedAccessException: Added missing constructor used for serialization.

2002-02-07  Dietmar Maurer  <dietmar@ximian.com>

	* String.cs (System.Compare): bug fix 

2002-02-06  Dietmar Maurer  <dietmar@ximian.com>

	* Enum.cs (Parse,  GetHashCode): impl. 

2002-02-05  Duncan Mak  <duncan@ximian.com>

	* DBNull.cs: This is my first crack at the DBNull class. I think I
	actually got most of the IConvertible methods right, but I haven't
	done the research to test whether or not this is the correct
	behavior. IConvertible.ToType () is the most iffy of all, IMHO.

	* DllNotFoundException.cs: Inherits from TypeLoadException, not SystemException.

2002-02-05  Dietmar Maurer  <dietmar@ximian.com>

	* Enum.cs: added more functionality (GetName, ToObject, Equals)

2002-01-31  Duncan Mak  <duncan@ximian.com>

	* InvalidOperationException.cs:
	* NotFiniteNumberException.cs:
	* ObjectDisposedException.cs:
	* TypeInitializationException.cs: Added missing bits for serialization/
	
	* AppDomainUnloadedException.cs:
	* ApplicationException.cs:
	* ArgumentOutOfRangeException.cs:
	* ArithmeticException.cs:
	* ArrayTypeMismatchException:
	* BadImageFormatException.cs:
	* Exception.cs:
	* MissingMemberException.cs:
	* TypeLoadException.cs: Added missing bits for serialization.

2002-01-30  Duco Fijma <duco@lorentz.xs4all.nl>
	* Guid.cs: implemented everything but Guid.NewGuid

Tue Jan 29 22:32:36 CET 2002 Paolo Molaro <lupus@ximian.com>

	* _AppDomain.cs: remove ToString() method: it doesn't seem right 
	to have it in this interface and it screws up the method vtable setup.

2002-01-28  Andrei Zmievski <andrei@php.net>

	* Double.cs: implemented IConvertible interface.

2002-01-28  Miguel de Icaza  <miguel@ximian.com>

	* ArgumentException.cs: Implement serialization constructor.
	(GetObjectData): Implement serializer.
	
	* ArgumentNullException.cs: Implement serialization constructor.

	* Exception.cs: Implement serialization constructor.
	(GetObjectData): Implement serializer.

2002-01-23  Miguel de Icaza  <miguel@ximian.com>

	* DateTime.cs (UnixEpoch): The Begining of the Unix epoch.

2002-01-23  Duncan Mak  <duncan@ximian.com>

	* EntryPointNotFoundException.cs:
	* FormatException: Added missing constructor and related bits.

	* TypeLoadException: Added missing constructor, methods and properties.

2002-01-23  Miguel de Icaza  <miguel@ximian.com>

	* AppDomain.cs (GetAssemblies): Use foreach construct instead of
	manually getting the enumerator.

	(AppDomain.AppDomain): Prime the loaded assemblies with the
	assemblies loaded by the runtime in our behalf.

	* AppDomainSetup.cs: Remove private keyword, that is the default.
	Add a new property DisallowPublisherPolicy.

	* AppDomain.cs (AppDomain.GetAssemblies): Implement.

Tue Jan 22 22:51:48 CET 2002 Paolo Molaro <lupus@ximian.com>

	* MonoType.cs, Type.cs: many updates, corrected implementation,
	completed stubs.

2002-01-20  Andrei Zmievski <andrei@php.net>

	* Byte.cs:
	* Char.cs: implemented IConvertible interface.

	* Boolean.cs: use our own ToString() method directly.

2002-01-20  Duncan Mak  <duncan@ximian.com>

	* Files I commited recently: Fixed indentation style.

2002-01-20 Nick Drochak  <ndrochak@gol.com>

	* SerializableAttribute.cs: this attrib can be used on enums, structs, 
	and delegates too. Added the appropriate usage flags.

2002-01-18  Duncan Mak  <duncan@ximian.com>

	* CharEnumerator.cs: Implemented.
	* String.cs (System): Fixed the GetEnumerator () method(s).

	* ObsoleteAttribute.cs:
	* STAThreadAttribute.cs:
	* MTAThreadAttribute.cs:
	* ThreadStaticAttribute.cs:
	* LoaderOptimizationAttribute.cs:
	* PlatformNotSupportedException.cs:
	* LoaderOptimization.cs: Added to CVS.

2002-01-18  Duncan Mak  <duncan@ximian.com>

	* AppDomainUnloadedException.cs:
	* MethodAccessException.cs:
	* ContextMarshalException.cs:
	* CannotUnloadAppDomainException.cs:
	* DllNotFoundException.cs:
	* EntryPointNotFoundException.cs:
	* FieldAccessException.cs:
	* TypeUnloadedException.cs:
	* MissingFieldException.cs: Added to CVS.

	* ApplicationException.cs: 
	* MemberAccessException.cs:
	* MissingMemberException.cs
	* MissingMethodException.cs:
	* SystemException.cs: Added [Serializable] attribute.

	* Exception.cs: Added [Serializable] attribute, made properties
	'Message', 'Source' and 'StackTrace' virtual methods, per 1.0
	spec.

	* ContextStaticAttribute.cs: Added [Serializable] attribute and
	put in the missing constructor.

	* Environment.cs: Commented out references to
	EnvironmentPermissionAttribute, because they're just stubbed out
	right now and has no implementation.

2002-01-16  Andrei Zmievski <andrei@php.net>

	* Boolean.cs: implemented IConvertible interface

2002-01-15  Nick Drochak  <ndrochak@gol.com>

	* ResolveEventArgs.cs: class should derive from EventArgs.

2002-01-14  Miguel de Icaza  <miguel@ximian.com>

	* String.cs (System): Use DefaultMemberName for the String class.

Mon Jan 14 17:06:40 CET 2002 Paolo Molaro <lupus@ximian.com>

	* String.cs: use IndexerName in index char accessor.

Thu Jan 10 21:05:23 CET 2002 Paolo Molaro <lupus@ximian.com>

	* MonoType.cs: add rank to MonoTypeInfo and implement GetArrayRank.
	* String.c: eliminate 64k+ method calls in search.
	* Type.cs: handle byref and array types in ToString ().

2002-01-09  Duco Fijma <duco@lorentz.xs4all.nl>

	* Guid.cs: created first version

2002-01-10  Dietmar Maurer  <dietmar@ximian.com>

	* MonoType.cs: added missing TypeAttributes to MonoTypeInfo 

Wed Jan 9 19:35:07 CET 2002 Paolo Molaro <lupus@ximian.com>

	* MulticastDelegate.cs: add == and != operator stubs.
	* String.cs: check for null in == operator.
	* Type.cs: use a virtual method to get TypeAttributes.

Tue Jan  8 23:30:19 EST 2002 Matt Kimball <matt@kimball.net>
	* String.cs: Fixed several off-by-one errors in LastIndexOf* methods

2002-01-09  Nick Drochak  <ndrochak@gol.com>
	
	* Environment.cs: Comment out Security attribute and put a MonoTODO
	there as a reminder.  We need mcs magic to handle security attributes in
	corlib.

2002-01-07  Duco Fijma <duco@lorentz.xs4all.nl>
	* Created IAppDomainSetup.cs

2002-01-06  Duco Fijma <duco@lorentz.xs4all.nl>
	* Created System._AppDomain interface in _AppDomain.cs

2002-01-06  Nick Drochak  <ndrochak@gol.com>

	* ResolveEventArgs.cs: New File, completely implemented! ;)

Sat Jan 5 15:53:50 CET 2002 Paolo Molaro <lupus@ximian.com>

	* Enum.cs: dummy ToString impl.
	* String.cs: dummy format implementations to get compiler errors
	somewhat working.
	* Type.cs: implemented filter delegates. FindMembers runs the filter, now.

2002-01-05  Ravi Pratap  <ravi@ximian.com>

	* TODOAttribute.cs : Augment some more; provide two constructors
	with support for a comment too.

2002-01-05  Nick Drochak  <ndrochak@gol.com>

	* Uncommented those MonoTODO's now that Ravi's got
	the class in there

2001-01-04  Ravi Pratap  <ravi@ximian.com>

	* TODOAttribute.cs : Actually add this time ;-)

	Change name to MonoTODO.

2002-01-04  Jeffrey Stedfast  <fejj@ximian.com>

	* String.cs (Trim): Fixed a few logic bugs in the code that
	calculated how much to trim off the end of the string.

2001-01-04  Nick Drochak  <ndrochak@gol.com>
	
	* Commented out the [TODO] attributes for now.  We don't have the
	class written.  Also changed it to [MonoTODO]

2002-01-04  Ravi Pratap  <ravi@ximian.com>

	* TODOAttribute.cs : Add. We use this attribute to tag all bits in
	our class libraries that are incomplete.

	* Array.cs : Apply attribute wherever we find a FIXME which says
	we need something to be implemented there.

	* Int32.cs : Ditto.

	* MulticastDelegate.cs : Ditto.

	* RuntimeFieldHandler.cs, RuntimeMethodHandle.cs,
	RuntimeTypeHandle.cs : Ditto.

	* String.cs : Ditto.

	* Type.cs : Ditto.

	* Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs, Delegate.cs : Ditto.

	* Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs, Single.cs, 
	UInt16.cs, UInt32.cs, ValueType.cs: Ditto.

	* Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs,
	Delegate.cs : Ditto.

	* Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs,
	Single.cs, UInt16.cs, UInt32.cs, ValueType.cs: Ditto.
	
Thu Jan 3 23:24:04 CET 2002 Paolo Molaro <lupus@ximian.com>

	* Delegate.cs: add Remove() stub.
	* Enum.cs: add ToObject().
	* Type.cs: add IsEnum property.

2002-01-03  Kristian Rietveld  <kris@gtk.org>

        * Convert.cs: add non-CLS-compliant ToBoolean methods for char,
        DateTime and object.

2001-12-30  Nick Drochak  <ndrochak@gol.com>

	* Byte.cs (Parse): Add comments to aid in testing.

2001-12-21  Miguel de Icaza  <miguel@ximian.com>

	* Char.cs (Parse): Implement.

	* Byte.cs (Parse): Implement a fast parser.
	
	* SByte.cs (Parse): Implement a fast parser.

	* UInt16.cs (Parse): Implement a fast parser.
	
	* Int16.cs (Parse): Implement a fast parser.

	* UInt32.cs (Parse): Implement a fast parser.

	* Int32.cs (Parse): Implement a fast parser.

Fri Dec 21 15:14:52 CET 2001 Paolo Molaro <lupus@ximian.com>

	* Array.cs: fix null ref in sort code.
	* UInt64.cs: add bare-bones parse.

Thu Dec 20 15:29:52 CET 2001 Paolo Molaro <lupus@ximian.com>
	
	* Byte.cs: removed use of Regexes.

Tue Dec 18 18:39:54 CET 2001 Paolo Molaro <lupus@ximian.com>

	* Enum.cs: implemented GetValues(), GetNames(), GetName(),
	IsDefined(), GetUnderlyingType().
	* String.cs: fix one instance of Compare().
	* Type.cs: implemented GetProperties(), GetProperty().

Thu Dec 13 20:10:57 CET 2001 Paolo Molaro <lupus@ximian.com>

	* Array.cs: implement CopyTo ().
	* Char.cs: implement ToString ().
	* Exception.cs: bugfix.
	* Int32.cs: bare-bones Parse ().
	* MonoType.cs: query the needed info with an internalcall.
	* String.cs: speedups, bugfixes, reduced copies.
	* Type.cs: added missing fields. Implemented many of the Is*
	properties. Implemented GetMethod(), GetConstructor(), GetMethods(),
	GetFields(), FindMembers(), ToString().
	
2001-12-11  Dick Porter  <dick@ximian.com>

	* DateTime.cs: Implemented FromFileTime() and ToFileTime()

	* Console.cs: Use handles rather than casting file descriptors

2001-12-08  Nick Drochak  <ndrochak@gol.com>

	* Byte.cs (Parse): Start implementation. Parse(string) works, but
	now we need to handle other formats

2001-12-06  Dietmar Maurer  <dietmar@ximian.com>

	* DateTime.cs: added an icall to GetNow()

2001-12-04  Dietmar Maurer  <dietmar@ximian.com>

	* Double.cs: added the parse method from Bob Smith

2001-11-28  Miguel de Icaza  <miguel@ximian.com>

	* UInt64.cs: ditto.

	* UInt32.cs: ditto.

	* Int32.cs (Int32.CompareTo): Fix because we can not just
	substract the values.

	Return possitive value if the object is null.

	* Boolean.cs: (Boolean.CompareTo): ditto.

	* Int16.cs (Int16.CompareTo): ditto.

	* Byte.cs (Byte.CompareTo): ditto.

	* SByte.cs (SByte.CompareTo): ditto.

	* Char.cs (Char.CompareTo): ditto.
	
	* Decimal.cs (Decimal.CompareTo): ditto.

	* Int64.cs (Int64.CompareTo): ditto.

	* Single.cs: Ditto.

	* UInt16.cs: Ditto.

2001-11-28  Nick Drochak <ndrochak@gol.com>

	* Byte.cs: Throw NotImplementedException for Parse.

2001-11-27  Derek Holden  <dholden@draper.com>

	* IntegerFormatter.cs: Formatting of type "Number" was not
	using NumberFormatInfo.NumberNegativePattern.

2001-11-26  Dick Porter  <dick@ximian.com>

	* LocalDataStoreSlot.cs: No need to delete a system TLS slot in
	the finalise routine any more

2001-11-21  Miguel de Icaza  <miguel@ximian.com>

	* ApplicationException.cs: internationalize by adding calls to
	Locale.GetText ().  And throw NotImplementedExceptions on calls
	that we have to implement.

	* Version.cs: Ditto.

	* ValueType.cs: ditto.

	* UnauthorizedAccessException.cs: ditto.

	* UInt32.cs: ditto.

	* UInt64.cs: ditto.

	* UInt16.cs: ditto.

	* TypeLoadException.cs: ditto

	* TypeInitializationException.cs: ditto.

	* Type.cs: ditto.

	* TimeSpan.cs: ditto.

	* SystemException.cs: ditto.

	* String.cs: ditto.

	* StackOverflowException.cs: ditto.x

	* Single.cs: ditto.

	* SByte.cs: ditto.

	* RuntimeTypeHandle.cs: ditto.

	* RuntimeMethodHandle.cs: ditto.

	* RuntimeFieldHandle.cs: ditto.

	* Random.cs: ditto.

	* OutOfMemoryException.cs: ditto.

	* OperatingSystem.cs: ditto.

	* ObjectDisposedException.cs: ditto.

	* NullReferenceException.cs: ditto.

	* NotImplementedException.cs: ditto.

	* NotFiniteNumberException.cs: ditto.o

	* MulticastNotSupportedException.cs: ditto.

	* MissingMethodException.cs: ditto.

	* MemberAccessException.cs: ditto.

	* Math.cs: ditto.

	* InvalidCastException.cs: ditto.

	* IntegerFormatter.cs: ditto.

	* Int32.cs: ditto.

	* Int16.cs: ditto.

	* IndexOutOfRangeException.cs: ditto.

	* Environment.cs: ditto

	* Enum.cs: ditto.

	* DuplicateWaitObjectException.cs: ditto.

	* DivideByZeroException.cs: ditto.

	* Delegate.cs: ditto

	* DecimalFormatter.cs: ditto.

	* Decimal.cs: ditto.

	* DateTime.cs: ditto.

	* Convert.cs: ditto.

	* Char.cs: ditto.

	* Byte.cs: ditto.

	* Boolean.cs: ditto.

	* ArrayTypeMismatchException.cs: ditto.

	* ArithmeticException.cs: ditto.

	* ArgumentOutOfRangeException.cs: ditto.

	* ArgumentNullException.cs: ditto.

	* Enum.cs: Make it derive from ValueType, add CompareTo method.

	* Attribute.cs: Reformat.

2001-11-14  Miguel de Icaza  <miguel@ximian.com>

	* Decimal.cs, Double.cs, Byte.cs, Char.cs, Int16, UInt16, Int32,
	UInt32, Int64, UInt64, SByte, Single (CompareTo): Throw the
	exception if the value is null too.

	* Char.cs (CompareTo): ditto.

	* ApplicationException.cs: Added constructor that does serialization.

	* ParamArrayAttribute.cs: Define attribute correctly.

Wed Nov 14 16:31:19 CET 2001 Paolo Molaro <lupus@ximian.com>

	* AppDomain.cs: rename dummy interface _AppDomain to AppDomain_Intf.
	* Array.cs: fix Array.Copy.
	* AssemblyLoadEventArgs.cs: rename field.
	* CLSCompliantAttribute.cs: use correct name for the class.
	* Char.cs: fix IsLetter.
	* Console.cs, DateTime.cs, Decimal.cs, IConvertible.cs, Math.cs,
	SByte.cs, UInt16.cs, UInt32.cs, UInt64.cs, UIntPtr.cs: CLSCompliant updates.
	* Convert.cs: CLSCompliant updates, add ChangeType() methods.
	* Delegate.cs: renamed target field to m_target.
	* Enum.cs: added missing methods.
	* MonoType.cs: add a constructor and some needed properties.
	* Object.cs: implement GetType().
	* String.cs: CLSCompliant updates. Fixes everywhere to remove the
	ending 0 char.
	* Type.cs: add missing methods/properties.

2001-11-10  Sean MacIsaac  <macisaac@ximian.com>

	* AttributeUseage.cs: Should define AttributeUsageAttribute.

	* CLSCompliant.cs: Marked with AttributeUsage attribute.

	* Decimal.cs: Fixed CLSCompliant attributes.

	* Type.cs: changed _impl to internal (needs to be accessable by
	subclasses).

	(TypeHandle): Marked as abstract, implementation removed.

	(IsNotPublic, IsPublic, GetMethods, GetPropery, GetConstructor,
	GetMethod): Added stub implementations so NUnit would link against
	corlib

Tue Nov 6 09:11:43 CET 2001 Paolo Molaro <lupus@ximian.com>

	* AppDomain.cs: use an internal constructor for AssemblyBuilder.

2001-11-05  Miguel de Icaza  <miguel@ximian.com>

	* NonSerializedAttribute.cs: Add AttributeUsage rules for this
	attribute. 

Fri Nov 2 18:23:15 CET 2001 Paolo Molaro <lupus@ximian.com>

	* String.cs: fix a couple of bugs.
	* AppDomain.cs: use new AppBuilder constructor.
	* Buffer.cs, GC.cs, NonSerializedAttribute.cs,
	NotImplementedException.cs, ObjectDisposedException.cs,
	UnauthorizedAccessException.cs: add implementation.
	* OverflowException.cs: fix class name.

2001-10-28  Jeffrey Stedfast  <fejj@ximian.com>

	* String.cs: Don't use a terminating nil char for our internal
	array.

2001-10-27  Miguel de Icaza  <miguel@ximian.com>

	* Delegate.cs (Delegate.CombineImpl): Implement.
	(Delegate.Combine): Implement.

	* MulticastDelegate.cs (MulticastDelegate.Equals): Implement.

	(MulticastDelegate.CombineImpl): This was not as trivial as I
	thought. 

	* ContextStaticAttribute.cs: Added AttributeUsage to
	ContextStaticAttribute. 

	* FlagsAttribute.cs: Add AttributeUsage to FlagsAttribute

2001-10-15  Martin Weindel <martin.weindel@t-online.de>

        * added Decimal.cs * added DecimalFormatter.cs (internal class
	used from System.Decimal)

2001-10-11  Thomas Neidhart <tome@sbox.tugraz.at>

	* Convert.cs: Added methods for Base64 transforming just used the
	  existing System.Security.Cryptography.ToBase64Transform, should
	  be changed to use a stand-alone class, e.g. Base64Encoder
	  
2001-10-10  Derek Holden  <dholden@draper.com>

	* IntegerFormatter.cs: Added. Implements ToString for all the
	integer data types for all the format types.

	* Byte.cs: Using IntegerFormatter for ToString's.

	* SByte.cs: Using IntegerFormatter for ToString's.

	* Int16.cs: Using IntegerFormatter for ToString's.

	* Int32.cs: Using IntegerFormatter for ToString's.

	* Int64.cs: Using IntegerFormatter for ToString's.

	* UInt16.cs: Using IntegerFormatter for ToString's.

	* UInt32.cs: Using IntegerFormatter for ToString's.

	* UInt64.cs: Using IntegerFormatter for ToString's.

2001-10-07  Miguel de Icaza  <miguel@ximian.com>

	* Exception.cs: Implement bits of serialization.

	* RuntimeFieldHandle.cs: Implement Serialization features.

	* Type.cs: Implement TypeHandle property.

2001-09-28  Dick Porter  <dick@ximian.com>

	* LocalDataStoreSlot.cs: Implemented

Tue Sep 25 19:58:14 CEST 2001 Paolo Molaro <lupus@ximian.com>

	* String.cs: fix off-by-one error in Trim().

Tue Sep 25 18:52:14 CEST 2001 Paolo Molaro <lupus@ximian.com>

	* Type.cs: added GetType () method.

Tue Sep 25 17:29:02 CEST 2001 Paolo Molaro <lupus@ximian.com>

	* MissingMethodException.cs, MissingMemberException.cs,
	MemberAccessException.cs: added.

Tue Sep 25 16:46:43 CEST 2001 Paolo Molaro <lupus@ximian.com>

	* String.cs: don't access the string array out of bounds in
	LastIndexOf.  * Type.cs: fix return type of the Assembly property.

Mon Sep 24 20:35:24 CEST 2001 Paolo Molaro <lupus@ximian.com>

	* String.cs: make Intern and IsIntern internalcalls.

2001-09-13  Dick Porter  <dick@ximian.com>

	* Type.cs: Added a stub for the IsValueType property.

	* SystemException.cs (System): Added the other constructor, so
	that System.Threading exceptions can inherit it.

2001-09-08  Jeffrey Stedfast  <fejj@ximian.com>

	* String.cs (TrimStart): Don't keep looping through the trimchars
	once we've found a match.
	(TrimEnd): Same here.
	(Trim): And finally here.

2001-09-07  Ravi Pratap  <ravi@ximian.com>

	* Char.cs (IsLetterOrDigit): Implement.
	(IsLower): Implement, but we need to be Unicode aware.
	(IsNumber): Implement.
	(IsPunctuation): Implement.
	(IsWhiteSpace): Implement.
	(ToUpper): Fix to subtract 32 from the ASCII value, not 33 :)
	(ToLower): Same here.

2001-09-04  Miguel de Icaza  <miguel@ximian.com>

	* Object.cs: Shortcut, if (a == b) then return true.

Fri Sep 7 18:34:48 CEST 2001 Paolo Molaro <lupus@ximian.com>

	* Delegate.cs: we need a pointer to the method thunk in
	the delegate object.

Fri Sep 7 12:28:01 CEST 2001 Paolo Molaro <lupus@ximian.com>

	* AsyncCallback.cs, common.src: add AsyncCallback delegate.

2001-09-06  Jeffrey Stedfast  <fejj@ximian.com>

	* String.cs (System): Don't mix uint and int.

2001-09-04  Jeffrey Stedfast  <fejj@ximian.com>

	* String.cs (BoyerMoore): Modified to not use pointers and to instead
	use indexes.
	(IndexOf): Use BoyerMoore.

2001-09-02  Miguel de Icaza  <miguel@ximian.com>

	* All over: Use the autogenerated enumerations from the ECMA
	documentation that Sergey wrote.
	
	* PlatformID.cs: Add Unix definition.

	* OperatingSystem.cs: Use Unix instead of Linux here.

	* MarshalByRefObject.cs: Mark class as [Serializable].

2001-08-28  Dietmar Maurer  <dietmar@ximian.com>

	* Console.cs: impl. (write only)
	implemented the stdin stuff

	* Int32.cs: impl. real op_Equal

2001-08-24  Miguel de Icaza  <miguel@ximian.com>

	* (common.src): Removed IAsyncResult as it is not on CVS yet.

	* UIntPtr.cs: Removed CLSCompliant attribute before the namespace,
	as it breaks the build.

2001-08-23  Michael Lambert <michaellambert@email.com>

	* IntPtr.cs: Optimized unsafe declaration, implemented GetObjectData, 
	added CLSCompliant attribute

	* IAsyncResult.cs: Added

	* common.src: Added IAsyncResult.cs

2001-08-23  Michael Lambert <michaellambert@email.com>

	* UIntPtr.cs: Added

	* common.src: Added UIntPtr.cs

2001-08-20  Dietmar Maurer  <dietmar@ximian.com>

	* Attribute.cs: uncomment some code to make it compile again

	* mono.src: removed duplicated Attribute.cs

2001-08-16  Nick Drochak <ndrochak@gol.com>

	* Attribute.cs: implemented all methods except GetHashCode()

	* common.src: added Attribute.cs so it would compile in

2001-08-10  Dietmar Maurer  <dietmar@ximian.com>

	* Object.cs: changed MemberWiseClone to MemberwiseClone, and
	marked it as InternalCall
	
	* common.src: removed UriFormatException.cs because the file is
	not there.

	* RuntimeTypeHandle.cs: replaced IntrPtr with IntPtr
	* Char.cs: replaced byte with char

	* Array.cs: make it work with the mono interpreter

2001-08-06  Miguel de Icaza  <miguel@ximian.com>

	* Version.cs: Make the class sealed

2001-08-08  Bob Smith  <bob@thestuff.net>

        * Random.cs: Many compile fixes.
        * Random.cs: I read a bad spec. Class updated to match real spec.

2001-08-06  Miguel de Icaza  <miguel@ximian.com>

	* IntPtr.cs: Added and Completed implementation.

	* Uri.cs: Add a note.

2001-08-06  Bob Smith  <bob@thestuff.net>

        * Random.cs: Compile fix. Needs more testing.

2001-08-06 Garrett Rooney <rooneg@electricjellyfish.net>

	* Uri.cs: Initial Implementation.  Parsing needs to be fixed to take 
	into account IPv6 addresses, url encoding needs to be implemented, and 
	various minor methods need to be written, but this is a decent start.

2001-08-06  Dietmar Maurer  <dietmar@ximian.com>

	* common.src: added Object.cs

	* mono.src: added ValueType.cs

2001-08-02  Dietmar Maurer  <dietmar@ximian.com>

	* Math.cs: replaced libc with libm

2001-08-02  Bob Smith  <bob@thestuff.net>

        * Random.cs: Implemented. Needs testing.

2001-08-02  Miguel de Icaza  <miguel@ximian.com>

	* IServiceProvider.cs, EventHandler.cs: New files.

2001-08-02  Marcel Narings  <marcel@narings.nl>
	
	* DateTime.cs: Cleaned up a bit. Added the Add* family members.
	Added exceptions. Added IConvertible. Still needs some platform 
	dependend stuff, the Parse and ToString members

2001-08-01  Dietmar Maurer  <dietmar@ximian.com>

	* Type.cs (GetTypeFromHandle): added placeholder 

2001-07-24  Derek Holden  <dholden@draper.com>

	* Boolean.cs: Formatted to code style standard. Added GetTypeCode
	which is really an IConvertible defined method.

	* Byte.cs: Added a missing Parse method. Put in Parse and ToString
	behavior, still need to do the main Parse and ToString.

	* Char.cs: Added a bunch of missing ECMA methods. Commented a
	specification discrepency. Still didn't any unicode stuff, though
	every IsFoo(char c) method has an IsFoo(string, index)
	counterpart, added wrappers for those.
	
	* Convert.cs: Fixed NaN/Inf checking and double/float
	rounding. Added ToType for IConvertible classes

	* Double.cs: Fixed ECMA min and max values. Added IsInfinity /
	IsNaN methods. Changed Inf/NaN internals.

	* IConvertible.cs: Added comments for using
	Convert.ToType. Changed return values to draft base values.

	* Int16.cs: Added a missing Parse statement. Put in behavior for
	overloaded ToString and Parse methods.

	* Int32.cs: Added a missing Parse statement. Put in behavior for
	overloaded ToString and Parse methods.

	* Int64.cs: Added a missing Parse statement. Put in behavior for
	overloaded ToString and Parse methods.
	
	* Single.cs: Put in ECMA epsilon value. Added IsInfinity / IsNaN
	methods. Changed Inf/NaN internals.

	* SByte.cs: Added a missing Parse method. Put in Parse and
	ToString behavior, still need to do the main Parse and ToString.

	* UInt16.cs: Added a missing Parse statement. Put in behavior for
	overloaded ToString and Parse methods.

	* UInt32.cs: Added a missing Parse statement. Put in behavior for
	overloaded ToString and Parse methods.

	* UInt64.cs: Added a missing Parse statement. Put in behavior for
	overloaded ToString and Parse methods.
	
2001-07-20  Miguel de Icaza  <miguel@ximian.com>

	* MulticastDelegate.cs: New File.

	* Delegate.cs: New file.

	* Enum.cs: New file.

	* Attribute.cs: New file.

	* Type.cs: New file.

	* ParamArrayAttribute.cs: New file.

	* RuntimeTypeHandle.cs: New file.

	* MulticastDelegate.cs: Added.

	* DateTime.cs: Added

	* Delegate.cs: Added

2001-07-18  Michael Lambert <michaellambert@email.com>

        * AttributeTargets.cs: Add.

2001-07-19  Jeffrey Stedfast  <fejj@ximian.com>

	* Char.cs: Made ToUpper and ToLower public methods.

	* String.cs: Lots and lots of compile fixes - just need to write
	DateTime.cs and this should build completely now.

2001-07-19  Bob Smith (bob@thestuff.net)

	* Math.cs: Implemented. 

2001-07-19  Miguel de Icaza  <miguel@ximian.com>

	* String.cs: Removed tolower and toupper.

	* Char.cs: Moved ToLower and ToUpper from string to here. 

	* Convert.cs ToByte (float value), ToByte (double value) Use IsNan
	instead of comparing the value to Nan.

2001-07-19  Duco Fijma (duco@lorentz.xs4all.nl)

	* TimeSpan.cs: New implementation.

2001-07-18  Scott Sanders <scott@stonecobra.com>

         * UriFormatExcpetion.cs: Add - 85% complete

2001-07-17  Jeffrey Stedfast  <fejj@ximian.com>

	* String.cs (IndexOf): Slight optimization that allows skipping
	over a few chars here and there. This isn't as good as using my
	Boyer-Moore implementation, however, Boyer-Moore is only really
	good for long strings (I plan on making the code decide which
	string search algorithm it should use on-the-fly at some point).
	(LastIndexOf): Fix to work correctly.
	(BoyerMoore): Took out some unneeded code and fixed an edge-case.

2001-07-16  Michael Lambert <michaellambert@email.com>

	* EventArgs.cs: Add.
	
2001-07-16  Miguel de Icaza  <miguel@ximian.com>

	* Version.cs: Remove my buggy comment.

2001-07-15  Sean MacIsaac  <macisaac@ximian.com>

	* String.cs: Spelling error of IComparable, object's
	MemberwiseClone cannot be overridden.  Made indexer valid for now,
	but not sure what to do about this in the long run.  Seems to be a
	couple bugs in csc.exe having to do with multiple pointer defs in
	the same statement, and returning subclasses of a class in the
	return type of an interface function implementation.  Also moved
	operators inside of class definition.

2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>

	* String.cs: A tom of compile fixes, although we still don't compile.

	* IConvertible.cs: The To*Int64() methods return *Int64's, not
	*Int32's. Also, it's ToDateTime() not ToDateType().

2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>

	* String.cs: Apparently I needed to at least write stubs for the
	IConvertible interfaces. *sigh*

2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>

	* String.cs: Many logic/other fixes and better usage of the
	features of c#
	(tolower): New convenience method to help condense code.
	(toupper): Another new helper method.
	(Compare): Use the new helper methods.
	(ToLower): use tolower().
	(ToUpper): use toupper().
	(LastIndexOfAny): Implemented.
	(BoyerMoore): New private helper method that implements a modified
	version of the Boyer-Moore search algorithm. Noothing uses it yet
	as I'm not 100% sure it even works properly with unicode strings
	not to mention it uses a huge lookup-table :-)
	(Split): Implemented.

2001-07-13  Jeffrey Stedfast  <fejj@ximian.com>

	* TODO: Added things that need to be finished in System.String

	* String.cs: New source file implementing the System.String class

2001-07-12  Sean MacIsaac  <macisaac@ximian.com>

	* TypeCode.cs: UInt64 was UInt63.

	* Object.cs: Fixed a numer of compiler errors.

	* Array.cs: Fixed some compiler errors.

	* IComparable.cs: Fixed some compiler errors.

	* ICloneable.cs: Fixed some compiler errors.

	* IConvertible.cs: Fixed some compiler errors.

	* IFormattable.cs: Fixed a compiler error.

	* IFormatProvider.cs: Fixed a compiler error.

	* IDisposable.cs: Fixed a compiler error.

	* IFormatProvider.cs: Added public accesability type to
	IFormatProvider.

	* Exception.cs: Added a using statement to remove compile time
	error.

	* ApplicationException.cs: Removed a ; that was causing a compiler
	error.

	* Int16.cs: Fixed some compiler errors.

	* Int32.cs: Fixed some compiler errors.

	* Int64.cs: Fixed some compiler errors.

	* SystemException.cs: Fixed a compiler error.

	* UInt16.cs: Fixed some compiler errors.

	* UInt32.cs: Fixed some compiler errors.

	* UInt64.cs: Fixed some compiler errors.

	* Void.cs: Fixed a compiler error.	

2001-07-12  Joe Shaw  <joe@ximian.com>

	* Array.cs: Fix backwards parameters to Array.SetValue()
	throughout.
	(BinarySearch): Fix backward logic surrounding whether to call
	value.CompareTo or comparer.Compare.
	(LastIndexOf): Stop being stupid. I am so not used to strongly
	bounded arrays...
	(Sort): Implement a quicksort.

2001-07-11  Joe Shaw  <joe@ximian.com>

	* Array.cs: Change all instances of trying to access an array with
	the index operator to calls to GetValue and SetValue, and add
	InternalGetValue and InternalSetValue which are internal calls
	into the runtime. Ew.

2001-07-10  Joe Shaw  <joe@ximian.com>

	* Array.cs: Implemented everything but Sort().

2001-07-09  Jeffrey Stedfast  <fejj@ximian.com>

	* Object.cs (Object::Equals): Object variable name is `o'.

2001-07-06  Joe Shaw  <joe@ximian.com>

	* Int16.cs, Int32.cs, Int64.cs, UInt16.cs, UInt32.cs, UInt64.cs:
	Implement the IComparable and IFormattable interfaces. Fix a typo
	(publig -> public)

	* ApplicationException.cs, ArgumentException.cs,
	ArgumentNullException.cs, ArgumentOutOfRangeException.cs,
	ArtithmeticException.cs, ArrayTypeMismatchException.cs,
	DivideByZeroException.cs, DuplicateWaitObjectException.cs,
	ExecutionEngineException.cs, FormatException.cs,
	IndexOutOfRangeException.cs, InvalidCastException.cs,
	InvalidOperationException.cs, InvalidProgramException.cs,
	MulticateNotSupportedException.cs, NotFiniteNumberException.cs,
	NotSupportedException.cs, NullReferenceException.cs,
	OutOfMemoryException.cs, OverflowException.cs, RankException.cs,
	StackOverflowException.cs, SystemException.cs,
	TypeInitializationException.cs: Added all of the exceptions
	specified by the language spec. Mmmm... bloat.

2001-07-06  Miguel de Icaza  <miguel@ximian.com>

	* Int64.cs, Int32.cs: Put.  Parsing and ToString missing.  Should
	do a generic routine all of these guys use.

	* Int16.cs: identified missing methods.

	* UInt16.cs, UInt32.cs, UInt64.cs: Add.

2001-06-26  Miguel de Icaza  <miguel@ximian.com>

	* TypeCode.cs: Implement

	* Void.cs: Implement.

	* TODO: Add file to keep track of pending tasks.

	* Object.cs, ValueType.cs: Implement.
