From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 13406 invoked by alias); 5 Aug 2003 20:10:27 -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 13390 invoked from network); 5 Aug 2003 20:10:24 -0000 Received: from unknown (HELO nick.uklinux.net) (194.247.48.13) by sources.redhat.com with SMTP; 5 Aug 2003 20:10:24 -0000 Received: by nick.uklinux.net (Postfix, from userid 501) id 96BD475FDE; Tue, 5 Aug 2003 21:04:56 +0100 (BST) From: Nick Roberts MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <16176.3560.65649.7079@nick.uklinux.net> Date: Tue, 05 Aug 2003 20:10:00 -0000 To: gdb-patches@sources.redhat.com Subject: RFA (?) Annotate Level 3 patch X-SW-Source: 2003-08/txt/msg00070.txt.bz2 The annotation frame-begin is not needed, per se, by Emacs (gdb-ui.el) but it is used to determine that the I/O for the subprocess is now GDB, not the program being debugged i.e as a stopped annotation. In many cases there is another annotation e.g breakpoint to tell Emacs this. However, in some cases, e.g after `finish' or `return', frame-begin is the first `stopping' annotation that GDB issues before printing (out frame details). So I propose the patch below. It means that the stopped annotation gets printed twice but that doesn't matter to Emacs. It's not elegant but, hey, it works! I think Emacs is the only application that is interested in level 3 annotations so could "-gnuemacs" be made an alias option for "-annotate=3"? >From GDB's point of view this would discourage new applications form using it. From Emacs point of view, it would legitimise changes that we would wish to make. Nick --- annotate.c.~1.5.60.1.~ 2003-07-29 14:35:47.000000000 +0100 +++ annotate.c 2003-08-04 19:44:02.000000000 +0100 @@ -436,6 +436,7 @@ print_address_numeric (pc, 0, gdb_stdout); printf_filtered ("\n"); } + if (annotation_level == 3) printf_filtered ("\n\032\032stopped\n"); } void