diff --git a/ICSharpCode.NRefactory.CSharp/Refactoring/CodeIssues/CompilerErrors/CS0127ReturnMustNotBeFollowedByAnyExpression.cs b/ICSharpCode.NRefactory.CSharp/Refactoring/CodeIssues/CompilerErrors/CS0127ReturnMustNotBeFollowedByAnyExpression.cs index 4a3f85d6d6..282ae6ada3 100644 --- a/ICSharpCode.NRefactory.CSharp/Refactoring/CodeIssues/CompilerErrors/CS0127ReturnMustNotBeFollowedByAnyExpression.cs +++ b/ICSharpCode.NRefactory.CSharp/Refactoring/CodeIssues/CompilerErrors/CS0127ReturnMustNotBeFollowedByAnyExpression.cs @@ -58,6 +58,10 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring base.VisitMethodDeclaration(methodDeclaration); } + public override void VisitOperatorDeclaration(OperatorDeclaration operatorDeclaration) + { + } + public override void VisitPropertyDeclaration(PropertyDeclaration propertyDeclaration) { } diff --git a/ICSharpCode.NRefactory.Tests/CSharp/CodeIssues/CS0127ReturnMustNotBeFollowedByAnyExpressionTests.cs b/ICSharpCode.NRefactory.Tests/CSharp/CodeIssues/CS0127ReturnMustNotBeFollowedByAnyExpressionTests.cs index dfa6c4744a..293f204b21 100644 --- a/ICSharpCode.NRefactory.Tests/CSharp/CodeIssues/CS0127ReturnMustNotBeFollowedByAnyExpressionTests.cs +++ b/ICSharpCode.NRefactory.Tests/CSharp/CodeIssues/CS0127ReturnMustNotBeFollowedByAnyExpressionTests.cs @@ -142,6 +142,21 @@ namespace ICSharpCode.NRefactory.CSharp.CodeIssues Assert.AreEqual (0, issues.Count); } + [Test] + public void TestOperatorFalsePositives () + { + var input = @"class Foo +{ + public static bool operator == (Foo left, Foo right) + { + return true; + } +}"; + + TestRefactoringContext context; + var issues = GetIssues (new CS0127ReturnMustNotBeFollowedByAnyExpression (), input, out context); + Assert.AreEqual (0, issues.Count); + } }