[Mono-bugs] [Bug 38590][Nor] Changed - Reproducible exception when compiling an Enum

bugzilla-daemon@rocky.ximian.com bugzilla-daemon@rocky.ximian.com
Thu, 27 Feb 2003 08:03:47 -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 vmcqueen@users.sourceforge.net.

http://bugzilla.ximian.com/show_bug.cgi?id=38590

--- shadow/38590	Tue Feb 25 23:25:15 2003
+++ shadow/38590.tmp.19454	Thu Feb 27 08:03:47 2003
@@ -1,12 +1,12 @@
 Bug#: 38590
 Product: Mono/MCS
 Version: unspecified
 OS: other
 OS Details: 
-Status: RESOLVED   
+Status: NEEDINFO   
 Resolution: FIXED
 Severity: Unknown
 Priority: Normal
 Component: Misc
 AssignedTo: mono-bugs@ximian.com                            
 ReportedBy: vmcqueen@users.sourceforge.net               
@@ -64,6 +64,48 @@
 I can not understand the german error messages.
 
 Please send more information.
 
 
 This works with the current version of Mono (CVS)
+
+------- Additional Comments From vmcqueen@users.sourceforge.net  2003-02-27 08:03 -------
+When compiling any source file with mcs.exe in the mono-0.xx/runtime 
+directory, mcs always hangs. So I copied the exe to an empty 
+directory and compiled my sources from there. Instead of the Mono 
+dlls, the installed .NET Framework is used in this case AFAIK.
+
+
+Compiling enumerations with mcs 0.19 works fine. Compiling any 
+enumeration with mcs 0.19.1 results in the described exception every 
+time.
+
+
+The translated error message is:
+
+Unhandled Exception: System.NotSupportedException: Type MyEnum was 
+not completed.
+   at ...
+
+
+Source code from Microsofts implementation ("Rotor") of class 
+ModuleBuilder:
+
+01218                     if (typeBuilder.m_hasBeenCreated == false 
+&& typeBuilder.m_isHiddenType == false)
+01219                     {
+01220                         // cannot save to PE file without 
+creating all of the types first 
+01221                         throw new NotSupportedException
+(String.Format(Environment.GetResourceString
+("NotSupported_NotAllTypesAreBaked"), typeBuilder.Name)); 
+01222                     }
+
+
+Source code of class TypeBuilder:
+
+02263         internal bool           m_hasBeenCreated;   // set to 
+true if CreateType has been called.
+
+
+So it seems that a typebuilder.CreateType() is missing somewhere in 
+the mcs sources...