CsWinRT
CsWinRT copied to clipboard
[Experimental] on exclusive-to interfaces isn't propagated to the projected methods
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(...);