fpc/tests/webtbs/tw2185.pp
fpc 790a4fe2d3 * log and id tags removed
git-svn-id: trunk@42 -
2005-05-21 09:42:41 +00:00

60 lines
1.2 KiB
ObjectPascal

{ Source provided for Free Pascal Bug Report 2185 }
{ Submitted by "Andrew Johnson" on 2002-10-16 }
{ e-mail: AJ_Genius@Hotmail.com }
Program BugTest;
{$Mode ObjFPC}{$H+}
{off $Define InvertOrder}
Uses Classes;
Type
TMyClass = Class(TPersistent)
public
dummy : Longint;
{$IfNDef InvertOrder}
procedure Assign(Source : TPersistent); override;
procedure Assign(const value: integer);
{$Else InvertOrder}
procedure Assign(const value: integer);
procedure Assign(Source : TPersistent); override;
{$EndIf InvertOrder}
Constructor Create;
end;
procedure TMyClass.Assign(Source : TPersistent);
begin
If Source is TMyClass then
Dummy := TMyClass(Source).dummy;
end;
procedure TMyClass.Assign(const value: integer);
begin
Dummy := value;
end;
Constructor TMyClass.Create;
begin
Inherited Create;
end;
Const
ConstDummy : Integer = 3;
var
Test1, Test2 : TMyClass;
begin
Test1 := TMyClass.Create;
Test2 := TMyClass.Create;
Test1.Dummy := 2;
Test2.Dummy := 1;
Writeln(Test2.Dummy);
Test2.Assign(Test1);
Writeln(Test2.Dummy);
Test2.Assign(ConstDummy);
Writeln(Test2.Dummy);
Test1.Destroy;
Test2.Destroy;
end.