diff --git a/CHANGELOG.md b/CHANGELOG.md
index f9b0c4c4..50d92596 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -9,6 +9,7 @@ Please ADD ALL Changes to the UNRELEASED SECTION and not a specific release
### Added
### Fixed
### Changed
+- Dependencies - Updated Meziantou.Analyzer to 2.0.253
### Removed
### Deployment Changes
diff --git a/src/FunFair.CodeAnalysis.Tests/FunFair.CodeAnalysis.Tests.csproj b/src/FunFair.CodeAnalysis.Tests/FunFair.CodeAnalysis.Tests.csproj
index 0bcae0ad..483e3201 100644
--- a/src/FunFair.CodeAnalysis.Tests/FunFair.CodeAnalysis.Tests.csproj
+++ b/src/FunFair.CodeAnalysis.Tests/FunFair.CodeAnalysis.Tests.csproj
@@ -53,7 +53,7 @@
-
+
@@ -61,11 +61,11 @@
-
+
-
+
diff --git a/src/FunFair.CodeAnalysis/FunFair.CodeAnalysis.csproj b/src/FunFair.CodeAnalysis/FunFair.CodeAnalysis.csproj
index 344c0616..3fa3706c 100644
--- a/src/FunFair.CodeAnalysis/FunFair.CodeAnalysis.csproj
+++ b/src/FunFair.CodeAnalysis/FunFair.CodeAnalysis.csproj
@@ -66,10 +66,10 @@
-
+
-
+
diff --git a/src/FunFair.CodeAnalysis/ProhibitedMethodWithStrictParametersInvocationDiagnosticsAnalyzer.cs b/src/FunFair.CodeAnalysis/ProhibitedMethodWithStrictParametersInvocationDiagnosticsAnalyzer.cs
index 9be3849b..f21bac55 100644
--- a/src/FunFair.CodeAnalysis/ProhibitedMethodWithStrictParametersInvocationDiagnosticsAnalyzer.cs
+++ b/src/FunFair.CodeAnalysis/ProhibitedMethodWithStrictParametersInvocationDiagnosticsAnalyzer.cs
@@ -192,13 +192,22 @@ in ProhibitedMethodsSpec prohibitedMethod
)
.Where(tuple => tuple.Parameter is not null)
.Select(tuple => (tuple.ParamSpec, Argument: arguments.Arguments[tuple.Parameter!.Ordinal]))
- .Any(tuple =>
- StringComparer.Ordinal.Equals(tuple.Argument.Expression.ToFullString(), y: tuple.ParamSpec.Value)
- && StringComparer.Ordinal.Equals(
- tuple.Argument.Expression.Kind().ToString(),
- y: tuple.ParamSpec.Type
- )
- );
+ .Any(IsMatchingType);
+ }
+
+ private static bool IsMatchingType((ParameterSpec ParamSpec, ArgumentSyntax Argument) tuple)
+ {
+ if (!StringComparer.Ordinal.Equals(tuple.Argument.Expression.ToFullString(), y: tuple.ParamSpec.Value))
+ {
+ return false;
+ }
+
+ if (!Enum.TryParse(tuple.ParamSpec.Type, out SyntaxKind type))
+ {
+ return false;
+ }
+
+ return tuple.Argument.Expression.IsKind(type);
}
}