diff --git a/eng/testing/tests.wasm.targets b/eng/testing/tests.wasm.targets
index ef52bce43743c3..eee739184828fa 100644
--- a/eng/testing/tests.wasm.targets
+++ b/eng/testing/tests.wasm.targets
@@ -38,8 +38,6 @@
true
-
- $(NoWarn);IL2118
$(NoWarn);IL2121
diff --git a/src/libraries/System.Diagnostics.DiagnosticSource/src/System/Diagnostics/DiagnosticSourceEventSource.cs b/src/libraries/System.Diagnostics.DiagnosticSource/src/System/Diagnostics/DiagnosticSourceEventSource.cs
index 4d4edfbf7b798f..94b6b692529528 100644
--- a/src/libraries/System.Diagnostics.DiagnosticSource/src/System/Diagnostics/DiagnosticSourceEventSource.cs
+++ b/src/libraries/System.Diagnostics.DiagnosticSource/src/System/Diagnostics/DiagnosticSourceEventSource.cs
@@ -648,9 +648,6 @@ public FilterAndTransform(string filterAndPayloadSpec, int startIdx, int endIdx,
[UnconditionalSuppressMessage("ReflectionAnalysis", "IL2026:RequiresUnreferencedCode",
Justification = "DiagnosticSource.Write is marked with RequiresUnreferencedCode.")]
- [UnconditionalSuppressMessage("ReflectionAnalysis", "IL2119",
- Justification = "DAM on EventSource references this compiler-generated local function which calls a " +
- "method that requires unreferenced code. EventSource will not access this local function.")]
void OnEventWritten(KeyValuePair evnt)
{
// The filter given to the DiagnosticSource may not work if users don't is 'IsEnabled' as expected.
diff --git a/src/libraries/System.Diagnostics.Tracing/tests/TrimmingTests/EventSourceManifestTest.cs b/src/libraries/System.Diagnostics.Tracing/tests/TrimmingTests/EventSourceManifestTest.cs
index 261a70393d614d..92dfa41915d144 100644
--- a/src/libraries/System.Diagnostics.Tracing/tests/TrimmingTests/EventSourceManifestTest.cs
+++ b/src/libraries/System.Diagnostics.Tracing/tests/TrimmingTests/EventSourceManifestTest.cs
@@ -35,9 +35,6 @@ void EventSourceTest_Method_4(){}
int EventSourceTest_Method_7() => 5;
}
- [UnconditionalSuppressMessage ("ReflectionAnalysis", "IL2118",
- Justification = "DAM on EventSource.GenerateManifest references compiler-generated local function GetTrimSafeTraceLoggingEventTypes " +
- "which calls a constructor that requires unreferenced code. EventSource will not access this local function.")]
public static int Main()
{
string manifest = EventSource.GenerateManifest(typeof(EventSourceTest), null);
diff --git a/src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/EventSource.cs b/src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/EventSource.cs
index 7c7b2c8601c2a1..25dc4efb316b67 100644
--- a/src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/EventSource.cs
+++ b/src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/EventSource.cs
@@ -2160,9 +2160,6 @@ private unsafe void WriteEventString(string msgString)
[UnconditionalSuppressMessage("ReflectionAnalysis", "IL2026:RequiresUnreferencedCode",
Justification = "The call to TraceLoggingEventTypes with the below parameter values are trim safe")]
- [UnconditionalSuppressMessage("ReflectionAnalysis", "IL2119",
- Justification = "DAM on EventSource references this compiler-generated local function which calls a " +
- "constructor that requires unreferenced code. EventSource will not access this local function.")]
static TraceLoggingEventTypes GetTrimSafeTraceLoggingEventTypes() =>
new TraceLoggingEventTypes(EventName, EventTags.None, new Type[] { typeof(string) });
diff --git a/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/Type/TypeTests.cs b/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/Type/TypeTests.cs
index ab1d6c66c12796..4344f5dc55b8d8 100644
--- a/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/Type/TypeTests.cs
+++ b/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/Type/TypeTests.cs
@@ -149,9 +149,6 @@ public static IEnumerable FindMembers_TestData()
[Theory]
[MemberData(nameof(FindMembers_TestData))]
- [UnconditionalSuppressMessage ("ReflectionAnalysis", "IL2118",
- Justification = "DAM on FindMembers references compiler-generated members which use reflection. " +
- "These members are not accessed by the test.")]
public void FindMembers_Invoke_ReturnsExpected(MemberTypes memberType, BindingFlags bindingAttr, MemberFilter filter, object filterCriteria, int expectedLength)
{
Assert.Equal(expectedLength, typeof(TypeTests).FindMembers(memberType, bindingAttr, filter, filterCriteria).Length);
diff --git a/src/tools/illink/src/ILLink.Shared/DiagnosticId.cs b/src/tools/illink/src/ILLink.Shared/DiagnosticId.cs
index 5d40efbbaaf994..0606d938631250 100644
--- a/src/tools/illink/src/ILLink.Shared/DiagnosticId.cs
+++ b/src/tools/illink/src/ILLink.Shared/DiagnosticId.cs
@@ -182,9 +182,9 @@ public enum DiagnosticId
DynamicallyAccessedMembersOnTypeReferencesMemberOnBaseWithDynamicallyAccessedMembers = 2115,
RequiresUnreferencedCodeOnStaticConstructor = 2116,
MethodsAreAssociatedWithUserMethod = 2117,
- CompilerGeneratedMemberAccessedViaReflection = 2118,
- DynamicallyAccessedMembersOnTypeReferencesCompilerGeneratedMember = 2119,
- DynamicallyAccessedMembersOnTypeReferencesCompilerGeneratedMemberOnBase = 2120,
+ _unused_CompilerGeneratedMemberAccessedViaReflection = 2118,
+ _unused_DynamicallyAccessedMembersOnTypeReferencesCompilerGeneratedMember = 2119,
+ _unused_DynamicallyAccessedMembersOnTypeReferencesCompilerGeneratedMemberOnBase = 2120,
RedundantSuppression = 2121,
// Single-file diagnostic ids.
diff --git a/src/tools/illink/src/linker/Linker.Steps/MarkStep.cs b/src/tools/illink/src/linker/Linker.Steps/MarkStep.cs
index 990065fa69c3d8..55f0b8a55a5baa 100644
--- a/src/tools/illink/src/linker/Linker.Steps/MarkStep.cs
+++ b/src/tools/illink/src/linker/Linker.Steps/MarkStep.cs
@@ -1620,20 +1620,6 @@ void ReportWarningsForReflectionAccess (in MessageOrigin origin, MethodDefinitio
break;
}
}
-
- // Warn on reflection access to compiler-generated methods, if the method isn't already unsafe to access via reflection
- // due to annotations. For the annotation-based warnings, we skip virtual overrides since those will produce warnings on
- // the base, but for unannotated compiler-generated methods this is not the case, so we must produce these warnings even
- // for virtual overrides. This ensures that we include the unannotated MoveNext state machine method. Lambdas and local
- // functions should never be virtual overrides in the first place.
- bool isCoveredByAnnotations = isReflectionAccessCoveredByRUC || isReflectionAccessCoveredByDAM;
- switch (dependencyKind) {
- case DependencyKind.AccessedViaReflection:
- case DependencyKind.DynamicallyAccessedMember:
- if (ShouldWarnForReflectionAccessToCompilerGeneratedCode (method, isCoveredByAnnotations))
- Context.LogWarning (origin, DiagnosticId.CompilerGeneratedMemberAccessedViaReflection, method.GetDisplayName ());
- break;
- }
}
void ReportWarningsForTypeHierarchyReflectionAccess (IMemberDefinition member, MessageOrigin origin)
@@ -1676,23 +1662,6 @@ static bool IsDeclaredWithinType (IMemberDefinition member, TypeDefinition type)
var id = reportOnMember ? DiagnosticId.DynamicallyAccessedMembersOnTypeReferencesMemberWithDynamicallyAccessedMembers : DiagnosticId.DynamicallyAccessedMembersOnTypeReferencesMemberOnBaseWithDynamicallyAccessedMembers;
Context.LogWarning (origin, id, type.GetDisplayName (), ((MemberReference) member).GetDisplayName ());
}
-
- // Warn on reflection access to compiler-generated methods, if the method isn't already unsafe to access via reflection
- // due to annotations. For the annotation-based warnings, we skip virtual overrides since those will produce warnings on
- // the base, but for unannotated compiler-generated methods this is not the case, so we must produce these warnings even
- // for virtual overrides. This ensures that we include the unannotated MoveNext state machine method. Lambdas and local
- // functions should never be virtual overrides in the first place.
- bool isCoveredByAnnotations = isReflectionAccessCoveredByRUC || isReflectionAccessCoveredByDAM;
- if (member is MethodDefinition method && ShouldWarnForReflectionAccessToCompilerGeneratedCode (method, isCoveredByAnnotations)) {
- var id = reportOnMember ? DiagnosticId.DynamicallyAccessedMembersOnTypeReferencesCompilerGeneratedMember : DiagnosticId.DynamicallyAccessedMembersOnTypeReferencesCompilerGeneratedMemberOnBase;
- Context.LogWarning (origin, id, type.GetDisplayName (), method.GetDisplayName ());
- }
-
- // Warn on reflection access to compiler-generated fields.
- if (member is FieldDefinition field && ShouldWarnForReflectionAccessToCompilerGeneratedCode (field, isCoveredByAnnotations)) {
- var id = reportOnMember ? DiagnosticId.DynamicallyAccessedMembersOnTypeReferencesCompilerGeneratedMember : DiagnosticId.DynamicallyAccessedMembersOnTypeReferencesCompilerGeneratedMemberOnBase;
- Context.LogWarning (origin, id, type.GetDisplayName (), field.GetDisplayName ());
- }
}
void MarkField (FieldDefinition field, in DependencyInfo reason, in MessageOrigin origin)
@@ -1756,24 +1725,6 @@ void MarkField (FieldDefinition field, in DependencyInfo reason, in MessageOrigi
}
}
- bool ShouldWarnForReflectionAccessToCompilerGeneratedCode (FieldDefinition field, bool isCoveredByAnnotations)
- {
- // No need to warn if it's already covered by the Requires attribute or explicit annotations on the field.
- if (isCoveredByAnnotations)
- return false;
-
- if (!CompilerGeneratedState.IsNestedFunctionOrStateMachineMember (field))
- return false;
-
- // Only warn for types which are interesting for dataflow. Note that this does
- // not include integer types, even though we track integers in the dataflow analysis.
- // Technically we should also warn for integer types, but this leads to more warnings
- // for example about the compiler-generated "state" field for state machine methods.
- // This should be ok because in most cases the state machine types will also have other
- // hoisted locals that produce warnings anyway when accessed via reflection.
- return Annotations.FlowAnnotations.IsTypeInterestingForDataflow (field.FieldType);
- }
-
void ProcessAnalysisAnnotationsForField (FieldDefinition field, DependencyKind dependencyKind, in MessageOrigin origin)
{
switch (dependencyKind) {
@@ -1794,11 +1745,9 @@ void ProcessAnalysisAnnotationsForField (FieldDefinition field, DependencyKind d
if (Annotations.ShouldSuppressAnalysisWarningsForRequiresUnreferencedCode (origin.Provider, out _))
return;
- bool isReflectionAccessCoveredByRUC;
- if (isReflectionAccessCoveredByRUC = Annotations.ShouldSuppressAnalysisWarningsForRequiresUnreferencedCode (field, out RequiresUnreferencedCodeAttribute? requiresUnreferencedCodeAttribute))
+ if (Annotations.ShouldSuppressAnalysisWarningsForRequiresUnreferencedCode (field, out RequiresUnreferencedCodeAttribute? requiresUnreferencedCodeAttribute))
ReportRequiresUnreferencedCode (field.GetDisplayName (), requiresUnreferencedCodeAttribute!, new DiagnosticContext (origin, diagnosticsEnabled: true, Context));
- bool isReflectionAccessCoveredByDAM = false;
switch (dependencyKind) {
case DependencyKind.AccessedViaReflection:
case DependencyKind.DynamicDependency:
@@ -1806,20 +1755,11 @@ void ProcessAnalysisAnnotationsForField (FieldDefinition field, DependencyKind d
case DependencyKind.InteropMethodDependency:
case DependencyKind.Ldtoken:
case DependencyKind.UnsafeAccessorTarget:
- if (isReflectionAccessCoveredByDAM = Annotations.FlowAnnotations.ShouldWarnWhenAccessedForReflection (field))
+ if (Annotations.FlowAnnotations.ShouldWarnWhenAccessedForReflection (field))
Context.LogWarning (origin, DiagnosticId.DynamicallyAccessedMembersFieldAccessedViaReflection, field.GetDisplayName ());
break;
}
-
- switch (dependencyKind) {
- case DependencyKind.AccessedViaReflection:
- case DependencyKind.DynamicallyAccessedMember:
- bool isCoveredByAnnotations = isReflectionAccessCoveredByRUC || isReflectionAccessCoveredByDAM;
- if (ShouldWarnForReflectionAccessToCompilerGeneratedCode (field, isCoveredByAnnotations))
- Context.LogWarning (origin, DiagnosticId.CompilerGeneratedMemberAccessedViaReflection, field.GetDisplayName ());
- break;
- }
}
///
diff --git a/src/tools/illink/test/Mono.Linker.Tests.Cases/DataFlow/AnnotatedMembersAccessedViaReflection.cs b/src/tools/illink/test/Mono.Linker.Tests.Cases/DataFlow/AnnotatedMembersAccessedViaReflection.cs
index 616e392ecae3ee..bb37b1c9b31da5 100644
--- a/src/tools/illink/test/Mono.Linker.Tests.Cases/DataFlow/AnnotatedMembersAccessedViaReflection.cs
+++ b/src/tools/illink/test/Mono.Linker.Tests.Cases/DataFlow/AnnotatedMembersAccessedViaReflection.cs
@@ -333,8 +333,6 @@ static void Ldvirtftn ()
[ExpectedWarning ("IL2111", nameof (MethodWithSingleAnnotatedParameter))]
[ExpectedWarning ("IL2111", nameof (IWithAnnotatedMethod.AnnotatedMethod))]
[ExpectedWarning ("IL2111", nameof (IWithAnnotatedMethod.AnnotatedMethod))]
- [UnexpectedWarning ("IL2118", nameof (LdftnOnLambdaTriggersLamdaAnalysis), Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", nameof (LdftnOnLocalMethodTriggersLocalMethodAnalysis), Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
static void DynamicallyAccessedMembersAll1 ()
{
typeof (AnnotatedMethodParameters).RequiresAll ();
@@ -347,8 +345,6 @@ static void DynamicallyAccessedMembersAll1 ()
[ExpectedWarning ("IL2111", nameof (MethodWithSingleAnnotatedParameter))]
[ExpectedWarning ("IL2111", nameof (IWithAnnotatedMethod.AnnotatedMethod))]
[ExpectedWarning ("IL2111", nameof (IWithAnnotatedMethod.AnnotatedMethod))]
- [UnexpectedWarning ("IL2118", nameof (LdftnOnLambdaTriggersLamdaAnalysis), Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", nameof (LdftnOnLocalMethodTriggersLocalMethodAnalysis), Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
static void DynamicallyAccessedMembersAll2 ()
{
typeof (AnnotatedMethodParameters).RequiresAll ();
diff --git a/src/tools/illink/test/Mono.Linker.Tests.Cases/DataFlow/CompilerGeneratedCodeAccessedViaReflection.cs b/src/tools/illink/test/Mono.Linker.Tests.Cases/DataFlow/CompilerGeneratedCodeAccessedViaReflection.cs
index 2c40b8f4551375..b59683325cdf0d 100644
--- a/src/tools/illink/test/Mono.Linker.Tests.Cases/DataFlow/CompilerGeneratedCodeAccessedViaReflection.cs
+++ b/src/tools/illink/test/Mono.Linker.Tests.Cases/DataFlow/CompilerGeneratedCodeAccessedViaReflection.cs
@@ -39,8 +39,6 @@ public static IEnumerable BaseIteratorWithCorrectDataflow ()
}
}
- [UnexpectedWarning ("IL2120", ["<" + nameof (BaseIteratorWithCorrectDataflow) + ">", "MoveNext"], Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2120", ["<" + nameof (BaseIteratorWithCorrectDataflow) + ">", ""], Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
[DynamicallyAccessedMembers (DynamicallyAccessedMemberTypes.All)]
class IteratorStateMachines : BaseTypeWithIteratorStateMachines
{
@@ -52,15 +50,12 @@ public static IEnumerable IteratorWithoutDataflow ()
[ExpectedWarning ("IL2026", "--MethodWithRequires--", CompilerGeneratedCode = true)]
[ExpectedWarning ("IL3002", "--MethodWithRequires--", Tool.Analyzer | Tool.NativeAot, "NativeAOT specific warnings", CompilerGeneratedCode = true)]
[ExpectedWarning ("IL3050", "--MethodWithRequires--", Tool.Analyzer | Tool.NativeAot, "NativeAOT specific warnings", CompilerGeneratedCode = true)]
- [UnexpectedWarning ("IL2119", "<" + nameof (IteratorCallsMethodWithRequires) + ">", "MoveNext", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042", CompilerGeneratedCode = true)]
public static IEnumerable IteratorCallsMethodWithRequires ()
{
yield return 0;
MethodWithRequires ();
}
- [UnexpectedWarning ("IL2119", "<" + nameof (IteratorWithCorrectDataflow) + ">", "MoveNext", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042", CompilerGeneratedCode = true)]
- [UnexpectedWarning ("IL2119", "", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042", CompilerGeneratedCode = true)]
public static IEnumerable IteratorWithCorrectDataflow ()
{
var t_IteratorWithCorrectDataflow = GetAll ();
@@ -68,8 +63,6 @@ public static IEnumerable IteratorWithCorrectDataflow ()
t_IteratorWithCorrectDataflow.RequiresAll ();
}
- [UnexpectedWarning ("IL2119", "<" + nameof (IteratorWithIntegerDataflow) + ">", "MoveNext", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042", CompilerGeneratedCode = true)]
- [UnexpectedWarning ("IL2119", "", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042", CompilerGeneratedCode = true)]
public static IEnumerable IteratorWithIntegerDataflow ()
{
int integerLocal = 0;
@@ -78,8 +71,6 @@ public static IEnumerable IteratorWithIntegerDataflow ()
types[integerLocal].RequiresPublicMethods ();
}
- [UnexpectedWarning ("IL2119", "<" + nameof (IteratorWithProblematicDataflow) + ">", "MoveNext", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042", CompilerGeneratedCode = true)]
- [UnexpectedWarning ("IL2119", "", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042", CompilerGeneratedCode = true)]
[ExpectedWarning ("IL2072", nameof (GetWithPublicMethods), nameof (DataFlowTypeExtensions.RequiresAll), CompilerGeneratedCode = true)]
public static IEnumerable IteratorWithProblematicDataflow ()
{
@@ -111,23 +102,10 @@ public IEnumerable InstanceIteratorCallsMethodWithRequires ()
}
}
- [UnexpectedWarning ("IL2118", "<" + nameof (IteratorWithProblematicDataflow) + ">", "MoveNext", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", "<" + nameof (IteratorCallsMethodWithRequires) + ">", "MoveNext", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", "<" + nameof (IteratorWithCorrectDataflow) + ">", "MoveNext", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", "<" + nameof (IteratorWithIntegerDataflow) + ">", "MoveNext", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", "<" + nameof (BaseIteratorWithCorrectDataflow) + ">", "MoveNext", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
[ExpectedWarning ("IL2026", nameof (RUCTypeWithIterators) + "()", "--RUCTypeWithIterators--")]
// Expect to see warnings about RUC on type, for all static state machine members.
[ExpectedWarning ("IL2026", nameof (RUCTypeWithIterators.StaticIteratorCallsMethodWithRequires) + "()", "--RUCTypeWithIterators--")]
[ExpectedWarning ("IL2026", nameof (RUCTypeWithIterators.InstanceIteratorCallsMethodWithRequires) + "()")]
- [UnexpectedWarning ("IL2118", "<" + nameof (IteratorWithCorrectDataflow) + ">", "", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", "<" + nameof (IteratorWithProblematicDataflow) + ">", "", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- // Technically the access to IteratorWithIntegerDataflow should warn about access to the integer
- // field integerLocal, but our heuristics only warn if the field type satisfies the
- // "IsTypeInterestingForDatafllow" check. This is likely good enough because in most cases the
- // compiler-generated code will have other hoisted fields with types that _are_ interesting for dataflow.
- [UnexpectedWarning ("IL2118", "<" + nameof (IteratorWithIntegerDataflow) + ">", "", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", "<" + nameof (BaseIteratorWithCorrectDataflow) + ">", "", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
public static void Test (IteratorStateMachines test = null)
{
typeof (IteratorStateMachines).RequiresAll ();
@@ -163,11 +141,6 @@ public static async Task AsyncWithProblematicDataflow ()
t_AsyncWithProblematicDataflow.RequiresAll ();
}
- [UnexpectedWarning ("IL2118", "<" + nameof (AsyncWithProblematicDataflow) + ">", "MoveNext", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", "<" + nameof (AsyncCallsMethodWithRequires) + ">", "MoveNext", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", "<" + nameof (AsyncWithCorrectDataflow) + ">", "MoveNext", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", "<" + nameof (AsyncWithCorrectDataflow) + ">", "", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", "<" + nameof (AsyncWithProblematicDataflow) + ">", "", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
public static void Test ()
{
typeof (AsyncStateMachines).RequiresAll ();
@@ -205,11 +178,6 @@ public static async IAsyncEnumerable AsyncIteratorWithProblematicDataflow (
t.RequiresAll ();
}
- [UnexpectedWarning ("IL2118", "<" + nameof (AsyncIteratorWithProblematicDataflow) + ">", "MoveNext", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", "<" + nameof (AsyncIteratorCallsMethodWithRequires) + ">", "MoveNext", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", "<" + nameof (AsyncIteratorWithCorrectDataflow) + ">", "MoveNext", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", "<" + nameof (AsyncIteratorWithCorrectDataflow) + ">", "", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", "<" + nameof (AsyncIteratorWithProblematicDataflow) + ">", "", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
public static void Test ()
{
typeof (AsyncIteratorStateMachines).RequiresAll ();
@@ -231,7 +199,6 @@ static void LambdaCallsMethodWithRequires ()
[ExpectedWarning ("IL2026", "--MethodWithRequires--")]
[ExpectedWarning ("IL3002", "--MethodWithRequires--", Tool.Analyzer | Tool.NativeAot, "NativeAOT Specific Warnings")]
[ExpectedWarning ("IL3050", "--MethodWithRequires--", Tool.Analyzer | Tool.NativeAot, "NativeAOT Specific Warnings")]
- [UnexpectedWarning ("IL2119", "<" + nameof (LambdaCallsMethodWithRequires) + ">", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
() => MethodWithRequires ();
lambda ();
}
@@ -239,7 +206,6 @@ static void LambdaCallsMethodWithRequires ()
static void LambdaWithCorrectDataflow ()
{
var lambda =
- [UnexpectedWarning ("IL2119", "<" + nameof (LambdaWithCorrectDataflow) + ">", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
() => {
var t = GetAll ();
t.RequiresAll ();
@@ -260,7 +226,6 @@ static void LambdaWithCorrectParameter ()
static void LambdaWithProblematicDataflow ()
{
var lambda =
- [UnexpectedWarning ("IL2119", "<" + nameof (LambdaWithProblematicDataflow) + ">", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
[ExpectedWarning ("IL2072", nameof (DataFlowTypeExtensions.RequiresAll))]
() => {
var t = GetWithPublicMethods ();
@@ -273,7 +238,6 @@ static void LambdaWithCapturedTypeToDAM ()
{
var t = GetWithPublicMethods ();
var lambda =
- [UnexpectedWarning ("IL2119", "<" + nameof (LambdaWithCapturedTypeToDAM) + ">", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
[ExpectedWarning ("IL2072", nameof (GetWithPublicMethods), nameof (DataFlowTypeExtensions.RequiresAll))]
() => {
t.RequiresAll ();
@@ -300,7 +264,6 @@ static void LambdaCallsPInvokeTakingObject ()
{
var lambda =
[ExpectedWarning ("IL2050")]
- [UnexpectedWarning ("IL2119", "<" + nameof (LambdaCallsPInvokeTakingObject) + ">", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
() => MethodTakingObject (null);
lambda ();
}
@@ -331,11 +294,6 @@ public void MethodWithLambdas ()
}
}
- [UnexpectedWarning ("IL2118", "<" + nameof (LambdaCallsPInvokeTakingObject) + ">", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", "<" + nameof (LambdaCallsMethodWithRequires) + ">", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", "<" + nameof (LambdaWithCorrectDataflow) + ">", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", "<" + nameof (LambdaWithProblematicDataflow) + ">", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", "<" + nameof (LambdaWithCapturedTypeToDAM) + ">", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
[ExpectedWarning ("IL2026", nameof (RUCTypeWithLambdas) + "()", "--RUCTypeWithLambdas--")]
[ExpectedWarning ("IL2026", nameof (RUCTypeWithLambdas.MethodWithLambdas) + "()", "--RUCTypeWithLambdas--")]
public static void Test (Lambdas test = null)
@@ -360,14 +318,12 @@ static void LocalFunctionCallsMethodWithRequires ()
[ExpectedWarning ("IL2026", "--MethodWithRequires--")]
[ExpectedWarning ("IL3002", "--MethodWithRequires--", Tool.Analyzer | Tool.NativeAot, "NativeAOT Specific Warnings")]
[ExpectedWarning ("IL3050", "--MethodWithRequires--", Tool.Analyzer | Tool.NativeAot, "NativeAOT Specific Warnings")]
- [UnexpectedWarning ("IL2119", "<" + nameof (LocalFunctionCallsMethodWithRequires) + ">", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
void LocalFunction () => MethodWithRequires ();
LocalFunction ();
}
static void LocalFunctionWithCorrectDataflow ()
{
- [UnexpectedWarning ("IL2119", "<" + nameof (LocalFunctionWithCorrectDataflow) + ">", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
void LocalFunction ()
{
var t = GetAll ();
@@ -379,7 +335,6 @@ void LocalFunction ()
static void LocalFunctionWithProblematicDataflow ()
{
[ExpectedWarning ("IL2072", nameof (DataFlowTypeExtensions.RequiresAll))]
- [UnexpectedWarning ("IL2119", "<" + nameof (LocalFunctionWithProblematicDataflow) + ">", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
void LocalFunction ()
{
var t = GetWithPublicMethods ();
@@ -391,7 +346,6 @@ void LocalFunction ()
static void LocalFunctionWithCapturedTypeToDAM ()
{
var t = GetAll ();
- [UnexpectedWarning ("IL2119", "<" + nameof (LocalFunctionWithCapturedTypeToDAM) + ">", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
void LocalFunction ()
{
t.RequiresAll ();
@@ -416,7 +370,6 @@ static void LocalFunctionCallsPInvokeTakingPrimitiveType ()
static void LocalFunctionCallsPInvokeTakingObject ()
{
[ExpectedWarning ("IL2050")]
- [UnexpectedWarning ("IL2119", "<" + nameof (LocalFunctionCallsPInvokeTakingObject) + ">", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
void LocalFunction () => MethodTakingObject (null);
LocalFunction ();
}
@@ -451,11 +404,6 @@ void LocalFunctionWithCapturedState ()
}
}
- [UnexpectedWarning ("IL2118", nameof (LocalFunctionCallsPInvokeTakingObject), Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", nameof (LocalFunctionCallsMethodWithRequires), Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", nameof (LocalFunctionWithCorrectDataflow), Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", nameof (LocalFunctionWithProblematicDataflow), Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", nameof (LocalFunctionWithCapturedTypeToDAM), Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
// Expect RUC warnings for static, compiler-generated code warnings for instance.
[ExpectedWarning ("IL2026", nameof (RUCTypeWithLocalFunctions) + "()", "--RUCTypeWithLocalFunctions--")]
[ExpectedWarning ("IL2026", nameof (RUCTypeWithLocalFunctions.MethodWithLocalFunctions) + "()")]
@@ -674,8 +622,6 @@ static void LocalFunctionInner ()
await Task.Delay (100);
}
- [UnexpectedWarning ("IL2118", "<" + nameof (LambdaOnGeneric) + ">", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", "<" + nameof (LocalFunctionOnGeneric) + ">", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
public static void Test ()
{
typeof (DAMReflectionAccessToCompilerGeneratedCode).RequiresAll ();
diff --git a/src/tools/illink/test/Mono.Linker.Tests.Cases/Reflection/TypeHierarchyReflectionWarnings.cs b/src/tools/illink/test/Mono.Linker.Tests.Cases/Reflection/TypeHierarchyReflectionWarnings.cs
index cd3ae16955e94d..b256d492e68882 100644
--- a/src/tools/illink/test/Mono.Linker.Tests.Cases/Reflection/TypeHierarchyReflectionWarnings.cs
+++ b/src/tools/illink/test/Mono.Linker.Tests.Cases/Reflection/TypeHierarchyReflectionWarnings.cs
@@ -951,7 +951,6 @@ static void LocalFunctionWithDAMInner ([DynamicallyAccessedMembers(DynamicallyAc
[Kept]
[KeptAttributeAttribute (typeof (IteratorStateMachineAttribute))]
- [UnexpectedWarning ("IL2119", nameof (IteratorWithGenericDAM), Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042", CompilerGeneratedCode = true)]
static IEnumerable IteratorWithGenericDAM<
[KeptAttributeAttribute(typeof(DynamicallyAccessedMembersAttribute))]
[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicMethods)] T> ()
@@ -963,7 +962,6 @@ static IEnumerable IteratorWithGenericDAM<
[Kept]
[KeptAttributeAttribute (typeof (AsyncStateMachineAttribute))]
[KeptAttributeAttribute (typeof (DebuggerStepThroughAttribute))]
- [UnexpectedWarning ("IL2119", nameof (AsyncWithGenericDAM), Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042", CompilerGeneratedCode = true)]
static async Task AsyncWithGenericDAM<
[KeptAttributeAttribute (typeof (DynamicallyAccessedMembersAttribute))]
[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicMethods)] T>()
@@ -974,7 +972,6 @@ static async Task AsyncWithGenericDAM<
[Kept]
[KeptAttributeAttribute (typeof (AsyncIteratorStateMachineAttribute))]
- [ExpectedWarning("IL2119", nameof(AsyncIteratorWithGenericDAM), Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042", CompilerGeneratedCode = true)]
static async IAsyncEnumerable AsyncIteratorWithGenericDAM<
[KeptAttributeAttribute(typeof(DynamicallyAccessedMembersAttribute))]
[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicMethods)] T>()
diff --git a/src/tools/illink/test/Mono.Linker.Tests.Cases/RequiresCapability/ReflectionAccessFromCompilerGeneratedCode.cs b/src/tools/illink/test/Mono.Linker.Tests.Cases/RequiresCapability/ReflectionAccessFromCompilerGeneratedCode.cs
index e8bf1fe0ea193c..3f13b7480784d0 100644
--- a/src/tools/illink/test/Mono.Linker.Tests.Cases/RequiresCapability/ReflectionAccessFromCompilerGeneratedCode.cs
+++ b/src/tools/illink/test/Mono.Linker.Tests.Cases/RequiresCapability/ReflectionAccessFromCompilerGeneratedCode.cs
@@ -26,7 +26,6 @@ class ReflectionAccessFromStateMachine
[ExpectedWarning ("IL2026", "--TypeWithMethodWithRequires.MethodWithRequires--", CompilerGeneratedCode = true)]
[ExpectedWarning ("IL3002", "--TypeWithMethodWithRequires.MethodWithRequires--", Tool.NativeAot, "Analyzer doesn't warn for reflection access to arbitrary Requires attributes", CompilerGeneratedCode = true)]
[ExpectedWarning ("IL3050", "--TypeWithMethodWithRequires.MethodWithRequires--", Tool.NativeAot, "Analyzer doesn't warn for reflection access to arbitrary Requires attributes", CompilerGeneratedCode = true)]
- [UnexpectedWarning ("IL2118", nameof (TypeWithMethodWithRequires.MethodWithLocalFunctionCallsRUC), "LocalFunction", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042", CompilerGeneratedCode = true)]
[ExpectedWarning ("IL2111", nameof (TypeWithMethodWithRequires.MethodWithAnnotations), CompilerGeneratedCode = true)]
static IEnumerable TestIterator ()
{
@@ -46,7 +45,6 @@ static IEnumerable TestIteratorWithRUC ()
[ExpectedWarning ("IL2026", "--TypeWithMethodWithRequires.MethodWithRequires--", CompilerGeneratedCode = true)]
[ExpectedWarning ("IL3002", "--TypeWithMethodWithRequires.MethodWithRequires--", Tool.NativeAot, "Analyzer doesn't warn for reflection access to arbitrary Requires attributes", CompilerGeneratedCode = true)]
[ExpectedWarning ("IL3050", "--TypeWithMethodWithRequires.MethodWithRequires--", Tool.NativeAot, "Analyzer doesn't warn for reflection access to arbitrary Requires attributes", CompilerGeneratedCode = true)]
- [UnexpectedWarning ("IL2118", nameof (TypeWithMethodWithRequires.MethodWithLocalFunctionCallsRUC), "LocalFunction", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042", CompilerGeneratedCode = true)]
[ExpectedWarning ("IL2111", nameof (TypeWithMethodWithRequires.MethodWithAnnotations), CompilerGeneratedCode = true)]
static async void TestAsync ()
{
@@ -85,7 +83,6 @@ static void TestLocalFunction ()
[ExpectedWarning ("IL2026", "--TypeWithMethodWithRequires.MethodWithRequires--")]
[ExpectedWarning ("IL3002", "--TypeWithMethodWithRequires.MethodWithRequires--", Tool.NativeAot, "Analyzer doesn't warn for reflection access to arbitrary Requires attributes")]
[ExpectedWarning ("IL3050", "--TypeWithMethodWithRequires.MethodWithRequires--", Tool.NativeAot, "Analyzer doesn't warn for reflection access to arbitrary Requires attributes")]
- [UnexpectedWarning ("IL2118", nameof (TypeWithMethodWithRequires.MethodWithLocalFunctionCallsRUC), "LocalFunction", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
[ExpectedWarning ("IL2111", nameof (TypeWithMethodWithRequires.MethodWithAnnotations))]
void LocalFunction ()
{
@@ -140,7 +137,6 @@ static void TestLambda ()
[ExpectedWarning ("IL2026", "--TypeWithMethodWithRequires.MethodWithRequires--")]
[ExpectedWarning ("IL3002", "--TypeWithMethodWithRequires.MethodWithRequires--", Tool.NativeAot, "Analyzer doesn't warn for reflection access to arbitrary Requires attributes")]
[ExpectedWarning ("IL3050", "--TypeWithMethodWithRequires.MethodWithRequires--", Tool.NativeAot, "Analyzer doesn't warn for reflection access to arbitrary Requires attributes")]
- [UnexpectedWarning ("IL2118", nameof (TypeWithMethodWithRequires.MethodWithLocalFunctionCallsRUC), "LocalFunction", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
[ExpectedWarning ("IL2111", nameof (TypeWithMethodWithRequires.MethodWithAnnotations))]
() => {
typeof (TypeWithMethodWithRequires).RequiresAll ();
diff --git a/src/tools/illink/test/Mono.Linker.Tests.Cases/RequiresCapability/RequiresInCompilerGeneratedCode.cs b/src/tools/illink/test/Mono.Linker.Tests.Cases/RequiresCapability/RequiresInCompilerGeneratedCode.cs
index 9d3060bb0d7094..62a41ffd041ad7 100644
--- a/src/tools/illink/test/Mono.Linker.Tests.Cases/RequiresCapability/RequiresInCompilerGeneratedCode.cs
+++ b/src/tools/illink/test/Mono.Linker.Tests.Cases/RequiresCapability/RequiresInCompilerGeneratedCode.cs
@@ -921,7 +921,6 @@ public static void TestCallMethodWithRequiresInDynamicallyAccessedLocalFunction
class DynamicallyAccessedLocalFunctionUnusedShouldWarn
{
- [UnexpectedWarning ("IL2118", [nameof (TestCallMethodWithRequiresInDynamicallyAccessedLocalFunction), "LocalFunction"], Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
public static void TestCallMethodWithRequiresInDynamicallyAccessedLocalFunction ()
{
typeof (DynamicallyAccessedLocalFunctionUnusedShouldWarn).RequiresNonPublicMethods ();
@@ -1872,8 +1871,6 @@ static async void TestAsyncOnlyReferencedViaReflectionWhichShouldWarn ()
[ExpectedWarning ("IL2026", "--TestAsyncOnlyReferencedViaReflectionWhichShouldSuppress--")]
[ExpectedWarning ("IL3002", "--TestAsyncOnlyReferencedViaReflectionWhichShouldSuppress--", Tool.NativeAot, "")]
[ExpectedWarning ("IL3050", "--TestAsyncOnlyReferencedViaReflectionWhichShouldSuppress--", Tool.NativeAot, "")]
- [UnexpectedWarning ("IL2118", [nameof (StateMachinesOnlyReferencedViaReflection), "<" + nameof (TestAsyncOnlyReferencedViaReflectionWhichShouldWarn) + ">", "MoveNext()"], Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
- [UnexpectedWarning ("IL2118", [nameof (StateMachinesOnlyReferencedViaReflection), "<" + nameof (TestIteratorOnlyReferencedViaReflectionWhichShouldWarn) + ">", "MoveNext()"], Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
static void TestAll ()
{
typeof (StateMachinesOnlyReferencedViaReflection).RequiresAll ();
@@ -1982,7 +1979,6 @@ void LocalFunction ()
[ExpectedWarning ("IL2026", "--TestLocalFunctionInMethodWithRequiresOnlyAccessedViaReflection--")]
[ExpectedWarning ("IL3002", "--TestLocalFunctionInMethodWithRequiresOnlyAccessedViaReflection--", Tool.NativeAot, "")]
[ExpectedWarning ("IL3050", "--TestLocalFunctionInMethodWithRequiresOnlyAccessedViaReflection--", Tool.NativeAot, "")]
- [UnexpectedWarning ("IL2118", nameof (LocalFunctionsReferencedViaReflection), nameof (TestLocalFunctionInMethodWithRequiresOnlyAccessedViaReflection), Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
static void TestAll ()
{
typeof (LocalFunctionsReferencedViaReflection).RequiresAll ();
@@ -1998,7 +1994,6 @@ static void TestAll ()
[ExpectedWarning ("IL2026", "--TestLocalFunctionInMethodWithRequiresOnlyAccessedViaReflection--")]
[ExpectedWarning ("IL3002", "--TestLocalFunctionInMethodWithRequiresOnlyAccessedViaReflection--", Tool.NativeAot, "")]
[ExpectedWarning ("IL3050", "--TestLocalFunctionInMethodWithRequiresOnlyAccessedViaReflection--", Tool.NativeAot, "")]
- [UnexpectedWarning ("IL2118", nameof (LocalFunctionsReferencedViaReflection), "<" + nameof (TestLocalFunctionInMethodWithRequiresOnlyAccessedViaReflection) + ">", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
static void TestNonPublicMethods ()
{
typeof (LocalFunctionsReferencedViaReflection).RequiresNonPublicMethods ();
diff --git a/src/tools/illink/test/Mono.Linker.Tests.Cases/Warnings/WarningSuppression/SuppressWarningsInCompilerGeneratedCode.cs b/src/tools/illink/test/Mono.Linker.Tests.Cases/Warnings/WarningSuppression/SuppressWarningsInCompilerGeneratedCode.cs
index 7ccc24a9b1fc46..ff4c28494c3892 100644
--- a/src/tools/illink/test/Mono.Linker.Tests.Cases/Warnings/WarningSuppression/SuppressWarningsInCompilerGeneratedCode.cs
+++ b/src/tools/illink/test/Mono.Linker.Tests.Cases/Warnings/WarningSuppression/SuppressWarningsInCompilerGeneratedCode.cs
@@ -278,7 +278,6 @@ static void TestCallRUCMethodInLtftnLocalFunction ()
class DynamicallyAccessedLocalFunction
{
- [UnexpectedWarning ("IL2118", "LocalFunction", Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
[UnconditionalSuppressMessage ("Test", "IL2026")]
public static void TestCallRUCMethodInDynamicallyAccessedLocalFunction ()
{
@@ -426,7 +425,6 @@ static void TestGenericTypeParameterRequirement ()
class DynamicallyAccessedLambda
{
- [UnexpectedWarning ("IL2118", nameof (TestCallRUCMethodInDynamicallyAccessedLambda), Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
[UnconditionalSuppressMessage ("Test", "IL2026")]
public static void TestCallRUCMethodInDynamicallyAccessedLambda ()
{
@@ -440,7 +438,6 @@ public static void TestCallRUCMethodInDynamicallyAccessedLambda ()
class DynamicallyAccessedLambdaUnused
{
- [UnexpectedWarning ("IL2118", nameof (TestCallRUCMethodInDynamicallyAccessedLambda), Tool.Trimmer, "https://github.com/dotnet/runtime/issues/85042")]
[UnconditionalSuppressMessage ("Test", "IL2026")]
public static void TestCallRUCMethodInDynamicallyAccessedLambda ()
{