Skip to content

Missing trimming warning when calling instance methods on valuetypes #117998

@MichalStrehovsky

Description

@MichalStrehovsky

#113249 (comment)

This should generate a warning:

using System.Diagnostics.CodeAnalysis;

class RequiresHoleTest
{
    public static void Run()
    {
        Helper<C>();
    }

    static T Helper<T>()
    {
        return default(Requires<T>).Do(); // ILLink warns here
    }

    struct Requires<[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicParameterlessConstructor)] T>
    {
        public T Do()
        {
            return Activator.CreateInstance<T>();
        }
    }

    class C { }
}

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    No status

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions