Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/linker.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/linker/Linker.Dataflow/FlowAnnotations.cs')
-rw-r--r--src/linker/Linker.Dataflow/FlowAnnotations.cs6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/linker/Linker.Dataflow/FlowAnnotations.cs b/src/linker/Linker.Dataflow/FlowAnnotations.cs
index 610cd1f59..472f8567f 100644
--- a/src/linker/Linker.Dataflow/FlowAnnotations.cs
+++ b/src/linker/Linker.Dataflow/FlowAnnotations.cs
@@ -28,12 +28,16 @@ namespace ILLink.Shared.TrimAnalysis
}
public bool RequiresDataFlowAnalysis (MethodDefinition method) =>
+ GetAnnotations (method.DeclaringType).TryGetAnnotation (method, out var methodAnnotations)
+ && (methodAnnotations.ReturnParameterAnnotation != DynamicallyAccessedMemberTypes.None || methodAnnotations.ParameterAnnotations != null);
+
+ public bool RequiresVirtualMethodDataFlowAnalysis (MethodDefinition method) =>
GetAnnotations (method.DeclaringType).TryGetAnnotation (method, out _);
public bool RequiresDataFlowAnalysis (FieldDefinition field) =>
GetAnnotations (field.DeclaringType).TryGetAnnotation (field, out _);
- public bool RequiresDataFlowAnalysis (GenericParameter genericParameter) =>
+ public bool RequiresGenericArgumentDataFlowAnalysis (GenericParameter genericParameter) =>
GetGenericParameterAnnotation (genericParameter) != DynamicallyAccessedMemberTypes.None;
/// <summary>