mono.git
15 years ago2009-02-12 Robert Jordan <robertj@gmx.net>
Robert Jordan [Thu, 12 Feb 2009 22:57:12 +0000 (22:57 -0000)]
2009-02-12  Robert Jordan  <robertj@gmx.net>

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

svn path=/trunk/mcs/; revision=126770

15 years ago2009-02-12 Marek Safar <marek.safar@gmail.com>
Marek Safar [Thu, 12 Feb 2009 22:51:00 +0000 (22:51 -0000)]
2009-02-12  Marek Safar  <marek.safar@gmail.com>

* ControlBuilder.cs, PageParserFilter.cs, CodeConstructType.cs:
Add few missing members.

svn path=/trunk/mcs/; revision=126769

15 years ago2009-02-12 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Thu, 12 Feb 2009 22:35:33 +0000 (22:35 -0000)]
2009-02-12  Zoltan Varga  <vargaz@gmail.com>

* Makefile.am (EXTRA_DIST): Remove removed files.

svn path=/trunk/mono/; revision=126767

15 years ago2009-02-12 Mark Probst <mark.probst@gmail.com>
Mark Probst [Thu, 12 Feb 2009 21:32:57 +0000 (21:32 -0000)]
2009-02-12  Mark Probst  <mark.probst@gmail.com>

* generic-sharing.c: Don't take the loader lock to guard image
mempool allocs.

svn path=/trunk/mono/; revision=126764

15 years ago * System.Xml/XmlDictionaryWriter.cs: Implement WriteValue(Guid),
Jonathan Pryor [Thu, 12 Feb 2009 20:56:05 +0000 (20:56 -0000)]
* System.Xml/XmlDictionaryWriter.cs: Implement WriteValue(Guid),
  WriteValue(TimeSpan), WriteValue(UniqueId).
* System.Xml/UniqueId.cs: Fix UniqueId.IsGuid, as
  `new UniqueId(new Guid())` was previously being detected as a string
  value, not a Guid value.
* Test/System.Xml/XmlDictionaryWriterTest.cs: Test WriteValue(Guid),
  WriteValue(TimeSpan), WriteValue(UniqueId).

svn path=/trunk/mcs/; revision=126760

15 years agoIn .:
Rodrigo Kumpera [Thu, 12 Feb 2009 20:41:17 +0000 (20:41 -0000)]
In .:
* reflection.c (mono_reflection_lookup_dynamic_token): This function might be called without
the loader lock which is required to guard MonoImage:tokens.

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

svn path=/trunk/mono/; revision=126758

15 years agoIn .:
Rodrigo Kumpera [Thu, 12 Feb 2009 20:27:56 +0000 (20:27 -0000)]
In .:
* class.c:
* metadata.c:
* method-builder.c:
* marshal.c:
* reflection.c: Don't take the loader lock to alloc memory from the image mempool.

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

svn path=/trunk/mono/; revision=126756

15 years ago * System.Runtime.Serialization_test.dll.sources: Add
Jonathan Pryor [Thu, 12 Feb 2009 19:47:59 +0000 (19:47 -0000)]
* System.Runtime.Serialization_test.dll.sources: Add
  System.Xml/XmlDictionaryWriterTest.cs to the test build.
* System.Xml/XmlDictionaryWriter.cs (WriteStartElement): Add parameter
  checking and default arguments to avoid NullReferenceExceptions.
* Test/System.Xml/XmlDictionaryWriterTest.cs: Added; test
  XmlDictionaryWriter.WriteElementString().

svn path=/trunk/mcs/; revision=126751

15 years ago2009-02-12 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Thu, 12 Feb 2009 19:41:13 +0000 (19:41 -0000)]
2009-02-12  Zoltan Varga  <vargaz@gmail.com>

* README: Point to the documentation on the wiki.

svn path=/trunk/mono/; revision=126749

15 years agoIn .:
Rodrigo Kumpera [Thu, 12 Feb 2009 19:30:26 +0000 (19:30 -0000)]
In .:
2009-02-12 Rodrigo Kumpera  <rkumpera@novell.com>

* metadata.c: Remove mono_image_alloc_lock and mono_image_alloc0_lock.
Rework the code to use regular mono_image_alloc/0.

* loader.c: Rework the code to use regular mono_image_alloc/0.

* metadata-internals.h: Remove mono_image_alloc_lock and mono_image_alloc0_lock.

svn path=/trunk/mono/; revision=126748

15 years ago2009-02-12 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Thu, 12 Feb 2009 19:27:43 +0000 (19:27 -0000)]
2009-02-12  Zoltan Varga  <vargaz@gmail.com>

* call-sites.txt: Remove this, its contents is in jit-trampolines.

svn path=/trunk/mono/; revision=126747

15 years ago2009-02-12 Lluis Sanchez Gual <lluis@novell.com>
Lluis Sanchez [Thu, 12 Feb 2009 19:26:09 +0000 (19:26 -0000)]
2009-02-12  Lluis Sanchez Gual  <lluis@novell.com>

* MarshalByRefObject.cs: Implemented MemberwiseClone(bool).

svn path=/trunk/mcs/; revision=126746

15 years ago2009-02-12 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Thu, 12 Feb 2009 19:22:39 +0000 (19:22 -0000)]
2009-02-12  Zoltan Varga  <vargaz@gmail.com>

* memory-management.txt thread-safety.txt aot-compiler.txt jit-regalloc
exception-handling.txt: Remove documents which are now on the wiki.

svn path=/trunk/mono/; revision=126745

15 years ago2009-02-12 Bill Holmes <billholmes54@gmail.com>
Bill Holmes [Thu, 12 Feb 2009 18:38:54 +0000 (18:38 -0000)]
2009-02-12  Bill Holmes  <billholmes54@gmail.com>

* object-internals.h : Fixing a typo in the
  MonoReflectionComVisibleAttribute struct.

* marshal.c (cominterop_com_visible): Check the implemented
  interfaces for ComImport.

* marshal.c (cominterop_get_native_wrapper_adjusted): For COM calls
  assume that bools should be treated as VARIANTBOOLs.

