blob: 05c2a7f69fe871fccbe62974c1eb3fe3934d3c5c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
{ from gpc testsuite, original name sam7.pas }
{$ifdef fpc}
{$mode macpas}
{$endif}
Program Sam7;
Var
foo: array [ 'a'..'f' ] of Boolean = ( false, false, true, false, false, false );
bar: packed array [ 42..47 ] of Boolean;
baz: array [ '0'..'5' ] of Boolean;
i: Integer;
begin
pack ( foo, 'a', bar );
unpack ( bar, baz, '0' );
for i:= 0 to 5 do
if bar [ 42 + i ] <> baz [ chr(ord('0')+ i) ] then
foo [ 'c' ]:= false;
if foo [ 'c' ] and bar [ 44 ] then
writeln ( 'OK' )
else
begin
writeln ( 'failed ', foo [ 'c' ], ' ', bar [ 44 ] );
halt(1)
end
end.
|