diff --git a/ChangeLog.md b/ChangeLog.md index cf42f83517..481a33d5b7 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -16,6 +16,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Fix analyzer [RCS0053](https://josefpihrt.github.io/docs/roslynator/analyzers/RCS0053) ([PR](https://github.com/dotnet/roslynator/pull/1518)) - Fix analyzer [RCS0056](https://josefpihrt.github.io/docs/roslynator/analyzers/RCS0056) ([PR](https://github.com/dotnet/roslynator/pull/1521)) - Fix analyzer [RCS1181](https://josefpihrt.github.io/docs/roslynator/analyzers/RCS1181) ([PR](https://github.com/dotnet/roslynator/pull/1526)) +- Fix analyzer [RCS0005](https://josefpihrt.github.io/docs/roslynator/analyzers/RCS0005) ([PR](https://github.com/dotnet/roslynator/pull/1533)) ## [4.12.5] - 2024-09-13 diff --git a/src/Formatting.Analyzers/CSharp/AddBlankLineBeforeEndRegionDirectiveAnalyzer.cs b/src/Formatting.Analyzers/CSharp/AddBlankLineBeforeEndRegionDirectiveAnalyzer.cs index f80f578414..b35027152b 100644 --- a/src/Formatting.Analyzers/CSharp/AddBlankLineBeforeEndRegionDirectiveAnalyzer.cs +++ b/src/Formatting.Analyzers/CSharp/AddBlankLineBeforeEndRegionDirectiveAnalyzer.cs @@ -81,7 +81,8 @@ static bool IsPrecededWithEmptyLineOrRegionDirective(EndRegionDirectiveTriviaSyn return en.Current.IsKind( SyntaxKind.EndOfLineTrivia, SyntaxKind.RegionDirectiveTrivia, - SyntaxKind.EndRegionDirectiveTrivia); + SyntaxKind.EndRegionDirectiveTrivia, + SyntaxKind.PragmaWarningDirectiveTrivia); } } diff --git a/src/Tests/Formatting.Analyzers.Tests/RCS0005AddBlankLineBeforeEndRegionDirectiveTests.cs b/src/Tests/Formatting.Analyzers.Tests/RCS0005AddBlankLineBeforeEndRegionDirectiveTests.cs index f4d2abb2d6..4beba83d0b 100644 --- a/src/Tests/Formatting.Analyzers.Tests/RCS0005AddBlankLineBeforeEndRegionDirectiveTests.cs +++ b/src/Tests/Formatting.Analyzers.Tests/RCS0005AddBlankLineBeforeEndRegionDirectiveTests.cs @@ -227,4 +227,28 @@ await VerifyNoDiagnosticAsync(@" #endregion "); } + + [Fact, Trait(Traits.Analyzer, DiagnosticIdentifiers.AddBlankLineBeforeEndRegionDirective)] + public async Task TestNoDiagnostic_PragmaWarningDirective() + { + await VerifyNoDiagnosticAsync(@" +namespace N +{ + /// + /// x + /// + class C + { + #region R + +#pragma warning disable 1591 + + public int P { get; set; } + +#pragma warning restore 1591 + + #endregion + } +}"); + } }