summaryrefslogtreecommitdiff
path: root/packages/fcl-passrc/tests/tcresolvegenerics.pas
diff options
context:
space:
mode:
authormattias <mattias@3ad0048d-3df7-0310-abae-a5850022a9f2>2020-02-20 09:29:10 +0000
committermattias <mattias@3ad0048d-3df7-0310-abae-a5850022a9f2>2020-02-20 09:29:10 +0000
commit4200de9765cff3998ea4c9ceb4d404ce98f1b1b8 (patch)
tree2f74fe20f4fc1c1b2ad2fb751b7066d5b4c1b18f /packages/fcl-passrc/tests/tcresolvegenerics.pas
parentf3ce9a23c79538c7407badfae61c6e34fa9eef3c (diff)
downloadfpc-4200de9765cff3998ea4c9ceb4d404ce98f1b1b8.tar.gz
pas2js: not storing specialized elements
git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@44219 3ad0048d-3df7-0310-abae-a5850022a9f2
Diffstat (limited to 'packages/fcl-passrc/tests/tcresolvegenerics.pas')
-rw-r--r--packages/fcl-passrc/tests/tcresolvegenerics.pas31
1 files changed, 29 insertions, 2 deletions
diff --git a/packages/fcl-passrc/tests/tcresolvegenerics.pas b/packages/fcl-passrc/tests/tcresolvegenerics.pas
index 07e453e28a..1e27b74087 100644
--- a/packages/fcl-passrc/tests/tcresolvegenerics.pas
+++ b/packages/fcl-passrc/tests/tcresolvegenerics.pas
@@ -172,7 +172,8 @@ type
procedure TestGenMethod_TemplNameDifferFail;
procedure TestGenMethod_ImplConstraintFail;
procedure TestGenMethod_NestedSelf;
- procedure TestGenMethod_OverloadTypeParamCnt;
+ procedure TestGenMethod_OverloadTypeParamCntObjFPC;
+ procedure TestGenMethod_OverloadTypeParamCntDelphi;
procedure TestGenMethod_OverloadArgs;
end;
@@ -2628,7 +2629,7 @@ begin
ParseProgram;
end;
-procedure TTestResolveGenerics.TestGenMethod_OverloadTypeParamCnt;
+procedure TTestResolveGenerics.TestGenMethod_OverloadTypeParamCntObjFPC;
begin
StartProgram(false);
Add([
@@ -2653,6 +2654,32 @@ begin
ParseProgram;
end;
+procedure TTestResolveGenerics.TestGenMethod_OverloadTypeParamCntDelphi;
+begin
+ StartProgram(false);
+ Add([
+ '{$mode delphi}',
+ 'type',
+ ' TObject = class',
+ ' procedure {#A}Run<T>(a: T); overload;',
+ ' procedure {#B}Run<M,N>(a: M); overload;',
+ ' end;',
+ 'procedure TObject.Run<T>(a: T);',
+ 'begin',
+ 'end;',
+ 'procedure TObject.Run<M,N>(a: M);',
+ 'begin',
+ ' {@A}Run<M>(a);',
+ ' {@B}Run<double,char>(1.3);',
+ 'end;',
+ 'var obj: TObject;',
+ 'begin',
+ ' obj.{@A}Run<word>(3);',
+ ' obj.{@B}Run<word,char>(4);',
+ '']);
+ ParseProgram;
+end;
+
procedure TTestResolveGenerics.TestGenMethod_OverloadArgs;
begin
StartProgram(false);