* marshal.c (emit_marshal_boolean): Adding cases for
  MARSHAL_ACTION_MANAGED_CONV_IN and MARSHAL_ACTION_MANAGED_CONV_OUT.

* marshal.c (mono_marshal_emit_managed_wrapper): Adding calls to
  emit_marshal MARSHAL_ACTION_MANAGED_CONV_IN and OUT for bools.

* marshal.c (cominterop_get_ccw): For COM calls assume that bools
  should be treated as VARIANTBOOLs.

Code is contributed under MIT/X11 license.

svn path=/trunk/mono/; revision=126738

15 years ago2009-02-12 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Thu, 12 Feb 2009 18:38:38 +0000 (18:38 -0000)]
2009-02-12  Zoltan Varga  <vargaz@gmail.com>

* mini-s390x.c (mono_arch_output_basic_block): Fix the shift amounts in
OP_LCONV_TO_U2.

* basic-long.cs: Add a test.

svn path=/trunk/mono/; revision=126737

15 years agoIn .:
Rodrigo Kumpera [Thu, 12 Feb 2009 18:36:45 +0000 (18:36 -0000)]
In .:
* image.c (mono_image_alloc, mono_image_alloc0, mono_image_strdup): Guard mempool
allocation with the image lock.

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

svn path=/trunk/mono/; revision=126736

15 years ago2009-02-12 Jordi Mas i Hernandez <jordimash@gmail.com>
Jordi Mas i Hernandez [Thu, 12 Feb 2009 18:11:45 +0000 (18:11 -0000)]
2009-02-12 Jordi Mas i Hernandez <jordimash@gmail.com>

* Mono.Cairo/ScaledFont.cs: Fixes Dispose signature
* Mono.Cairo/FontFace.cs: Fixes Dispose signature
* Mono.Cairo/Surface.cs: Fixes Dispose signature
* Mono.Cairo/Path.cs: Fixes Dispose signature
* Mono.Cairo/Pattern.cs: Fixes Dispose signature

svn path=/trunk/mcs/; revision=126734

15 years ago2009-02-12 Rodrigo Kumpera <rkumpera@novell.com>
Rodrigo Kumpera [Thu, 12 Feb 2009 17:57:44 +0000 (17:57 -0000)]
2009-02-12 Rodrigo Kumpera  <rkumpera@novell.com>

This patch is the last of a series to remove explicit reference of MonoImage::mempool
and use mono_image_alloc set of functions instead. This time we finish with reflection.c

* object.c: Add mono_string_to_utf8_image.

* object-internals.h: Export mono_string_to_utf8_image.

* reflection.c: Rework all explicit references to the the image mempool to go thought
the mono_image_alloc set of functions.

svn path=/trunk/mono/; revision=126732

15 years agoNew tests.
Marek Safar [Thu, 12 Feb 2009 17:48:30 +0000 (17:48 -0000)]
New tests.

svn path=/trunk/mcs/; revision=126730

15 years ago2009-02-12 Marek Safar <marek.safar@gmail.com>
Marek Safar [Thu, 12 Feb 2009 17:47:46 +0000 (17:47 -0000)]
2009-02-12  Marek Safar  <marek.safar@gmail.com>

A fix for bug ##475246
* expression.cs: More broken flowanalysis hacking needed.

svn path=/trunk/mcs/; revision=126728

15 years ago2009-02-12 Mark Probst <mark.probst@gmail.com>
Mark Probst [Thu, 12 Feb 2009 16:04:19 +0000 (16:04 -0000)]
2009-02-12  Mark Probst  <mark.probst@gmail.com>

* mini-x86.c, mini-x86.h: Very simple frame pointer removal.  We
remove the frame pointer in leaf methods which don't receive any
arguments, don't throw exceptions and don't do dynamic stack
allocations.

svn path=/trunk/mono/; revision=126720

15 years ago2009-02-12 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Thu, 12 Feb 2009 14:35:48 +0000 (14:35 -0000)]
2009-02-12  Zoltan Varga  <vargaz@gmail.com>

* mini-amd64.c (mono_arch_build_imt_thunk): Fix size calculation after
the fail_tramp changes. Hopefully fixes #475132.

svn path=/trunk/mono/; revision=126717

15 years ago2009-02-12 Rodrigo Kumpera <rkumpera@novell.com>
Rodrigo Kumpera [Thu, 12 Feb 2009 14:16:26 +0000 (14:16 -0000)]
2009-02-12 Rodrigo Kumpera  <rkumpera@novell.com>
This patch is the third of a series to remove explicit reference of MonoImage::mempool
and use mono_image_alloc set of functions instead. This time we finish with marshal.c
and generics-sharing.c.

* generics-sharing.c (set_other_info_templates): Take a MonoImage instead of a MonoMemPool
as first argument. Note that this function remains broken as it doesn't perform locking around the
mempool allocation.

* generics-sharing.c (rgctx_template_set_other_slot): Pass the image and not the mempool.

* image.c: Add g_slist_append_image.

* metadata.c (mono_metadata_field_info_with_mempool): Remove the mempool argument and use
the supplied image for allocation. Move code into mono_metadata_field_info_full.

* metadata.c (mono_metadata_parse_marshal_spec_full): Take a MonoImage instead of a MonoMemPool.
Fix all related code to do the same.

* marshal.c (mono_marshal_load_type_info): Pass the image instead of the mempool.

* metadata-internals.h: Fix the signatures.

svn path=/trunk/mono/; revision=126716

15 years agoIn mini:
Rodrigo Kumpera [Thu, 12 Feb 2009 13:40:36 +0000 (13:40 -0000)]
In mini:
2009-02-12  Rodrigo Kumpera  <rkumpera@novell.com>

* method-to-ir.c (mono_emit_method_call_full): Use mono_metadata_signature_dup_mempool
instead of mono_metadata_signature_dup_full.

In metadata:
and use mono_image_alloc set of functions instead. This time we rework mono_metadata_type_dup
and similar to work using MonoImage.

* class.c (mono_mempool_dup): Rename to mono_image_memdup and take a MonoImage instead of a
MonoMemPool.

