mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-20 09:49:08 +02:00
* fixed (harmless) typecast errors when creating a string representation of
a procvardef * handle procdefs like procvardefs when getting their string representation in arbitrary expressions git-svn-id: branches/hlcgllvm@28123 -
This commit is contained in:
parent
0c10cbe63b
commit
a0c39220b1
@ -369,18 +369,20 @@ implementation
|
|||||||
encodedstr:=encodedstr+']';
|
encodedstr:=encodedstr+']';
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
procdef,
|
||||||
procvardef :
|
procvardef :
|
||||||
begin
|
begin
|
||||||
if tprocvardef(def).is_addressonly then
|
if (def.typ=procdef) or
|
||||||
|
tprocvardef(def).is_addressonly then
|
||||||
begin
|
begin
|
||||||
llvmaddencodedproctype(tprocdef(def),'',lpd_procvar,encodedstr);
|
llvmaddencodedproctype(tabstractprocdef(def),'',lpd_procvar,encodedstr);
|
||||||
encodedstr:=encodedstr+'*';
|
encodedstr:=encodedstr+'*';
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
encodedstr:=encodedstr+'{';
|
encodedstr:=encodedstr+'{';
|
||||||
{ code pointer }
|
{ code pointer }
|
||||||
llvmaddencodedproctype(tprocvardef(def),'',lpd_procvar,encodedstr);
|
llvmaddencodedproctype(tabstractprocdef(def),'',lpd_procvar,encodedstr);
|
||||||
{ data pointer (maybe todo: generate actual layout if
|
{ data pointer (maybe todo: generate actual layout if
|
||||||
available) }
|
available) }
|
||||||
encodedstr:=encodedstr+'*, i8*}';
|
encodedstr:=encodedstr+'*, i8*}';
|
||||||
@ -415,11 +417,6 @@ implementation
|
|||||||
undefineddef,
|
undefineddef,
|
||||||
errordef :
|
errordef :
|
||||||
internalerror(2013100604);
|
internalerror(2013100604);
|
||||||
procdef :
|
|
||||||
begin
|
|
||||||
{ should be handled via llvmencodeproctype/llvmaddencodedproctype }
|
|
||||||
internalerror(2014012601);
|
|
||||||
end;
|
|
||||||
else
|
else
|
||||||
internalerror(2013100603);
|
internalerror(2013100603);
|
||||||
end;
|
end;
|
||||||
|
Loading…
Reference in New Issue
Block a user