12345678910111213141516171819202122232425262728293031323334353637 |
- { %FAIL }
- { Source provided for Free Pascal Bug Report 2053 }
- { Submitted by "Luis Castedo" on 2002-07-24 }
- { e-mail: [email protected] }
- program tb2;
- {$MODE TP}
- {$C+}
- type
- TMyRecord = record
- mr_sglDummy1: array[0..3] of Single;
- mr_lDummy2 : ptrint;
- mr_iDummy3 : Integer;
- mr_iDummy4 : Integer;
- end;
- { TMyRecordArray = array[Integer] of TMyRecord;} { Error }
- TMyRecordArray = array[Ptrint] of TMyRecord; { OK }
- PMyRecordArray = ^TMyRecordArray;
- var
- pArray: PMyRecordArray;
- begin
- GetMem(pArray, 50 * SizeOf(TMyRecord));
- Assert(Assigned(pArray));
- WriteLn('pArray = ', ptrint(pArray));
- WriteLn('@(pArray^[0]) = ', ptrint(@(pArray^[0])));
- pArray^[0].mr_lDummy2 := 0;
- FreeMem(pArray, 50 * SizeOf(TMyRecord));
- end.
|