tb0677.pp 497 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. { %NORUN }
  2. program tb0677;
  3. {$mode objfpc}
  4. type
  5. TEnum = (eOne, eTwo, eThree, eFour);
  6. TSet = set of TEnum;
  7. generic TTest<SetType, EnumType> = class
  8. procedure Test;
  9. end;
  10. procedure TTest.Test;
  11. var
  12. s1: TSet;
  13. s2: SetType;
  14. e1: TEnum;
  15. e2: EnumType;
  16. begin
  17. Include(s1, e1);
  18. Exclude(s1, e1);
  19. Include(s2, e1);
  20. Exclude(s2, e1);
  21. Include(s2, e2);
  22. Exclude(s2, e2);
  23. Include(s2, e1);
  24. Exclude(s2, e2);
  25. end;
  26. type
  27. TTestTypes = specialize TTest<TSet, TEnum>;
  28. begin
  29. end.