File tree Expand file tree Collapse file tree 2 files changed +10
-1
lines changed Expand file tree Collapse file tree 2 files changed +10
-1
lines changed Original file line number Diff line number Diff line change 1+ 15.09.2025
2+ - bugfixes (Parser.pas -> RecordSize)
3+
1413.09.2025
25- bugfixes and optimizations
36
Original file line number Diff line number Diff line change @@ -211,7 +211,7 @@ function RecordSize(IdentIndex: integer; field: string =''): integer;
211211// if Ident[IdentIndex].NumAllocElements_ > 0 then
212212// i := Ident[IdentIndex].NumAllocElements_
213213// else
214- i := Ident[IdentIndex].NumAllocElements;
214+ i := Ident[IdentIndex].NumAllocElements and $FFFF ;
215215
216216 Result := 0 ;
217217
@@ -238,6 +238,12 @@ function RecordSize(IdentIndex: integer; field: string =''): integer;
238238
239239 if FieldType <> RECORDTOK then
240240 if (FieldType in Pointers) and (NumAllocElements > 0 ) then begin
241+
242+ if AllocElementType = RECORDTOK then begin
243+ AllocElementType := POINTERTOK;
244+ NumAllocElements := Types[i].Field[j].NumAllocElements shr 16 ;
245+ NumAllocElements_ := 0 ;
246+ end ;
241247
242248 if NumAllocElements_ > 0 then
243249 inc(Result, NumAllocElements * NumAllocElements_ * DataSize[AllocElementType])
You can’t perform that action at this time.
0 commit comments