* class.c (mono_dup_array_type): Take a MonoImage instead of a MonoMemPool as first argument.

* class.c (mono_metadata_signature_deep_dup): Same.

* class.c (inflate_generic_type): Same.

* class.c (mono_class_inflate_generic_type_with_mempool): Same.

* metadata.c (mono_metadata_signature_dup_full): Same.

* metadata.c: Add mono_metadata_signature_dup_mempool and extract common functionality from
mono_metadata_signature_dup_full.

* metadata.c (mono_metadata_type_dup): Same.

* marshal.c: Pass the image to calls to mono_metadata_type_dup.

* reflection.c: Same.

* generic-sharing.c: Pass the image to calls to mono_class_inflate_generic_type_with_mempool.

* metadata-internals.h: Fix the signatures.

* class-internals.h: Same.

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

This patch is the first of a series to remove explicit reference of MonoImage::mempool

svn path=/trunk/mono/; revision=126710

15 years ago2009-02-12 Atsushi Enomoto <atsushi@ximian.com>
Atsushi Eno [Thu, 12 Feb 2009 11:31:26 +0000 (11:31 -0000)]
2009-02-12  Atsushi Enomoto  <atsushi@ximian.com>

* Message.cs : if there is no header item to write, do not write
  SOAP header element.

svn path=/trunk/mcs/; revision=126705

15 years ago2009-02-12 Atsushi Enomoto <atsushi@ximian.com>
Atsushi Eno [Thu, 12 Feb 2009 11:29:36 +0000 (11:29 -0000)]
2009-02-12  Atsushi Enomoto  <atsushi@ximian.com>

* ContractDescriptionGenerator.cs : do not write body wrapper element
  when IsWrapped = false.

svn path=/trunk/mcs/; revision=126704

15 years ago2009-02-12 Marek Safar <marek.safar@gmail.com>
Marek Safar [Thu, 12 Feb 2009 10:41:52 +0000 (10:41 -0000)]
2009-02-12  Marek Safar  <marek.safar@gmail.com>

* attribute.cs: Compare only ref/out array modifiers.

svn path=/trunk/mcs/; revision=126699

15 years ago2009-02-12 Atsushi Enomoto <atsushi@ximian.com>
Atsushi Eno [Thu, 12 Feb 2009 09:09:11 +0000 (09:09 -0000)]
2009-02-12  Atsushi Enomoto  <atsushi@ximian.com>

        * ClientProxyGenerator.cs : so, the proxy generator was buggy to
          generate end invoke.
        * ClientBase.cs : make it simpler and just work.

svn path=/trunk/mcs/; revision=126693

15 years ago2009-02-12 Gonzalo Paniagua Javier <gonzalo@novell.com>
Gonzalo Paniagua Javier [Thu, 12 Feb 2009 07:43:46 +0000 (07:43 -0000)]
2009-02-12 Gonzalo Paniagua Javier <gonzalo@novell.com>

* io.c: EXDEV when moving directories fails now without creating a
file in the destination.
Fixes bug #326983.

svn path=/trunk/mono/; revision=126690

15 years ago2009-02-12 Gonzalo Paniagua Javier <gonzalo@novell.com>
Gonzalo Paniagua Javier [Thu, 12 Feb 2009 07:43:30 +0000 (07:43 -0000)]
2009-02-12 Gonzalo Paniagua Javier <gonzalo@novell.com>

* MonoIO.cs:
* MonoIOError.cs: enable ERROR_NOT_SAME_DEVICE.

svn path=/trunk/mcs/; revision=126688

15 years ago * System.Runtime.Serialization_test.dll.sources: Add
Jonathan Pryor [Thu, 12 Feb 2009 03:43:25 +0000 (03:43 -0000)]
* System.Runtime.Serialization_test.dll.sources: Add
  System.Xml/XmlDictionaryStringTest.cs to the test build.
* System.Xml/XmlDictionaryString.cs: Add constructor argument checking.
* Test/System.Xml/XmlDictionaryStringTest.cs: Added; tests for
  XmlDictionaryString.

svn path=/trunk/mcs/; revision=126680

15 years ago2009-02-11 Rodrigo Kumpera <rkumpera@novell.com>
Rodrigo Kumpera [Thu, 12 Feb 2009 01:46:35 +0000 (01:46 -0000)]
2009-02-11 Rodrigo Kumpera  <rkumpera@novell.com>

This patch is the first of a series to remove explicit reference of MonoImage::mempool
and use mono_image_alloc set of functions instead.

* class.c (mono_class_inflate_generic_type_with_mempool_no_copy):
Rename to mono_class_inflate_generic_type_no_copy and take a MonoImage instead
of a MonoMemPool.

* class.c (mono_class_setup_fields): Adapt to mono_class_inflate_generic_type_no_copy.

* class.c (g_list_prepend_mempool): Removed.

* class.c (mono_class_get_nested_types): Use g_list_prepend_image instead of g_list_prepend_mempool.

* image.c: Add g_list_prepend_image.

* metadata-internals.h (struct MonoImage): Fix comment. Export g_list_prepend_image as internal.

* reflection.c (mono_reflection_create_runtime_class): Use g_list_prepend_image instead of g_list_prepend_mempool.

svn path=/trunk/mono/; revision=126672

15 years agoIn .:
Rodrigo Kumpera [Thu, 12 Feb 2009 01:16:09 +0000 (01:16 -0000)]
In .:
* thread-safety.txt: Improve the docs about image lock.

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

svn path=/trunk/mono/; revision=126671

15 years ago2009-02-12 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Thu, 12 Feb 2009 00:17:45 +0000 (00:17 -0000)]
2009-02-12  Zoltan Varga  <vargaz@gmail.com>

* ssa.c (fold_ins): Use MONO_IS_JUMP_TABLE () and MONO_JUMP_TABLE_FROM_INS ()
for processing jump tables. Fixes #473787.

svn path=/trunk/mono/; revision=126668

15 years agoIn .:
Rodrigo Kumpera [Thu, 12 Feb 2009 00:13:20 +0000 (00:13 -0000)]
In .:
2009-02-11  Rodrigo Kumpera  <rkumpera@novell.com>

