[Mono-bugs] [Bug 78905][Maj] New - System.Reflection.ModuleBuilder.GetType fails to find types with certain names
bugzilla-daemon at bugzilla.ximian.com
bugzilla-daemon at bugzilla.ximian.com
Thu Jul 20 06:07:12 EDT 2006
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 ladislav.prosek at matfyz.cz.
http://bugzilla.ximian.com/show_bug.cgi?id=78905
--- shadow/78905 2006-07-20 06:07:12.000000000 -0400
+++ shadow/78905.tmp.27096 2006-07-20 06:07:12.000000000 -0400
@@ -0,0 +1,53 @@
+Bug#: 78905
+Product: Mono: Class Libraries
+Version: 1.1
+OS:
+OS Details:
+Status: NEW
+Resolution:
+Severity:
+Priority: Major
+Component: CORLIB
+AssignedTo: mono-bugs at ximian.com
+ReportedBy: ladislav.prosek at matfyz.cz
+QAContact: mono-bugs at ximian.com
+TargetMilestone: ---
+URL:
+Cc:
+Summary: System.Reflection.ModuleBuilder.GetType fails to find types with certain names
+
+Description of Problem:
+ModuleBuilder.GetType() returns null when asked for a type returned by
+ModuleBuilder.GetTypes(). This seems to happen only when the type name
+contains special characters like '*'. In CLR it works OK (although it adds
+a backslash before the asterisk).
+
+
+Steps to reproduce the problem:
+ AssemblyBuilder ab = AppDomain.CurrentDomain.DefineDynamicAssembly(new
+AssemblyName("test"), AssemblyBuilderAccess.Run);
+ ModuleBuilder mb = ab.DefineDynamicModule("module");
+ TypeBuilder tb = mb.DefineType("<*0>.<Global>");
+ Type type = tb.CreateType();
+
+ foreach (Type t in type.Module.GetTypes())
+ {
+ Console.WriteLine(t.FullName);
+ }
+
+ Console.WriteLine("Searching for '{0}'", type.FullName);
+ type = type.Module.GetType(type.FullName);
+ if (type != null)
+ {
+ Console.WriteLine("Got it");
+ }
+
+
+Actual Results:
+<*0>.<Global>
+Searching for '<*0>.<Global>'
+
+Expected Results:
+<*0>.<Global>
+Searching for '<*0>.<Global>'
+Got it
More information about the mono-bugs
mailing list