From 6af8d1e05da7c485e0ffe3bf91d5a37af7ee0d39 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 18 Nov 2025 07:37:28 +0000 Subject: [PATCH 1/3] Initial plan From 7e338c97d37b67627bd8ded2056a58dc521cacc7 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 18 Nov 2025 08:05:57 +0000 Subject: [PATCH 2/3] Add DynamicallyAccessedMembers attribute to UnboxUToTInternal methods Co-authored-by: MichalStrehovsky <13110571+MichalStrehovsky@users.noreply.github.com> --- src/tests/Loader/classloader/generics/Variance/IL/Unbox001.cs | 3 ++- src/tests/Loader/classloader/generics/Variance/IL/Unbox002.cs | 3 ++- src/tests/Loader/classloader/generics/Variance/IL/Unbox003.cs | 3 ++- src/tests/Loader/classloader/generics/Variance/IL/Unbox004.cs | 3 ++- src/tests/Loader/classloader/generics/Variance/IL/Unbox005.cs | 3 ++- src/tests/Loader/classloader/generics/Variance/IL/Unbox006.cs | 3 ++- 6 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/tests/Loader/classloader/generics/Variance/IL/Unbox001.cs b/src/tests/Loader/classloader/generics/Variance/IL/Unbox001.cs index 7ae7877f1c0a5e..d53b7973d9055f 100644 --- a/src/tests/Loader/classloader/generics/Variance/IL/Unbox001.cs +++ b/src/tests/Loader/classloader/generics/Variance/IL/Unbox001.cs @@ -2,6 +2,7 @@ // The .NET Foundation licenses this file to you under the MIT license. using System; +using System.Diagnostics.CodeAnalysis; using Xunit; public class Base {} @@ -32,7 +33,7 @@ public static void Eval(string location, bool exp) Console.WriteLine("Test Failed at location: {0} @ count {1} ", location, iTestCount); } } - private static void UnboxUToTInternal() + private static void UnboxUToTInternal() { T t = (T) Activator.CreateInstance(typeof(U)); } diff --git a/src/tests/Loader/classloader/generics/Variance/IL/Unbox002.cs b/src/tests/Loader/classloader/generics/Variance/IL/Unbox002.cs index e68bf719a243ef..599859a1a2a8d9 100644 --- a/src/tests/Loader/classloader/generics/Variance/IL/Unbox002.cs +++ b/src/tests/Loader/classloader/generics/Variance/IL/Unbox002.cs @@ -2,6 +2,7 @@ // The .NET Foundation licenses this file to you under the MIT license. using System; +using System.Diagnostics.CodeAnalysis; using Xunit; public class Base {} @@ -32,7 +33,7 @@ public static void Eval(string location, bool exp) Console.WriteLine("Test Failed at location: {0} @ count {1} ", location, iTestCount); } } - private static void UnboxUToTInternal() + private static void UnboxUToTInternal() { T t = (T) Activator.CreateInstance(typeof(U)); } diff --git a/src/tests/Loader/classloader/generics/Variance/IL/Unbox003.cs b/src/tests/Loader/classloader/generics/Variance/IL/Unbox003.cs index d8ad357fba2fb6..859b787df5aabb 100644 --- a/src/tests/Loader/classloader/generics/Variance/IL/Unbox003.cs +++ b/src/tests/Loader/classloader/generics/Variance/IL/Unbox003.cs @@ -2,6 +2,7 @@ // The .NET Foundation licenses this file to you under the MIT license. using System; +using System.Diagnostics.CodeAnalysis; using Xunit; public class Base {} @@ -32,7 +33,7 @@ public static void Eval(string location, bool exp) Console.WriteLine("Test Failed at location: {0} @ count {1} ", location, iTestCount); } } - private static void UnboxUToTInternal() + private static void UnboxUToTInternal() { T t = (T) Activator.CreateInstance(typeof(U)); } diff --git a/src/tests/Loader/classloader/generics/Variance/IL/Unbox004.cs b/src/tests/Loader/classloader/generics/Variance/IL/Unbox004.cs index 8f4380e2ecb841..67bafa28265662 100644 --- a/src/tests/Loader/classloader/generics/Variance/IL/Unbox004.cs +++ b/src/tests/Loader/classloader/generics/Variance/IL/Unbox004.cs @@ -2,6 +2,7 @@ // The .NET Foundation licenses this file to you under the MIT license. using System; +using System.Diagnostics.CodeAnalysis; using Xunit; public class Base {} @@ -32,7 +33,7 @@ public static void Eval(string location, bool exp) Console.WriteLine("Test Failed at location: {0} @ count {1} ", location, iTestCount); } } - private static void UnboxUToTInternal() + private static void UnboxUToTInternal() { T t = (T) Activator.CreateInstance(typeof(U)); } diff --git a/src/tests/Loader/classloader/generics/Variance/IL/Unbox005.cs b/src/tests/Loader/classloader/generics/Variance/IL/Unbox005.cs index 7ad21e670f8b52..43364479d83ec5 100644 --- a/src/tests/Loader/classloader/generics/Variance/IL/Unbox005.cs +++ b/src/tests/Loader/classloader/generics/Variance/IL/Unbox005.cs @@ -2,6 +2,7 @@ // The .NET Foundation licenses this file to you under the MIT license. using System; +using System.Diagnostics.CodeAnalysis; using Xunit; public class Base {} @@ -32,7 +33,7 @@ public static void Eval(string location, bool exp) Console.WriteLine("Test Failed at location: {0} @ count {1} ", location, iTestCount); } } - private static void UnboxUToTInternal() + private static void UnboxUToTInternal() { T t = (T) Activator.CreateInstance(typeof(U)); } diff --git a/src/tests/Loader/classloader/generics/Variance/IL/Unbox006.cs b/src/tests/Loader/classloader/generics/Variance/IL/Unbox006.cs index 065cace35db12d..9aed1b3d7fc96a 100644 --- a/src/tests/Loader/classloader/generics/Variance/IL/Unbox006.cs +++ b/src/tests/Loader/classloader/generics/Variance/IL/Unbox006.cs @@ -2,6 +2,7 @@ // The .NET Foundation licenses this file to you under the MIT license. using System; +using System.Diagnostics.CodeAnalysis; using Xunit; public class Base {} @@ -32,7 +33,7 @@ public static void Eval(string location, bool exp) Console.WriteLine("Test Failed at location: {0} @ count {1} ", location, iTestCount); } } - private static void UnboxUToTInternal() + private static void UnboxUToTInternal() { T t = (T) Activator.CreateInstance(typeof(U)); } From 63c99f4e160577217f2a1d936f7838d3e5182f63 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 18 Nov 2025 09:31:38 +0000 Subject: [PATCH 3/3] Add DynamicallyAccessedMembers attribute transitively to all callsites Co-authored-by: MichalStrehovsky <13110571+MichalStrehovsky@users.noreply.github.com> --- src/tests/Loader/classloader/generics/Variance/IL/Unbox001.cs | 4 ++-- src/tests/Loader/classloader/generics/Variance/IL/Unbox002.cs | 4 ++-- src/tests/Loader/classloader/generics/Variance/IL/Unbox003.cs | 4 ++-- src/tests/Loader/classloader/generics/Variance/IL/Unbox004.cs | 4 ++-- src/tests/Loader/classloader/generics/Variance/IL/Unbox005.cs | 4 ++-- src/tests/Loader/classloader/generics/Variance/IL/Unbox006.cs | 4 ++-- 6 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/tests/Loader/classloader/generics/Variance/IL/Unbox001.cs b/src/tests/Loader/classloader/generics/Variance/IL/Unbox001.cs index d53b7973d9055f..f049944cbe109a 100644 --- a/src/tests/Loader/classloader/generics/Variance/IL/Unbox001.cs +++ b/src/tests/Loader/classloader/generics/Variance/IL/Unbox001.cs @@ -38,12 +38,12 @@ public static void Eval(string location, bool exp) T t = (T) Activator.CreateInstance(typeof(U)); } - private static void CaseClassUToTWrapper() + private static void CaseClassUToTWrapper() { UnboxUToTInternal(); } - public static bool UnboxUToT(bool expected) + public static bool UnboxUToT(bool expected) { try { diff --git a/src/tests/Loader/classloader/generics/Variance/IL/Unbox002.cs b/src/tests/Loader/classloader/generics/Variance/IL/Unbox002.cs index 599859a1a2a8d9..31e778441e1fce 100644 --- a/src/tests/Loader/classloader/generics/Variance/IL/Unbox002.cs +++ b/src/tests/Loader/classloader/generics/Variance/IL/Unbox002.cs @@ -38,12 +38,12 @@ public static void Eval(string location, bool exp) T t = (T) Activator.CreateInstance(typeof(U)); } - private static void CaseClassUToTWrapper() + private static void CaseClassUToTWrapper() { UnboxUToTInternal(); } - public static bool UnboxUToT(bool expected) + public static bool UnboxUToT(bool expected) { try { diff --git a/src/tests/Loader/classloader/generics/Variance/IL/Unbox003.cs b/src/tests/Loader/classloader/generics/Variance/IL/Unbox003.cs index 859b787df5aabb..26c8a7faeb6494 100644 --- a/src/tests/Loader/classloader/generics/Variance/IL/Unbox003.cs +++ b/src/tests/Loader/classloader/generics/Variance/IL/Unbox003.cs @@ -38,12 +38,12 @@ public static void Eval(string location, bool exp) T t = (T) Activator.CreateInstance(typeof(U)); } - private static void CaseClassUToTWrapper() + private static void CaseClassUToTWrapper() { UnboxUToTInternal(); } - public static bool UnboxUToT(bool expected) + public static bool UnboxUToT(bool expected) { try { diff --git a/src/tests/Loader/classloader/generics/Variance/IL/Unbox004.cs b/src/tests/Loader/classloader/generics/Variance/IL/Unbox004.cs index 67bafa28265662..d263c23579d330 100644 --- a/src/tests/Loader/classloader/generics/Variance/IL/Unbox004.cs +++ b/src/tests/Loader/classloader/generics/Variance/IL/Unbox004.cs @@ -38,12 +38,12 @@ public static void Eval(string location, bool exp) T t = (T) Activator.CreateInstance(typeof(U)); } - private static void CaseClassUToTWrapper() + private static void CaseClassUToTWrapper() { UnboxUToTInternal(); } - public static bool UnboxUToT(bool expected) + public static bool UnboxUToT(bool expected) { try { diff --git a/src/tests/Loader/classloader/generics/Variance/IL/Unbox005.cs b/src/tests/Loader/classloader/generics/Variance/IL/Unbox005.cs index 43364479d83ec5..ef630d4c11c14a 100644 --- a/src/tests/Loader/classloader/generics/Variance/IL/Unbox005.cs +++ b/src/tests/Loader/classloader/generics/Variance/IL/Unbox005.cs @@ -38,12 +38,12 @@ public static void Eval(string location, bool exp) T t = (T) Activator.CreateInstance(typeof(U)); } - private static void CaseClassUToTWrapper() + private static void CaseClassUToTWrapper() { UnboxUToTInternal(); } - public static bool UnboxUToT(bool expected) + public static bool UnboxUToT(bool expected) { try { diff --git a/src/tests/Loader/classloader/generics/Variance/IL/Unbox006.cs b/src/tests/Loader/classloader/generics/Variance/IL/Unbox006.cs index 9aed1b3d7fc96a..15db183b94117d 100644 --- a/src/tests/Loader/classloader/generics/Variance/IL/Unbox006.cs +++ b/src/tests/Loader/classloader/generics/Variance/IL/Unbox006.cs @@ -38,12 +38,12 @@ public static void Eval(string location, bool exp) T t = (T) Activator.CreateInstance(typeof(U)); } - private static void CaseClassUToTWrapper() + private static void CaseClassUToTWrapper() { UnboxUToTInternal(); } - public static bool UnboxUToT(bool expected) + public static bool UnboxUToT(bool expected) { try {