{ %NORUN } { This tests that one can use a specialization of another generic which was introduced in the currently parsed generic can be used as a parameter type in a procedure variable introduced in the current generic as well } program tgeneric71; {$mode objfpc} type generic TSomeGeneric = class end; generic TSomeOtherGeneric = class type TSomeGenericT = specialize TSomeGeneric; TSomeProc = procedure(aParam: TSomeGenericT); end; begin end.