title: CS1502 and CS1503: is it me or the compiler?
body: <p>Here is my code, edited for brevity:</p>
  
  <pre><code>_cvList = new List&lt;MyCollectionView&lt;MnpsCell&gt;&gt;();
          void SetStuff&lt;C, T&gt;(Action&lt;int?&gt; SetKey, float y, float h=70) where C : MnpsCell
      {
          ...
          var mcv = new MyCollectionView&lt;C&gt;(frame, lineLayout, false);
          mcv.Delegate = new MyDelegate&lt;C, T&gt;(SetKey);
          mcv.DataSource = new MyDataSource2&lt;C, T&gt;();
          mcv.RegisterClassForCell(typeof(C), new NSString(typeof(C).Name));
          ...
          _cvList.Add(mcv);
      }
  </code></pre>
  
  <p>Here are the errors I'm getting on the <code>_cvList.Add(mcv);</code> line:</p>
  
  <ul>
  <li><code>Error CS1502: The best overloaded method match for System.Collections.Generic.List&lt;SimpleCollectionView.MyCollectionView&lt;SimpleCollectionView.MnpsCell&gt;&gt;.Add(SimpleCollectionView.MyCollectionView&lt;SimpleCollectionView.MnpsCell&gt;) has some invalid arguments (CS1502)</code></li>
  <li><code>Error CS1503: Argument #1 cannot convert SimpleCollectionView.MyCollectionView&lt;C&gt; expression to type SimpleCollectionView.MyCollectionView&lt;SimpleCollectionView.MnpsCell&gt; (CS1503)</code></li>
  </ul>
  
  <p>Since C is a MnpsCell, this does not make sense to me. Am I missing something?</p>
  
  <p>Thanks!</p>