diff --git a/ChangeLog.md b/ChangeLog.md
index 87731d8d20..3735a8f14f 100644
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -10,6 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Changed
- [CLI] Bump Roslyn to 4.9.2 ([PR](https://github.com/dotnet/roslynator/pull/1441))
+- Convert `Last()` to `[]` ([RCS1246](https://josefpihrt.github.io/docs/roslynator/analyzers/RCS1246)) ([PR](https://github.com/dotnet/roslynator/pull/1436))
### Fixed
diff --git a/src/Analyzers.CodeFixes/CSharp/CodeFixes/OptimizeLinqMethodCallCodeFixProvider.cs b/src/Analyzers.CodeFixes/CSharp/CodeFixes/OptimizeLinqMethodCallCodeFixProvider.cs
index e93a85e216..87c90cec4d 100644
--- a/src/Analyzers.CodeFixes/CSharp/CodeFixes/OptimizeLinqMethodCallCodeFixProvider.cs
+++ b/src/Analyzers.CodeFixes/CSharp/CodeFixes/OptimizeLinqMethodCallCodeFixProvider.cs
@@ -257,6 +257,16 @@ public override async Task RegisterCodeFixesAsync(CodeFixContext context)
ct => UseElementAccessInsteadOfEnumerableMethodRefactoring.UseElementAccessInsteadOfElementAtAsync(document, invocation, ct),
GetEquivalenceKey(diagnostic, "UseElementAccessInsteadOfElementAt"));
+ context.RegisterCodeFix(codeAction, diagnostic);
+ return;
+ }
+ case "Last":
+ {
+ CodeAction codeAction = CodeAction.Create(
+ "Use [] instead of calling 'Last'",
+ ct => UseElementAccessInsteadOfEnumerableMethodRefactoring.UseElementAccessInsteadOfLastAsync(document, invocation, ct),
+ GetEquivalenceKey(diagnostic, "UseElementAccessInsteadOfLast"));
+
context.RegisterCodeFix(codeAction, diagnostic);
return;
}
diff --git a/src/Analyzers.xml b/src/Analyzers.xml
index 3f23b872b1..e098e4b9fc 100644
--- a/src/Analyzers.xml
+++ b/src/Analyzers.xml
@@ -7277,6 +7277,7 @@ public class C
Use element access
Info
true
+ 8.0 for [^1]
@@ -7286,6 +7287,10 @@ public class C
+
+
+
+