ReadLn and class propertys.
Original Reporter info from Mantis: KacperKwapisz
-
Reporter name: Kacper Kwapisz
Original Reporter info from Mantis: KacperKwapisz
- Reporter name: Kacper Kwapisz
Description:
[code]
program BugTest;
{$mode objfpc}
type
TTest = class
private
FTest: Integer;
procedure SetTest(const Value: Integer);
public
property Test: Integer read FTest write SetTest;
end;
{ TTest }
procedure TTest.SetTest(const Value: Integer);
begin
Writeln('SetTest called!');
FTest := Value;
end;
var
Test: TTest;
begin
Test := TTest.Create;
Writeln('Test.Test = ', Test.Test);
Test.Test := 2;
Writeln('Test.Test = ', Test.Test);
ReadLn(Test.Test);
Writeln('Test.Test = ', Test.Test);
ReadLn;
end.
[/code]
Output:
Test.Test = 0
SetTest called!
Test.Test = 2
3 <= keyboard echo
Test.Test = 3
Conclusion:
ReadLn don't call SetTest.
Mantis conversion info:
- Mantis ID: 8777
- Version: 2.0.4
- Fixed in version: 2.4.0
- Fixed in revision: 7250 (#de1af478)