Skip to content

Lack of DynamicallyAccessedMemberTypes for any default constructor forces keeping unused types #50353

@marek-safar

Description

@marek-safar

One example is

internal static object CreateInstanceForAnotherGenericParameter([DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicParameterlessConstructor | DynamicallyAccessedMemberTypes.NonPublicConstructors)] Type genericType, RuntimeType genericArgument)
which has an annotation for any constructor even if only the default constructor is considered. This keeps unnecessary dependencies like System.Runtime.Serialization.StreamingContext via EnumComparer<T> private ctors. I far as I know there is no workaround for this.

/cc @eerhardt @vitek-karas

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-System.Runtimesize-reductionIssues impacting final app size primary for size sensitive workloads

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions