Skip to content

Commit

Permalink
Fix RCS1213 (#1343)
Browse files Browse the repository at this point in the history
  • Loading branch information
josefpihrt authored Dec 29, 2023
1 parent 84cd2c9 commit c5b77c2
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 1 deletion.
1 change: 1 addition & 0 deletions ChangeLog.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Fixed

- Fix analyzer [RCS1262](https://josefpihrt.github.io/docs/roslynator/analyzers/RCS1262) ([PR](https://github.com/dotnet/roslynator/pull/1339))
- Fix analyzer [RCS1213](https://josefpihrt.github.io/docs/roslynator/analyzers/RCS1213) ([PR](https://github.com/dotnet/roslynator/pull/1343))

## [4.7.0] - 2023-12-03

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -202,7 +202,8 @@ public override void VisitTypeParameterList(TypeParameterListSyntax node)

public override void VisitBaseList(BaseListSyntax node)
{
Debug.Fail($"{nameof(UnusedMemberWalker)}.{nameof(VisitBaseList)}");
if (node is not null)
base.VisitBaseList(node);
}

public override void VisitTypeParameterConstraintClause(TypeParameterConstraintClauseSyntax node)
Expand Down Expand Up @@ -230,26 +231,30 @@ public override void VisitClassDeclaration(ClassDeclarationSyntax node)
{
VisitAttributeLists(node.AttributeLists);
VisitParameterList(node.ParameterList);
VisitBaseList(node.BaseList);
VisitMembers(node.Members);
}

public override void VisitInterfaceDeclaration(InterfaceDeclarationSyntax node)
{
VisitAttributeLists(node.AttributeLists);
VisitParameterList(node.ParameterList);
VisitBaseList(node.BaseList);
VisitMembers(node.Members);
}

public override void VisitStructDeclaration(StructDeclarationSyntax node)
{
VisitAttributeLists(node.AttributeLists);
VisitParameterList(node.ParameterList);
VisitBaseList(node.BaseList);
VisitMembers(node.Members);
}

public override void VisitRecordDeclaration(RecordDeclarationSyntax node)
{
VisitAttributeLists(node.AttributeLists);
VisitBaseList(node.BaseList);
VisitMembers(node.Members);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -408,4 +408,23 @@ public MyAttribute(string s)
}
", options: Options.AddAllowedCompilerDiagnosticId("CS9113"));
}

[Fact, Trait(Traits.Analyzer, DiagnosticIdentifiers.RemoveUnusedMemberDeclaration)]
public async Task TestNoDiagnostic_BaseList()
{
await VerifyNoDiagnosticAsync(@"
using System;
internal abstract class B(Action action)
{
public Action Action { get; } = action;
}
internal sealed class C() : B(Do)
{
private static void Do()
{
}
}");
}
}

0 comments on commit c5b77c2

Please sign in to comment.