<p>Am 20.11.2016 08:31 schrieb "Le Duc Hieu" <<a href="mailto:alaviss0@gmail.com">alaviss0@gmail.com</a>>:<br>
><br>
> Here is the complete snippet that i wanted to create<br>
><br>
><br>
> Type<br>
>   generic PGList<T> = ^specialize TGList<T>;<br>
><br>
>   generic TGList<T> = record<br>
>     data: T;<br>
>     next: specialize PGList<T><br>
>   end;</p>
<p>You'll need to use nested types (they require modeswitch advancedrecords), like this:</p>
<p>=== code begin ===</p>
<p>type<br>
  generic TGList<T> = record<br>
  public type<br>
    TSelf = specialize TGList<T>;<br>
    PGList = ^TSelf;<br>
  public<br>
    data: T;<br>
    next: PGList;<br>
  end;</p>
<p>=== code end ===</p>
<p>Note: the TSelf construct is currently needed due to a bug in the compiler.</p>
<p>Regards,<br>
Sven</p>