From @NiklasGustafsson in TorchSharp repo
If a C# type has both a nested type C.Name and there is an instance extension method called Name then the latter is always preferred, even for static unqualified resolution
Repro is something like this:
class C {
class Name {
static public void Method() ...
}
}
class Extensions {
static public T Name(T this) { ... }
}
C.Name.Method()
Here the extension method is an instance extension method but is being used as a resolution for a static invocation. It's being used only to report a later error - and instead we should filter on static v. instance in name resolution.