mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-18 15:09:20 +02:00
* tinlinenode.handle_str now uses the new intrinsiccode field for TCallNode
This commit is contained in:
parent
28e7dd77de
commit
e1f993c363
@ -252,6 +252,7 @@ implementation
|
|||||||
procname: string;
|
procname: string;
|
||||||
is_real,is_enum : boolean;
|
is_real,is_enum : boolean;
|
||||||
rt : aint;
|
rt : aint;
|
||||||
|
intrinsiccode: TInlineNumber;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
result := cerrornode.create;
|
result := cerrornode.create;
|
||||||
@ -399,6 +400,8 @@ implementation
|
|||||||
{ since they're reused }
|
{ since they're reused }
|
||||||
left := nil;
|
left := nil;
|
||||||
|
|
||||||
|
intrinsiccode := Default(TInlineNumber);
|
||||||
|
|
||||||
{ create procedure name }
|
{ create procedure name }
|
||||||
if is_chararray(dest.resultdef) then
|
if is_chararray(dest.resultdef) then
|
||||||
procname:='fpc_chararray_'
|
procname:='fpc_chararray_'
|
||||||
@ -417,7 +420,10 @@ implementation
|
|||||||
bool8bit,bool16bit,bool32bit,bool64bit:
|
bool8bit,bool16bit,bool32bit,bool64bit:
|
||||||
procname := procname + 'bool';
|
procname := procname + 'bool';
|
||||||
else
|
else
|
||||||
procname := procname + get_str_int_func(source.resultdef);
|
begin
|
||||||
|
intrinsiccode := in_str_x_string;
|
||||||
|
procname := procname + get_str_int_func(source.resultdef);
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{ for ansistrings insert the encoding argument }
|
{ for ansistrings insert the encoding argument }
|
||||||
@ -428,7 +434,7 @@ implementation
|
|||||||
{ free the errornode we generated in the beginning }
|
{ free the errornode we generated in the beginning }
|
||||||
result.free;
|
result.free;
|
||||||
{ create the call node, }
|
{ create the call node, }
|
||||||
result := ccallnode.createintern(procname,newparas);
|
result := ccallnode.createfromintrinsic(intrinsiccode,procname,newparas);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user