mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-24 05:39:09 +02:00
+ new test for varsets and conversion among varsets
git-svn-id: trunk@6234 -
This commit is contained in:
parent
a06081f590
commit
0bc6a2fd28
1
.gitattributes
vendored
1
.gitattributes
vendored
@ -6806,6 +6806,7 @@ tests/test/tset1.pp svneol=native#text/plain
|
||||
tests/test/tset2.pp svneol=native#text/plain
|
||||
tests/test/tset3.pp svneol=native#text/plain
|
||||
tests/test/tset4.pp svneol=native#text/plain
|
||||
tests/test/tset5.pp svneol=native#text/plain
|
||||
tests/test/tstack.pp svneol=native#text/plain
|
||||
tests/test/tstprocv.pp svneol=native#text/plain
|
||||
tests/test/tstring1.pp svneol=native#text/plain
|
||||
|
339
tests/test/tset5.pp
Normal file
339
tests/test/tset5.pp
Normal file
@ -0,0 +1,339 @@
|
||||
{ %opt=-Ooregvar }
|
||||
|
||||
{$ifdef fpc}
|
||||
{$packset 1}
|
||||
{$endif fpc}
|
||||
{$z1}
|
||||
|
||||
type
|
||||
ta = set of 0..7;
|
||||
tb = set of 0..15;
|
||||
tc = set of 0..23;
|
||||
td = set of 0..31;
|
||||
te = set of 0..127;
|
||||
|
||||
var
|
||||
ve: te;
|
||||
vd: td;
|
||||
vc: tc;
|
||||
vb: tb;
|
||||
va: ta;
|
||||
b1,b2,b3: byte;
|
||||
begin
|
||||
b1 := $ff;
|
||||
b2 := $ff;
|
||||
b3 := $ff;
|
||||
va := [];
|
||||
vb := [];
|
||||
vc := [];
|
||||
vd := [];
|
||||
ve := [];
|
||||
|
||||
va := [3..4];
|
||||
vb := va;
|
||||
if b1 <> $ff then
|
||||
halt(1);
|
||||
if va <> [3..4] then
|
||||
halt(1);
|
||||
if vb <> [3..4] then
|
||||
halt(1);
|
||||
if vc <> [] then
|
||||
halt(1);
|
||||
if vd <> [] then
|
||||
halt(1);
|
||||
if ve <> [] then
|
||||
halt(1);
|
||||
vc := va;
|
||||
if b1 <> $ff then
|
||||
halt(1);
|
||||
if va <> [3..4] then
|
||||
halt(1);
|
||||
if vb <> [3..4] then
|
||||
halt(1);
|
||||
if vc <> [3..4] then
|
||||
halt(1);
|
||||
if vd <> [] then
|
||||
halt(1);
|
||||
if ve <> [] then
|
||||
halt(1);
|
||||
vd := va;
|
||||
if b1 <> $ff then
|
||||
halt(1);
|
||||
if va <> [3..4] then
|
||||
halt(1);
|
||||
if vb <> [3..4] then
|
||||
halt(1);
|
||||
if vc <> [3..4] then
|
||||
halt(1);
|
||||
if vd <> [3..4] then
|
||||
halt(1);
|
||||
if ve <> [] then
|
||||
halt(1);
|
||||
ve := va;
|
||||
if b1 <> $ff then
|
||||
halt(1);
|
||||
if va <> [3..4] then
|
||||
halt(1);
|
||||
if vb <> [3..4] then
|
||||
halt(1);
|
||||
if vc <> [3..4] then
|
||||
halt(1);
|
||||
if vd <> [3..4] then
|
||||
halt(1);
|
||||
if ve <> [3..4] then
|
||||
halt(1);
|
||||
|
||||
b1 := $ff;
|
||||
b2 := $ff;
|
||||
b3 := $ff;
|
||||
va := [];
|
||||
vb := [];
|
||||
vc := [];
|
||||
vd := [];
|
||||
ve := [];
|
||||
|
||||
vb := [0,2,3];
|
||||
va := vb;
|
||||
if b1 <> $ff then
|
||||
halt(2);
|
||||
if va <> [0,2,3] then
|
||||
halt(2);
|
||||
if vb <> [0,2,3] then
|
||||
halt(2);
|
||||
if vc <> [] then
|
||||
halt(2);
|
||||
if vd <> [] then
|
||||
halt(2);
|
||||
if ve <> [] then
|
||||
halt(2);
|
||||
vc := vb;
|
||||
if b1 <> $ff then
|
||||
halt(2);
|
||||
if va <> [0,2,3] then
|
||||
halt(2);
|
||||
if vb <> [0,2,3] then
|
||||
halt(2);
|
||||
if vc <> [0,2,3] then
|
||||
halt(2);
|
||||
if vd <> [] then
|
||||
halt(2);
|
||||
if ve <> [] then
|
||||
halt(2);
|
||||
vd := vb;
|
||||
if b1 <> $ff then
|
||||
halt(2);
|
||||
if va <> [0,2,3] then
|
||||
halt(2);
|
||||
if vb <> [0,2,3] then
|
||||
halt(2);
|
||||
if vc <> [0,2,3] then
|
||||
halt(2);
|
||||
if vd <> [0,2,3] then
|
||||
halt(2);
|
||||
if ve <> [] then
|
||||
halt(2);
|
||||
ve := vb;
|
||||
if va <> [0,2,3] then
|
||||
halt(2);
|
||||
if vb <> [0,2,3] then
|
||||
halt(2);
|
||||
if vc <> [0,2,3] then
|
||||
halt(2);
|
||||
if vd <> [0,2,3] then
|
||||
halt(2);
|
||||
if ve <> [0,2,3] then
|
||||
halt(2);
|
||||
|
||||
|
||||
b1 := $ff;
|
||||
b2 := $ff;
|
||||
b3 := $ff;
|
||||
va := [];
|
||||
vb := [];
|
||||
vc := [];
|
||||
vd := [];
|
||||
ve := [];
|
||||
|
||||
vc := [5,6,7];
|
||||
va := vc;
|
||||
if b1 <> $ff then
|
||||
halt(3);
|
||||
if va <> [5,6,7] then
|
||||
halt(3);
|
||||
if vc <> [5,6,7] then
|
||||
halt(3);
|
||||
if vb <> [] then
|
||||
halt(3);
|
||||
if vd <> [] then
|
||||
halt(3);
|
||||
if ve <> [] then
|
||||
halt(3);
|
||||
vb := vc;
|
||||
if b1 <> $ff then
|
||||
halt(3);
|
||||
if va <> [5,6,7] then
|
||||
halt(3);
|
||||
if vb <> [5,6,7] then
|
||||
halt(3);
|
||||
if vc <> [5,6,7] then
|
||||
halt(3);
|
||||
if vd <> [] then
|
||||
halt(3);
|
||||
if ve <> [] then
|
||||
halt(3);
|
||||
vd := vc;
|
||||
if b1 <> $ff then
|
||||
halt(3);
|
||||
if va <> [5,6,7] then
|
||||
halt(3);
|
||||
if vb <> [5,6,7] then
|
||||
halt(3);
|
||||
if vc <> [5,6,7] then
|
||||
halt(3);
|
||||
if vd <> [5,6,7] then
|
||||
halt(3);
|
||||
if ve <> [] then
|
||||
halt(3);
|
||||
ve := vc;
|
||||
if b1 <> $ff then
|
||||
halt(3);
|
||||
if va <> [5,6,7] then
|
||||
halt(3);
|
||||
if vb <> [5,6,7] then
|
||||
halt(3);
|
||||
if vc <> [5,6,7] then
|
||||
halt(3);
|
||||
if vd <> [5,6,7] then
|
||||
halt(3);
|
||||
if ve <> [5,6,7] then
|
||||
halt(3);
|
||||
|
||||
|
||||
b1 := $ff;
|
||||
b2 := $ff;
|
||||
b3 := $ff;
|
||||
va := [];
|
||||
vb := [];
|
||||
vc := [];
|
||||
vd := [];
|
||||
ve := [];
|
||||
|
||||
vd := [1,3,5];
|
||||
va := vd;
|
||||
if b1 <> $ff then
|
||||
halt(4);
|
||||
if va <> [1,3,5] then
|
||||
halt(4);
|
||||
if vd <> [1,3,5] then
|
||||
halt(4);
|
||||
if vc <> [] then
|
||||
halt(4);
|
||||
if vb <> [] then
|
||||
halt(4);
|
||||
if ve <> [] then
|
||||
halt(4);
|
||||
vb := vd;
|
||||
if b1 <> $ff then
|
||||
halt(4);
|
||||
if va <> [1,3,5] then
|
||||
halt(4);
|
||||
if vb <> [1,3,5] then
|
||||
halt(4);
|
||||
if vd <> [1,3,5] then
|
||||
halt(4);
|
||||
if vc <> [] then
|
||||
halt(4);
|
||||
if ve <> [] then
|
||||
halt(4);
|
||||
vc := vd;
|
||||
if b1 <> $ff then
|
||||
halt(4);
|
||||
if va <> [1,3,5] then
|
||||
halt(4);
|
||||
if vb <> [1,3,5] then
|
||||
halt(4);
|
||||
if vc <> [1,3,5] then
|
||||
halt(4);
|
||||
if vd <> [1,3,5] then
|
||||
halt(4);
|
||||
if ve <> [] then
|
||||
halt(4);
|
||||
ve := vd;
|
||||
if b1 <> $ff then
|
||||
halt(4);
|
||||
if va <> [1,3,5] then
|
||||
halt(4);
|
||||
if vb <> [1,3,5] then
|
||||
halt(4);
|
||||
if vc <> [1,3,5] then
|
||||
halt(4);
|
||||
if vd <> [1,3,5] then
|
||||
halt(4);
|
||||
if ve <> [1,3,5] then
|
||||
halt(4);
|
||||
|
||||
|
||||
b1 := $ff;
|
||||
b2 := $ff;
|
||||
b3 := $ff;
|
||||
va := [];
|
||||
vb := [];
|
||||
vc := [];
|
||||
vd := [];
|
||||
ve := [];
|
||||
|
||||
ve := [0,7];
|
||||
va := ve;
|
||||
if b1 <> $ff then
|
||||
halt(5);
|
||||
if va <> [0,7] then
|
||||
halt(5);
|
||||
if ve <> [0,7] then
|
||||
halt(5);
|
||||
if vc <> [] then
|
||||
halt(5);
|
||||
if vd <> [] then
|
||||
halt(5);
|
||||
if vb <> [] then
|
||||
halt(5);
|
||||
vb := ve;
|
||||
if b1 <> $ff then
|
||||
halt(5);
|
||||
if va <> [0,7] then
|
||||
halt(5);
|
||||
if vb <> [0,7] then
|
||||
halt(5);
|
||||
if ve <> [0,7] then
|
||||
halt(5);
|
||||
if vd <> [] then
|
||||
halt(5);
|
||||
if vc <> [] then
|
||||
halt(5);
|
||||
vc := ve;
|
||||
if b1 <> $ff then
|
||||
halt(5);
|
||||
if va <> [0,7] then
|
||||
halt(5);
|
||||
if vb <> [0,7] then
|
||||
halt(5);
|
||||
if vc <> [0,7] then
|
||||
halt(5);
|
||||
if ve <> [0,7] then
|
||||
halt(5);
|
||||
if vd <> [] then
|
||||
halt(5);
|
||||
vd := ve;
|
||||
if b1 <> $ff then
|
||||
halt(5);
|
||||
if va <> [0,7] then
|
||||
halt(5);
|
||||
if vb <> [0,7] then
|
||||
halt(5);
|
||||
if vc <> [0,7] then
|
||||
halt(5);
|
||||
if vd <> [0,7] then
|
||||
halt(5);
|
||||
if ve <> [0,7] then
|
||||
halt(5);
|
||||
|
||||
end.
|
Loading…
Reference in New Issue
Block a user