* thread-safety.txt: Document the new image lock.

svn path=/trunk/mono/; revision=126667

15 years agoIn .:
Rodrigo Kumpera [Thu, 12 Feb 2009 00:13:08 +0000 (00:13 -0000)]
In .:
2009-02-11 Rodrigo Kumpera  <rkumpera@novell.com>

* metadata-internals.h (struct MonoImage): Add lock field. Export mono_image_lock and
mono_image_unlock.

* image.c (mono_image_init): Init the lock field.

* image.c (mono_image_init): Cleanup the lock field.

* image.c: Add mono_image_(un)lock functions.

svn path=/trunk/mono/; revision=126666

15 years ago2009-02-11 Bill Holmes <billholmes54@gmail.com>
Bill Holmes [Wed, 11 Feb 2009 22:09:15 +0000 (22:09 -0000)]
2009-02-11  Bill Holmes  <billholmes54@gmail.com>

* mono-filemap.c : Fixing the MSVC build.

Contributed under MIT/X11 license.

svn path=/trunk/mono/; revision=126646

15 years ago2009-02-11 Bill Holmes <billholmes54@gmail.com>
Bill Holmes [Wed, 11 Feb 2009 22:07:28 +0000 (22:07 -0000)]
2009-02-11  Bill Holmes  <billholmes54@gmail.com>

* libmono.vcproj : Adding utils\mono-filemap.c to the project.

Code is contributed under MIT/X11 license.

svn path=/trunk/mono/; revision=126645

15 years ago2009-02-11 Gonzalo Paniagua Javier <gonzalo@novell.com>
Gonzalo Paniagua Javier [Wed, 11 Feb 2009 19:47:29 +0000 (19:47 -0000)]
2009-02-11 Gonzalo Paniagua Javier <gonzalo@novell.com>

* Socket.cs: instead of clearing the sockets form the output and then
adding them back, we just remove the ones that have not been
signaled.
Fixes bug #354090.

svn path=/trunk/mcs/; revision=126637

15 years ago2009-02-11 Mark Probst <mark.probst@gmail.com>
Mark Probst [Wed, 11 Feb 2009 19:03:27 +0000 (19:03 -0000)]
2009-02-11  Mark Probst  <mark.probst@gmail.com>

* class.c, class-internals.h: mono_method_get_context_general()
combines the functionality of mono_method_get_context() and
mini_method_get_context().

* generic-sharing.c, domain-internals.h:
mono_method_construct_object_context() and
mono_domain_lookup_shared_generic() moved from mini.

* icall.c (ves_icall_InternalInvoke): Handle the case where the
method doesn't have the correct instantiation because it's shared
generic code.  Fixes #473999.

2009-02-11  Mark Probst  <mark.probst@gmail.com>

* mini-generic-sharing.c: mini_method_get_context() just calls
mono_method_get_context_general() now.

* mini.c, mini.h: Moved get_object_generic_inst(),
construct_object_context_for_method() and
mono_domain_lookup_shared_generic() to metadata/generic-sharing.c.

2009-02-11  Mark Probst  <mark.probst@gmail.com>

* bug-473999.2.cs: New test.

* Makefile.am: Test added.

svn path=/trunk/mono/; revision=126631

15 years ago2009-02-11 Marek Safar <marek.safar@gmail.com>
Marek Safar [Wed, 11 Feb 2009 17:40:36 +0000 (17:40 -0000)]
2009-02-11  Marek Safar  <marek.safar@gmail.com>

* statement.cs: Use member cache when looking for foreach members.

svn path=/trunk/mcs/; revision=126626

15 years ago2009-02-11 Leszek Ciesielski <skolima@gmail.com>
Leszek 'skolima' Ciesielski [Wed, 11 Feb 2009 17:24:12 +0000 (17:24 -0000)]
2009-02-11  Leszek Ciesielski <skolima@gmail.com>

        * ResolveAssemblyReference.cs : AllowedRelatedFileExtensions stub

svn path=/trunk/mcs/; revision=126625

15 years ago2009-02-11 Marek Safar <marek.safar@gmail.com>
Marek Safar [Wed, 11 Feb 2009 16:59:38 +0000 (16:59 -0000)]
2009-02-11  Marek Safar  <marek.safar@gmail.com>

* convert.cs, statement.cs: Removed usage of IsAssignableFrom.

svn path=/trunk/mcs/; revision=126621

15 years ago2009-02-11 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Wed, 11 Feb 2009 14:39:47 +0000 (14:39 -0000)]
2009-02-11  Zoltan Varga  <vargaz@gmail.com>

* loader.c (mono_method_get_wrapper_data): Handle inflated methods as well.

* loader.c (mono_loader_lock): Add a comment pointing to the locking document.

svn path=/trunk/mono/; revision=126607

15 years ago2009-02-11 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Wed, 11 Feb 2009 14:30:46 +0000 (14:30 -0000)]
2009-02-11  Zoltan Varga  <vargaz@gmail.com>

* branch-opts.c (mono_if_conversion): Handle the case where the merged
basic block fell through to its successor bblock without a branch. Fixes
#474718.

* iltests.il.in: Add a test.

svn path=/trunk/mono/; revision=126604

15 years agoNew test.
Marek Safar [Wed, 11 Feb 2009 14:14:18 +0000 (14:14 -0000)]
New test.

svn path=/trunk/mcs/; revision=126602

15 years ago2009-02-11 Marek Safar <marek.safar@gmail.com>
Marek Safar [Wed, 11 Feb 2009 14:14:05 +0000 (14:14 -0000)]
2009-02-11  Marek Safar  <marek.safar@gmail.com>

* expression.cs: Don't expose internal initializer types.

* statement.cs: Check also explicit conversions for goto case.

svn path=/trunk/mcs/; revision=126601

15 years agoIn .:
Rodrigo Kumpera [Wed, 11 Feb 2009 13:52:12 +0000 (13:52 -0000)]
In .:
2009-02-11 Rodrigo Kumpera  <rkumpera@novell.com>

