From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 14050 invoked by alias); 18 Oct 2006 12:01:49 -0000 Received: (qmail 14041 invoked by uid 22791); 18 Oct 2006 12:01:48 -0000 X-Spam-Check-By: sourceware.org Received: from fra-del-03.spheriq.net (HELO fra-del-03.spheriq.net) (195.46.51.99) by sourceware.org (qpsmtpd/0.31) with ESMTP; Wed, 18 Oct 2006 12:01:42 +0000 Received: from fra-out-03.spheriq.net (fra-out-03.spheriq.net [195.46.51.131]) by fra-del-03.spheriq.net with ESMTP id k9IC1dlr020089 for ; Wed, 18 Oct 2006 12:01:39 GMT Received: from fra-cus-02.spheriq.net (fra-cus-02.spheriq.net [195.46.51.38]) by fra-out-03.spheriq.net with ESMTP id k9IC1de5015790 for ; Wed, 18 Oct 2006 12:01:39 GMT Received: from beta.dmz-eu.st.com (beta.dmz-eu.st.com [164.129.1.35]) by fra-cus-02.spheriq.net with ESMTP id k9IC1XdI018801 (version=TLSv1/SSLv3 cipher=EDH-RSA-DES-CBC3-SHA bits=168 verify=OK) for ; Wed, 18 Oct 2006 12:01:37 GMT Received: from zeta.dmz-eu.st.com (ns2.st.com [164.129.230.9]) by beta.dmz-eu.st.com (STMicroelectronics) with ESMTP id CAA94DA57 for ; Wed, 18 Oct 2006 12:01:27 +0000 (GMT) Received: from mail1.bri.st.com (mail1.bri.st.com [164.129.8.218]) by zeta.dmz-eu.st.com (STMicroelectronics) with ESMTP id 8AD9A47394 for ; Wed, 18 Oct 2006 12:01:24 +0000 (GMT) Received: from [164.129.15.13] (bri1043.bri.st.com [164.129.15.13]) by mail1.bri.st.com (MOS 3.5.8-GR) with ESMTP id CIC76065 (AUTH stubbsa); Wed, 18 Oct 2006 13:01:23 +0100 (BST) Message-ID: <45361793.1020202@st.com> Date: Wed, 18 Oct 2006 12:01:00 -0000 From: Andrew STUBBS User-Agent: Thunderbird 1.5.0.7 (Windows/20060909) MIME-Version: 1.0 To: gdb-patches@sourceware.org Subject: Re: [PATCH] Don't give spurious warnings when using thread specific breakpoints References: <452CF534.4060209@st.com> <20061011135545.GA26060@nevyn.them.org> <452D0385.6010103@st.com> <20061011204525.GA9622@nevyn.them.org> In-Reply-To: <20061011204525.GA9622@nevyn.them.org> Content-Type: multipart/mixed; boundary="------------080103000408060300040702" X-IsSubscribed: yes Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2006-10/txt/msg00213.txt.bz2 This is a multi-part message in MIME format. --------------080103000408060300040702 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-length: 471 Daniel Jacobowitz wrote: > This does make a little sense to me. Anyone think there's value in keeping > the note for breakpoints in different threads? Ok, there seems to be a consensus that the added notes are useful, but nobody likes the idea of suppressing the message entirely when the breakpoints do not conflict. How about the attached patch which includes the one without the other? I've also taken the opportunity to add _() macros to a few strings. Andrew --------------080103000408060300040702 Content-Type: text/plain; name="threadbreak.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="threadbreak.patch" Content-length: 2554 2006-10-18 Andrew Stubbs * breakpoint.c (describe_other_breakpoints): Add thread parameter. Annotate display with thread number where appropriate. Add gettext _() macro where it was missing. (create_breakpoints): Add thread parameter to call to describe_other_breakpoints. Index: src/gdb/breakpoint.c =================================================================== --- src.orig/gdb/breakpoint.c 2006-10-18 12:30:23.000000000 +0100 +++ src/gdb/breakpoint.c 2006-10-18 12:58:17.000000000 +0100 @@ -102,7 +102,7 @@ static void breakpoint_adjustment_warnin static CORE_ADDR adjust_breakpoint_address (CORE_ADDR bpaddr, enum bptype bptype); -static void describe_other_breakpoints (CORE_ADDR, asection *); +static void describe_other_breakpoints (CORE_ADDR, asection *, int); static void breakpoints_info (char *, int); @@ -3782,7 +3782,7 @@ maintenance_info_breakpoints (char *bnum /* Print a message describing any breakpoints set at PC. */ static void -describe_other_breakpoints (CORE_ADDR pc, asection *section) +describe_other_breakpoints (CORE_ADDR pc, asection *section, int thread) { int others = 0; struct breakpoint *b; @@ -3802,17 +3802,21 @@ describe_other_breakpoints (CORE_ADDR pc if (!b->pending && (!overlay_debugging || b->loc->section == section)) { others--; - printf_filtered ("%d%s%s ", - b->number, + printf_filtered ("%d", b->number); + if (b->thread == -1 && thread != -1) + printf_filtered (_(" (all threads)")); + else if (b->thread != -1) + printf_filtered (_(" (thread %d)"), b->thread); + printf_filtered ("%s%s ", ((b->enable_state == bp_disabled || b->enable_state == bp_shlib_disabled || b->enable_state == bp_call_disabled) - ? " (disabled)" + ? _(" (disabled)") : b->enable_state == bp_permanent - ? " (permanent)" + ? _(" (permanent)") : ""), (others > 1) ? "," - : ((others == 1) ? " and" : "")); + : ((others == 1) ? _(" and") : "")); } printf_filtered (_("also set at pc ")); deprecated_print_address_numeric (pc, 1, gdb_stdout); @@ -4960,7 +4964,7 @@ create_breakpoints (struct symtabs_and_l struct symtab_and_line sal = sals.sals[i]; if (from_tty) - describe_other_breakpoints (sal.pc, sal.section); + describe_other_breakpoints (sal.pc, sal.section, thread); b = set_raw_breakpoint (sal, type); set_breakpoint_count (breakpoint_count + 1); --------------080103000408060300040702--