title: TObjectList<T>.Count causes Invalid pointer operation
body: <p>In Delphi 2009, I had no major problems with Generics so far (using Generics.Collections lists, with no special Generics features).</p>
  
  <p>Now I found this code will cause a 'Invalid pointer operation' in the line which accesses <code>MyList.Count</code>. (MyList.Contains and MyList.IndexOf cause the same error).</p>
  
  <p>The error disappears if I declare TMyList = <code>class(TList&lt;TMyEntry&gt;)</code>;</p>
  
  <p>Should I avoid <code>TObjectList&lt;T&gt;</code> or is something else in my code causing this error?</p>
  
  <pre><code>type
    TMyEntry = class(TStringlist);
    TMyList = class(TObjectList&lt;TMyEntry&gt;);
  
  procedure TListTests.TestAV;
  var
    Entry: TMyEntry;
    MyList: TMyList;
  begin
    MyList := TMyList.Create;
    try
      Entry := TMyEntry.Create;
      try
        MyList.Add(Entry);
        Assert(MyList.Count = 1);  // &lt;--- fails
      finally
        Entry.Free;
      end;
    finally
      MyList.Free;
    end;
  end;
  </code></pre>