diff --git a/ICSharpCode.Decompiler/CSharp/Syntax/TypeSystemAstBuilder.cs b/ICSharpCode.Decompiler/CSharp/Syntax/TypeSystemAstBuilder.cs index 1e207e9a8..8dd66433f 100644 --- a/ICSharpCode.Decompiler/CSharp/Syntax/TypeSystemAstBuilder.cs +++ b/ICSharpCode.Decompiler/CSharp/Syntax/TypeSystemAstBuilder.cs @@ -1396,7 +1396,7 @@ namespace ICSharpCode.Decompiler.CSharp.Syntax m |= Modifiers.Abstract; if (member.IsOverride) m |= Modifiers.Override; - if (member.IsVirtual && !member.IsAbstract && !member.IsOverride) + if (member.IsVirtual && !member.IsAbstract && !member.IsOverride && declaringType.Kind != TypeKind.Interface) m |= Modifiers.Virtual; if (member.IsSealed) m |= Modifiers.Sealed; diff --git a/ICSharpCode.Decompiler/Documentation/IdStringProvider.cs b/ICSharpCode.Decompiler/Documentation/IdStringProvider.cs index fc231b460..43488e36c 100644 --- a/ICSharpCode.Decompiler/Documentation/IdStringProvider.cs +++ b/ICSharpCode.Decompiler/Documentation/IdStringProvider.cs @@ -352,7 +352,6 @@ namespace ICSharpCode.Decompiler.Documentation typeParameterCount = ReflectionHelper.ReadTypeParameterCount(typeName, ref pos); } else if (pos < typeName.Length && typeName[pos] == '{') { // bound generic type - typeArguments = new List(); do { pos++; typeArguments.Add(ParseTypeName(typeName, ref pos));