title: Cannot call Count(predicate) on list
body: <p>The following code produces results that are confusing. Note I am coming from C# background and know very little VB.</p>
  
  <pre><code>Module Module1
  Sub Main()
      Dim list As List(Of String) = New List(Of String)()
      Dim result As Integer
  
      result = list.Count() '1
      result = list.Count(Function(p) True) '2
      result = CType(list, IEnumerable(Of String)).Count(Function(p) True) '3
  End Sub
  End Module
  </code></pre>
  
  <p>The confusing bits:</p>
  
  <ol>
  <li><p>There is a property named Count and an extension method with the same name. By calling Count() I expect the extension method to be called, but the property is accessed. Why and how to invoke a method?</p></li>
  <li><p>I expected extension method call, but compilation fails with BC32016 (as if property was accessed instead of method). Why is that?</p></li>
  <li><p>This works as expected.</p></li>
  </ol>