Control-Flow Breakpoint Debugger
     
  Home   Overview

Modern source-level debuggers support dynamic breakpoints that are guarded by conditions based on program state. Such breakpoints address situations where a static breakpoint is not sufficiently precise to characterise a point of interest in program execution. However, current support for dynamic breakpoints is not adequate. First of all, using program state to characterise guard conditions can be insufficient in some situations. Secondly, such guard conditions can be difficult to formulate because they are manually expressed by the user in the source language.

We present the Control-Flow Breakpoint Debugger (CBD). CBD uses a dynamic pointcut language to characterise control-flow breakpoints - dynamic breakpoints which are conditional on the control-flow through which they were reached. CBD provides a "point-and-click" GUI to specify and incrementally refine control-flow breakpoints, thereby avoiding the burden of manually editing the potentially complex expressions that define them.

CBD is implemented as a modification to the Eclipse JDT Debugger.

People

  Download
  Contact