On Wed, 8 Jun 2011, Zaher Dirkey wrote:

On Wed, Jun 8, 2011 at 11:22 AM, <michael.vancann...@wisa.be> wrote:



On Wed, 8 Jun 2011, Zaher Dirkey wrote:

 Hi, I know when compile the project with optimize in Delphi the variable
freed/allocated after the last line used.
How can i make same in FPC, O3 not worked for me.
I used FPC 2.4.4

var
 c: Currency;
begin
 c := 10;
 writeln(c);
<<now c freed
 some code here
end;


C (as a currency) is never 'freed'. It is declared throughout the whole
procedure.


What if C is string or Interface of TInterfacedObject?

It is the same logic. It's freed only at the end.

For compiler-generated temporary variables, you should not make any assumptions.

Michael.
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to