From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 28044 invoked by alias); 23 Jul 2004 09:23:31 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 28034 invoked from network); 23 Jul 2004 09:23:28 -0000 Received: from unknown (HELO miranda.se.axis.com) (193.13.178.2) by sourceware.org with SMTP; 23 Jul 2004 09:23:28 -0000 Received: from [10.84.130.1] (ironmaiden.se.axis.com [10.84.130.1]) by miranda.se.axis.com (8.12.9/8.12.9/Debian-5local0.1) with ESMTP id i6N9NPW9020848; Fri, 23 Jul 2004 11:23:25 +0200 Message-ID: <4100D90D.2030509@axis.com> Date: Fri, 23 Jul 2004 09:23:00 -0000 From: Orjan Friberg Organization: Axis Communications User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7) Gecko/20040616 MIME-Version: 1.0 To: Eli Zaretskii CC: gdb-patches@sources.redhat.com Subject: Re: recurse.exp: watch on local variable that goes out of scope References: <40FD2E1F.7070403@axis.com> <9787-Tue20Jul2004223539+0300-eliz@gnu.org> <40FF8C69.8050408@axis.com> <6654-Thu22Jul2004221755+0300-eliz@gnu.org> In-Reply-To: <6654-Thu22Jul2004221755+0300-eliz@gnu.org> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2004-07/txt/msg00321.txt.bz2 Eli Zaretskii wrote: > > So it sounds like your low-level target-side support misbehaves in > this case: I386_DR_LOW_GET_STATUS should map into a system call that > returns the contents of the DR6 debug register. If the returned value > says that one of the watched addresses was written to, there's nothing > GDB can do except report that and act accordingly. Actually, this isn't an i386 remote target: it's my i386 Linux host. I'm sorry if I sent you off in the wrong direction (I guess I should have been more specific than just "i386"). Just to be clear on what the problem is: recurse.exp on an i386 Linux host is all PASS; I just don't understand why it works the way it does. There are actually two things that don't make sense to me: 1. Why the i386 reports a watchpoint hit when reaching the watchpoint scope del breakpoint if the watchpoint has been hit previously (but not otherwise). 2. Compare the "Mimicking recurse.exp" and "Watch on return statement" examples in my previous e-mail: in both cases GDB notices that the watched variable goes out of scope, but stops only in the first case (where out of scope is detected by watchpoint_check) and not in the second case (where out of scope is detected by insert_bp_location). -- Orjan Friberg Axis Communications