[fpc-devel] Managed Types, Undefined Bhaviour
    Thorsten Engler 
    thorsten.engler at gmx.net
       
    Fri Jun 29 19:28:20 CEST 2018
    
    
  
> -----Original Message-----
> From: fpc-devel <fpc-devel-bounces at lists.freepascal.org> On Behalf Of
> Michael Van Canneyt
> Sent: Saturday, 30 June 2018 03:11
> To: FPC developers' list <fpc-devel at lists.freepascal.org>
> Subject: Re: [fpc-devel] Managed Types, Undefined Bhaviour
> 
> 
> Please explain. Exactly how does it demonstrate this ?
> 
> What is the expected output ?
> And how does current output differ from expected output ?
The same code results in more calls to AddRef/Release under FPC than it does under Delphi. 
The executed code in FPC is still "correct", in that the reference count reaches 0 (and the object is freed) late enough. So there is no issue with "correctness".
But the additional redundant calls to AddRef/Release will execute lock inc/dec or add/sub instructions. Which are very expensive.
    
    
More information about the fpc-devel
mailing list