Graeme Geldenhuys schrieb:

Here is what I would consider a "debugger":

 - command line interface at least
Me: GUI interface at least.

Where "GUI" is not a special property of the interface, only a set of
(callback) procedures that allow to implement desired language-specific
display features, regardless of GUI or Console display and use.

 - watches
+1

 - breakpoints
    - expression handling with break points would be very handy.
      eg: break when i = 1234
Nice to have, but I could live without this.

 - watchpoints. break when data at memory address changed. Very
   handy to debug those procedural programs that loves to use global
   variables.  MSEide supports this (but it is actually a GDB feature)
Again I could live without it, depending on the time required to
determine such changes. I've seen applications crawl when such a feature
was used :-(

 - querying variables, properties, arrays, strings. Irrespective if
   things like variables are local, global, or if parameters are from
   a nested function, method, event handler. Querying properties of
   a class instance (like can be done in Delphi for years) is very
   important (irrespective of the "potential" dangers in that).
+1 (as far as calling getters can be avoided, somehow).

 - Object Pascal expression evaluation (but I guess this goes
   hand-in-hand with Watches and Breakpoints.
Nice to have.


Another wish: separation of debug info and debug code.

Currently I can't step into packages or FCL/RTL, without compiling these first for debugging. But doing so puts in all the debug code (output...), residing in the units. What I want is a dedicated option, that provides everything required to debug the entire application, without enabling special {$IFDEF DEBUG} code. Or did I simply miss something already existing?

DoDi

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

Reply via email to