﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
2421	OMEdit gdb debugging - desired features	Adrian Pop	Adeel Asghar	"

I would really like to extend the GDB debugger features in 
OMEdit compared to MDT. I've been playing a lot with the MDT 
debugging and while is quite good, it can be way better which 
would support way more effective debugging.

Per and Martin, add more to this list if you want.

Adeel, I can make it a ticket out of this if you want -> done :)

1. have a user console to send written commands to gdb (for advanced 
  users like Martin and me). You can use {{{-interpreter-exec console ""command""}}}
  http://www.sourceware.org/gdb/onlinedocs/gdb.html#g_t_002dinterpreter_002dexec

2. have an user option in OMEdit debugging settings to not remove frames that are
  for .c/.cpp files. Note that some of these files are quite large (100Mb+)
  and should not be fully opened in OMEdit just display 100 lines above and below
  the breakpoint line.

3. when your program cycles and you suspend it sometimes it switches threads so you
  get a different stack that you want.
  have a way to switch the threads or display all threads instead of just the one 
  executing .mo code.

4. have a way to search the (tree-like) local variables for strings,
  record names, record component names
  if possible with regular expressions.

5. have a way to break only if a local variable contains certain record
  name or string.
  sometimes a function is executed a lot of times but you're only interested
  if the input/local variable path (Absyn.Path) contains certain string.
  currently you have to suffer through stopping *a lot* of times until you
  reach the point you're interested in.

6. have a toggle button that enables timings for step in, 
 step over run commands. if you send command: 
 {{{-enable-timings [yes | no]}}}
 then when you do step over or run gdb measures time 
 until the next break event and report it then in this way: 
 {{{time={wallclock=""0.05185"",user=""0.00800"",system=""0.00000""}}}}.
 the execution time until the next breakpoint is hit can then be 
 displayed somewhere.
"	enhancement	new	high	Future	OMEdit	trunk		debugging	Adrian Pop per Peter Fritzson Martin Sjölund Alachew Mengist
