|
@@ -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;
|