[Lazarus] write watch breakpoint to field inside object

Martin lazarus at mfriebe.de
Wed Nov 13 16:53:57 CET 2013

On 13/11/2013 15:47, Martin wrote:
> What type is the field?
> It works here.
> Couple of points:
> - You must use "global" for scope. Unless your object var "VarA" is a 
> global var).
> Otherwise "varA" will go out of scope, and gdb has no idea there are 
> other refs to the object.
> - You must delete, and create again, after every run. In order to work 
> around gdb scope of VarA the IDE translates the expression to a 
> pointer. That may not be valid on the next re-run
> - You can only set the watch, if all vars involved are in scope: e.g 
> the ide can show the value in watches window

Also, it may not work, if the fields type is declared inline
   AFoo: array of integer;
because the IDE needs the name of the type for a typecast in the gdb 
expression generated

Solution: declare a named type

Dynamic Arrays, may only watch the reference, not the data

> Otherwise: logfile please
> http://wiki.lazarus.freepascal.org/GDB_Debugger_Tips#Log_info_for_debug_session 
> -- 
> _______________________________________________
> Lazarus mailing list
> Lazarus at lists.lazarus.freepascal.org
> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

More information about the Lazarus mailing list