CsWinRT icon indicating copy to clipboard operation
CsWinRT copied to clipboard

[Experimental] on exclusive-to interfaces isn't propagated to the projected methods

Open jevansaks opened this issue 1 year ago • 0 comments

Describe the bug

We have a contract where version 2 is experimental. The CsWinRT generated code produces code that itself generates a warning because the ABI interface has [Experimental] on it, but we should suppress that and add [experimental] to the projected method on the public type.

Generated code that flags the warning:

    [Guid("...")]
    internal interface IExclusiveToInterface2 : global::Example.IExclusiveToInterface2
    {
    }

where IExclusiveToInterface2 has [experimental] on it but the public method from that interface doesn't have [experimental] but it should:

        public void SomeMethod() => global::ABI.Example.IExclusiveToInterface22Methods.SomeMethod(...);

jevansaks avatar Jul 02 '24 18:07 jevansaks