From patchwork Fri May 3 23:28:53 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tom Tromey X-Patchwork-Id: 32537 Received: (qmail 91717 invoked by alias); 3 May 2019 23:28:58 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Delivered-To: mailing list gdb-patches@sourceware.org Received: (qmail 91481 invoked by uid 89); 3 May 2019 23:28:58 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-20.0 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, RCVD_IN_DNSWL_NONE, SPF_HELO_PASS autolearn=ham version=3.3.1 spammy=loosemore, Loosemore, U*sandra, sk:sandra X-HELO: gateway22.websitewelcome.com Received: from gateway22.websitewelcome.com (HELO gateway22.websitewelcome.com) (192.185.46.126) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 03 May 2019 23:28:56 +0000 Received: from cm17.websitewelcome.com (cm17.websitewelcome.com [100.42.49.20]) by gateway22.websitewelcome.com (Postfix) with ESMTP id C800B9C5A for ; Fri, 3 May 2019 18:28:54 -0500 (CDT) Received: from box5379.bluehost.com ([162.241.216.53]) by cmsmtp with SMTP id MhbqhJy1x90onMhbqhRsC2; Fri, 03 May 2019 18:28:54 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tromey.com; s=default; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=vhGbAY+dbCY67wkP7RWc1xzdWXNMTNNQ71KkHr2mHtQ=; b=gdXBlvDg7Xc2RznuuBEtIyp8I5 A9HFlILSORnov0bPubJ3uhy3lwAyjUWFnb3aG0wy8T4BzipEPTlqZ1sQJWxJ13jOvF4splbUG0Ai6 NbiuAN+smDTGpuWWVU226i63o; Received: from 97-122-168-123.hlrn.qwest.net ([97.122.168.123]:37824 helo=bapiya) by box5379.bluehost.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.91) (envelope-from ) id 1hMhbq-003Eer-HF; Fri, 03 May 2019 18:28:54 -0500 From: Tom Tromey To: Sandra Loosemore Cc: Tom Tromey , Subject: Re: [PATCH 3/3] Introduce a separate debug objfile iterator References: <20190409180945.21621-1-tom@tromey.com> <20190409180945.21621-4-tom@tromey.com> <87a7g73306.fsf@tromey.com> <87ef5iyrjf.fsf@tromey.com> <28398247-e959-c206-8ab0-1af1c6fa98cd@codesourcery.com> Date: Fri, 03 May 2019 17:28:53 -0600 In-Reply-To: <28398247-e959-c206-8ab0-1af1c6fa98cd@codesourcery.com> (Sandra Loosemore's message of "Fri, 3 May 2019 12:23:12 -0600") Message-ID: <87lfzni0cq.fsf@tromey.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1.91 (gnu/linux) MIME-Version: 1.0 >> I did a grep and came up with the appended. >> If you try it, and it works, I will check it in. Sandra> I found one more use in ada-lang.c that you'd missed. Things build Sandra> with the attached version of the patch, but I haven't done any testing Sandra> beyond that. Thanks for doing that. Somehow there seems to have been one more in dictionary.c as well. I've appended the patch I am going to push. Tom commit bba6afebd7fde978acb6e06a48084a694aab3b7a Author: Tom Tromey Date: Fri May 3 17:21:36 2019 -0600 Remove "struct" from foreach statements Some versions of gcc have a bug that causes for (struct mumble : something) ... to give a compiler error. We routinely work around this bug in gdb, but apparently had not done so in a while. This patch fixes the remaining known cases of this problem. gdb/ChangeLog 2019-05-03 Sandra Loosemore Tom Tromey * dictionary.c (collate_pending_symbols_by_language): Remove "struct" from foreach. * symtab.c (lookup_global_symbol_from_objfile) (lookup_symbol_in_objfile_from_linkage_name): Remove "struct" from foreach. * ser-tcp.c (net_open): Remove "struct" from foreach. * objfiles.c (objfile_relocate, objfile_rebase) (objfile_has_symbols): Remove "struct" from foreach. * minsyms.c (lookup_minimal_symbol_by_pc_section): Remove "struct" from foreach. * dwarf2read.c (handle_struct_member_die): Remove "struct" from foreach. * darwin-nat.c (thread_info_from_private_thread_info): Remove "struct" from foreach. * ada-lang.c (create_excep_cond_exprs) (ada_exception_catchpoint_cond_string): Remove "struct" from foreach. diff --git a/gdb/ChangeLog b/gdb/ChangeLog index eba0426463a..ed6d77a0bfb 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,24 @@ +2019-05-03 Sandra Loosemore + Tom Tromey + + * dictionary.c (collate_pending_symbols_by_language): Remove + "struct" from foreach. + * symtab.c (lookup_global_symbol_from_objfile) + (lookup_symbol_in_objfile_from_linkage_name): Remove "struct" from + foreach. + * ser-tcp.c (net_open): Remove "struct" from foreach. + * objfiles.c (objfile_relocate, objfile_rebase) + (objfile_has_symbols): Remove "struct" from foreach. + * minsyms.c (lookup_minimal_symbol_by_pc_section): Remove "struct" + from foreach. + * dwarf2read.c (handle_struct_member_die): Remove "struct" from + foreach. + * darwin-nat.c (thread_info_from_private_thread_info): Remove + "struct" from foreach. + * ada-lang.c (create_excep_cond_exprs) + (ada_exception_catchpoint_cond_string): Remove "struct" from + foreach. + 2019-05-01 Tom Tromey * ada-lang.c (ada_value_primitive_field): Treat more fields as diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c index 1a566635b2d..20fb3497c03 100644 --- a/gdb/ada-lang.c +++ b/gdb/ada-lang.c @@ -12483,7 +12483,7 @@ create_excep_cond_exprs (struct ada_catchpoint *c, because the expression may hold the addresses of multiple symbols in some cases. */ std::multimap loc_map; - for (struct bp_location *bl = c->loc; bl != NULL; bl = bl->next) + for (bp_location *bl = c->loc; bl != NULL; bl = bl->next) loc_map.emplace (bl->pspace, bl); scoped_restore_current_program_space save_pspace; @@ -13231,7 +13231,7 @@ ada_exception_catchpoint_cond_string (const char *excep_string, excep_string = ada_encode (excep_string); std::vector symbols = ada_lookup_simple_minsyms (excep_string); - for (const struct bound_minimal_symbol &msym : symbols) + for (const bound_minimal_symbol &msym : symbols) { if (!result.empty ()) result += " or "; diff --git a/gdb/darwin-nat.c b/gdb/darwin-nat.c index 8282ef27e61..e3368ce6471 100644 --- a/gdb/darwin-nat.c +++ b/gdb/darwin-nat.c @@ -1706,7 +1706,7 @@ darwin_attach_pid (struct inferior *inf) static struct thread_info * thread_info_from_private_thread_info (darwin_thread_info *pti) { - for (struct thread_info *it : all_threads ()) + for (thread_info *it : all_threads ()) { darwin_thread_info *iter_pti = get_darwin_thread_info (it); diff --git a/gdb/dictionary.c b/gdb/dictionary.c index 88eff2fa439..4e38b2e2340 100644 --- a/gdb/dictionary.c +++ b/gdb/dictionary.c @@ -932,7 +932,7 @@ collate_pending_symbols_by_language (const struct pending *symbol_list) { std::unordered_map> nsyms; - for (const struct pending *list_counter = symbol_list; + for (const pending *list_counter = symbol_list; list_counter != nullptr; list_counter = list_counter->next) { for (int i = list_counter->nsyms - 1; i >= 0; --i) diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c index b0bdecf96fc..b5ea9e3cc0a 100644 --- a/gdb/dwarf2read.c +++ b/gdb/dwarf2read.c @@ -15962,7 +15962,7 @@ handle_struct_member_die (struct die_info *child_die, struct type *type, field for our sole member child. */ struct attribute *discr = dwarf2_attr (child_die, DW_AT_discr_value, cu); - for (struct die_info *variant_child = child_die->child; + for (die_info *variant_child = child_die->child; variant_child != NULL; variant_child = sibling_die (variant_child)) { diff --git a/gdb/minsyms.c b/gdb/minsyms.c index 8037329a862..9d29d880aab 100644 --- a/gdb/minsyms.c +++ b/gdb/minsyms.c @@ -721,7 +721,7 @@ lookup_minimal_symbol_by_pc_section (CORE_ADDR pc_in, struct obj_section *sectio gdb_assert (section != NULL); - for (struct objfile *objfile : section->objfile->separate_debug_objfiles ()) + for (objfile *objfile : section->objfile->separate_debug_objfiles ()) { CORE_ADDR pc = pc_in; diff --git a/gdb/objfiles.c b/gdb/objfiles.c index 1b0ea29980d..30823c2d889 100644 --- a/gdb/objfiles.c +++ b/gdb/objfiles.c @@ -864,7 +864,7 @@ objfile_relocate (struct objfile *objfile, changed |= objfile_relocate1 (objfile, new_offsets); - for (struct objfile *debug_objfile : objfile->separate_debug_objfiles ()) + for (::objfile *debug_objfile : objfile->separate_debug_objfiles ()) { if (debug_objfile == objfile) continue; @@ -919,7 +919,7 @@ objfile_rebase (struct objfile *objfile, CORE_ADDR slide) { int changed = 0; - for (struct objfile *debug_objfile : objfile->separate_debug_objfiles ()) + for (::objfile *debug_objfile : objfile->separate_debug_objfiles ()) changed |= objfile_rebase1 (debug_objfile, slide); /* Relocate breakpoints as necessary, after things are relocated. */ @@ -960,7 +960,7 @@ objfile_has_full_symbols (struct objfile *objfile) int objfile_has_symbols (struct objfile *objfile) { - for (struct objfile *o : objfile->separate_debug_objfiles ()) + for (::objfile *o : objfile->separate_debug_objfiles ()) if (objfile_has_partial_symbols (o) || objfile_has_full_symbols (o)) return 1; return 0; diff --git a/gdb/ser-tcp.c b/gdb/ser-tcp.c index 039b0432231..6ba95107918 100644 --- a/gdb/ser-tcp.c +++ b/gdb/ser-tcp.c @@ -323,7 +323,7 @@ net_open (struct serial *scb, const char *name) { got_connrefused = false; - for (struct addrinfo *iter = ainfo; iter != NULL; iter = iter->ai_next) + for (addrinfo *iter = ainfo; iter != NULL; iter = iter->ai_next) { /* Iterate over the list of possible addresses to connect to. For each, we'll try to connect and see if it diff --git a/gdb/symtab.c b/gdb/symtab.c index 16e641a830b..0e1f7ead294 100644 --- a/gdb/symtab.c +++ b/gdb/symtab.c @@ -2246,7 +2246,7 @@ lookup_global_symbol_from_objfile (struct objfile *main_objfile, const char *name, const domain_enum domain) { - for (struct objfile *objfile : main_objfile->separate_debug_objfiles ()) + for (objfile *objfile : main_objfile->separate_debug_objfiles ()) { struct block_symbol result = lookup_symbol_in_objfile (objfile, GLOBAL_BLOCK, name, domain); @@ -2333,7 +2333,7 @@ lookup_symbol_in_objfile_from_linkage_name (struct objfile *objfile, else main_objfile = objfile; - for (struct objfile *cur_objfile : main_objfile->separate_debug_objfiles ()) + for (::objfile *cur_objfile : main_objfile->separate_debug_objfiles ()) { struct block_symbol result;