From 9c8750ab13dd04415635beeff84ce43d235cb51a Mon Sep 17 00:00:00 2001 From: Josef Pihrt Date: Fri, 24 Nov 2023 20:05:36 +0100 Subject: [PATCH 1/2] Fix analyzer RCS1203 --- .../Analysis/UseAttributeUsageAttributeAnalyzer.cs | 3 +++ .../RCS1203UseAttributeUsageAttributeTests.cs | 12 ++++++++++++ 2 files changed, 15 insertions(+) diff --git a/src/Analyzers/CSharp/Analysis/UseAttributeUsageAttributeAnalyzer.cs b/src/Analyzers/CSharp/Analysis/UseAttributeUsageAttributeAnalyzer.cs index 7508cc4a9a..7ab7cd0207 100644 --- a/src/Analyzers/CSharp/Analysis/UseAttributeUsageAttributeAnalyzer.cs +++ b/src/Analyzers/CSharp/Analysis/UseAttributeUsageAttributeAnalyzer.cs @@ -53,6 +53,9 @@ public static void AnalyzerNamedTypeSymbol( if (typeSymbol.IsImplicitlyDeclared) return; + if (typeSymbol.IsAbstract) + return; + if (typeSymbol.TypeKind != TypeKind.Class) return; diff --git a/src/Tests/Analyzers.Tests/RCS1203UseAttributeUsageAttributeTests.cs b/src/Tests/Analyzers.Tests/RCS1203UseAttributeUsageAttributeTests.cs index 1bd0796084..5d5f180768 100644 --- a/src/Tests/Analyzers.Tests/RCS1203UseAttributeUsageAttributeTests.cs +++ b/src/Tests/Analyzers.Tests/RCS1203UseAttributeUsageAttributeTests.cs @@ -67,6 +67,18 @@ await VerifyNoDiagnosticAsync(@" class Foo : Attribute { } +"); + } + + [Fact, Trait(Traits.Analyzer, DiagnosticIdentifiers.UseAttributeUsageAttribute)] + public async Task TestNoDiagnostic_AbstractAttribute() + { + await VerifyNoDiagnosticAsync(@" +using System; + +public abstract class MyAttribute : Attribute +{ +} "); } } From 0ae655331df9855dece6dd58b5bb5afbf7f6cf8c Mon Sep 17 00:00:00 2001 From: Josef Pihrt Date: Fri, 24 Nov 2023 20:06:46 +0100 Subject: [PATCH 2/2] update --- ChangeLog.md | 1 + 1 file changed, 1 insertion(+) diff --git a/ChangeLog.md b/ChangeLog.md index 0042734593..a81277985c 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Fix analyzer [RCS1124](https://josefpihrt.github.io/docs/roslynator/analyzers/RCS1124) ([PR](https://github.com/dotnet/roslynator/pull/1279)) - Fix analyzer [RCS0058](https://josefpihrt.github.io/docs/roslynator/analyzers/RCS0058) ([PR](https://github.com/dotnet/roslynator/pull/1281)) +- Fix analyzer [RCS1203](https://josefpihrt.github.io/docs/roslynator/analyzers/RCS1203) ([PR](https://github.com/dotnet/roslynator/pull/1282)) ## [4.6.4] - 2023-11-24