diff --git a/src/NetEvolve.Arguments/Argument_ThrowIfGreaterThan.cs b/src/NetEvolve.Arguments/Argument_ThrowIfGreaterThan.cs
index d49209f..7bb9828 100644
--- a/src/NetEvolve.Arguments/Argument_ThrowIfGreaterThan.cs
+++ b/src/NetEvolve.Arguments/Argument_ThrowIfGreaterThan.cs
@@ -12,8 +12,12 @@ public static partial class Argument
/// The value to compare with .
/// The name of the parameter with which corresponds.
[DebuggerStepThrough]
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
[StackTraceHidden]
+#if NET8_0_OR_GREATER
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
+#else
+ [MethodImpl(MethodImplOptions.NoInlining)]
+#endif
public static void ThrowIfGreaterThan(
T value,
T other,
diff --git a/src/NetEvolve.Arguments/Argument_ThrowIfGreaterThanOrEqual.cs b/src/NetEvolve.Arguments/Argument_ThrowIfGreaterThanOrEqual.cs
index 881b358..c6b6607 100644
--- a/src/NetEvolve.Arguments/Argument_ThrowIfGreaterThanOrEqual.cs
+++ b/src/NetEvolve.Arguments/Argument_ThrowIfGreaterThanOrEqual.cs
@@ -11,8 +11,12 @@ public static partial class Argument
/// The value to compare with .
/// The name of the parameter with which corresponds.
[DebuggerStepThrough]
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
[StackTraceHidden]
+#if NET8_0_OR_GREATER
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
+#else
+ [MethodImpl(MethodImplOptions.NoInlining)]
+#endif
public static void ThrowIfGreaterThanOrEqual(
T value,
T other,
diff --git a/src/NetEvolve.Arguments/Argument_ThrowIfLessThan.cs b/src/NetEvolve.Arguments/Argument_ThrowIfLessThan.cs
index 84142c1..a9774dd 100644
--- a/src/NetEvolve.Arguments/Argument_ThrowIfLessThan.cs
+++ b/src/NetEvolve.Arguments/Argument_ThrowIfLessThan.cs
@@ -11,8 +11,12 @@ public static partial class Argument
/// The value to compare with .
/// The name of the parameter with which corresponds.
[DebuggerStepThrough]
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
[StackTraceHidden]
+#if NET8_0_OR_GREATER
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
+#else
+ [MethodImpl(MethodImplOptions.NoInlining)]
+#endif
public static void ThrowIfLessThan(
T value,
T other,
diff --git a/src/NetEvolve.Arguments/Argument_ThrowIfLessThanOrEqual.cs b/src/NetEvolve.Arguments/Argument_ThrowIfLessThanOrEqual.cs
index 2e27613..ae95890 100644
--- a/src/NetEvolve.Arguments/Argument_ThrowIfLessThanOrEqual.cs
+++ b/src/NetEvolve.Arguments/Argument_ThrowIfLessThanOrEqual.cs
@@ -11,8 +11,12 @@ public static partial class Argument
/// The value to compare with .
/// The name of the parameter with which corresponds.
[DebuggerStepThrough]
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
[StackTraceHidden]
+#if NET8_0_OR_GREATER
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
+#else
+ [MethodImpl(MethodImplOptions.NoInlining)]
+#endif
public static void ThrowIfLessThanOrEqual(
T value,
T other,
diff --git a/src/NetEvolve.Arguments/Argument_ThrowIfNull.cs b/src/NetEvolve.Arguments/Argument_ThrowIfNull.cs
index c674335..0e7b4e1 100644
--- a/src/NetEvolve.Arguments/Argument_ThrowIfNull.cs
+++ b/src/NetEvolve.Arguments/Argument_ThrowIfNull.cs
@@ -11,8 +11,12 @@ public static partial class Argument
/// The reference type argument to validate as non-null.
/// The name of the parameter with which corresponds.
[DebuggerStepThrough]
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
[StackTraceHidden]
+#if NET6_0_OR_GREATER
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
+#else
+ [MethodImpl(MethodImplOptions.NoInlining)]
+#endif
public static void ThrowIfNull(
[NotNull] object? argument,
[CallerArgumentExpression(nameof(argument))] string? paramName = null
diff --git a/src/NetEvolve.Arguments/Argument_ThrowIfNullOrEmpty.cs b/src/NetEvolve.Arguments/Argument_ThrowIfNullOrEmpty.cs
index ef05d67..8b661d0 100644
--- a/src/NetEvolve.Arguments/Argument_ThrowIfNullOrEmpty.cs
+++ b/src/NetEvolve.Arguments/Argument_ThrowIfNullOrEmpty.cs
@@ -14,7 +14,11 @@ public static partial class Argument
/// is empty.
[DebuggerStepThrough]
[StackTraceHidden]
+#if NET7_0_OR_GREATER
[MethodImpl(MethodImplOptions.AggressiveInlining)]
+#else
+ [MethodImpl(MethodImplOptions.NoInlining)]
+#endif
public static void ThrowIfNullOrEmpty(
[NotNull] string? argument,
[CallerArgumentExpression(nameof(argument))] string? paramName = null
diff --git a/src/NetEvolve.Arguments/Argument_ThrowIfNullOrWhiteSpace.cs b/src/NetEvolve.Arguments/Argument_ThrowIfNullOrWhiteSpace.cs
index e698491..7a44487 100644
--- a/src/NetEvolve.Arguments/Argument_ThrowIfNullOrWhiteSpace.cs
+++ b/src/NetEvolve.Arguments/Argument_ThrowIfNullOrWhiteSpace.cs
@@ -13,8 +13,12 @@ public static partial class Argument
/// is null.
/// is empty or consists only of white-space characters.
[DebuggerStepThrough]
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
[StackTraceHidden]
+#if NET8_0_OR_GREATER
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
+#else
+ [MethodImpl(MethodImplOptions.NoInlining)]
+#endif
public static void ThrowIfNullOrWhiteSpace(
[NotNull] string? argument,
[CallerArgumentExpression(nameof(argument))] string? paramName = null