fpc/tests/test/opt/tcaseopt1.pp
2008-05-03 10:27:55 +00:00

113 lines
1.3 KiB
ObjectPascal

Procedure TestCaseBool;
Var
L1, L2: LongWord;
b : boolean;
begin
b:=false;
l1:=$deadbeef;
case b of
true:
l1:=0;
else
l1:=1234;
end;
if l1<>1234 then
halt(1);
l1:=$deadbeef;
case b of
false:
l1:=1234;
else
l1:=0;
end;
if l1<>1234 then
halt(1);
l1:=$deadbeef;
case b of
true:
l1:=0;
false:
l1:=1234;
end;
if l1<>1234 then
halt(1);
l1:=$deadbeef;
case b of
false..true:
l1:=1234;
else
l1:=0;
end;
if l1<>1234 then
halt(1);
l1:=$deadbeef;
case b of
false..true:
l1:=1234;
end;
if l1<>1234 then
halt(1);
{ set b to true }
b:=true;
l1:=$deadbeef;
case b of
true:
l1:=0;
else
l1:=1234;
end;
if l1<>0 then
halt(1);
l1:=$deadbeef;
case b of
false:
l1:=1234;
else
l1:=0;
end;
if l1<>0 then
halt(1);
l1:=$deadbeef;
case b of
true:
l1:=0;
false:
l1:=1234;
end;
if l1<>0 then
halt(1);
l1:=$deadbeef;
case b of
false..true:
l1:=1234;
else
l1:=0;
end;
if l1<>1234 then
halt(1);
l1:=$deadbeef;
case b of
false..true:
l1:=1234;
end;
if l1<>1234 then
halt(1);
end;
begin
TestCaseBool;
writeln('ok');
end.