[Mono-bugs] [Bug 32443][Nor] Changed - Assembly.LoadFrom ("gizmo.dll").CreateInstance ("gizmo").GetType().FullName allways returns System.Object and not a gizmo.
25 Nov 2002 16:51:04 -0000
Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.
Changed by firstname.lastname@example.org.
--- shadow/32443 Mon Nov 18 11:55:28 2002
+++ shadow/32443.tmp.30084 Mon Nov 25 11:51:04 2002
@@ -1,13 +1,13 @@
OS: Red Hat 7.0
@@ -48,6 +48,31 @@
InternalInvoke and the only info it gets is the method desc, so it uses
it to call mono_object_new.
------- Additional Comments From email@example.com 2002-11-18 11:55 -------
Fixed in cvs. We noe throw an exception if the constructor is not
found, just like it happens with the ms runtime.
+------- Additional Comments From firstname.lastname@example.org 2002-11-25 11:51 -------
+Well, In MS.NET implementation it actually works !
+The logic behind it (as I understand it) is:
+By definition gizmo inherits System.Object.
+So the above definition for gizmo becomes:
+class gizmo : System.Object
+Since System.Object has a default zero-parameter public constructor
+it get's inherited by the gizmo object.
+new gizmo() should be fully valid operation (and should return an
+istance of the gizmo object, witch in itself is an instance of
+System.Object, but <instance>.GetType() would return gizmo even if
+the object was constructed by the System.Object constructor.
+As a result the above code should not generate an error (as I've
+noted it does now) but should somehow make a new gizmo instance.
+I'm not persisting this for academic reasons - it's totally relevant
+for process of deserializing object instances - there it can and
+will call only the default (no params) constructor.