* metadata.c: Make mono_image_alloc_lock and mono_image_alloc0_lock non static.

* metadata-internals.h: Export mono_image_alloc_lock and mono_image_alloc0_lock.

* loader.c (mono_get_method_full): Drop the loader lock while constructing the method
and recheck the cache for dups after it.

* loader.c (mono_get_method_from_token): Use _lock version of mono_image_alloc0.

Fixes one of the deadlocks found in #473150.

svn path=/trunk/mono/; revision=126599

15 years ago2009-02-11 Bill Holmes <billholmes54@gmail.com>
Bill Holmes [Wed, 11 Feb 2009 13:45:07 +0000 (13:45 -0000)]
2009-02-11  Bill Holmes  <billholmes54@gmail.com>

* socket-io.c (ves_icall_System_Net_Sockets_Socket_Accept_internal):
  For Win32, add additional break conditions for accept.

Code is contributed under MIT/X11 license.

svn path=/trunk/mono/; revision=126596

15 years ago2009-02-11 Marek Safar <marek.safar@gmail.com>
Marek Safar [Wed, 11 Feb 2009 11:27:59 +0000 (11:27 -0000)]
2009-02-11  Marek Safar  <marek.safar@gmail.com>

* convert.cs: Removed usage of IsAssignableFrom.

svn path=/trunk/mcs/; revision=126564

15 years ago2009-02-10 Gonzalo Paniagua Javier <gonzalo@novell.com>
Gonzalo Paniagua Javier [Tue, 10 Feb 2009 23:35:11 +0000 (23:35 -0000)]
2009-02-10 Gonzalo Paniagua Javier <gonzalo@novell.com>

* CookieContainer.cs: separate cookies with "; " instead of just ';'.
Fixes bug #386727.

svn path=/trunk/mcs/; revision=126530

15 years ago2009-02-11 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Tue, 10 Feb 2009 23:19:09 +0000 (23:19 -0000)]
2009-02-11  Zoltan Varga  <vargaz@gmail.com>

* aot-compiler.c (encode_method_ref): Encode methods of array types.
(can_encode_patch): We can now handle arrays of generic parameters and
array methods.

* aot-runtime.c (decode_method_ref_2): Handle methods of array types.

* aot-compiler.c aot-runtime.c: Emit the size of specific trampolines into
the AOT file to avoid some #ifdefs in aot-runtime.c

* mini.h: Bump AOT file format version.

svn path=/trunk/mono/; revision=126528

15 years ago2009-02-10 Gonzalo Paniagua Javier <gonzalo@novell.com>
Gonzalo Paniagua Javier [Tue, 10 Feb 2009 22:32:17 +0000 (22:32 -0000)]
2009-02-10 Gonzalo Paniagua Javier <gonzalo@novell.com>

- The PropertyValueCollection class doesn't mark its data as dirty/changed in
  - this[int index] setter
  - Insert()
  - Remove()
  - Value setter
The DirectoryEntry class doesn't handle the clearing of an attribute (see
CommitEntry())
Patch from Juraj Skripsky that fixes bug #416985.

svn path=/trunk/mcs/; revision=126522

15 years ago2009-02-10 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Tue, 10 Feb 2009 19:20:14 +0000 (19:20 -0000)]
2009-02-10  Zoltan Varga  <vargaz@gmail.com>

* Makefile.am (fullaotcheck): Make this run the tests.

svn path=/trunk/mono/; revision=126501

15 years ago2009-02-10 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Tue, 10 Feb 2009 19:19:41 +0000 (19:19 -0000)]
2009-02-10  Zoltan Varga  <vargaz@gmail.com>

* aot-compiler.c: Make the printing of skipped methods runtime configurable.

svn path=/trunk/mono/; revision=126499

15 years ago2009-02-10 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Tue, 10 Feb 2009 19:18:06 +0000 (19:18 -0000)]
2009-02-10  Zoltan Varga  <vargaz@gmail.com>

* marshal.c (mono_marshal_get_native_func_wrapper): Use get_cache to
lazily initialize the native wrapper cache.
(mono_marshal_get_native_wrapper): Put aot-ed native wrappers into a separate
cache, since they are different from the normal wrappers.

* image.c (mono_image_init): Initialize native_wrapper_cache lazily as well.

* metadata-internals.h (struct _MonoImage): Add a new wrapper for
AOT compiled native wrappers.

svn path=/trunk/mono/; revision=126498

15 years ago * System.Runtime.Serialization.dll.sources: Add
Jonathan Pryor [Tue, 10 Feb 2009 19:09:24 +0000 (19:09 -0000)]
* System.Runtime.Serialization.dll.sources: Add
  System.Xml/IFragmentCapableXmlDictionaryWriter.cs to the build.
* IFragmentCapableXmlDictionaryWriter.cs: Added.

svn path=/trunk/mcs/; revision=126493

15 years ago * Mono.Documentation/monodocer.cs: Cleanup: turn static data into
Jonathan Pryor [Tue, 10 Feb 2009 18:16:14 +0000 (18:16 -0000)]
* Mono.Documentation/monodocer.cs: Cleanup: turn static data into
  instance data (for future Threading changes, as only static data
  will be tracked for thread-safety); use MDocCommand.Message() and
  MDocCommand.Error() for message reporting; remove warnings.

svn path=/trunk/mcs/; revision=126485

15 years ago2009-02-10 Marek Habersack <mhabersack@novell.com>
Marek Habersack [Tue, 10 Feb 2009 18:12:15 +0000 (18:12 -0000)]
2009-02-10  Marek Habersack  <mhabersack@novell.com>

* ImageButton.cs: AddAttributesToRender renders the onclick
attribute only if any of the following is true:
  - OnClientClick is not empty
  - Validation is enabled for the control
  - PostBackUrl is used
PostBackOptions now indicate that control requires the javascript
protocol for the handler.
RaisePostBackEvent passes String.Empty as the argument.
Fixes bug #463939

2009-02-10  Marek Habersack  <mhabersack@novell.com>

* ImageButtonTest.cs: added test for bug #46393

svn path=/trunk/mcs/; revision=126482

