fcl-passrc: started example issue #38784

git-svn-id: trunk@49254 -
This commit is contained in:
Mattias Gaertner 2021-04-24 11:49:01 +00:00
parent be9b0adf71
commit 74b8ccb992

View File

@ -157,7 +157,7 @@ type
procedure TestGenProc_TypeParamCntOverloadNoParams;
procedure TestGenProc_TypeParamWithDefaultParamDelphiFail;
procedure TestGenProc_ParamSpecWithT;
// ToDo: TestGenProc_ParamSpecWithTNestedType function Fly<T>(a: TBird<T>.TEvent; aSender: T): Word;
procedure TestGenProc_ParamSpecWithTNestedType; // ToDo
// ToDo: NestedResultAssign
// generic function infer types
@ -2555,6 +2555,34 @@ begin
ParseProgram;
end;
procedure TTestResolveGenerics.TestGenProc_ParamSpecWithTNestedType;
begin
exit;
StartProgram(false);
Add([
'{$mode delphi}',
'type',
' TObject = class end;',
' TBird<T> = class',
' type',
' TEvent = procedure(aSender: T);',
' end;',
'procedure Fly<T>(Event: TBird<T>.TEvent; Sender: T);',
'begin',
' Event(Sender);',
'end;',
'procedure Run(aSender: TObject);',
'begin',
'end;',
'var',
' Bird: TBird<TObject>;',
'begin',
' Fly<TObject>(Run,Bird);',
'']);
ParseProgram;
end;
procedure TTestResolveGenerics.TestGenProc_Infer_NeedExplicitFail;
begin
StartProgram(false);