diff --git a/ICSharpCode.NRefactory.CSharp/Completion/CSharpCompletionEngine.cs b/ICSharpCode.NRefactory.CSharp/Completion/CSharpCompletionEngine.cs
index e8d4808001..d6d7c20dbc 100644
--- a/ICSharpCode.NRefactory.CSharp/Completion/CSharpCompletionEngine.cs
+++ b/ICSharpCode.NRefactory.CSharp/Completion/CSharpCompletionEngine.cs
@@ -871,6 +871,8 @@ namespace ICSharpCode.NRefactory.CSharp.Completion
foreach (var member in def.GetMembers ()) {
if (member is IMethod && ((IMethod)member).FullName == "System.Object.Finalize")
continue;
+ if (member.EntityType == EntityType.Operator)
+ continue;
if (memberPred == null || memberPred (member))
wrapper.AddMember (member);
}
@@ -1778,7 +1780,8 @@ namespace ICSharpCode.NRefactory.CSharp.Completion
if (member is IMethod && ((IMethod)member).FullName == "System.Object.Finalize")
continue;
-
+ if (member.EntityType == EntityType.Operator)
+ continue;
// Console.WriteLine ("add : "+ member.FullName + " --- " + member.IsStatic);
result.AddMember (member);
}
diff --git a/ICSharpCode.NRefactory.Tests/CSharp/CodeCompletion/CodeCompletionBugTests.cs b/ICSharpCode.NRefactory.Tests/CSharp/CodeCompletion/CodeCompletionBugTests.cs
index bebd775c2c..9dc848be35 100644
--- a/ICSharpCode.NRefactory.Tests/CSharp/CodeCompletion/CodeCompletionBugTests.cs
+++ b/ICSharpCode.NRefactory.Tests/CSharp/CodeCompletion/CodeCompletionBugTests.cs
@@ -1691,6 +1691,27 @@ class A
});
}
+ ///
+ /// Bug 2793 - op_Equality should not be offered in the completion list
+ ///
+ [Test()]
+ public void Test2793 ()
+ {
+ CombinedProviderTest (
+@"
+class A
+{
+ public static void Main (string[] args)
+ {
+ $System.Action.$
+ }
+}
+", provider => {
+ Assert.IsNull (provider.Find ("op_Equality"), "'op_Equality' found.");
+ Assert.IsNull (provider.Find ("op_Inequality"), "'op_Inequality' found.");
+ });
+ }
+
///
/// Bug 2799 - No completion offered when declaring fields in a class
///