[Mono-bugs] [Bug 71298][Min] New - EnumBuilder should return IsSerializable set to false.
bugzilla-daemon@bugzilla.ximian.com
bugzilla-daemon@bugzilla.ximian.com
Fri, 14 Jan 2005 19:05:08 -0500 (EST)
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 miguel@ximian.com.
http://bugzilla.ximian.com/show_bug.cgi?id=71298
--- shadow/71298 2005-01-14 19:05:07.000000000 -0500
+++ shadow/71298.tmp.14099 2005-01-14 19:05:07.000000000 -0500
@@ -0,0 +1,72 @@
+Bug#: 71298
+Product: Mono: Class Libraries
+Version: unspecified
+OS:
+OS Details:
+Status: NEW
+Resolution:
+Severity:
+Priority: Minor
+Component: CORLIB
+AssignedTo: mono-bugs@ximian.com
+ReportedBy: miguel@ximian.com
+QAContact: mono-bugs@ximian.com
+TargetMilestone: ---
+URL:
+Cc:
+Summary: EnumBuilder should return IsSerializable set to false.
+
+I do not understand why we would like to do this, but it is part of our
+regression tests:
+
+using System;
+using System.Reflection;
+using System.Reflection.Emit;
+
+class X {
+ private static string _assemblyName =
+"MonoTests.System.Reflection.Emit.EnumBuilder";
+ private static string _moduleName = "EmittedModule";
+ private static string _enumNamespace = "MyNameSpace";
+ private static string _enumName = "MyEnum";
+ private static Type _enumType = typeof(Int32);
+ private static string _fieldName = "MyField";
+ private static object _fieldValue = 1;
+ private static AssemblyName GetAssemblyName ()
+ {
+ AssemblyName assemblyName = new AssemblyName ();
+ assemblyName.Name = _assemblyName;
+ return assemblyName;
+ }
+ private static AssemblyBuilder GenerateAssembly ()
+ {
+ return AppDomain.CurrentDomain.DefineDynamicAssembly (
+ GetAssemblyName (), AssemblyBuilderAccess.RunAndSave);
+ }
+
+ private static ModuleBuilder GenerateModule ()
+ {
+ AssemblyBuilder assemblyBuilder = GenerateAssembly ();
+ return assemblyBuilder.DefineDynamicModule (_moduleName);
+ }
+
+ private static ModuleBuilder GenerateModule (AssemblyBuilder assemblyBuilder)
+ {
+ return assemblyBuilder.DefineDynamicModule (_moduleName);
+ }
+
+ private static EnumBuilder GenerateEnum ()
+ {
+ ModuleBuilder modBuilder = GenerateModule ();
+ return modBuilder.DefineEnum (_enumNamespace + "."
+ + _enumName, TypeAttributes.Public, _enumType);
+ }
+
+
+ static void Main ()
+ {
+ EnumBuilder enumBuilder = GenerateEnum ();
+ if (enumBuilder.IsSerializable)
+ Console.WriteLine ("Failure");
+ }
+}