<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.3790.3959" name=GENERATOR></HEAD>
<BODY>
<DIV><FONT face=Verdana><FONT size=2>Hello, mono-developers</FONT></FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Verdana><FONT size=2>i have downloaded mono-1.2.4 sources, and 
build the gmcs.exe under MS Visual C# 2005. it can be well builded. 
&nbsp;<BR>&nbsp;<BR>The gmcs.exe can also compile my C# sources without the 
&nbsp;enum type very well. <BR>&nbsp;<BR>if &nbsp;i try to compile the source 
with enum type, it will throw the InvalidOperationException ("enum basetype is 
not defined"); <BR>&nbsp;<BR>i have tried myself to debug it. and patched 2 
files in gmcs sources: <BR>&nbsp;<BR>1. &nbsp;mcs\typemanager.cs <BR>//public 
static void AddUserType(DeclSpace ds) <BR>//{ <BR>//+ &nbsp; &nbsp;if (ds is 
Enum) <BR>//+ &nbsp; &nbsp;{ <BR>//+ &nbsp; ds.TypeBuilder = ds.DefineType(); 
<BR>//+ &nbsp; &nbsp;} <BR>// &nbsp; 
&nbsp;builder_to_declspace.Add(ds.TypeBuilder, ds); <BR>//} line 401,410 
typemanager.cs patch for the Enum to remove: <BR>// &nbsp; &nbsp; 
InvalidOperationException ("enum basetype is not defined"); <BR>// 
<BR>&nbsp;<BR>&nbsp;<BR>2. mcs\ecore.cs <BR>//public override object 
GetTypedValue () <BR>//{ <BR>//// FIXME: runtime is not ready to work with just 
emited enums <BR>//if (!RootContext.StdLib) { <BR>//return Child.GetValue (); 
<BR>//} <BR>// <BR>//+ return Child.GetValue(); <BR>//-return 
System.Enum.ToObject (type, Child.GetValue ()); <BR>//} line 1538,1547 ecore.cs 
patch for the Enum to remove: <BR>// &nbsp; &nbsp;ArgumentException 
&nbsp;("enumType must be a runtime type"); <BR>&nbsp;<BR>then i can use gmcs.exe 
to compile my C#-source with enum type. <BR>&nbsp;<BR>Although it works now 
well, i don't know, if it is right ,what i did. <BR>&nbsp;<BR>So i want to get 
the right answer to resolve the problem.&nbsp;&nbsp;</FONT></DIV>
<DIV><FONT size=2></FONT>&nbsp;</DIV>
<DIV><FONT size=2>Thanks</FONT></DIV>
<DIV align=left><FONT size=2>
<HR style="WIDTH: 122px; HEIGHT: 2px" SIZE=2>
</FONT></DIV>
<DIV><FONT color=#c0c0c0><FONT size=2>lei.min gmx</FONT></DIV>
<DIV><FONT size=2>2007-08-25</FONT></FONT></DIV></FONT></BODY></HTML>