From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8188 invoked by alias); 25 Jun 2008 06:56:39 -0000 Received: (qmail 8180 invoked by uid 22791); 25 Jun 2008 06:56:39 -0000 X-Spam-Check-By: sourceware.org Received: from main.gmane.org (HELO ciao.gmane.org) (80.91.229.2) by sourceware.org (qpsmtpd/0.31) with ESMTP; Wed, 25 Jun 2008 06:56:17 +0000 Received: from list by ciao.gmane.org with local (Exim 4.43) id 1KBOvK-000605-MP for gdb@sources.redhat.com; Wed, 25 Jun 2008 06:56:10 +0000 Received: from 78.158.192.230 ([78.158.192.230]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 25 Jun 2008 06:56:10 +0000 Received: from vladimir by 78.158.192.230 with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 25 Jun 2008 06:56:10 +0000 To: gdb@sources.redhat.com From: Vladimir Prus Subject: [MI] changing breakpoint location (Was: GDB Focus Group at the 2008 GCC Summit) Date: Wed, 25 Jun 2008 06:56:00 -0000 Message-ID: References: <20080619190942.GA3744@adacore.com> <18529.25738.895554.417986@kahikatea.snap.net.nz> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7Bit User-Agent: KNode/0.10.9 X-IsSubscribed: yes Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2008-06/txt/msg00247.txt.bz2 Nick Roberts wrote: > Nick Roberts writes: > > > The IDE is responsible for removing & reinserting breakpoints at the > > > correct line numbers. If you had a breakpoint on main.c:35 and you > > > added a couple of lines of code earlier in the file, that breakpoint > > > needs to be moved to main.c:37. > > > > Quite apart from fix and continue, it would be useful when GDB realises that > > an executable has been recompiled and says: > > > > `myprog' has changed; re-reading symbols. > > > > if it could also compute and print the new breakpoint locations, possibly > > only in MI as an event notification ("=breakpoints-changed"). > > I was thinking that GDB could detect that the location had changed but maybe > (as Jason suggests the IDE should do it (certainly if the edit source in Emacs > the breakpoint icon moves with it's associated line). In which case it would > seem useful to have an MI command that could move an existing breakpoint, e.g., > > -break-insert -m BPTNO FILE:LINE > > rather than delete the existing breakpoint and create a new one so that the > breakpoint number is preserved. If the example above is breakpoint 4: > > -break-insert -m 4 main.c:37 The frontend logic to remove and reinsert breakpoint when a location changes is certainly messy, so I guess such a command would be nice to have. Beware that it would require some core gdb changes -- breakpoint.c does not support moving breakpoint location, either. - Volodya