{ %FAIL } program timpfuncspez37; {$mode objfpc} {$modeswitch implicitfunctionspecialization} type generic TTestFunc = procedure(aArg1: T); generic procedure DoTest(aArg: specialize TTestFunc); begin end; function TestFunc(aArg1: LongInt): LongInt; begin end; begin DoTest(@TestFunc); end.