From b26e7af470e9b84fdb2d17a0212427cf40f4acfe Mon Sep 17 00:00:00 2001
From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com>
Date: Thu, 23 Jul 2026 06:09:51 +0000
Subject: [PATCH 1/2] chore(deps): update dependency sonaranalyzer.csharp to
10.29.0.143774
---
Directory.Packages.props | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Directory.Packages.props b/Directory.Packages.props
index cc3297b..6d7422c 100644
--- a/Directory.Packages.props
+++ b/Directory.Packages.props
@@ -15,7 +15,7 @@
-
+
From cfda61e243e3520c5f7ccf2b780c116d64f92edf Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Martin=20St=C3=BChmer?=
Date: Thu, 23 Jul 2026 08:35:52 +0200
Subject: [PATCH 2/2] fix: suppress S6640 for intentional unsafe pointer
overloads
---
src/NetEvolve.Arguments/ArgumentNullExceptionPolyfills.cs | 2 ++
.../ArgumentNullExceptionPolyfillsTests.cs | 4 ++++
.../ArgumentTests_ThrowIfNull.cs | 2 ++
3 files changed, 8 insertions(+)
diff --git a/src/NetEvolve.Arguments/ArgumentNullExceptionPolyfills.cs b/src/NetEvolve.Arguments/ArgumentNullExceptionPolyfills.cs
index 439c678..da82d55 100644
--- a/src/NetEvolve.Arguments/ArgumentNullExceptionPolyfills.cs
+++ b/src/NetEvolve.Arguments/ArgumentNullExceptionPolyfills.cs
@@ -38,10 +38,12 @@ public static void ThrowIfNull(
/// The name of the parameter with which corresponds.
/// is .
///
+#pragma warning disable S6640 // Make sure that using "unsafe" is safe here.
public static unsafe void ThrowIfNull(
void* argument,
[CallerArgumentExpression(nameof(argument))] string? paramName = null
)
+#pragma warning restore S6640 // Make sure that using "unsafe" is safe here.
{
if (argument is null)
{
diff --git a/tests/NetEvolve.Arguments.Tests.Unit/ArgumentNullExceptionPolyfillsTests.cs b/tests/NetEvolve.Arguments.Tests.Unit/ArgumentNullExceptionPolyfillsTests.cs
index 6ec56ba..2721882 100644
--- a/tests/NetEvolve.Arguments.Tests.Unit/ArgumentNullExceptionPolyfillsTests.cs
+++ b/tests/NetEvolve.Arguments.Tests.Unit/ArgumentNullExceptionPolyfillsTests.cs
@@ -52,7 +52,9 @@ public async Task ThrowIfNull_String_WhenArgumentIsNotNull_DoesNotThrow()
}
[Test]
+#pragma warning disable S6640 // Make sure that using "unsafe" is safe here.
public unsafe void ThrowIfNull_Pointer_WhenArgumentIsNull_ThrowsArgumentNullException()
+#pragma warning restore S6640 // Make sure that using "unsafe" is safe here.
{
// Arrange
int* argument = null;
@@ -65,7 +67,9 @@ public unsafe void ThrowIfNull_Pointer_WhenArgumentIsNull_ThrowsArgumentNullExce
}
[Test]
+#pragma warning disable S6640 // Make sure that using "unsafe" is safe here.
public unsafe void ThrowIfNull_Pointer_WhenArgumentIsNotNull_DoesNotThrow()
+#pragma warning restore S6640 // Make sure that using "unsafe" is safe here.
{
// Arrange
var value = 42;
diff --git a/tests/NetEvolve.Arguments.Tests.Unit/ArgumentTests_ThrowIfNull.cs b/tests/NetEvolve.Arguments.Tests.Unit/ArgumentTests_ThrowIfNull.cs
index 8154b50..8dcf097 100644
--- a/tests/NetEvolve.Arguments.Tests.Unit/ArgumentTests_ThrowIfNull.cs
+++ b/tests/NetEvolve.Arguments.Tests.Unit/ArgumentTests_ThrowIfNull.cs
@@ -31,7 +31,9 @@ public async Task ThrowIfNull_WhenArgumentIsNotEmpty_ReturnsArgument()
}
[Test]
+#pragma warning disable S6640 // Make sure that using "unsafe" is safe here.
public unsafe void ThrowIfNull_WhenArgumentIsNullPointer_ThrowsArgumentNullException()
+#pragma warning restore S6640 // Make sure that using "unsafe" is safe here.
{
// Arrange
int* argument = null;