[fpc-devel] Attn Joost: the ampersand in dwarf for var-param

Martin fpc at mfriebe.de
Fri Jan 14 22:27:41 CET 2011

Been to quick...
Found the answer

Revision: 16683
Author: joost
Date: 14:49:20, 02 January 2011
  * Dwarf: Hide the implicit pointer from a function-parameter which is 
    by reference, and dereference the (hidden) pointer in the DW_AT_location
    block. This solves problems with function parameters defined as 'var'
Modified : /trunk/compiler/dbgdwarf.pas

But it seems that now, even in dwarf-3  objects are treated as pointer 
again? (I can happily live with that. I just want to know)

On 14/01/2011 20:56, Martin wrote:
> I just noticed, a (good) change in dwarf 2, fpc trunk (ot I believe I 
> noticed)
> in dwarf2, var param (param by ref) where encoded with an &
> procedure a(var Foo: TObject):
> ptype Foo
> type = &TFOO = class : public TOBJECT
> whatis Foo
> type = &TFoo
> Today, I looked at it, and the ampersands are gone?
> In Dwarf they where never there, in dwarf the var-param alwas behaved 
> like normal var (you would never noticed the extra pointer layer) => 
> seems dwarf caught up?
> Martin
> _______________________________________________
> fpc-devel maillist  -  fpc-devel at lists.freepascal.org
> http://lists.freepascal.org/mailman/listinfo/fpc-devel

More information about the fpc-devel mailing list