mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-14 19:39:31 +02:00
+ Removed HASFUNCTIONCOPYDYNARR define
git-svn-id: trunk@313 -
This commit is contained in:
parent
fccc19aa5c
commit
198b2104be
@ -52,12 +52,8 @@ Function fpc_shortstr_Copy(const s:shortstring;index:SizeInt;count:SizeInt):sho
|
||||
Function fpc_ansistr_Copy (Const S : AnsiString; Index,Size : SizeInt) : AnsiString;compilerproc;
|
||||
Function fpc_widestr_Copy (Const S : WideString; Index,Size : SizeInt) : WideString;compilerproc;
|
||||
function fpc_char_copy(c:char;index : SizeInt;count : SizeInt): shortstring;compilerproc;
|
||||
{$ifdef HASFUNCTIONCOPYDYNARR}
|
||||
function fpc_dynarray_copy(psrc : pointer;ti : pointer;
|
||||
lowidx,count:tdynarrayindex) : pointer;compilerproc;
|
||||
{$else HASFUNCTIONCOPYDYNARR}
|
||||
procedure fpc_dynarray_copy(var pdest : pointer;psrc : pointer;ti : pointer;lowidx,count:tdynarrayindex);compilerproc;
|
||||
{$endif HASFUNCTIONCOPYDYNARR}
|
||||
|
||||
function fpc_dynarray_length(p : pointer) : tdynarrayindex; compilerproc;
|
||||
function fpc_dynarray_high(p : pointer) : tdynarrayindex; compilerproc;
|
||||
|
@ -286,20 +286,12 @@ procedure fpc_dynarray_setlength(var p : pointer;pti : pointer;
|
||||
end;
|
||||
|
||||
|
||||
{$ifdef HASFUNCTIONCOPYDYNARR}
|
||||
{ provide local access to dynarr_copy }
|
||||
function int_dynarray_copy(psrc : pointer;ti : pointer;
|
||||
lowidx,count:tdynarrayindex) : pointer;[external name 'FPC_DYNARR_COPY'];
|
||||
|
||||
function fpc_dynarray_copy(psrc : pointer;ti : pointer;
|
||||
lowidx,count:tdynarrayindex) : pointer;[Public,Alias:'FPC_DYNARR_COPY'];compilerproc;
|
||||
{$else HASFUNCTIONCOPYDYNARR}
|
||||
procedure int_dynarray_copy(var pdest : pointer;psrc : pointer;ti : pointer;
|
||||
lowidx,count:tdynarrayindex);[external name 'FPC_DYNARR_COPY'];
|
||||
|
||||
procedure fpc_dynarray_copy(var pdest : pointer;psrc : pointer;ti : pointer;
|
||||
lowidx,count:tdynarrayindex);[Public,Alias:'FPC_DYNARR_COPY'];compilerproc;
|
||||
{$endif HASFUNCTIONCOPYDYNARR}
|
||||
var
|
||||
realpdest,
|
||||
realpsrc : pdynarray;
|
||||
@ -308,15 +300,11 @@ procedure fpc_dynarray_copy(var pdest : pointer;psrc : pointer;ti : pointer;
|
||||
highidx : tdynarrayindex;
|
||||
elesize : sizeint;
|
||||
eletype : pdynarraytypeinfo;
|
||||
{$ifdef HASFUNCTIONCOPYDYNARR}
|
||||
pdest : pointer;
|
||||
{$endif HASFUNCTIONCOPYDYNARR}
|
||||
begin
|
||||
highidx:=lowidx+count-1;
|
||||
pdest:=nil;
|
||||
{$ifdef HASFUNCTIONCOPYDYNARR}
|
||||
result:=pdest;
|
||||
{$endif HASFUNCTIONCOPYDYNARR}
|
||||
if psrc=nil then
|
||||
exit;
|
||||
realpsrc:=pdynarray(psrc-sizeof(tdynarray));
|
||||
@ -353,9 +341,7 @@ procedure fpc_dynarray_copy(var pdest : pointer;psrc : pointer;ti : pointer;
|
||||
{ increment ref. count of members }
|
||||
for i:= 0 to cnt-1 do
|
||||
int_addref(pointer(pdest+elesize*i),eletype);
|
||||
{$ifdef HASFUNCTIONCOPYDYNARR}
|
||||
result:=pdest;
|
||||
{$endif HASFUNCTIONCOPYDYNARR}
|
||||
end;
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user