tcresolvegenerics.pas 632 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. unit tcresolvegenerics;
  2. {$mode objfpc}{$H+}
  3. interface
  4. uses
  5. Classes, SysUtils, testregistry, tcresolver;
  6. type
  7. { TTestResolveGenerics }
  8. TTestResolveGenerics = Class(TCustomTestResolver)
  9. Published
  10. procedure TestGen_GenericFunction; // ToDo
  11. end;
  12. implementation
  13. { TTestResolveGenerics }
  14. procedure TTestResolveGenerics.TestGen_GenericFunction;
  15. begin
  16. exit;
  17. StartProgram(false);
  18. Add([
  19. 'generic function DoIt<T>(a: T): T;',
  20. 'begin',
  21. ' Result:=a;',
  22. 'end;',
  23. 'var w: word;',
  24. 'begin',
  25. ' w:=DoIt<word>(3);',
  26. '']);
  27. ParseProgram;
  28. end;
  29. initialization
  30. RegisterTests([TTestResolveGenerics]);
  31. end.