mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-19 06:19:32 +02:00
* also test the new for type>2Gb
This commit is contained in:
parent
00d7da7aad
commit
0f45e9f38f
69
tests/webtbf/tw2053b.pp
Normal file
69
tests/webtbf/tw2053b.pp
Normal file
@ -0,0 +1,69 @@
|
||||
{ %Fail }
|
||||
{ new with type of size > 2Gb }
|
||||
|
||||
{ Source provided for Free Pascal Bug Report 2053 }
|
||||
{ Submitted by "Luis Castedo" on 2002-07-24 }
|
||||
{ e-mail: castedo@elai.upm.es }
|
||||
program tb2;
|
||||
|
||||
{$MODE TP}
|
||||
{$C+}
|
||||
|
||||
type
|
||||
|
||||
PosInteger = 0 .. high(integer);
|
||||
PosLongint = 0 .. high(longint);
|
||||
|
||||
TMyRecord = record
|
||||
mr_sglDummy1: array[0..3] of Single;
|
||||
mr_lDummy2 : Longint;
|
||||
mr_iDummy3 : Integer;
|
||||
mr_iDummy4 : Integer;
|
||||
end;
|
||||
|
||||
TMyRecordArray = array[PosInteger] of TMyRecord;
|
||||
TMyLongRecordArray = array[Longint] of TMyRecord;
|
||||
PMyRecordArray = ^TMyRecordArray;
|
||||
PMyLongRecordArray = ^TMyLongRecordArray;
|
||||
|
||||
var
|
||||
|
||||
pArray: PMyRecordArray;
|
||||
pLongArray : PMyLongRecordArray;
|
||||
size : longint;
|
||||
|
||||
begin
|
||||
|
||||
new(parray);
|
||||
new(pLongArray);
|
||||
size:= 50 * SizeOf(TMyRecord);
|
||||
GetMem(pArray, size);
|
||||
FillChar(pArray^,size,#0);
|
||||
GetMem(pLongArray, 50 * SizeOf(TMyRecord));
|
||||
FillChar(pLongArray^,size,#0);
|
||||
|
||||
Assert(Assigned(pArray));
|
||||
|
||||
WriteLn('pArray = ', Longint(pArray));
|
||||
WriteLn('@(pArray^[0]) = ', Longint(@(pArray^[0])));
|
||||
pArray^[0].mr_lDummy2 := 24;
|
||||
|
||||
if (pArray^[0].mr_lDummy2<>24) then
|
||||
begin
|
||||
Halt(1);
|
||||
end;
|
||||
|
||||
WriteLn('pLongArray = ', Longint(pLongArray));
|
||||
WriteLn('@(pLongArray^[0]) = ', Longint(@(pLongArray^[0])));
|
||||
pLongArray^[0].mr_lDummy2 := 25;
|
||||
|
||||
if (pLongArray^[0].mr_lDummy2<>25) then
|
||||
begin
|
||||
Halt(1);
|
||||
end;
|
||||
|
||||
FreeMem(pArray, size);
|
||||
FreeMem(pLongArray, size);
|
||||
|
||||
end.
|
||||
|
Loading…
Reference in New Issue
Block a user