blob: f84f7c6b82bd34ce98eee820f8d920b2febdd9a2 (
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
29
30
31
32
33
34
35
36
37
38
|
{ %opt=-gh }
{$mode objfpc}
program test;
type
tr = record
b: byte;
str: ansistring;
b2,b3: byte;
end;
pr = ^tr;
var
A: pr;
begin
HaltOnNotReleased:=true;
getmem(a,sizeof(tr)*4);
Initialize(a^, 4);
a[0].str:='test';
a[0].str:=a[0].str+'ab';
a[1].str:='test';
a[1].str:=a[1].str+'ab';
a[2].str:='test';
a[2].str:=a[2].str+'ab';
a[3].str:='test';
a[3].str:=a[3].str+'ab';
Finalize(A[1], 2);
if (a[0].str<>'testab') then
halt(1);
if (a[1].str<>'') then
halt(2);
if (a[2].str<>'') then
halt(3);
if (a[3].str<>'testab') then
halt(4);
Finalize(a^,4);
freemem(a);
end.
|