diff --git a/compiler/ncal.pas b/compiler/ncal.pas index 9be2d3357c..6c6f8dc10f 100644 --- a/compiler/ncal.pas +++ b/compiler/ncal.pas @@ -2204,7 +2204,9 @@ implementation end else begin - temp:=ctempcreatenode.create(resultdef,resultdef.size,tt_persistent,false); + temp:=ctempcreatenode.create(resultdef,resultdef.size,tt_persistent, + (cnf_do_inline in callnodeflags) and + not(tabstractvarsym(tprocdef(procdefinition).funcretsym).varregable in [vr_none,vr_addr])); include(temp.flags,nf_is_funcret); add_init_statement(temp); { When the function result is not used in an inlined function