On 13/11/2013 14:54, Felipe Monteiro de Carvalho wrote:
Hello,

I managed to add a write watch to my variable VarA which is an
instance of a class and it works fine following instructions here:
http://wiki.freepascal.org/IDE_Window:Breakpoints

But actually I would like to watch when a field inside the class is
modified. Any way to do that? I tried setting the variable to watch as
VarA.MyField but it doesn't work =/

Is it possible somehow? I wonder how this works, will it stops at all
variables which are valled VarA? There is not enough information to
establish a particular one, I guess...

I am searching for a memory corruption, so I would like to breakpoint
when a code writes into a variable ...


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

Otherwise: logfile please
http://wiki.lazarus.freepascal.org/GDB_Debugger_Tips#Log_info_for_debug_session


--
_______________________________________________
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to