mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-28 21:20:29 +02:00
* It is still needed to release the temp allocated for the result of an assembler function if the result is not referenced. This fixes some EXTDEBUG warnings.
This commit is contained in:
parent
5920d169c0
commit
136f042972
@ -5414,8 +5414,13 @@ implementation
|
|||||||
(po_nostackframe in current_procinfo.procdef.procoptions)
|
(po_nostackframe in current_procinfo.procdef.procoptions)
|
||||||
)
|
)
|
||||||
) then
|
) then
|
||||||
|
begin
|
||||||
|
ressym:=current_procinfo.procdef.funcretsym;
|
||||||
|
if not assigned(ressym) then
|
||||||
exit;
|
exit;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
begin
|
||||||
{ constructors return self }
|
{ constructors return self }
|
||||||
if current_procinfo.procdef.generate_safecall_wrapper then
|
if current_procinfo.procdef.generate_safecall_wrapper then
|
||||||
begin
|
begin
|
||||||
@ -5437,6 +5442,8 @@ implementation
|
|||||||
else
|
else
|
||||||
gen_load_uninitialized_function_result(list,current_procinfo.procdef,retdef,current_procinfo.procdef.funcretloc[calleeside]);
|
gen_load_uninitialized_function_result(list,current_procinfo.procdef,retdef,current_procinfo.procdef.funcretloc[calleeside]);
|
||||||
end;
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
if tabstractnormalvarsym(ressym).localloc.loc=LOC_REFERENCE then
|
if tabstractnormalvarsym(ressym).localloc.loc=LOC_REFERENCE then
|
||||||
tg.UnGetLocal(list,tabstractnormalvarsym(ressym).localloc.reference);
|
tg.UnGetLocal(list,tabstractnormalvarsym(ressym).localloc.reference);
|
||||||
end;
|
end;
|
||||||
|
Loading…
Reference in New Issue
Block a user