Author: martin
Date: 2005-04-19 13:55:36 -0400 (Tue, 19 Apr 2005)
New Revision: 43275
Modified:
trunk/mcs/gmcs/ChangeLog
trunk/mcs/gmcs/iterators.cs
trunk/mcs/gmcs/typemanager.cs
Log:
**** Merged r42898 from MCS ****
Modified: trunk/mcs/gmcs/ChangeLog
===================================================================
--- trunk/mcs/gmcs/ChangeLog 2005-04-19 17:51:35 UTC (rev 43274)
+++ trunk/mcs/gmcs/ChangeLog 2005-04-19 17:55:36 UTC (rev 43275)
@@ -1,3 +1,8 @@
+2005-04-13 Raja R Harinath <[EMAIL PROTECTED]>
+
+ * typemanager.cs (IsUnmanagedType): Restore !IsValueType check
+ removed below.
+
2005-04-13 Atsushi Enomoto <[EMAIL PROTECTED]>
* doc.cs : detect ambiguous reference to overloaded members.
Modified: trunk/mcs/gmcs/iterators.cs
===================================================================
--- trunk/mcs/gmcs/iterators.cs 2005-04-19 17:51:35 UTC (rev 43274)
+++ trunk/mcs/gmcs/iterators.cs 2005-04-19 17:55:36 UTC (rev 43275)
@@ -45,8 +45,6 @@
Report.Error (1625, loc, "Cannot yield in the
body of a " +
"finally clause");
return false;
- } else {
- Console.WriteLine ("Not in finally");
}
if (ec.InUnsafe) {
Modified: trunk/mcs/gmcs/typemanager.cs
===================================================================
--- trunk/mcs/gmcs/typemanager.cs 2005-04-19 17:51:35 UTC (rev 43274)
+++ trunk/mcs/gmcs/typemanager.cs 2005-04-19 17:55:36 UTC (rev 43275)
@@ -1659,15 +1659,19 @@
if (t.IsArray)
return IsUnmanagedType (t.GetElementType ());
+ if (!IsValueType (t))
+ return false;
+
if (t is TypeBuilder){
TypeContainer tc = LookupTypeContainer (t);
-
if (tc.Fields == null)
return true;
foreach (Field f in tc.Fields){
// Avoid using f.FieldBuilder: f.Define () may
not yet have been invoked.
if ((f.ModFlags & Modifiers.STATIC) != 0)
continue;
+ if (f.MemberType == null)
+ continue;
if (!IsUnmanagedType (f.MemberType))
return false;
}
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches