|
@@ -335,11 +335,13 @@ begin
|
|
|
end;
|
|
|
|
|
|
|
|
|
-procedure fpc_finalize_array(data,typeinfo : pointer;count,size : longint); [Public,Alias:'FPC_FINALIZEARRAY']; compilerproc;
|
|
|
+procedure fpc_finalize_array(data,typeinfo : pointer;count,size : SizeInt); [Public,Alias:'FPC_FINALIZEARRAY']; compilerproc;
|
|
|
var
|
|
|
- i : longint;
|
|
|
+ i : SizeInt;
|
|
|
begin
|
|
|
- for i:=0 to count-1 do
|
|
|
- int_finalize(data+size*i,typeinfo);
|
|
|
+ if not(PByte(typeinfo)^ in [tkInteger,tkChar,tkEnumeration,tkFloat,tkSet,
|
|
|
+ tkMethod,tkSString,tkLString,tkWChar,tkBool,tkInt64,tkQWord]) then
|
|
|
+ for i:=0 to count-1 do
|
|
|
+ int_finalize(data+size*i,typeinfo);
|
|
|
end;
|
|
|
|