* test-9.il: New test, test instaniating a class
[mono.git] / mono / metadata / ChangeLog
index c841194b05e8ea1adeecedecf6c37b8c0b7ff0f5..3bfb6a2d95f4e4bf6a25deeda263051a9924fb55 100644 (file)
@@ -1,3 +1,361 @@
+2003-03-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * Makefile.am:
+       * assembly.c:
+       * icall.c: make MONO_ASSEMBLIES and MONO_CFG_DIR work on windows.
+
+       * appdomain.c:
+       * appdomain.h:
+       * marshal.c:
+       * object.c: remove warnings.
+
+2003-03-13  Martin Baulig  <martin@ximian.com>
+
+       * debug-mono-symfile.h (MonoSymbolFileLexicalBlockEntry): New type.
+       (MonoDebugLexicalBlockEntry): New types.
+
+       * debug-mono-symfile.c
+       (_mono_debug_address_from_il_offset): Moved here from ../jit/debug.c.
+
+2003-03-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * process.c: ret can be any non-zero value accroding to MS doc.
+
+2003-03-07  Miguel de Icaza  <miguel@ximian.com>
+
+       * class.c (mono_marshal_load_type_info): Fix buglet:  Noticed when
+       fixing a warning for a miss-used prototype, would have cause
+       random memory corruption.
+
+2003-03-07  Martin Baulig  <martin@ximian.com>
+
+       * marshal.c (mono_marshal_free_array): That "TESTFREE %p" was
+       getting really annoying ....
+
+2003-03-07  Zoltan Varga  <vargaz@freemail.hu>
+
+       * reflection.c (fixup_method): added support for array methods.
+
+Tue Mar 4 18:03:27 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+       * socket-io.c:  handle case when AF_INET6 and AF_IPX are not defined
+       (pointed out by Michael Adams).
+
+2003-03-04  Dick Porter  <dick@ximian.com>
+
+       * icall.c: Temporarily reverted the Double and Single ToString()
+       change, because it broke nunit.
+
+Tue Mar 4 12:40:58 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+       * object.h, threads.h: make include files compatible with C++
+       (patch by Jerome Laban <jlaban@wanadoo.fr>).
+
+2003-03-04  Pedro Martínez Juliá  <yoros@wanadoo.es>
+
+       * icall.c: Erased ToString helper functions for Double and Single.
+       Now, that implementations ar all in managed code (Double and Single
+       Formatters).
+
+2003-03-03  Lluis Sanchez Gual  <lluis@ideary.com>
+
+       * appdomain.c: Added method for initializing the default context of
+       a domain. Added internal call for getting the default context.
+       * appdomain.h: Added context variable in MonoDomain struct.
+       * domain.c: mono_domain_set also sets the default context of the domain
+       * icall.c: Mapped internal method InternalGetDefaultContext.
+       * object.c: mono_object_get_virtual_method returns always a remoting
+       wrapper if the object is a transparent proxy.
+       mono_runtime_invoke_array: when creating an object by calling the\r
+       constructor, if the created object is a proxy, then the constructor should\r
+       be called using the a remoting wrapper.\r
+
+2003-03-03  Dick Porter  <dick@ximian.com>
+
+       * socket-io.c (create_sockaddr_from_object): Rename sockaddr_un
+       variable so it compiles on solaris.  Problem spotted by
+       Christopher Taylor <ct@cs.clemson.edu>
+
+2003-03-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * appdomain.c:
+       (get_info_from_assembly_name): don't leak value.
+
+       * icall.c:
+       (ves_icall_System_Reflection_Assembly_GetFilesInternal): initialize
+       result.
+
+Sat Mar 1 15:32:56 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+       * assembly.c: export mono_image_load_references ().
+       * class.c: handle function pointers. mono_class_from_name() now
+       supports nested type names directly.
+
+2003-02-28  Zoltan Varga  <vargaz@freemail.hu>
+
+       * reflection.h reflection.c: Encode already created dynamic methods 
+       and fields correctly as a DEF instead of a REF.
+
+       * reflection.c: Get rid of the force_ref argument to 
+       mono_image_typedef_or_ref since it was wrong in the first place.
+
+       * string-icalls.c: add error checking to string constructors according
+       to the MSDN docs.
+
+       * reflection.c: Emit types in the order their TypeBuilders were 
+       created. Previously, a new table index was assigned to each type before
+       the tables were emitted. This was wrong because the signature blob
+       might already refer to a type by its original table index.
+
+2003-02-27  Zoltan Varga  <vargaz@freemail.hu>
+
+       * metadata.c (mono_metadata_nesting_typedef): fix bug in previous
+       change.
+       
+2003-02-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * Makefile.am: make assemblies dir have \ instead of / on windows.
+
+2003-02-27  Zoltan Varga  <vargaz@freemail.hu> 
+
+       * metadata.c metadata.h (mono_metadata_nesting_typedef): changed to
+       iterate over the NESTEDCLASS table using a linear search since the
+       table is not guaranteed to be sorted by the secondary key.
+
+       * class.c (mono_class_create_from_typedef): fixed up call to
+       mono_metadata_nesting_typedef.
+       
+2003-02-27  Dietmar Maurer  <dietmar@ximian.com>
+
+       * marshal.c (mono_string_to_byvalstr): clear the memory as
+       suggested by Jerome Laban <jlaban@wanadoo.fr>
+
+2003-02-26  Dick Porter  <dick@ximian.com>
+
+       * process.c: Cope with padding in .rsrc blocks
+
+2003-02-26  Dietmar Maurer  <dietmar@ximian.com>
+
+       * metadata.h: reverted the filter_len change, it breaks reflection
+       
+2003-02-26  Dietmar Maurer  <dietmar@ximian.com>
+
+       * metadata.h: added a new field to store the filter_len
+       
+
+Tue Feb 25 10:56:16 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+       * reflection.c: handle custom attributes for types and members
+       created with Reflection.Emit (bug#38422).
+
+2003-02-22  Zoltan Varga  <vargaz@freemail.hu>
+
+       * reflection.c: define RTSpecialName automatically for constructors for
+       compatibility with MS.NET.
+
+       * reflection.c (mono_reflection_create_runtime_class): initialize
+       nested_in field of dynamically created classes.
+
+2003-02-22  Martin Baulig  <martin@ximian.com>
+
+       * debug-mono-symfile.h: Incremented version number.
+
+2003-02-21  Zoltan Varga  <vargaz@freemail.hu>
+
+       * object.h icall.c process.c: fix warnings.
+
+2003-02-21  Zoltan Varga  <vargaz@freemail.hu>
+
+       * appdomain.h appdomain.c:
+       (mono_domain_try_type_resolve): split the 
+       name_or_tb argument into a name and a tb argument.
+       (mono_domain_has_type_resolve): new function to check whenever the
+       application has registered a TypeResolve event handler.
+       
+       * icall.c reflection.h reflection.c: move the type resolve logic into
+       mono_reflection_get_type () so it will be invoked when 
+       Assembly::GetType () is called.
+
+       * reflection.c:
+       (mono_reflection_get_type): renamed to get_type_internal.
+       (mono_reflection_get_type): fixed type name generation so it works 
+       for nested types too.
+       (mono_reflection_get_type): call has_type_resolve () to avoid the 
+       costly type name generation if there is no resolve event handler.
+
+Fri Feb 21 11:36:57 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+       * class.c, image.c: load exported types from file references.
+
+2003-02-19  Lluis Sanchez Gual  <lluis@ideary.com>
+
+       * appdomain.h: Added in MonoDomain a couple of MonoMethod* variables\r
+         used to cache the managed methods used to create proxies and make \r
+         remote invocation of methods.
+       * class.h: Added in MonoVTable a flag to indicate that a class needs \r
+         to be remotely created.\r
+       * object.c: Modified the method mono_class_vtable(). It now initializes \r
+         the remote flag of the vtable. Modified mono_object_new_specific(), \r
+         so now it checks the remote flag.
+       * icall.c: Added a couple of internal methods, one for enabling instance \r
+         creation interception for a type, and one for creating objects bypassing\r
+         the remote check.\r
+
+2003-02-18  Martin Baulig  <martin@ximian.com>
+
+       * debug-mono-symfile.c (ves_icall_MonoDebugger_GetMethodToken):
+       New interncall to get a method's metadata token.
+
+       * icall.c ("System.Reflection.Assembly::MonoDebugger_GetMethodToken"):
+       New interncall for the debugger.
+
+2003-02-18  Dietmar Maurer  <dietmar@ximian.com>
+
+       * class.c (mono_class_setup_vtable): allocate supertype array
+
+2003-02-18  Martin Baulig  <martin@ximian.com>
+
+       * debug-mono-symfile.h (MonoSymbolFileMethodAddress): Added `has_this'.
+
+2003-02-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * reflection.c:
+       (assembly_name_to_aname): jump over unknown properties (i've found
+       something like: 'type, assembly, version=xxx, custom=null, public...',
+       so now will ignore custom=null and still get the rest of the values).
+
+2003-02-17  Dick Porter  <dick@ximian.com>
+
+       * threads.c: Have Thread.Start() wait for a semaphore to signal
+       that the thread has set up all its local data.  This fixes bug
+       34323, where Abort() raced the new thread's TLS data.
+
+       Also removes the handle_store() call from start_wrapper, because
+       threads are now always created suspended and there is no longer a
+       race between the parent and child threads to store the info.
+
+Mon Feb 17 13:13:31 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+       * image.c: explain the #- heap issue in a message, hopefully
+       avoiding FAQs on mono-list.
+
+2003-02-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * icall.c:
+       (GetEntryAssembly): if the domain has not invoked
+       AppDomain.ExecuteAssembly yet, return the assembly of the default
+       AppDomain.
+
+2003-02-16  Zoltan Varga  <vargaz@freemail.hu>
+
+       * class.c (mono_ldtoken): make it work in dynamic assemblies.
+
+Sun Feb 16 13:10:06 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+       * metadata.c, reflection.c: simple speedup to type hash
+       and equals code.
+
+Sat Feb 15 15:15:03 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+       * image.c, image.h, class.c, assembly.c: move module loading
+       to MonoImage. When loading metadata, consider alignemnet from
+       the start of metadata, not from the metadata address in memory.
+
+2003-02-13  Zoltan Varga  <vargaz@freemail.hu>
+
+       * reflection.c (mono_reflection_get_custom_attrs): Added support for 
+       AssemblyBuilder objects. Factored out custom attribute creation into
+       a separate function.
+       (create_custom_attr): new function to create custom attributes.
+
+2003-02-12  Miguel de Icaza  <miguel@ximian.com>
+
+       * Makefile.am: Got tired of typing the full pathname to pedump.
+       Until there is another option, am installing this.
+
+2003-02-12  Dietmar Maurer  <dietmar@ximian.com>
+
+       * class.c (class_compute_field_layout): always set field->parent 
+       (mono_ldtoken): use mono_defaults.fieldhandle_class;
+
+2003-02-11  Dick Porter  <dick@ximian.com>
+
+       * threads-types.h:
+       * monitor.c: Rewrote Monitor, making lock much faster and
+       Pulse/Wait work as specified.  Also uses much fewer handles, and only
+       creates them as needed.
+
+       * exception.c: Added SynchronizationLockException
+
+       * threads.c: Deleted old Monitor implementation.  The new one is
+       in a new file.
+
+Mon Feb 10 17:54:10 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+       * class.c: handled TypedReference type code. Set the correct size for
+       class data. Setup interface_offsets for interface classes, too.
+
+2003-02-09  Martin Baulig  <martin@ximian.com>
+
+       * debug-mono-symfile.h: Reflect latest symbol writer changes.
+
+Sun Feb 9 18:37:01 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+       * loader.c: implemented MEMBERREF_PARENT_TYPEDEF.
+       * metadata.c, reflection.c: missing MONO_TYPE_TYPEDBYREF handling.
+       * object.c: fixed mono_object_get_virtual_method () for interfaces.
+       * verify.c: check for code that runs after the end of the method.
+
+2003-02-08  Pedro Martínez Juliá  <yoros@wanadoo.es>
+
+       * icall.c: Added "System.Math::Floor", "System.Math::Round" and
+       "System.Math::Round2".
+       * sysmath.h: Added Floor, Round and Round2 definitions.
+       * sysmath.c: Modified certain functions that were not 100% compliant
+       with MS.NET (math precision) and added the implementation of Floor,
+       Round and Round2.
+
+2003-02-07  Martin Baulig  <martin@ximian.com>
+
+       * debug-mono-symfile.c (mono_debug_symfile_add_method): Ignore interncalls.
+
+2003-02-07  Martin Baulig  <martin@ximian.com>
+
+       * debug-mono-symfile.c: Reflected latest symwriter changes.
+       (mono_debug_create_mono_symbol_file): Removed.
+       (mono_debug_open_mono_symbol_file): Take an argument which
+       specifies whether to create a dynamic symbol file.
+
+2003-02-07  Dietmar Maurer  <dietmar@ximian.com>
+
+       * class.c (mono_class_from_mono_type): added MONO_TYPE_TYPEDBYREF
+
+2003-02-05  Martin Baulig  <martin@ximian.com>
+
+       * reflection.c (mono_image_build_metadata): Make this public,
+       protect it against being called multiple times, don't create
+       resources and don't build the compressed metadata here.
+       (mono_image_create_pefile): Do this here.
+
+       * icall.c
+       ("System.Reflection.Emit.AssemblyBuilder::build_metadata"): Added.
+
+2003-02-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * socket-io.c: fixed bug #36322.
+
+2003-02-06  Piers Haken        <piersh@friskit.com>
+
+       * appdomain.[ch]:
+       * class.h:
+       * debug-mono-symfile.c:
+       * icall.c:
+       * loader.c:
+       * mono-config.c:
+       * monosn.c:
+       * reflection.c:
+       * socket-io.c: warning cleanups
+
 2003-02-06  Dietmar Maurer  <dietmar@ximian.com>
 
        * marshal.c (mono_marshal_get_remoting_invoke_with_check): new
@@ -4674,3 +5032,4 @@ Tue Jul  3 18:33:32 CEST 2001 Paolo Molaro <lupus@ximian.com>
        * mono/metadata/assembly.c (load_metadata_ptrs): Fix for Beta2
 
 
+