title: The call is ambiguous error for generics methods
body: <p>I have struct like this:</p>
  
  <pre><code>public readonly struct SomeStruct&lt;T1, T2&gt;
  {
     private readonly object _ref;
  
     public SomeStruct(T1 value)
     {
       _ref = value;
     }
  
     public SomeStruct(T2 value)
     {
       _ref = value;
     }
  
     public SomeStruct&lt;U1, T2&gt; Select&lt;U1&gt;(Func&lt;T1, U1&gt; mapLeft){ // logic... }
  
     public SomeStruct&lt;T1, U2&gt; Select&lt;U2&gt;(Func&lt;T2, U2&gt; mapRight) { // logic... }
  }
  </code></pre>
  
  <p>And I try to use methods like this:</p>
  
  <pre><code>SomeStruct&lt;int, string&gt; someStruct = new SomeStruct&lt;int, string&gt;("test");
  
  SomeStruct&lt;bool, string&gt; newStruct = someStruct.Select&lt;bool&gt;(x =&gt; true);
  </code></pre>
  
  <p>Or</p>
  
  <pre><code>SomeStruct&lt;int, string&gt; someStruct = new SomeStruct&lt;int, string&gt;(111);
  
  SomeStruct&lt;int, bool&gt; newStruct = someStruct.Select&lt;bool&gt;(x =&gt; true);
  </code></pre>
  
  <p>But I'm getting error:
  Error   The call is ambiguous between the following methods or properties: 'SomeStruct.Select(Func)' and 'SomeStruct.Select(Func)'</p>