Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 371037

Summary: Reposition breakpoints when planted on invalid line
Product: [Tools] TCF Reporter: Scott Tepavich <scott.tepavich>
Component: DebugAssignee: Project Inbox <tcf.debug-inbox>
Status: RESOLVED FIXED QA Contact: Eugene Tarassov <eugene>
Severity: enhancement    
Priority: P3 CC: cdtdoug
Version: 1.0   
Target Milestone: 1.0.0   
Hardware: PC   
OS: Linux   
Whiteboard:
Attachments:
Description Flags
Proposed patch eugene: iplog-

Description Scott Tepavich CLA 2012-02-08 22:44:13 EST
The current behavior of the tool is to create annotations for the locations where the backend/agent reported planting user requested breakpoints.

One enhancement request is to bring the BP relocation behavior of Workbench, to the Simics support.  In order to facilitate this request some changes had to be made to CDT itself (see bugzilla entry [Bug 360280] ).

With these changes, it enables the backend to reposition a breakpoint, when it's been planted on an invalid line without losing the users original requested data.  It also allows for indications to the user, as to why (if applicable) the breakpoint has been relocated.
Comment 1 Scott Tepavich CLA 2012-02-08 22:48:46 EST
Created attachment 210771 [details]
Proposed patch

Leveraging the recent enhancement to CDT 9 [Bug 360280], the attach is a proposal for adding the feature requested for Simics.
Comment 2 Eugene Tarassov CLA 2012-03-05 17:25:36 EST
The requested behavior gets mixed feedback from potential users, ranging from "love it" to "hate it". Since it appears not possible to have a single solution that fits all, I have implemented new extension point "org.eclipse.tcf.debug.ui.annotation_provider". It allows implementation of custom annotation managers on per launch, or per context basis. TCF will provide default manager, it is now up to other plugins/components to provide customized annotation management, including re-positioning of breakpoint markers.