var c = new C();
Action x = c.M; // C.M()
Action<object> y = c.M; // E.M(C, object)
var z = c.M; // これが C# 13 から行けるようになったっぽい。
// オーバーロード解決ではインスタンスメソッド優先されるのに、
// natural type 決定の時にそれと同じ処理かからないのはよくないとのことで。
public class C
{
public void M() { }
}
public static class E
{
public static void M(this C c, object o) { }
}
↓こういう話。
これも「C# 13 の新機能」ページにだけさらっと書いて終わりかな。