From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19224 invoked by alias); 15 Mar 2007 21:36:14 -0000 Received: (qmail 19135 invoked by uid 22791); 15 Mar 2007 21:36:09 -0000 X-Spam-Check-By: sourceware.org Received: from mta06.pge.com (HELO mta06.pge.com) (131.90.0.76) by sourceware.org (qpsmtpd/0.31) with ESMTP; Thu, 15 Mar 2007 21:35:58 +0000 Received: from mta17.comp.pge.com (mta17.comp.pge.com [10.244.4.52]) by mta06.pge.com (Switch-3.2.4/Switch-3.2.4) with ESMTP id l2FLZqnc008333; Thu, 15 Mar 2007 14:35:53 -0700 (PDT) Received: from mdssdr01.utility.pge.com (mdssdr01.utility.pge.com [10.244.52.48]) by mta17.comp.pge.com (Switch-3.2.4/Switch-3.2.4) with ESMTP id l2FLZpHB017883; Thu, 15 Mar 2007 14:35:51 -0700 (PDT) Received: (from esp5@localhost) by mdssdr01.utility.pge.com (8.11.7p3+Sun/8.11.7) id l2FLZpg10501; Thu, 15 Mar 2007 14:35:51 -0700 (PDT) Date: Thu, 15 Mar 2007 21:36:00 -0000 From: "Ed S. Peschko" To: Michael Veksler Cc: gdb@sourceware.org Subject: Re: dynamic breakpoints/watchpoints Message-ID: <20070315213551.GA22743@venus> References: <20070314002242.GB17710@venus> <20070314083409.GA21561@venus> <45F7BE52.8020409@tx.technion.ac.il> <20070314180317.GA3771@venus> <45F87DAC.8030404@tx.technion.ac.il> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <45F87DAC.8030404@tx.technion.ac.il> User-Agent: Mutt/1.4.2.1i 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: 2007-03/txt/msg00208.txt.bz2 > I still don't see what you mean. From your use case it is not clear why > you would like to search the source code, rather than put a break-point > on the FILE or stream. > I always hated the perl debugger (maybe it is now better!), so any > change to its old state should have had a radical productivity > improvement. This does not mean that such a modification to GDB > will have the same effect (it might, but I don't understand it from > your example, can you give a better example?) > Ok, just to be clear and to recap. I had two use cases in mind, one for breaking via searching data, one for breaking via searching code. For searching code, I think that we are pretty much talking about the same thing. bc /hello there/ would break at the next point where the string 'hello there' was in the code; or set multiple breakpoints the same way that rbreak does (although I'm really skeptical how it could do this for the case of, say libraries loaded at runtime and that have not been loaded yet, which you could do with a runtime implementation.) For searching data, I think we are close. I think we just differ in the details. I'm talking about a universal data searching mechanism, such that if you say: int main() { string a = "hello"; a.append(" there"); cout << a <