tw22155.pp 631 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. { %opt=-vn -Sen }
  2. {$MODE DELPHI}
  3. {.$DEFINE ALT_MODE}
  4. type
  5. TWrapper = class
  6. strict private
  7. type
  8. TInternals = record
  9. class procedure Z; static;
  10. end;
  11. class var
  12. FInternals: TInternals;
  13. private
  14. class property Internals: TInternals read FInternals;
  15. public
  16. procedure Z;
  17. end;
  18. class procedure TWrapper.TInternals.Z;
  19. begin
  20. end;
  21. procedure TWrapper.Z;
  22. begin
  23. {$IFNDEF ALT_MODE}
  24. Internals.Z; { Class variable FInternals “unused” }
  25. {$ELSE}
  26. FInternals.Z; { Class property Internals “unused” }
  27. {$ENDIF}
  28. end;
  29. begin
  30. with TWrapper.Create do begin
  31. Z;
  32. Free;
  33. end;
  34. end.