title: TGenericClass<T> containing a TObjectList<T> doesn't compile
body: <p>I'm trying to write a generic class which contains a generic TObjectList&lt; T > which should contain only Elements of TItem.</p>
  
  <pre><code>uses
    Generics.Collections;
  
  type
    TItem = class
    end;
  
    TGenericClass&lt;T: TItem&gt; = class
    public
      SimpleList: TList&lt;T&gt;; // This compiles
      ObjectList: TObjectList&lt;T&gt;; // This doesn't compile: Compiler complaints that "T is not a class type"
    end;
  </code></pre>
  
  <p>Is this a wrong syntax? BTW: TGenericClass&lt; T: class> compiles, but then the Items in the List are not TItem anymore which is what I don't want.</p>