[mono-api-html] Print string fields with no (or null) value without an NRE.
[mono.git] / mcs / mcs / typespec.cs
index a36033926bddace71f68d5083d969c5d91c2398a..73d82b086f97752c46a2af57bdc684a48d80b0ab 100644 (file)
@@ -321,6 +321,9 @@ namespace Mono.CSharp
                                if (Kind == MemberKind.Void)
                                        return true;
 
+                               if (Kind == MemberKind.TypeParameter)
+                                       return false;
+
                                if (IsNested && DeclaringType.IsGenericOrParentIsGeneric)
                                        return false;
 
@@ -375,7 +378,7 @@ namespace Mono.CSharp
                                throw new InternalErrorException ("Modifying expanded interface list");
 
                        if (ifaces == null) {
-                               ifaces = new List<TypeSpec> () { iface };
+                               ifaces = new List<TypeSpec> { iface };
                                return true;
                        }
 
@@ -1250,6 +1253,9 @@ namespace Mono.CSharp
                                                return false;
                                }
 
+                               if (a.IsNested && b.IsNested)
+                                       return IsEqual (a.DeclaringType, b.DeclaringType);
+
                                return true;
                        }
 
@@ -1413,6 +1419,7 @@ namespace Mono.CSharp
                bool IsPartial { get; }
                bool IsComImport { get; }
                bool IsTypeForwarder { get; }
+               bool IsCyclicTypeForwarder { get; }
                int TypeParametersCount { get; }
                TypeParameterSpec[] TypeParameters { get; }
 
@@ -1484,6 +1491,12 @@ namespace Mono.CSharp
                        }
                }
 
+               bool ITypeDefinition.IsCyclicTypeForwarder {
+                       get {
+                               return false;
+                       }
+               }
+
                public override string Name {
                        get {
                                return name;
@@ -1614,6 +1627,12 @@ namespace Mono.CSharp
                        }
                }
 
+               bool ITypeDefinition.IsCyclicTypeForwarder {
+                       get {
+                               return false;
+                       }
+               }
+
                public override string Name {
                        get {
                                throw new NotSupportedException ();