15 years ago2009-02-10 Mark Probst <mark.probst@gmail.com>
Mark Probst [Tue, 10 Feb 2009 14:59:00 +0000 (14:59 -0000)]
2009-02-10  Mark Probst  <mark.probst@gmail.com>

* mini-x86.c (mono_arch_context_get_int_reg): Handle all registers
individually.  Fixes #473482.

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

* bug-473482.2.cs: New test.

* Makefile.am: Test added.

svn path=/trunk/mono/; revision=126467

15 years ago2009-02-10 Marek Safar <marek.safar@gmail.com>
Marek Safar [Tue, 10 Feb 2009 14:43:14 +0000 (14:43 -0000)]
2009-02-10  Marek Safar  <marek.safar@gmail.com>

* *.cs: Replace null-type with NullLiteral where appropriate.

svn path=/trunk/mcs/; revision=126464

15 years ago2009-02-10 Jeffrey Stedfast <fejj@novell.com>
Jeffrey Stedfast [Tue, 10 Feb 2009 14:29:46 +0000 (14:29 -0000)]
2009-02-10  Jeffrey Stedfast  <fejj@novell.com>

* minizip/zip.c: Fix warnings about old-style paramater type
specifications.

* minizip/unzip.c Fix warnings about old-style paramater type
specifications.

svn path=/trunk/mono/; revision=126463

15 years ago2009-02-10 Jeffrey Stedfast <fejj@novell.com>
Jeffrey Stedfast [Tue, 10 Feb 2009 14:22:22 +0000 (14:22 -0000)]
2009-02-10  Jeffrey Stedfast  <fejj@novell.com>

* minizip/unzip.c (unzlocal_DosDateToTmuDate): Fix ambiguous
else's.
(unzlocal_DosDateToTmuDate): Here too.
(unzlocal_CheckCurrentFileCoherencyHeader): And here.

svn path=/trunk/mono/; revision=126461

15 years ago2009-02-10 Jeffrey Stedfast <fejj@novell.com>
Jeffrey Stedfast [Tue, 10 Feb 2009 14:18:02 +0000 (14:18 -0000)]
2009-02-10  Jeffrey Stedfast  <fejj@novell.com>

* old-map.c: Added prototypes to silence compile warnings. Looks
like this file is supposed to be autogenerated, so probably not
the right fix but I can't find the autogen script.

* map.h (helper_Mono_Posix_getpwnamuid): Added a prototype for
this - it doesn't seem to be used anywhere in mono, so
maybe it can be removed but I'm not positive.
(map_Mono_Posix_PollEvents): Added prototype.
(map_Mono_Posix_Signals): Added prototype.

* macros.c: #include "map.h" to silence compile warnings about no
previous prototypes.

svn path=/trunk/mono/; revision=126460

15 years ago * TreeNode.cs: Don't return TreeView.BackColor when retrieving our own
Carlos Alberto Cortez [Tue, 10 Feb 2009 10:33:28 +0000 (10:33 -0000)]
* TreeNode.cs: Don't return TreeView.BackColor when retrieving our own
BackColor property. This is what .net does in both 1.1 and 2.0.
* TreeView.cs: When selected_node is not the same as highlighted_node,
we need to handle the back color in a different way, trying to use the
node's BackColor if it's not Color.Empty.
Fixes #464200.

2009-02-09  Carlos Alberto Cortez <calberto.cortez@gmail.com>

svn path=/trunk/mcs/; revision=126440

15 years ago2009-02-09 Carlos Alberto Cortez <calberto.cortez@gmail.com>
Carlos Alberto Cortez [Tue, 10 Feb 2009 09:12:02 +0000 (09:12 -0000)]
2009-02-09  Carlos Alberto Cortez <calberto.cortez@gmail.com>

* TreeView.cs: When canceling selection in our MouseUp handler,
invalidate also the previous selected node bounds.
Fixes #464191.

svn path=/trunk/mcs/; revision=126433

15 years ago2009-02-10 Gonzalo Paniagua Javier <gonzalo@novell.com>
Gonzalo Paniagua Javier [Tue, 10 Feb 2009 07:35:08 +0000 (07:35 -0000)]
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.

svn path=/trunk/mcs/; revision=126430

15 years agofix the windows build
Gonzalo Paniagua Javier [Tue, 10 Feb 2009 06:10:49 +0000 (06:10 -0000)]
fix the windows build

svn path=/trunk/mono/; revision=126424

15 years ago2009-02-10 Atsushi Enomoto <atsushi@ximian.com>
Atsushi Eno [Tue, 10 Feb 2009 04:09:27 +0000 (04:09 -0000)]
2009-02-10  Atsushi Enomoto  <atsushi@ximian.com>

* XmlTextWriter2.cs : similar fix in WriteStartElement() to
  previous change. Fixed bug #474091.

* XmlTextWriterTests.cs : added test for bug #474091.

svn path=/trunk/mcs/; revision=126417

15 years ago2009-02-09 Jeffrey Stedfast <fejj@novell.com>
Jeffrey Stedfast [Tue, 10 Feb 2009 01:32:54 +0000 (01:32 -0000)]
2009-02-09  Jeffrey Stedfast  <fejj@novell.com>

* supportw.c (SetWindowPos): Fixed compile warnings about
printf-style formatters.
(SendMessageA): Same.

svn path=/trunk/mono/; revision=126409

15 years ago2009-02-09 Jeffrey Stedfast <fejj@novell.com>
Jeffrey Stedfast [Tue, 10 Feb 2009 01:32:19 +0000 (01:32 -0000)]
2009-02-09  Jeffrey Stedfast  <fejj@novell.com>

* aot-compiler.c (arch_emit_plt_entry): Fixed to compile.
(mono_compile_assembly): Hush compile warnings about
uninitialized [tmp_]outfile_name variables in the !use_bin_writer
code path.

svn path=/trunk/mono/; revision=126408

15 years ago2009-02-10 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Tue, 10 Feb 2009 01:16:57 +0000 (01:16 -0000)]
2009-02-10  Zoltan Varga  <vargaz@gmail.com>

* mini-arm.c (mono_arch_output_basic_block): Disable AOT for OP_JMP.

svn path=/trunk/mono/; revision=126406

15 years ago2009-02-09 Jeffrey Stedfast <fejj@novell.com>
Jeffrey Stedfast [Tue, 10 Feb 2009 01:08:46 +0000 (01:08 -0000)]
2009-02-09  Jeffrey Stedfast  <fejj@novell.com>

* aot-compiler.c (arch_emit_plt_entry): Fixed to compile.

svn path=/trunk/mono/; revision=126405

15 years ago2009-02-10 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Tue, 10 Feb 2009 01:02:38 +0000 (01:02 -0000)]
2009-02-10  Zoltan Varga  <vargaz@gmail.com>

* exceptions-arm.c (mono_arch_find_jit_info): Fix aot support.

* mini-arm.c: Checkin unwind related changes missing from an earlier commit.

svn path=/trunk/mono/; revision=126404

15 years ago2009-02-10 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Tue, 10 Feb 2009 01:00:15 +0000 (01:00 -0000)]
2009-02-10  Zoltan Varga  <vargaz@gmail.com>

* aot-compiler.c: Fix arm support.

* image-writer.c: Move the R_ARM constants to image-writer.h. Export a
img_writer_emit_unset_mode () function.

svn path=/trunk/mono/; revision=126403

15 years ago2009-02-09 Geoff Norton <gnorton@novell.com>
Geoff Norton [Tue, 10 Feb 2009 00:22:32 +0000 (00:22 -0000)]
2009-02-09  Geoff Norton  <gnorton@novell.com>

        * mini-s390.c: Fix the signature of emit_sig_cookie.

svn path=/trunk/mono/; revision=126400

15 years agoAdd missing files to the build.
Zoltan Varga [Tue, 10 Feb 2009 00:20:50 +0000 (00:20 -0000)]
Add missing files to the build.

svn path=/trunk/mono/; revision=126399

15 years ago2009-02-10 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Tue, 10 Feb 2009 00:20:33 +0000 (00:20 -0000)]
2009-02-10  Zoltan Varga  <vargaz@gmail.com>

* unwind.c (mono_unwind_get_dwarf_data_align): New helper function.
(mono_unwind_get_dwarf_pc_reg): Ditto.

* aot-compiler.c (emit_dwarf_abbrev): Another large reorganization.
Move almost all platform specific code to a set of arch_ functions,
and document them to ease porting.

svn path=/trunk/mono/; revision=126398

15 years ago2009-02-10 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Mon, 9 Feb 2009 23:07:40 +0000 (23:07 -0000)]
2009-02-10  Zoltan Varga  <vargaz@gmail.com>

* aot-compiler.c (mono_xdebug_init): Fix xdebug support.

svn path=/trunk/mono/; revision=126392

15 years agoEnabled full verify for 2.0 profile
Marek Safar [Mon, 9 Feb 2009 23:05:38 +0000 (23:05 -0000)]
Enabled full verify for 2.0 profile

svn path=/trunk/mcs/; revision=126391

15 years agoUpdate.
Marek Safar [Mon, 9 Feb 2009 23:05:03 +0000 (23:05 -0000)]
Update.

svn path=/trunk/mcs/; revision=126390

15 years ago2009-02-09 Marek Safar <marek.safar@gmail.com>
Marek Safar [Mon, 9 Feb 2009 23:04:38 +0000 (23:04 -0000)]
2009-02-09  Marek Safar  <marek.safar@gmail.com>

* expression.cs: Initializer of reference argument use temporary
variable to be verifiable.

* parameter.cs: Share EmitLdArg.

svn path=/trunk/mcs/; revision=126389

15 years ago2009-02-10 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Mon, 9 Feb 2009 23:02:45 +0000 (23:02 -0000)]
2009-02-10  Zoltan Varga  <vargaz@gmail.com>

* image-writer.h image-writer.c: New files, extracted from aot-compiler.c.

* aot-compiler.c: Extract the image writing functionality into a separate
module to reduce the size of this file.

svn path=/trunk/mono/; revision=126388

15 years ago * Documentation/en/Mono.Unix/UnixGroupInfo.xml: Document semantic
Jonathan Pryor [Mon, 9 Feb 2009 21:34:01 +0000 (21:34 -0000)]
* Documentation/en/Mono.Unix/UnixGroupInfo.xml: Document semantic
  changes to UnixGroupInfo.GetMembers().
* Mono.Unix/UnixGroupInfo.cs (GetMembers): Skip group members which
  aren't valid users on the system (thus removing a possible exception).
  Patch thanks to Daniel PeƱalba.

svn path=/trunk/mcs/; revision=126381

15 years ago2009-02-09 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Mon, 9 Feb 2009 21:17:46 +0000 (21:17 -0000)]
2009-02-09  Zoltan Varga  <vargaz@gmail.com>

* aot-compiler.c (is_shared_got_patch): Add MONO_PATCH_INFO_IMAGE.

* aot-runtime.c (is_shared_got_patch): Ditto.

* aot-runtime.c (load_named_code): Cope with the fact that
decode_got_entry () won't decode the patch fully if its corresponding got
entry is already filled.

svn path=/trunk/mono/; revision=126377

15 years ago2009-02-09 Marek Habersack <mhabersack@novell.com>
Marek Habersack [Mon, 9 Feb 2009 21:08:40 +0000 (21:08 -0000)]
2009-02-09  Marek Habersack  <mhabersack@novell.com>

* ObjectDataSourceViewTest.cs: added test for bug #471767

2009-02-09  Marek Habersack  <mhabersack@novell.com>

* ObjectDataSourceView.cs: ExecuteSelect returns a single-item
array of objects containing the result, if the result isn't one of
DataSet, DataTable or IEnumerable. Fixes bug #471767

svn path=/trunk/mcs/; revision=126371

15 years ago * Makefile: Don't include mono-ecma-css.js as a resource.
Jonathan Pryor [Mon, 9 Feb 2009 18:44:57 +0000 (18:44 -0000)]
* Makefile: Don't include mono-ecma-css.js as a resource.
* Monodoc/ecma-provider.cs: Insert helper.js, not mono-ecma-css.js.
* Monodoc/provider.cs: Surround the contents of `helper.js' with a
  <script/> block so that valid HTMl is generated.
* Resources/helper.js: Remove <script/> block, so that `helper.js' is an
  actual JavaScript file, not an SGML file w/ JavaScript content.
* Resources/mono-ecma-css.js: Remove; use Resources/helper.js instead.

svn path=/trunk/mcs/; revision=126359

15 years ago* IUriData.cs, UriData.cs: New. Initial cut at UriParser protocol.
Raja R Harinath [Mon, 9 Feb 2009 18:13:30 +0000 (18:13 -0000)]
* IUriData.cs, UriData.cs: New.  Initial cut at UriParser protocol.

svn path=/trunk/mcs/; revision=126358

15 years agoMake UriParser available in the NET_1_1 build
Raja R Harinath [Mon, 9 Feb 2009 18:13:02 +0000 (18:13 -0000)]
Make UriParser available in the NET_1_1 build

* UriParser.cs: Make visible as internal class in the NET_1_1 build.
* UriComponents.cs, UriFormats.cs, DefaultUriParser.cs: Likewise.
* GenericUriParser.cs, GenericUriParserOptions.cs: Likewise.

svn path=/trunk/mcs/; revision=126357

15 years agoupdate known issues
Raja R Harinath [Mon, 9 Feb 2009 18:12:34 +0000 (18:12 -0000)]
update known issues

svn path=/trunk/mcs/; revision=126356

15 years ago2009-02-09 Geoff Norton <gnorton@novell.com>
Geoff Norton [Mon, 9 Feb 2009 17:28:57 +0000 (17:28 -0000)]
2009-02-09  Geoff Norton  <gnorton@novell.com>

        * appdomain.h:
        * security-core-clr.c: Allow enabling core-clr from the embedding
        API.

svn path=/trunk/mono/; revision=126351

15 years ago2009-02-09 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Mon, 9 Feb 2009 15:54:24 +0000 (15:54 -0000)]
2009-02-09  Zoltan Varga  <vargaz@gmail.com>

* tramp-amd64.c (mono_arch_create_monitor_enter_trampoline_full):
Initialize *ji.
(mono_arch_create_monitor_exit_trampoline_full): Ditto.

svn path=/trunk/mono/; revision=126339

15 years ago2009-02-09 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Mon, 9 Feb 2009 15:50:18 +0000 (15:50 -0000)]
2009-02-09  Zoltan Varga  <vargaz@gmail.com>

* tramp-amd64.c (mono_arch_create_monitor_enter_trampoline_full): Use 'code'
as the moving pointer instead of 'buf' for consistency with the rest of the
codebase.
(mono_arch_create_monitor_exit_trampoline): Ditto.

svn path=/trunk/mono/; revision=126338

15 years ago2009-02-09 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Mon, 9 Feb 2009 15:33:25 +0000 (15:33 -0000)]
2009-02-09  Zoltan Varga  <vargaz@gmail.com>

* aot-compiler.c (emit_trampolines): Add throw_pending_exception/
generic_class_init trampolines.
(add_generic_class): Extract some code from add_generic_instances () into a
separate function so it can be called from other places too.
(compile_method): Call add_generic_class () for the classes of inflated methods
referenced by the method.
(can_encode_patch): Allow references to generic parameters.

* aot-runtime.c: Add support the patches required by the new trampolines.

* exceptions-amd64.c (mono_arch_get_throw_pending_exception_full): Add full-aot
support.

* tramp-amd64.c (mono_arch_create_generic_class_init_trampoline_full): Add
full-aot support.

* exceptions-amd64.c (mono_arch_get_throw_pending_exception_full): Rename
this from get_throw_pending_exception, make the signature full aot compatible.

svn path=/trunk/mono/; revision=126337

15 years agoNew test.
Marek Safar [Mon, 9 Feb 2009 10:38:32 +0000 (10:38 -0000)]
New test.

svn path=/trunk/mcs/; revision=126329

15 years ago2009-02-09 Marek Safar <marek.safar@gmail.com>
Marek Safar [Mon, 9 Feb 2009 10:38:10 +0000 (10:38 -0000)]
2009-02-09  Marek Safar  <marek.safar@gmail.com>

A fix for bug #473559
* class.cs: Fixed: Not reporting error about nested class with the
same name.

svn path=/trunk/mcs/; revision=126328

15 years ago2009-02-09 Atsushi Enomoto <atsushi@ximian.com>
Atsushi Eno [Mon, 9 Feb 2009 09:31:23 +0000 (09:31 -0000)]
2009-02-09  Atsushi Enomoto  <atsushi@ximian.com>

* XmlElementTest.cs: SetAttribute(name,value) should identify value
  change for existing node, from new node insertion.
  Fixed bug #464394.

* XmlElementTests.cs : added test for bug #464394.

svn path=/trunk/mcs/; revision=126323

15 years ago2009-02-09 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Mon, 9 Feb 2009 01:08:13 +0000 (01:08 -0000)]
2009-02-09  Zoltan Varga  <vargaz@gmail.com>

* exceptions-amd64.c (mono_arch_get_throw_pending_exception_full): Rename
this from get_throw_pending_exception, make the signature full aot compatible.

svn path=/trunk/mono/; revision=126301

15 years ago2009-02-09 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Mon, 9 Feb 2009 00:46:03 +0000 (00:46 -0000)]
2009-02-09  Zoltan Varga  <vargaz@gmail.com>

* Makefile.am (fullaotcheck): New target to run full-aot tests.

svn path=/trunk/mono/; revision=126300

15 years ago2009-02-09 Zoltan Varga <vargaz@gmail.com>
Zoltan Varga [Mon, 9 Feb 2009 00:37:01 +0000 (00:37 -0000)]
2009-02-09  Zoltan Varga  <vargaz@gmail.com>

* method-to-ir.c (inline_method): Save/Restore cfg->ret_var_set too.

* exceptions.cs: Add a test.

svn path=/trunk/mono/; revision=126299